忍者ブログ
情報処理技術者試験の合格を目指す全受験者のための、1問1問「徹底解説」ブログです。単なる過去問の暗記ではなく、なぜその答えになるのかを本質的に理解できるよう解説します。書籍などでは学べない最新用語やトレンドを踏まえてご紹介します。

【知識】プロジェクトの成功を導く!「開発手法」の全容|情報処理問題1000本ノック

開発手法は、時代やプロジェクトの性質に合わせて進化してきました。大きく分けて「伝統的な手法」「アジャイル系」「品質・設計重視型」の視点で整理しましょう。

開発手法一言説明(特徴・目的)
ウォーターフォール 要件定義から順に、上流から下流へ滝のように戻ることなく進める最も標準的な手法。
Vモデル開発 開発工程(左側)とテスト工程(右側)を対応させ、検証(検収)作業を明確にしたモデル。
スパイラル開発 設計と試作(プロトタイプ)を繰り返し、徐々にリスクを排除しながら螺旋状に規模を拡大する。
反復開発 システムを小さな単位に分割し、短期間のサイクル(イテレーション)を繰り返して完成させる手法の総称。
アジャイル開発 柔軟な計画と短期間の反復を重視し、顧客との対話を通じて動くソフトウェアを迅速に提供する手法。
XP (エクストリーム・プログラミング) ペアプログラミングやテスト駆動開発など、技術的実践を通じて変化への対応力を高める。
クリスタル開発 プロジェクトの規模や重要度(色)に応じて、手法の厳密さを柔軟に使い分ける手法。
DSDM 時間の制約(タイムボックス)を優先し、ビジネス価値を迅速に届けるための英国発祥のアジャイル手法。
リーン トヨタ生産方式を源流とし、徹底的に「ムダ」を省いて価値提供の効率を最大化する考え方。
構造化開発 機能を段階的に詳細化(トップダウン)し、プログラムを単純な構造の組み合わせで構築する手法。
オブジェクト指向開発 データと手続きを「オブジェクト」としてまとめ、再利用性や保守性を高める設計手法。
データ中心設計 (DOA) 機能よりも先に、変化しにくい「データの構造」に着目してシステムを設計する手法。
パターンベース開発 過去の成功例である「デザインパターン」などを再利用して、効率的に設計・開発を行う。
クリーンルーム開発 数学的検証に基づき、バグの混入を未然に防いで「無欠陥」のソフトウェアを目指す高品質重視の手法。
RAD (Rapid Application Development) CASEツールやプロトタイプを用い、少人数で短期間にシステムを完成させることを目指す。
RUP (Rational Unified Process) オブジェクト指向を基盤とし、ユースケース駆動・リスク中心で進める反復型の開発フレームワーク。
JAD (Joint Application Development) ユーザーと開発者が一堂に会して集中討議を行い、合意形成を加速させる要件定義の手法。
PSP / TSP 個人のスキル向上(PSP)とチームのプロセス管理(TSP)を通じて、予測通りの納期と品質を達成する。

※これらの手法は独立しているわけではなく、たとえば「アジャイルという大きな枠組みの中にXPやリーンがある」といった関係性や、「オブジェクト指向という設計思想をウォーターフォールで使う」といった組み合わせが実際の現場ではよく見られます。

PR

【知識】リズムと透明性でつくる!「スクラム」の重要用語|情報処理問題1000本ノック

スクラムは、変化の激しい現代の開発において、短期間で成果を積み上げ、改善を繰り返すための強力なフレームワークです。各用語の意味を正確に理解し、開発の流れを攻略しましょう。

■ スクラムを構成する主要な要素

開発の単位、管理リスト、そして情報共有のためのイベントを整理します。

スプリント (Sprint)

アジャイル開発における反復(イテレーション)の単位です。通常「1〜4週間」の固定期間で実施され、その期間内で設計・開発・テストを行い、動くソフトウェア(インクリメント)を完成させます。

バックログ (Backlog)

顧客にとってビジネス価値がある開発機能の一覧です。主に以下の2段階で管理されます。

  • プロダクトバックログ:製品全体の「やりたいこと(フィーチャー/ストーリー)」を優先順位付けしたリスト。
  • スプリントバックログ:そのスプリント内で完了させるために、プロダクトバックログから抜き出し、具体的なタスクに分解した作業一覧。

タイムボックス (Timebox)

スプリントの期間を厳守する考え方です。スプリント期間中に対応するバックログの内容は、原則として変更されません。 これにより、チームは目の前の作業に集中し、確実に成果物を出し切ることができます。

デイリースクラム(スクラムミーティング)

毎日決まった時間に短時間(15分程度)で行う進捗確認です。以下の3点を中心に共有します。

  1. 昨日(前回)は何をしたか?
  2. 今日(次回まで)は何をするか?
  3. 現在、直面している障害や困りごとはあるか?

試験対策の重要ポイント:3つの役割

スクラムには重要な3つのロールがあります。
プロダクトオーナー:製品価値の最大化とバックログの優先順位決定に責任を持つ。
スクラムマスター:スクラムの理解を助け、チーム内の障害を取り除く支援者。
開発者(開発チーム):実際に作業を行い、スプリント終了時にインクリメントを生み出す人々。

※プロダクトバックログは「夢や希望が詰まった大きなリスト」、スプリントバックログは「今週、確実に終わらせる戦術リスト」というイメージで使い分けを理解しましょう。