SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

japan.internet.com翻訳記事

7つのアジャイル開発手法の実践ガイド(第2回)

AUP、クリスタル、DSDMの紹介と各アジャイル手法の比較

  • X ポスト
  • このエントリーをはてなブックマークに追加

動的システム開発手法

 動的システム開発手法(DSDM)は、技術ではなくビジネスの視点で考える人たちによって1990年代の後半に英国で開発されました。DSDMは今ではDSDMコンソーシアムによって管理されており、おそらく英国で実施されている最も人気の高いアジャイル開発技法でしょう。DSDMは技術的にはフレームワークと見なされます。このフレームワークのバージョン管理(およびリリースの管理)はコンソーシアムによって行われています。

 DSDMは重量級のアジャイルアプローチの1つです。もともとは高速アプリケーション開発(Rapid Application Development:RAD)の拡張として開発されたもので、ビジネス指向の創始者のベストプラクティスを組み入れています。

 DSDMプロジェクトは3つのフェーズから成ります(図3も参照)。

  • プリプロジェクト ― プロジェクトの開始前に行われるべきものです。
  • プロジェクトライフサイクル ― 実際のプロジェクトが行われます。このフェーズは5つのステージに分けられます。
    • 実現可能性調査
    • ビジネス調査
    • 機能モデルイテレーション
    • 設計と構築イテレーション
    • 実装
  • ポストプロジェクトフェーズ ― プロジェクトの終了後に行われるべきものです。
図3 DSDMライフサイクル。DSDMプロジェクトの3つのフェーズは多くのステップから成る
図3 DSDMライフサイクル。DSDMプロジェクトの3つのフェーズは多くのステップから成る

 DSDMには次のような9つの原則があります。

  1. 積極的なユーザー関与が絶対に必要である。
  2. チームに引き渡しの権限が与えられなければならない。
  3. 頻繁な引き渡しが鍵である。
  4. 受け入れの主たる条件は現在のビジネスニーズを満たす機能の引き渡しである。
  5. 反復的で漸増的な引き渡しが不可欠である。
  6. プロジェクトライフサイクル中に行われた変更はすべて元に戻せる。
  7. 要件は高いレベルで基準化される。
  8. プロジェクトライフサイクル全体で統合されたテストが期待される。
  9. すべての利害関係者間の協力が不可欠である。

 DSDMのルーツはビジネスにあるため、DSDMが予算内で期日どおりに機能を引き渡すことを重視しても不思議はないでしょう。これを達成するため、各プロジェクトがいくつかのチャンクに分割され、それぞれのチャンクには、ある決まった数の機能と予算と時間が割り当てられます。時間と予算は両方とも固定されているので、プロジェクトが時間または予算をオーバーしそうになった場合は、最も重要性の低い機能が削られ、将来のプロジェクトに先送りされます。機能(要件)の優先度は次のルールによって決められます。

  • 必ず実現しなければならない要件(MUST)
  • 可能な限り実現すべき要件(SHOULD)
  • 引き渡しに大きな影響が出なければ実現した方が良い要件(COULD)
  • 十分な時間が残っていれば実現したい要件(WOULD)

 MUST、SHOULD、COULD、WOULDは一般にMoSCoWという頭字語で表されます。

 DSDMでは、要件に対するユーザーフィードバックは非常に重要で、プロジェクトフェーズの早期に作成されるプロトタイプで大きな意味を持つとされています。これらは要件を精緻化し、すべての利害関係者の期待を明確化するために使われます。

 DSDMはプロジェクトチームが使用すべきテストアプローチを指定しませんが、プロジェクトライフサイクルフェーズ全体にわたってテストを実行するように求めています。ライフサイクルのすべての面にテスト担当者が関与して、テストの機会が最大化されるようにしなければなりません。

 プロジェクトの要件と機能について議論するためのフォーラムを利害関係者に提供するため、ワークショップが使用されます。こうしたワークショップは必要に応じて何度でも実施できます。モデリングはワークショップに似ていますが、システムの技術的な部分や、ビジネスドメインのようなビジュアルモデルが効果的な他の部分を生み出したり伝達したりするために、技術チームメンバによって実施されます。

 DSDMでは固定的なコントロールを行うため、プロジェクトのさまざまな面を制御するコンフィグレーション管理システムが必要になります。

 DSDMはプロジェクト規模の上限を、それぞれが6人のメンバから成る6つのチームに設定しているように見えます。チームの人数がもっと多い場合もあるかもしれませんが、そうした事例を裏付けるようなドキュメントを見つけることはできませんでした。DSDMはビジネス的なベストプラクティスの上に築かれたので、生命維持装置、有毒廃棄物管理、原子炉といった、安全が重視されるシステムに使用するのは望ましくありません。この点には注意すべきです。

次のページ
比較

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
japan.internet.com翻訳記事連載記事一覧

もっと読む

この記事の著者

japan.internet.com(ジャパンインターネットコム)

japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.comEarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

Rod Coffin(Rod Coffin)

最新の開発プロセスおよびテクノロジの大規模導入のコンサルテーションを行うValtech Skill Developmentの上級顧問。主にエンタープライズJava開発およびアジャイル手法を行うチームを指導している。アスペクト指向プログラミングからEJB 3.0に至るまで各種の話題について数本の記事を...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

Derek Lane(Derek Lane)

Countrywide Financial Corp. のエンタープライズアーキテクト。メンター、コーチ、アーキテクト、マネージャ、開発者、トレーナー、開発方法論者、オープンソース信者など、さまざまな肩書を持つ。著者、プレゼンター、技術校閲者としてさまざまなプロジェクトに携わり、まもなく共著『EJB...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/979 2008/09/02 16:05

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング