コラム
» 2007年03月15日 18時28分 公開

ソフトウェアアーキテクティングのメリットThe Rational Edge(3/4 ページ)

[Peter Eeles,@IT]

アーキテクティングはアーキテクチャの整合性を推進する

 アーキテクティングのプロセスにとって最大の目的の1つは、設計者や実装者が引き受けた作業に対し、アーキテクチャが堅牢なフレームワークを確実に提供できるようすることだ。この作業がアーキテクチャのビジョンを伝達するだけの単純なものではないことは明らかだ。結果として生まれるアーキテクチャの整合性を保証するため、アーキテクトはアーキテクチャ本体を明確に定義しなくてはならない。これが、システムのコンポーネント、そのインタフェース、そしてこれら相互のやりとりなど、アーキテクチャ上重要な要素の特定につながる。

 アーキテクトはさらに、設計者や実装者の作業指針となる適切な手法、標準、およびガイドラインも定義しなくてはならない。アーキテクティングの目的の1つが、設計者や実装者側の不要な創造性の排除だ。これは、自分にできることに対して必要な制約を課し、その制約から逸脱するとアーキテクチャの破壊につながる可能性があると明言することで実現できる。このような理由から、適切な審査および評価方法を採用することが、アーキテクチャの整合性を保証するのに役立つことになる。これらの作業が重点を置いているのは、設計者や実装者の作業を検討し、用意されたアーキテクチャ標準やガイドラインへの準拠の度合いを判断することだ。

アーキテクティングは複雑性への対処に役立つ

 今日のシステムはかつてないほど複雑化しており、この複雑性は何とかする必要がある。アーキテクチャは重要な要素にしか重点を置いていないため、これがシステムの抽象概念の提供につながり、従って複雑性を管理する手段が提供される。また、アーキテクティングのプロセスはコンポーネントの再帰的分解も考慮している。これが、大きな問題を幾つもの小さい問題に分解するのに優れた方法であることは明らかだ。

 複雑性は、アーキテクチャの抽象概念を伝達可能にするテクニックを使い、さらに簡単に管理できるようになる。従って、今日の業界におけるソフトウェアシステムのドキュメント化では、このような抽象概念を表現できるUMLなどの業界標準を採用することが一般化している。

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ