ソフトウェアの開発・運用・保守

開発の進め方

ウォータフォールモデル

 • 反復のない、一連のプロセス活動
– 各フェーズがマイルストーンであり、それぞれに成果物がある – 単純で、お客さんも理解しやすい

要件の変更が起きにくい、良く理解された課題に有効 – ソフトウェア開発を、創造(creative)プロセスではなく製造(manufacture)プロセスと見る

• 短所

–  活動や成果物への変更が生じた場合への対応が決められて いない

(要求は完全に固めることができる、という前提)

–  最終成果物を得るまでに長い待ち時間が発生する

プロトタイイングモデル

要求や設計を、繰り返し確認できる
• 開発のリスクと不確実さを減らす効果がある

スパイラルモデル

 

V字モデル

ウォーターフォール・モデルの変形・改良型

単体テストを使ってプログラム設計を評価する

結合テストを使ってシステム設計を評価する

受け入れテストを使って要求を検証する

インクリメンタルプロセスモデル

短い周期で繰り返す
• システムを複数の部分に分けて納品

– ユーザは、部分的に完成した機能を使いながら他の 開発を待つことができる

• 好まれる理由
– リリースが多いことで、開発者が予期しない問題を素

早く直すことができる
– リリースごとに特定の技術要素に集中でき、開発

チームの負担が減

アジャイルモデル

ソフトウェアを速く、確実に開発するために柔軟 性を強調

• アジャイルで重要視される要素

– プロセスやツールより、人と意思の疎通を重視する

  • –  質の高い文書を作ることより、動くソフトを生産するこ とに時間を投資する
  • –  契約交渉より、顧客との協業を楽しむ
  • –  計画を守ることより、変化への対応に注力する

ソフトウェア開発おすすめ本