私は現在、ソフトウェア開発のための文書化された一貫性のあるアーキテクチャガイドを作成する任務を負っています。私たちには多くの賢い人々が正しいことをしていますが、一貫して繰り返しではありません。
出発点として、Microsoftのアプリケーションアーキテクチャガイド2.0を使用しています。したがって、アプリケーションアーキテクチャを思い付くのはかなり簡単です(簡単とは言えませんが)。おそらく私は開発者として数年の経験があるので、この領域をかなりよく理解しており、例やガイダンスもたくさんあります。
私たちの組織には1つ以上のシステムを形成するアプリケーションがいくつかあり、それらを「at」クライアントにインストールします...システムアーキテクチャとエンタープライズアーキテクチャも作成するのが理にかなっていると思いました。そして、これが問題の始まりです。
そこに一貫したガイダンスはありません。「システムアーキテクチャの例」を検索すると、返されるものが非常に異なるため、これを行うための「標準的な」方法があるかどうか疑問に思います。
私の(限定された-明らかに)すべての理解から、システムアーキテクチャは、1つ以上のアプリケーションアーキテクチャを抽象化したものであり、それらがどのように連携してシステムを形成するかを示しています。さらに、エンタープライズアーキテクチャは、システムが組織のエンタープライズにどのように適合し、ビジネスプロセス、IT戦略とどのように相互作用し、企業内の他のシステムにどのように統合されるかを示す、さらなる抽象化です。
- 私はそれを完全に間違っていますか?
- そこに標準はありますか(そしてどこでそれらを見つけることができますか)?
- 標準があるべきでしょうか、それとも「優れた」システムアーキテクチャは、読者にとって明確かつ容易に理解でき、役立つ任意の形式のドキュメントでしょうか。
- しかし、ベテランの建築家はそのアプローチについてどう思いますか?
役に立つかもしれないSOA関連のパターンのセットを単純にリストしたくはありません...私たちが行っていることにもう少し焦点を当てたいと思います。それはサービス指向アーキテクチャーでの金融ソリューションの構築です。
更新: TOGAF(9)はどうですか。誰かがそれをまったく経験したことがありますか、そしてそれを詳細に理解しようとする努力の価値があります。