<< 実践 ICONIXプロセス : 問題空間から解決空間へ | main | 実践 ICONIXプロセス : 設計と実装の分離 >>

実践 ICONIXプロセス : 静と動、要求と実装

詳細設計は、さまざまな要素が交差する、設計の難所であり、ハイライトです。
ICONIXプロセスでは詳細設計は、シーケンス図を描きながら、詳細クラス図を完成させる作業です。

静と動の交差

ICONIXプロセスは、静的モデルと動的モデルを同期させることを重視します。
特に、動的モデルを作成しながら、静的モデルを更新することがポイント。

画面の紙芝居や、要求のメモ書きから、業務の用語(問題領域の用語)を抜き出して、ドメインモデル図(概念クラス図)を描きます。2時間くらいでざっと描くことを推奨。最初の静的モデルですね。

次に、ユースケースを記述します。最初の動的モデルですね。
ユースケースを書く時に、必ず、ドメインモデル図のクラス名(業務の用語)を使うこと、つまり、静的モデルと動的モデルが同期していることを徹底します。もちろん、必要なら、ドメインモデル図にクラスを追加します。

ユースケース記述は、次のステップで、ロバストネス図として絵にしてみます。絵にしながら、ユースケースの問題点を発見・修正します。同時に、静的モデルのクラス図に属性を追加したり、改良を続けます。

動的モデルの最後がシーケンス図です。ロバストネス図を元にして、シーケンス図で、ユースケースの実現方法を、実装クラスとその操作として定義していきます。静的モデルのクラス図で詳細に完成させます。

シーケンス図とクラス図の同期は、Enterprise Architect などのモデリングツールを使えば、簡単にできます。

動的モデルは、

1.画面の紙芝居
2.ユースケース記述
3.ロバストネス図
4.シーケンス図

として発展させていきます。
この動的モデルの洗練作業と並行して、静的モデルも概念クラス図を、詳細化し、実装用のクラスを追加し、詳細クラス図を完成させ、コードを生成します。

シーケンス図の作成は、静的モデルと動的モデルの交差の最終段階ですね。

要求と実装の交差

ロバストネス分析までは、要求の確認・整理の作業です。
ロバストネス図を描き、そのレビュー(予備設計レビュー)を終えた時点では、ユースケース記述はロバスト(
強靭)になり、画面のモックアップが完成し、ビジネスルールなどの補足仕様も明確になっています。

ドメインオブジェクトも、業務に必要な属性は、この時点までに定義済みです。

並行して、予備設計レビューの完了までには、実装の最初の作業であるアーキテクチャの検討し確立しておきます。
Web アプリケーションであれば、実装言語を決め、フレームワークを選定し、リファレンス実装をすませておく。

そして、シーケンス図の作成が、要求と実装の最初の交差点になります。
シーケンス図を描きながら、詳細クラス図にさまざまな実装クラスを追加し、ユースケースを実現するためのオブジェクトの協調動作を設計していきます。

具体的には、シーケンス図にメッセージを追加、つまり、操作をクラスに割り当てる作業を続けます。

実際にやってみると、このシーケンス図の作成がヘビーな作業になりすぎている感じがします。
もう少し、この要求と実装の交差を楽に確実にできないか、やり方をいろいろ検討しているところです。

コメント
コメントする









この記事のトラックバックURL
トラックバック
calendar
 123456
78910111213
14151617181920
21222324252627
28293031   
<< May 2017 >>
システム設計日記を検索
プロフィール
リンク
システム開発日記(実装編)
有限会社 システム設計
twitter @masuda220
selected entries
recent comment
recent trackback
categories
archives
others
mobile
qrcode
powered
無料ブログ作成サービス JUGEM