開発プロセスに関するフレームワーク
開発プロセスを標準化する必要性
Section titled “開発プロセスを標準化する必要性”ソフトウェアの開発は、発注する側(委託側)と開発する側(受託側)が協力して進めることが一般的です。しかし、両者の間で「どの工程で何をすべきか」の認識がずれていると、作業の抜け漏れやトラブルが発生しやすくなります。
こうした問題を防ぐために、ソフトウェア開発のプロセス(工程)を標準化し、共通の枠組みとして整理したものがフレームワークです。ここでは、ITパスポート試験で出題される2つの重要なフレームワークを学びます。
共通フレーム(SLCP)
Section titled “共通フレーム(SLCP)”共通フレームは、ソフトウェアの開発や保守に関わる作業を体系的に整理し、各工程で行うべき作業項目を定義した日本の標準ガイドラインです。正式には共通フレーム2013と呼ばれる版が現在の基準となっています。
共通フレームの英語名はSLCP(Software Life Cycle Process)で、直訳すると「ソフトウェアライフサイクルプロセス」、つまりソフトウェアの企画から廃棄までの一連の流れを対象としています。
共通フレームが生まれた背景を具体例で考えてみましょう。たとえば、ある企業が外部のIT企業にシステム開発を依頼するとします。このとき、発注する側を取得者(委託側)、開発する側を供給者(受託側)と呼びます。取得者は「要件定義をしっかりやってほしい」と考え、供給者は「要件は発注者が決めるもの」と考えているかもしれません。こうした認識のずれが、開発の遅延や品質低下の原因になります。
共通フレームは、取得者と供給者の双方が「共通の物差し」として参照できる作業項目の一覧を提供します。「この工程ではこの作業を行う」という共通認識を持つことで、役割分担や責任範囲を明確にし、スムーズな開発を実現します。
試験で出るポイント
CMMI(能力成熟度モデル統合)
Section titled “CMMI(能力成熟度モデル統合)”もう一つの重要なフレームワークがCMMI(Capability Maturity Model Integration)です。日本語では能力成熟度モデル統合と訳されます。
共通フレームが「何をすべきか(作業項目)」を定義するのに対し、CMMIは「組織の開発プロセスがどれだけ成熟しているか」を評価し、プロセス改善につなげるためのモデルです。
身近なたとえで考えてみましょう。料理初心者は、レシピを見ても手順どおりに作れなかったり、毎回味がばらついたりします。一方、熟練した料理人は、手順が体系化されていて、いつでも同じ品質の料理を安定して提供できます。CMMIはこのように、組織のソフトウェア開発の「腕前」を段階的に評価する枠組みです。
CMMIの成熟度レベル(5段階)
Section titled “CMMIの成熟度レベル(5段階)”CMMIでは、組織のプロセスの成熟度を5段階の成熟度レベルで評価します。レベルが高いほど、開発プロセスが安定し、品質の高いソフトウェアを効率的に作れる組織であることを意味します。
| 成熟度レベル | 名称 | 特徴 |
|---|---|---|
| レベル1 | 初期 | プロセスが整備されておらず、成功は個人の能力次第。結果が予測できない |
| レベル2 | 管理された | 基本的なプロジェクト管理が行われている。過去の成功例を繰り返せる |
| レベル3 | 定義された | 組織全体で標準プロセスが文書化・共有されている |
| レベル4 | 定量的に管理された | プロセスを数値で測定・分析し、品質を定量的にコントロールしている |
| レベル5 | 最適化している | 継続的にプロセスを改善し、新技術や手法を積極的に取り入れている |
レベル1の組織では、優秀なエンジニアがいるときだけ良い結果が出ますが、その人が異動すると品質が落ちてしまいます。レベル3以上になると、誰が担当しても一定の品質が保てる仕組みが整っています。
試験で出るポイント
共通フレームとCMMIの違い
Section titled “共通フレームとCMMIの違い”共通フレームとCMMIは、どちらもソフトウェア開発プロセスに関するフレームワークですが、目的が異なります。
| 項目 | 共通フレーム(SLCP) | CMMI |
|---|---|---|
| 目的 | 作業項目の共通語彙・標準化 | 組織のプロセス成熟度の評価・改善 |
| 焦点 | 「何をすべきか」を定義 | 「どれだけうまくできているか」を評価 |
| 対象 | 取得者と供給者の間の共通認識 | 組織のプロセス改善 |
| 活用場面 | システム開発の委託・受託時 | 組織の開発力を客観的に把握したいとき |
共通フレームは「開発の作業内容を揃える辞書」、CMMIは「組織の実力を測る成績表」とイメージすると、両者の違いをつかみやすくなります。
試験で出るポイント