コンポーネントベースのソフトウェアエンジニアリング

コンポーネントベースソフトウェアエンジニアリングCBSE)は、コンポーネントベース開発CBD )とも呼ばれ、疎結合再利用可能なコンポーネントからソフトウェアシステムを構築することを目的としたソフトウェアエンジニアリングのスタイルです。これは、コンポーネント間の関心の分離を重視しています。 [ 1 ] [ 2 ]

適切なコンポーネント粒度を見つけるために、ソフトウェアアーキテクトは開発者と連携してコンポーネント設計を継続的に反復する必要があります。アーキテクトは、ユーザーの要件、責任、そしてアーキテクチャの特性を考慮する必要があります。[ 3 ]

概要

CBSEは、構造化プログラミングオブジェクト指向プログラミングといった以前のパラダイムから発展しましたが、既存のコンポーネントを組み立てて統合することでソフトウェアを構築することに重点を置いています。通常、データと動作の両方をカプセル化するオブジェクトとは異なり、コンポーネントは明確に定義されたインターフェースを提供し、独立して展開できる高レベルの構成要素です。[ 4 ]

コンポーネント指向は、サービス指向アーキテクチャ(SOA)、マイクロサービス、 ReactAngularVueなどの広く使用されているフロントエンド フレームワークを含む、多くの最新のソフトウェア フレームワークアーキテクチャ スタイルの基盤となっています。

考慮事項

UMLにおける2つのコンポーネントの例:チェックアウトは顧客の注文を処理し、もう1つはクレジットカードに請求する必要があります

大規模なチームによって開発される大規模システムでは、CBSEのメリットを実現するために、規律ある文化とプロセスが必要です。[ 5 ]大規模システムではサードパーティのコンポーネントが使用されることが多く、統合ライセンスソフトウェア品質の問題が生じます。

システムは、統一モデリング言語(UML)を用いて視覚的に設計できます。各コンポーネントは長方形で表示され、インターフェースは、提供インターフェースを示すロリポップと、インターフェースの利用を示すソケットで示されます。このグラフィカルな表現は、コンポーネント間の関係性と依存関係を明確にするのに役立ちます。

コンポーネントベースのユーザビリティ テストは、コンポーネントがエンド ユーザーと直接対話するときに適用され、コンポーネントが再利用または置き換えられた場合でも機能とユーザー エクスペリエンスの両方が維持されることを保証します。

アプリケーション

CBSEの原則は複数のドメインで使用されています。

課題

コンポーネントベースの開発は保守性と再利用性を向上させますが、次のような課題も生じます

参照

参考文献

  1. ^ George T. Heineman, William T. Councill (2001).コンポーネントベースソフトウェアエンジニアリング:ピースをまとめる. Addison-Wesley Professional, Reading 2001 ISBN 0-201-70485-4
  2. ^ Clemens Szyperski、Dominik Gruntz、Stephan Murer (2002).コンポーネントソフトウェア:オブジェクト指向プログラミングを超えて. 第2版. ACM Press - Pearson Educational, London 2002 ISBN 0-201-74572-0
  3. ^ソフトウェアアーキテクチャの基礎:エンジニアリングアプローチ。オライリーメディア。2020年。ISBN 978-1492043454
  4. ^ Crnkovic, Ivica (2001). 「コンポーネントベースソフトウェアエンジニアリング ― ソフトウェア開発の新しいパラダイム」. Software Focus . 2 (3): 127–133 . doi : 10.1002/ swf.45
  5. ^ Douglas C. Schmidt . 「ソフトウェアの再利用が失敗した理由と、それをどのように活用するか」 . 2024年5月14日閲覧
「 https://en.wikipedia.org/w/index.php?title=コンポーネントベースソフトウェアエンジニアリング&oldid =1334108732」より取得