注目のセミナー

申込受付中!

<サイバー攻撃対策>
標的型攻撃が迫る
セキュリティ対策の見直

日本を代表するセキュ リティのプロ集結! 被害実態と対策を紹介

★3/1開催★

必聴講座ご紹介

Cloud Days Tokyo 2012
クラウド時代を勝ち抜く企業戦略を考える

エムオーテックス


Cloud Days Tokyo 2012
クラウド時代の企業インフラとユーザー環境の姿

ヴイエムウェア


Cloud Days Osaka 2012
クラウドでIT維新を〜ビジネスを加速させるベストプラクティス

アマゾン データ サービス ジャパン

情報システム
森下・アジャイル研究所 日経コンピュータ

第3回 アジャイルとモデルの良好な関係

2010/01/13
森下 真衣=情報システム総研

 本研究所では、アジャイル開発を素材に、より良いシステム開発のあり方を求めていく。開発手法そのものを見直すことは、より良いシステムを作るだけではなく、開発を担当するチームが成長し、個人の満足度も高まると考えられるからだ。今回は、私が取り組んでいたアジャイル開発では必ず存在したモデルの役割について考えてみましょう。

 私が社会人になってから経験したアジャイル開発には、必ずモデルがありました。みなさんもご存じのように、モデルは設計の重要な要素であり、情報システムの良し悪しに直結します。ですが、モデルの役割は設計にだけあるのではありません。モデルを利用することが開発者の助けにもなると思います。

モデルを使った開発は、開発者にやさしい

 私が経験したモデルを用いた開発の概要を紹介します(図1)。

図1●モデルを用いたアジャイル開発の概要
[画像のクリックで拡大表示]

 まずは開発を始める前に、モデルの設計者からモデルの概要説明がありました。実はそのときの説明では、私はモデルを3割も理解できませんでした。モデルを用いた開発経験が浅いこともあり、モデルだけ見ても、その使い方や意図を汲み取れなかったのです。「本当にこのモデルで開発できるのか?」「このモデルがシステムにとって本当に適切なのか?」など、当初は色々と不安でした。

 しかし、アジャイル開発の中では、モデルに対する不安は1カ月程度で解消されたのです。開発の初期では、モデルの妥当性を大まかに確認することを重視し、基本的なユースケースを開発しました。詳細な機能は開発せず、開発者にとって基本的なシナリオを一通り開発することで、モデルやシステムへの理解が進みます。その後の機能開発も、モデルの検証ポイントやモデルの意味を理解できたため、スムーズに進められました。

 モデルには、開発者を助ける役割があります。モデルの使い勝手の良さを紹介しましょう。その一つが、A4サイズの紙で話し合いができることです。私が経験したモデルは、A4サイズの紙1枚に収まっていたのです。

A4用紙1枚でも情報量は豊富

 何も理解していない状態では、このA4の紙は何の情報のない、ただのクラスが描かれた図に過ぎません。ところが開発が進むにつれ、モデルが表していた本来の意味が理解でき、情報量が多いA4の紙になってきたのです。

 開発者の間では、実装について相談することがあります。そのときも、多くの設計資料がなくても、そのモデルがあればだいたいの話し合いができます。モデルを共通言語としてコミュニケーションすることは、チーム内で意思の疎通を図りやすくもなります。

 モデルは、アジャイルに対する不安を小さくすることもできます。開発の当初は、システムの分野や開発環境など初めて経験することが多く不安を感じていました。しかし、私が使用したモデルには、アナリシスパターンなどが利用されていました。それらは過去に十分検討されたパターンであり、実装方法やモデルの効果などのノウハウが培われています。

 そのノウハウをすぐに吸収することは容易ではありませんでしたが、少しずつパターンを活かせるようになったのです。一度理解すると、パターンを利用した部分がまとまって見えるようになるためモデルの理解がしやすくなりました。さらにパターンから得た知識は、この開発に限らずその後の開発にも役立っています。

>>詳細設計がなくてもモデルを検証しながら開発で...
次ページ以降はITpro会員(無料)の方のみお読みいただけます。
会員の方は、 ログインしてご覧ください。
まだ会員でない方は、ぜひ登録(無料)していただき、ITproの豊富なコンテンツをご覧ください。

この記事に対するfacebookコメント

nikkeibpITpro

読みましたか? 〜 未読記事をご紹介