ソフトウェア工学の手法と理論(SEMAT)の最近の論文を訳すお勉強 その1
http://blog.goo.ne.jp/xmldtp/e/180c4dadafeb6afcba97f73aa6d77125
のつづき。今回は2章。
なお、この文に出てくる「カーネル」とは、日本語に訳されていて、
ソフトウェアエンジニアリングのエッセンス
http://itpro.nikkeibp.co.jp/article/COLUMN/20130526/479662/
に書かれている。
また、SEMATの日本での活動は、
facebookのグループの
https://www.facebook.com/groups/463141277102085/
でやっている。
■ソフトウェア工学の再構築 - 3歳のSEAMAT
<<第二章:広く同意できるカーネルの要素を探す>>
はじめのステップは、ソフトウェアのための共通基盤を認識することだった。
この共通基盤は、カーネルの主要な要素として明示された。
それは、みんなが、ソフトウェア開発するとき頑張る時、普遍的なものであり、
方法論を記述する簡単な言語であり、実践であり、カーネル要素である。
カーネルとしても、言語としても、両方、広く受け入れられる必要があった。
カーネルは、はじめにSEMAT OMG サブミッション[6]に掲載された。
図2および図4として、カーネルは、いくつかの「私たちが常に扱うこと(work with」と
ソフトウェアシステムの開発を刷るとき「私たちが常にすること(do)」を
含んでいる。
「私たちが常に扱うこと(work with)」は、「alphas」と表現した。
an Aspiration :野望は
Led :導く
Progress and :進捗と
Health :健康の
Attribute. :特性を?
の省略形を意味している
alphasは、ソフトウェアエンジニアリングにおいて、進捗と健康の評価と努力が
つりあっていることが不可欠な要素であるとしている。
図2において、SEMATは7つのalphasを認識している。
それらは
機会
ステークホルダー
要求
ソフトウェアシステム
仕事
仕事の方法
チーム
である。
alphasは、SEMATカーネルのユニークな特徴を構成している。
それらは、進捗と健康を示す単純な状態のセットに結び付けられている。
ある状態から他に、alphaを進めるために、各状態は、一連のチェックリスト項目
に結び付けられている。
図3のカーネルからの抜粋は、ソフトウェアシステムのalphaの2るの状態を
リストアップしている。
アーキテクチャ選択の状態から、デモできる状態に移るには、
図4の右側のコラムにある指定された基準が満たされなければならない
(訳注:図4でなく、図3じゃないの?)
「私たちが常にすること(do)」はアクティビティ・スペースとして表現されている。
アクティビティ・スペースは、ソフトウェアエンジニアリングにおいて、がんばってする「何か」のためのプレースホルダーです。図4は15個のアクティビティスペースがある。ソフトウェア開発作業は、かなり広範に渡るため、アクティビティを事前に定義することは、課されないが、代わりに、アクティビティスペースを、少なくとも0、たいていはいくつかのアクティビティで埋めることができる。それらのアクティビティは、手元のコンテキストに関係したものである。このため、実践と継承されたアクティビティを動的に結び付けることができるし、特定の環境にフィットする方法にテーラリングする機会も提供できる。
カーネルは証明可能で、とても安定していて近い将来、ほんのマイナーな変更しかないだろう。
以下を含む使用法がある。
・チームが、努力に対する健康状態と進捗に関する理由付けをするために、考えるべきフレームワークを提供する
・別々に定義され、ソースが書かれ、実践した方法を集約するフレームワークを提供する
・チーム、方法論、仕事の仕方の比較、対比
・ソフトウェアを作った品質評価、作ったときに使った方法論などと独立したものさしとして実践が定義できる
・そして、最も重要なことには、どこにチームがいて、次に何をすべきで、どこを改善する必要があるかを理解する助けとなる
カーネルは、実際に開発する人が、進捗と健康について評価したり、今やっていることを評価したり、特定の環境にフィットさせるために改善することを助けるガイダンスを提供する
カーネルと言葉は、ついにOMGに採用され、ステーブルになることが期待されているが、スタティックでない。
私たちがソフトウェアエンジニアリングを寄り良く理解したり、フィールドが成長するにつれ、それらは進化し続けるだろう。
次は3章