XMLを用いたプロセス品質 評価作業の構造化に基づく 情報表示

XMLを用いたプロセス品質
評価作業の構造化に基づく
情報表示システムの試作
谷口真也† 内田朋文† 松下誠† 井上克郎† ‡
†大阪大学大学院基礎工学研究科
‡奈良先端科学技術大学院大学情報科学研究科
ソフトウェアプロセスの品質評価
• 現在のソフトウェア開発プロセスがどの程度効率よく行わ
れているかの判断を行うこと
• プロセス品質評価の結果は,生産効率の向上やコスト削
減に役立つ
• プロセス品質評価は複数の品質評価規格を参照するこ
とによって行われる
– CMM(Capability Maturity Model)
– ISO-9000
– SPICE(Software Process Improvement Capability
dEtermination)
2000/10/4
IPSJ全国大会
2
プロセス品質評価作業
品質評価作業を行うためには、規格文書から必要な情報を抽出する
必要がある。
・評価の対象となる作業
・作業で用いられ、また生成されるプロダクト
・評価を行う際の評価値の集合
・各要素間における何らかの関係
これらの情報に基づいて、品質評価作業は行われる。
2000/10/4
IPSJ全国大会
3
研究の目的
品質評価規格の問題点
• 複数の品質評価規格が存在
– 評価規格間の差を知ることが困難
– 各規格が独自の評価手順を持ち,結果の再利用が難しい
• 品質評価規格が自然語で記述された多量の文書
– 評価の対象となる作業が理解しづらい
– 文書間の関連を調べるのが困難
品質評価作業をモデル化し,それに基づき規格文書を構造化
この結果,品質評価を行う際の参照が容易
2000/10/4
IPSJ全国大会
4
品質評価作業のモデル化
• 作業次元
– 品質評価の対象となるソフトウェアプロセスに属する各作業,及
び,その集合
• 評価軸
評価に利用される順序関係を持った評価値の集合
• 評価空間
– 作業次元に対して評価軸を適用したことにより得られる空間
• プロダクト
– プロセスの各作業における入出力,及び,参照されるプロダクト
の情報
• リレーション
– 作業次元,プロダクトの二要素間の関係
2000/10/4
IPSJ全国大会
5
SPICE
ソフトウェア開発作業を細分化された二つの作業軸によって定義している.
・プロセスカテゴリ(例 コーディング,テスト)
ソフトウェアプロセス上での各作業の分類であり,各プロセスカテゴリは
いくつかの Process から構成される.
入出力として work product を持つ.
・成熟度レベル(例 作業計画を文書化する,標準プロセスを定義する)
組織がどの程度効率良いプロセスを実現しているかを示すものであり,
各レベルはいくつかの Process attribute から構成される.
二つの作業軸の交点に対して,四段階で評価を行う.
2000/10/4
IPSJ全国大会
6
SPICEへの適用
ー作業次元ー
対象作業全体
作業次元
構成要素
カテゴリ
CUS
ENG
ENG.1
ORG
LEVEL0 LEVEL1 LEVEL2
ENG.2
BP1
2000/10/4
成熟度
PA2.1
BP7
IPSJ全国大会
MP2.2.1
LEVEL5
PA2.2
MP2.2.4
7
SPICEへの適用
ープロダクト・リレーショ
ンー
work product
プロダクト
1
カテゴリ
2
リレーション
ENG
Coding
standard
10
Software
units(code)
56
SUP
入力
SUP.1
出力
ENG.1
SUP.8
ENG.2
参照
108
BP1
BP2
BP3
BP7
109
2000/10/4
IPSJ全国大会
8
SPICEへの適用
ー評価空間・評価軸ー
4
3
評価軸 2
1
0
CUS
0
1
2
ENG
3
MAN
4
SUP
プロセスカテゴリ
2000/10/4
ORG
IPSJ全国大会
成熟度レベル
5
9
XML
• 文書,データの交換,及び配布をするための文書構造化
言語.
DTD(文書方定
義) TEXT ANY>
<!ELEMENT
<!ELEMENT STRUCTURE …
<!ELEMENT STRUCTURE …
XML文書の構成
•DTD(文書型定義)
文書のタグ規則を定義
•XMLインスタンス
実際のタグつき文書
XMLインスタンス
•データ構造にあわせた記述
•データごとの意味づけ
2000/10/4
IPSJ全国大会
<STRUCTURE …>
<STRUCTURE …/>
……
……
<ACTIVITY>…
……
10
XMLによる品質評価規格文書の記述
• 宣言部 モデルの各要素に該当する要素の宣言
<STRUCTURE>
<EAVLUATION_DEC>
<PRODUCT_DEC>
<SPACE>
作業次元の要素,及び,階層構造
評価軸
プロダクト
評価空間
• 記述部 各要素に対応した文書中の記述を表現する
<ACTIVITY>
<EVALUATION>
<PRODUCT>
<RELATION>
2000/10/4
作業次元
評価軸
プロダクト
要素間の関連
IPSJ全国大会
11
提案するXML記法による記述例
<STRUCTURE ID="CATEGORY“ TYPE="SET">
作業次元の階層構造
<STRUCTURE ID="CUS" />
<STRUCTURE ID="ENG" />
カテゴリ
………
</STRUCTURE>
<ACTIVITY ID="ENG">
CUS
ENG
ORG
The Engineering process category consists of ………
</ACTIVITY>
リレーション
10
<EVALUATION_DEC ID="RATING" NAME="SPICE" TYPE="FOUR" />
<PRODUCT_DEC ID="P10" NAME="Coding standard" />
入力
Software
units(code)
<RELATION ELEMENT1="ENG.1" ELEMENT2="P10" TYPE="INPUT">
ENG.1
10) Coding standard……
</RELATION>
2000/10/4
IPSJ全国大会
12
品質評価作業の情報表示ツール
• 品質評価作業に関連する情報表示ツールを試作した.
– 作業次元の階層を表示
– 各要素の説明,関連するプロダクトの一覧表示
• また、このツールを利用してXMLを利用して記述した品
質評価規格文書の正当性を検証した.
ツール
ユ
ー
ザ
ー
① XMLで記述された
品質評価規格文書
構文解析
③作業次元の表
② 構文木
④ 詳しく知りたい部分
表示
⑤ 説明文・関連要素
2000/10/4
IPSJ全国大会
13
ツールの使用例
2000/10/4
IPSJ全国大会
14
まとめ
• ソフトウェアプロセスの品質評価作業のモデル化
し、それに基づくXML記法を実際にSPICE、
ISO9000-3に対して適用した.
• また,その記述された文書を読みこみ、必要な情
報を出力するツールを試作した.
• 本ツールを利用することによって、評価作業に対
する見通しを立て易くし,評価の労力を軽減でき
ると考えられる.
2000/10/4
IPSJ全国大会
15
今後の課題
• 他の評価規格への適用
• ツールの評価支援機能の強化
2000/10/4
IPSJ全国大会
16