System life cycle — システムライフサイクル

From Systems analysis wiki
Jump to navigation Jump to search

システムライフサイクルとは、システムに対するニーズが発生した瞬間から、最終的に運用を終了するまでにシステムが経る一連の段階と状態の集合です。システムライフサイクルは、単なる存在期間としてではなく、外部および内部要因の影響を受けてシステムがある状態から別の状態へと連続的に移行するプロセスとして捉えられます。

定義

各種規格によると、以下の通り定義されています。

  • システムライフサイクル - 構想から廃棄に至るまで、対象システムが時間とともに発展していくこと (ГОСТ Р ИСО/МЭК 15288 - 2005)
  • ライフサイクル — 存在期間ではなく、加えられる影響の種類によって引き起こされる、状態の連続的な変化のプロセス (Р 50-605-80-93)。

ライフサイクルのフェーズ

システムライフサイクルは通常、システムの開発、導入、保守の主要な段階を反映した一連の主要なフェーズに分けられます。使用される方法論や標準によってフェーズの構成は若干異なる場合がありますが、一般的には以下の共通の段階が区別されます。

  • ニーズの定義(要求事項の収集と分析) — システムが満たすべきタスクと条件を特定します。この段階では、システムの目標が策定され、顧客の要求と運用環境の特性が明確化されます。
  • コンセプト(概念設計) — システムの全体的なアイデアとアーキテクチャのコンセプトを開発します。プロジェクトの概念的なスケッチが作成され、実現可能性が評価され、予備的なモデルや図が作成されます。
  • 開発(詳細設計) — 技術的なソリューションを詳細に検討し、設計ドキュメントを作成します。この段階では、仕様が詳細化され、図面、プログラムコード、その他のシステムコンポーネントが開発されます。
  • 製造(生産と組み立て) — プロトタイプまたは量産システムの製造、組み立て、テストを行います。ここでは、開発されたドキュメントに基づいて完成品が作成され、受け入れテストが実施されます。
  • 運用 — システムを本番環境に導入し、その目的に沿って使用します。運用開始、担当者のトレーニング、実環境でのシステム稼働の監視が行われます。
  • サポート(保守) — 運用中のシステムの技術的なメンテナンス、更新、近代化を行います。修理作業、不具合の修正、新バージョンの導入や改善が実施されます。
  • 運用終了(廃棄、償却) — システムの使用を中止するプロセスの計画と実行。システムの解体、廃棄または保管、そして分析のための経験と最終データの引き継ぎが行われます。

ライフサイクルモデル

システム工学では、ライフサイクルを記述するために様々なモデルアプローチが使用されます。最もよく知られているモデルには、ウォーターフォールモデル、V字モデル、スパイラルモデルがあります。

  • ウォーターフォールモデル (Waterfall model) — 開発フェーズが後戻りすることなく順番に進む、伝統的な線形アプローチです​techtarget.com。各段階(要求分析、設計、開発、テストなど)は、次の段階に進む前に完了します。ウォーターフォールモデルは、要件が明確に定義され、変更されないプロジェクトに適しており、厳密な段階的進行が重要となる場合に適しています。
  • V字モデル (V-Model) — ウォーターフォールモデルの進化形で、「V」の字の形で表されます。V字モデルでは、各開発フェーズに対応する検証(テスト)フェーズが存在します。例えば、「設計」段階は「統合テスト」段階と、「コーディング」は「単体テスト」と対になっています。このモデルは、各段階での結果の検証と妥当性確認の重要性を強調し、クリティカルな分野(航空、宇宙、軍事技術)で頻繁に適用されます。
  • スパイラルモデル (Spiral model) — B. Boehmによって提案された、反復的でリスク駆動型のアプローチです。プロジェクトは複数のサイクル(「スパイラル」)に分割され、各サイクルで計画、リスク分析、実装、検証が行われます​en.wikipedia.org。各反復の後、要求と成果物が見直され、不確実性に柔軟に対応し、重大なリスクを低減することが可能になります。スパイラルモデルは、ウォーターフォール、反復、プロトタイプの各モデルの要素を組み合わせ、プロジェクトの性質に応じてそれらを適用します。

NASA Life Cycle Model - NASAのライフサイクルモデル

NASAのアプローチによれば、システムライフサイクルは、システムの開発、実装、運用、および廃棄をその全期間にわたって体系的に管理することを目的とした、組織化された一連のフェーズと意思決定のチェックポイントです。

ライフサイクルの段階とフェーズ

事前策定段階 (Pre-Formulation):

  • Pre-Phase A (Concept Studies): 広範なアイデアや代替案を生成し、実現可能性と予備的な要求事項を評価します。

策定段階 (Formulation):

  • Phase A (Concept and Technology Development): ミッションのコンセプト、技術要件を開発し、技術の予備評価を行います。
  • Phase B (Preliminary Design and Technology Completion): 予備設計と必要な技術開発を完了させ、システムの基本要件を確立します。

実装段階 (Implementation):

  • Phase C (Final Design and Fabrication): システムコンポーネントの最終設計と製造を行います。
  • Phase D (System Assembly, Integration and Test, Launch): システムの組み立て、統合、テスト、および打ち上げ準備と実施を行います。
  • Phase E (Operations and Sustainment): 主要ミッション遂行中のシステムの運用と維持を行います。
  • Phase F (Closeout): ミッションを完了し、システムを運用終了させ、得られたデータを分析し、コンポーネントを廃棄します。

NASAのライフサイクル管理アプローチの特徴:

  • 主要意思決定点 (Key Decision Points, KDP): 各フェーズの節目でレビューと検証が実施され、プロジェクトの継続または中止に関する決定が下されます。
  • 技術的および管理的プロセス: 各フェーズで、技術的プロセス(設計、検証、妥当性確認など)と管理的プロセス(リスク管理、構成管理、インターフェース管理、技術データ管理)が実行されます。
  • ドキュメントと計画: 各段階で、システムエンジニアリング管理計画(SEMP)、統合・テスト計画、運用・保守マニュアルなどの技術的および管理的ドキュメントが作成・更新されます。

システムライフサイクル管理

システムライフサイクル管理は、システム工学の中核をなす要素であり、初期構想から最終的な廃棄に至るまで、システムの全期間にわたる成功裏な実現を保証するための、すべての活動とプロセスを効果的に調整することを目的としています。このアプローチは、プロジェクトのコスト、品質、納期を最適化するために、様々な工学分野と管理分野の包括的な統合と連携を意味します。

システムライフサイクル管理は、以下の主要な要素を網羅しています。

  • ライフサイクル計画 — システムの全存在期間にわたるフェーズ、タスク、スケジュール、リソースの定義。
  • 要求管理 — 要求事項の収集、分析、管理、およびそのトレーサビリティとタイムリーな更新の確保。
  • 構成管理 — システムのすべてのコンポーネントとそれらの変更の識別、管理、文書化。
  • リスク管理 — プロジェクトに影響を与えるリスクの定期的な特定、評価、および最小化。
  • 検証と妥当性確認 — システムが所定の要件に適合しているかの確認と、運用条件下での有効性の評価。
  • 意思決定支援 — 代替案のモデリングと分析、最適な設計ソリューションの選択。

参考文献

  • ISO/IEC 12207:2017 Systems and software engineering - Software life cycle processe
  • ISO/IEC/IEEE 15288:2023 Systems and software engineering - System life cycle processes
  • NASA Systems Engineering Handbook