コンテンツにスキップ

開発プロセスに関するフレームワーク

開発プロセスを標準化する必要性

Section titled “開発プロセスを標準化する必要性”

ソフトウェアの開発は、発注する側(委託側)と開発する側(受託側)が協力して進めることが一般的です。しかし、両者の間で「どの工程で何をすべきか」の認識がずれていると、作業の抜け漏れやトラブルが発生しやすくなります。

こうした問題を防ぐために、ソフトウェア開発のプロセス(工程)を標準化し、共通の枠組みとして整理したものがフレームワークです。ここでは、ITパスポート試験で出題される2つの重要なフレームワークを学びます。

共通フレームは、ソフトウェアの開発や保守に関わる作業を体系的に整理し、各工程で行うべき作業項目を定義した日本の標準ガイドラインです。正式には共通フレーム2013と呼ばれる版が現在の基準となっています。

共通フレームの英語名はSLCP(Software Life Cycle Process)で、直訳すると「ソフトウェアライフサイクルプロセス」、つまりソフトウェアの企画から廃棄までの一連の流れを対象としています。

共通フレームが生まれた背景を具体例で考えてみましょう。たとえば、ある企業が外部のIT企業にシステム開発を依頼するとします。このとき、発注する側を取得者(委託側)、開発する側を供給者(受託側)と呼びます。取得者は「要件定義をしっかりやってほしい」と考え、供給者は「要件は発注者が決めるもの」と考えているかもしれません。こうした認識のずれが、開発の遅延や品質低下の原因になります。

共通フレームは、取得者供給者の双方が「共通の物差し」として参照できる作業項目の一覧を提供します。「この工程ではこの作業を行う」という共通認識を持つことで、役割分担や責任範囲を明確にし、スムーズな開発を実現します。

試験で出るポイント

共通フレームの説明として正しいのは「システムの開発や保守の各工程の作業項目を定義したもの」です。「成果物の文書化に関する詳細な規定」や「信頼性・保守性の尺度の規定」は誤りの選択肢として出題されています。「作業項目の標準化」がキーワードです。

もう一つの重要なフレームワークがCMMI(Capability Maturity Model Integration)です。日本語では能力成熟度モデル統合と訳されます。

共通フレームが「何をすべきか(作業項目)」を定義するのに対し、CMMIは「組織の開発プロセスがどれだけ成熟しているか」を評価し、プロセス改善につなげるためのモデルです。

身近なたとえで考えてみましょう。料理初心者は、レシピを見ても手順どおりに作れなかったり、毎回味がばらついたりします。一方、熟練した料理人は、手順が体系化されていて、いつでも同じ品質の料理を安定して提供できます。CMMIはこのように、組織のソフトウェア開発の「腕前」を段階的に評価する枠組みです。

CMMIでは、組織のプロセスの成熟度を5段階の成熟度レベルで評価します。レベルが高いほど、開発プロセスが安定し、品質の高いソフトウェアを効率的に作れる組織であることを意味します。

成熟度レベル名称特徴
レベル1初期プロセスが整備されておらず、成功は個人の能力次第。結果が予測できない
レベル2管理された基本的なプロジェクト管理が行われている。過去の成功例を繰り返せる
レベル3定義された組織全体で標準プロセスが文書化・共有されている
レベル4定量的に管理されたプロセスを数値で測定・分析し、品質を定量的にコントロールしている
レベル5最適化している継続的にプロセスを改善し、新技術や手法を積極的に取り入れている

レベル1の組織では、優秀なエンジニアがいるときだけ良い結果が出ますが、その人が異動すると品質が落ちてしまいます。レベル3以上になると、誰が担当しても一定の品質が保てる仕組みが整っています。

試験で出るポイント

CMMIの5段階は細かく暗記する必要はありませんが、「レベルが上がるほどプロセスが組織的・定量的・継続改善的になる」という流れを理解しておきましょう。また、スクラム(アジャイル開発の手法)の説明をCMMIとして出す引っかけに注意してください。

共通フレームとCMMIは、どちらもソフトウェア開発プロセスに関するフレームワークですが、目的が異なります。

項目共通フレーム(SLCP)CMMI
目的作業項目の共通語彙・標準化組織のプロセス成熟度の評価・改善
焦点「何をすべきか」を定義「どれだけうまくできているか」を評価
対象取得者と供給者の間の共通認識組織のプロセス改善
活用場面システム開発の委託・受託時組織の開発力を客観的に把握したいとき

共通フレームは「開発の作業内容を揃える辞書」、CMMIは「組織の実力を測る成績表」とイメージすると、両者の違いをつかみやすくなります。

試験で出るポイント

共通フレームとCMMIの違いを問う問題では、「共通フレーム=作業項目の標準化」「CMMI=プロセスの成熟度評価」という目的の違いを押さえておけば正解を選べます。

アプリで問題を解こう!