ソリューション開発における早期のフォース †
要約 †
- さまざまな技術的市場的フォースが相まって成功するソリューションを形作る。
- 開発の初期ステージにおいて、特に影響力のあるフォース
- 問題領域
- 成功するソリューションを開発するうえで中心的なフォースとなる。
- ルール、命名法、プロシージャ、ワークフロー
- エコシステム(顧客、供給者、競合他社、監査機関など)も含まれる。
- 問題領域の理解は成功するソリューションを構築するうえで必須。
- マーケテクトがやるべきこと:市場のニーズの明確化と優先順位付け
- ターキテクトがやるべきこと:そのニーズを満たす技術的なソリューションを構築すること。しかし、当該領域に対する経験も必要。
- ターキテクトの条件
- 顧客がシステムを使うことによって生まれるフィードバックを受け取り、それに対応できるくらい長い期間ある問題に関わること。
- Ilities(非機能要件)
- アーキテクチャに関するさまざまな品質やプロダクトの属性
- 実行時にシステムを観察することで識別できるもの(パフォーマンスやユーザビリティ)⇒標的顧客に直接影響を受ける
- そうでないもの(テスタビリティや変更可能性)⇒標的顧客との将来の関係を左右する二次的な属性。
- 非機能要件をとりまく、マーケテクトと開発チームの考え方の違いをすり合わせるために話し合いの場を設けるとよい。
- その場には顧客もいるとよい。
- プロダクトを予定通り出荷するためには妥協が必要だが、そうした妥協の効果はすぐには現れない。したがって、ターキテクトは少なくとも2回はフルリリースを経験しなければならない。
- テクノロジーベースには、開発チームが使えるテクノロジーも含まれる。これらは「超アーキテクチャ(uber-architecture)」と言える。
- テクノロジーベースについて選択する際には、問題領域から導かれるターキテクチャを考慮しなければならないが、開発者自信の希望もあるため、これは難しい。
担当者のつぶやき †
みんなの突っ込み †