IEEE 1471 は、「ソフトウエア集約システムのアーキテクチャ」を記述するためのIEEE標準の一つであり、ソフトウェアアーキテクチャとしても知られる。ISO/IEC/IEEE 42010:2011 Systems and software engineering — Architecture description で置き換えられた。

概要

IEEE 1471は、公式にANSI/IEEE 1471-2000 「ソフトウエア集約システムのアーキテクチャ記述のための推奨指針」 (Recommended Practice for Architecture Description of Software-Intensive Systems) として知られる標準の短縮名である。IEEE (Institute of Electrical and Electronics Engineers)用語で、これは、数あるIEEE標準の中でも最も少ない規範的標準の一つの「推奨指針」(Recommended Practice) である。2007年、この標準は ISO/IEC JTC1/SC7 によって ISO/IEC 42010:2007 「システムとソフトウエア工学--ソフトウエア集約システムのアーキテクチャ的記述のための推奨指針」 (Systems and Software Engineering -- Recommended practice for architectural description of software-intensive systems) として採用された[1]

『アーキテクチャ(仕組)』は、長い間、システムのライフサイクルにわたる強い影響力を持つと認識されてきた。しかしながら、比較的最近になるまで、アーキテクチャ的思考の傾向は主にハードウエア課題に向けられており、全体から見てソフトウェア面は開発のプレッシャーから軽視されることが多かった[1]。IEEE 1471 は、ソフトウェア集約的システムのアーキテクチャについて考える基盤を提供するために作り出された。

IEEE 1471 の貢献は、以下のように要約できる(このリストで、イタリック体の項目は、その標準で定義されて使われている):

IEEE 1471-2000 は、IEEE 1471 で扱っている諸概念とRM-ODP英語版や IEEE 12207 などの他の標準におけるアーキテクチャ概念とを関係付ける有益な付録を提供している。

歴史

1995年8月、IEEEのソフトウエア工学標準化委員会 (SESC) は、IEEEアーキテクチャ計画グループ (APG) へIEEE標準にアーキテクチャ的思考を取り入れるための方向性を設定する権利を与えた。1996年4月、アーキテクチャ作業グループ (AWG) がSESCによって作られた勧告を実現するため結成された。AWGの会長は Basil Sherlund、副会長は Ronald Wade と David Emery で、その仕様は Rich Hilliard が編集した。AWGには25人のメンバーがいた。草案には130人のレビュアーがコメントし、投票が行われた。2000年9月、IEEE-SA標準化委員会が、IEEE Std 1471-2000 としてその標準を承認した。

2006年、ISO/IEC 第1合同技術委員会 (JTC1) 、情報技術/サブ委員会 SC7 ソフトウエアとシステム工学は、特別な『最速持回り手順』の下、ISO/IEC 42010として採択し、並行してISOとIECの国家団体によっても承認された。ISO/IEC JTC1/SC7/WG42とIEEE CSによるこの標準の協調的改訂が2006年に始められ、ISO/IECの最速持回り投票の成功に続いてその標準のIEEE標準5年レビューが行われた。

2011年11月、IEEE 1471-2000 は ISO/IEC/IEEE 42010:2011 Systems and software engineering — Architecture description に置換された。

アーキテクチャ記述の目的

IEEE 1471 によれば[1][2][3]、 アーキテクチャ記述は以下のため使うことができる:

ソフトウエアアーキテクチャに関係するIEEE用語

ソフトウエア工学用語のIEEE標準用語集に従い[4]、以下の定義が使われる:

アーキテクチャ記述のためのIEEE概念的フレームワーク

IEEE 1471は、以下の概念的フレームワークを使う:[1][2][5]

  1. システムの環境(またはコンテキスト)はシステムに影響し得る。その環境は、インタフェース経由での直接的あるいは他の方法による間接的のいずれにもかかわらず、当該システムと相互作用するほかのシステムを含むことがある。その環境は、他のシステムと関連する当該システムのスコープを定義する境界を決める。
  2. ひとつのシステムは、一人以上の利害関係者を有する。各利害関係者は、通常そのシステムに関心を持つか、または関わっている。
  3. 関心は、システムの開発、その運用あるいは、一人以上の利害関係者にとって重大であるかあるいは他の点で重要な、あらゆる他の局面に関係するそれらの関心である。関心は、性能、信頼性、セキュリティ、配備、及び発展性などのシステムの観点を含む。
  4. システムは、その環境での1つ以上のミッション(役務)を満たすため存在する。ミッションとは、一人以上の利害関係者によって何らかの目的のセットに合致するよう意図されたシステムの利用または運用である。
  5. 各システムは、それが理解されるか否かを問わず、記録されるか概念的であるかを問わず、1つのアーキテクチャを持つ。1つのアーキテクチャは、アーキテクチャ記述として記録され得る。
  6. 1つのアーキテクチャ記述は、(アーキテクチャ的)ビューと呼ばれる1つ以上の構成要素で組織化される。各ビューは、そのシステムの利害関係者の1つ以上の関心を取扱う。1つのビューは、特定な視点からのシステムアーキテクチャの部分的表現である。
  7. 視点は慣習を確立し、それによってビューが生成され、描写され、そして分析される。この意味で、1つのビューは1つの視点に準じる。視点は、そのビューを記述するのに使われるべき、(表記法、モデル、あるいはプロダクトのタイプを含む)言語、及び、これらのビューを表現に適用されるべきあらゆる関連するモデリング手法または分析技法を決める。これらの言語や技法は、その視点により取扱われる関心に関連する結果をもたらすため使われる。
  8. アーキテクチャ記述は、使用する1つ以上の視点を選定する視点の選定は通常、アーキテクチャ記述を行う利害関係者の考えとその関心に基づく。1つの視点の定義は、1つのアーキテクチャ記述で生み出されるか、またはどこか(1つのライブラリ視点)で定義されることもある。
  9. ビューは、1つ以上のアーキテクチャ的モデルから構成できる。そのようなアーキテクチャ的モデルはそれぞれ、関連するアーキテクチャ的視点によって確立された手法を用いて開発される。1つのアーキテクチャ的モデルは、1つ以上ののビューに関与できる。

IEEE 1471への遵守

IEEE 1471[1] は、以下のような、アーキテクチャ記述で遵守すべき規範的要求のセットを定義する:

脚注

  1. ^ a b c d e ISO/IEC 42010:2007, Systems and Software Engineering -- Architecture Description
  2. ^ a b Architecture and Change
  3. ^ Description of IEEE 1471
  4. ^ IEEE Std 610.12−1990, IEEE Standard Glossary of Software Engineering Terminology.
  5. ^ IEEE 1471 Conceptual Framework

関連項目

外部リンク