コンポーネントソフトウェアとは
コンポーネントソフトウェアと呼ばれることもあるコンポーネントソフトウェアは、システム全体との通信を維持しながら、システム内の他のコンポーネントとは独立して動作する個別のモジュールまたはプログラミングオブジェクトを指します。 簡単に言えば、特定のタスクまたはサービスを提供するためにコンポーネントが構築されます。 このタイプのソフトウェアエンジニアリングはオブジェクト指向プログラミングに基づいていますが、サービス指向プログラミングと呼ばれる独立したより高度な分類と見なされます。 個々のコンポーネントモジュールにより、単一のプログラムがクラッシュした場合でもシステムが機能し続けることができます。
コンポーネントソフトウェアという用語は、個々のプログラムモジュールのそれぞれがシステム全体のコンポーネントまたは一部を形成する方法を適切に説明しています。 たとえば、さまざまなパーツから車を組み立てる方法を考えてみましょう。 一部の部品は他の部品よりも機能に不可欠ですが、全体として、特定の重要でないシステム(ラジオなど)に障害が発生した場合、残りの車は機能し続けます。 コンポーネントソフトウェアプログラミングは、複数の部分がシステム全体を作成する同様の設計スキームです。
このタイプのソフトウェアは、完全なシステム障害によりセキュリティ上の問題が発生したり、迷惑になる可能性がある場合に、プログラミングアプリケーションで一般的に使用されます。 このようなアプリケーションには、注文処理および支払いソフトウェア、記録管理ソフトウェア、さらにはインターネットブラウザが含まれます。 このタイプのソフトウェアによって実行される個々のタスクは、個々のコンポーネントソフトウェアに委任されます。 これらの部品は、各コンポーネントが他のコンポーネントから隔離されているため、システム全体の安定した機能を保証すると同時に、システムのセキュリティも保護します。
インターネットブラウザの場合、個々のコンポーネントが複数のプロセスブラウジングセッションを提供するように機能する場合があります。 平均的なユーザーにとって、これは、5つのタブが開いており、不正なJavaスクリプトによって1つのタブで表示されているサイトがフリーズした場合、そのタブのみが侵害されることを意味します。 タブを閉じると、セッションの残りの部分を保存できます。 また、この複数プロセスシステムは、各プロセスを個別のスペースに保持するため、最新のインターネットブラウザーのセキュリティを強化します。
多くの最新のコンピューターオペレーティングシステム(OS)は、少なくともある程度、コンポーネントソフトウェアを利用しています。 1つの例はWindows OSです。 このシステムでは、ユーザーはOSコンポーネントを有効または無効にして、ニーズに合わせてカスタマイズできます。 さらに、プログラムが停止した場合、関連するプロセスを安全に強制終了し、コンピューターを再起動せずにプログラムを終了するためのセーフガードが含まれています。 この機能により、コンポーネントソフトウェアはソフトウェアエンジニアリングの重要な部分となっています。