アジャイルに行こう!

SEMAT つづき(ゴールと原則)

»

SEMATのCall for Actionを引き続き紹介します。4章のゴールと5章の原則です。

ゴールには、この活動の目標とトラック(ワーキンググループ)が示されていて、それぞれに活動が進められるようです。

・ 定義(Definitions): ソフトウェア工学、およびその領域のその他本質的なコンセプトを定義する。
・ 理論(Theory): 本質的な助力を提供する理論(特に数学からの)。
・ ユニバーサル(Universals): Sematカーネルに組み込むべき、ソフトウェア工学の汎用要素を特定する。
・ カーネル言語(Kernel language): ユニバーサル、プラクティス、パターンを記述する言語を定義する。
・ 評価(Assessment): ソフトウェア工学のプラクティス、理論を評価する手法。(Semat自体の評価も含む)

ぼくは特に、Theoryに注目しています。ここには、既存のソフトウェア工学の枠をこえて、いろいろな理論が集まりそうです。たとえば、集合論や確率、統計、キュー理論などはたやすく予想されるでしょうが、より心理学に近いもの、例えば、「カテゴリー理論」が例として出てきます。これはLakeoffらの認知心理学で、オブジェクト指向の原点となる、クラスの抽出に人間の認知特性が大きく関わることをもとにしています。

次に、この活動を進めるにあたっての原則を引用。

1. 品質(Quality)。主目標はソフトウェア製品とプロセスの改善にある。
2. シンプルさ(Simplicity)。カーネルには本質的なコンセプトのみを含む。
3. 理論(Theory)。カーネルは堅固で厳密な理論的な基礎の上に築かれる。
4. 現実性とスケーラビリティ(Realism and scalability)。カーネルは実践的なプロジェクト(大規模プロジェクトを含む)に適用可能で、そこで検証可能な手法でなければならない。
5. 正当性(Justification)。すべての提案は、明確な論拠によって正当化されなければならない。
6. 反証可能性(Falsifiability)。すべての主張は、実験的な評価と反論を受けなければならない。
7. 先見性(Forward-looking perspective)。前世代に起こった方法論の淘汰を考慮に入れつつも、完全な互換性には縛られない。
8. モジュール性(Modularity)。プラクティスとパターンはカーネルを使って定義され、それぞれの組織のニーズに合うように組み合わせたり調整したりできる。
9. 自己改善(Self-improvement)。カーネルは自身の進化を可能にする仕組みを搭載しなければならない。
10. オープン性(Openness)。カーネルの開発においては、Semat活動のメンバーからの適切な形式の示唆は、すべて考慮対象とされなければならない。
11. 公平性(Fairness)。貢献するすべてのアイディアは、功績として評価されなければならない。どんな側面も、特定のステークホルダやコミュニティの利益に偏って設計されてはならない。
12. 目的性(Objectivity)。アイディアは、前もって明確に定義された目的性の判断基準によって評価されなければならない。
13. タイムリー性(Timeliness)。進捗と結果をデリバリするために、締め切りを設けてそれを監視しなければならない。

1-9はカーネルに適用される原則。そして、10-13は活動のプロセス全体にわたる原則となっています。

活動に先立って、その原則をこうやって書き示すことは、プロジェクトのよい進め方ですね。

さて、今月中には日本語訳を完成させたいと思っています。

Comment(0)

コメント

コメントを投稿する