ソフトウェアライフサイクルプロセス(JIS X 0160)について
ソフトウェアライフサイクルプロセスについて
ソフトウェアライフサイクル(Software Life Cycle)とは
ソフトウェアライフサイクルとは、ソフトウェア開発の工程全体のことです。
つまり、ソフトウェア開発において、構想・設計から始まり、開発、導入、運用、保守を行い、最終的に廃棄されるまでのライフサイクルを指します。
ソフトウェアライフサイクルプロセス(SLCP:Software Life Cycle Process)とは
ソフトウェアライフサイクルプロセスとは、ソフトウェア開発の全プロセスを統合的に管理するための枠組みです。
つまり、ソフトウェアライフサイクルにおける、作業内容や用語の意味などのプロセスを定義して、標準化することを指します。
SLCPの目的は、ソフトウェア開発に関係する利害関係者が、「同じ言葉で話す」ことが出来ることです。
SLCPは、ソフトウェア取引において発注側(顧客、取得者)と受注側(発注側、ベンダ)双方に対して、ソフトウェアのライフサイクルを可視化し「共通の物差し」を規定します。
これにより、受発注における相互の役割や責任範囲、各工程の具体的な業務内容について、認識差異が生じないように共通理解を深めることができます。
ISO/IEC 12207 (Systems and software engineering — Software life cycle processes)とは
ISO/IEC 12207とは、1995年8月に国際標準化機構(ISO)によって策定されたSLCPに関する規格です。
SLCPを構成する各工程や個々の作業内容、用語の意味など、「23種類のプロセス、95種類の活動、325種類のタスク、224種類の出力(成果物)」を定義しています。
なお、同規格は2002年と2004年、2008年に改訂されています。
JIS X 0160:2021
JIS X 0160:2021とは、1996年7月にISO/IEC 12207を日本語化してJIS規格(日本工業規格)としたSLCPの規格です。
ISO/IEC 12207の技術的内容及び構成を変更することなく翻訳され、作成された規格となります。
なお、本規格は、2007年、2012年、2021年に改正されています。
共通フレーム(SLCP-JCF:Japan Common Frame)
JIS X 0160は規格であるため、そのままでは実際の業務に採り入れにくいという問題がありました。
そこで、情報処理推進機構(IPA)が日本独自の事情を織り込んだガイドラインを策定して、共通フレームとしてまとめました。
1994年に「共通フレーム94」が発行され、1998年に「共通フレーム98」、2007年に「共通フレーム2007」、2013年に「共通フレーム2013」が発行されています。
(2024年時点での最新は共通フレーム2013です。JIS X 0160が2021年改訂された際に、共通フレームは改訂しないことが発表されています。)
主要なプロセスについて
ソフトウェア実装プロセスとは
ソフトウェア実装プロセスは、テクニカルプロセスの開発・保守の視点で定義されるプロセスです。
ソフトウェア実装プロセスとは、JIS X 0160において「ソフトウェア製品又はソフトウェアサービスとして実現される指定のシステム要素を作り出すことを目的とする」プロセスと定義されています。
このプロセスには、6つの下位プロセスを含みます。
プロセス | 説明 |
---|---|
ソフトウェア要求事項分析プロセス |
システムのソフトウェア要素の要求事項(要件定義)を確立する。 要求事項評価の基準(システム要件を評価する基準)としては、利害関係者要件を実現できるのかどうか、取得ニーズとの一貫性・整合性があるかなどが挙げられます。 |
ソフトウェア方式設計プロセス | 要求事項を実装し、それに対して検証できるソフトウェアの設計(基本設計)を提供する。 |
ソフトウェア詳細設計プロセス | 要求事項及びソフトウェア方式に対して実装し、検証でき、コーディング及びテストを可能にするために十分に詳細である設計(詳細設計)をソフトウェアのために提供する。 |
ソフトウェア構築プロセス | ソフトウェア設計を適切に反映した実行可能なソフトウェアユニットを実装して作り出す。 |
ソフトウェア結合プロセス | ソフトウェアユニット及び構成部品を組み合わせて、結合されたソフトウェア品目を作り出す。 |
ソフトウェア適格性確認テストプロセス | 結合されたソフトウェア製品がその定義された要求事項を満たすことを確認する。 |
ソフトウェア廃棄プロセス
ソフトウェア廃棄プロセスは、運用・サービスプロセスで定義されるプロセスです。
このプロセスは、システム又はソフトウェア実体の存在を終了することを目的としており、ソフトウェアシステムのライフサイクルのどの段階でも適用できることが意図されています。
プロセスのタスクには、以下のアクティビティが定義されています。
アクティビティ | 説明 |
---|---|
廃棄を準備する | ソフトウェアシステムの廃棄戦略を定義する。 |
廃棄を実施する |
選定されたソフトウェアシステム要素を再利用,再生利用,再調整,分解修理,保管又は破壊する。 ソフトウェアシステム又は要素を不活性化して取り除くための準備をする。 |
廃棄を確実化する |
廃棄後の、人の健康、安全性、セキュリティ及び環境への有害な状況が識別されて大書されていることを確認する。 環境を元の状態に戻すか、又は合意によって指定された状態に戻す。 |
備考
システムライフサイクルプロセス(System life cycle processes)とは
システムライフサイクルプロセスとは、ISO/IEC 15288(JIS X0170)が定めているシステムのライフサイクルに関するプロセスの枠組みのことです。
システムのライフサイクル、システムエンジニアリング手法を適用するための共通のプロセスの枠組みを提供する規格となっています。
修整(Tailoring)とは
修整とは、ライフサイクルモデルの目的及び成果を達成するために、ライフサイクルプロセスを修正するか、又は新しいライフサイクルプロセスを定義することです。
JIS X 0160:2021で定義されたソフトウェアライフサイクルプロセスからアクティビティを選定したり一部を修正することを表します。