SDM公開講座「現代ソフトウエアエンジニアリングの俯瞰図」
の第三回
システム/ソフトウェアのライフサイクルプロセス
~ソフトウェア・エンジニアリング導入の第一歩を踏み出そう~
を聞いてきたので、メモメモ
・ソフトウェアエンジニアリングとは
SWEBOK(すえぼっく)の定義:ソフトウェアへの工学の適用
・・・よくわからない・・・
つまり、
体系化し
手順を作成し作業し
データを収集してフィードバック
→プロセスが「きも」
第一部「共通フレーム2007」の概要
→ISO/IEC12207(JISX0160)
第二部 日本独自のプロセス拡張の狙い
→超上流の重視
第三部 SLCPと共通フレームの最新動向
■共通フレームとは
・ライフサイクルを通じて、必要な作業項目、役割等を包括的に
規定した共通の枠組み
・目的
ソフトウェアに関わる人が共通の言葉で
・背景
認識のズレによるトラブルの発生
取引(二者間)の作業役割が明確化されない
・作成者
ユーザー企業、ベンダー企業、大学、経産省、IPA/SEC
→産官学
・ソフトウェア開発方法論との関係
ウォーターフォール、スパイラル、アジャイルなんでも適用可能
→開発方法論に共通
・JIS X 160(ISO/IEC12207)との関係
逐次参照している。プラスアルファして作っている。
ソフトウェアライフサイクルプロセス
ISO/IEC12207+追補→JIS化
→共通フレーム98
+超上流→共通フレーム2007
システムライフサイクルプロセス
ISO/IEC15288 JISX170 2004
・プロダクトの品質はプロセスの品質から→ソフトウェアにも適用
プロセスをきちっと作り上げ、品質を上げる
プロセス:JIS Q 9000
インプットをアウトプットに変換する活動
開発者が使うプロセス:開発プロセス
運用者が使うプロセス:運用プロセス
Whatがかいてあり、Howではない
・プロセスが確立されていないと:QCDが安定しない
・共通フレームの特徴
1番以外は、SLCPの特徴
1.超上流の重視
2.モジュール製の採用
:
5.工程、時間からの独立性
6.開発モデル、技法、ツールからの独立性
:
・共通フレームのプロセス体系
黄色のところが追補
青が日本独特
・共通フレームの要素と階層
プロセス:アクティビティをまとめたもの
アクティビティ:関連タスクをあつめたもの
タスク:作業内容
リスト:例示
ガイダンス:説明
黒の太字が国際規格(細字が日本独自)
・プロセスのトピックス
(1) 契約と合意の視点
・取得プロセス
・供給プロセス
・契約の変更管理:日本で作って、国際規約に入れられた
取得供給は、ユーザーベンダーとは限らない。
ユーザー企業内にもある(業務部門と情報システム部門)
ベンダーにもある(一次ベンダーと二次ベンダー)
(2) 運用の視点
・運用プロセス
(3) 組織に関するライフサイクルプロセス
→PMBOKとかを参考にしたほうがいいかも
・人的資源のプロセス
→教育訓練プロセスが変わった
プロジェクトの成功:人の能力→人を調達するのもアリ
教育+調達
・情報資産の再利用プロセス:95年版にはない
再利用が重要視されている
・資産管理
・再利用施策管理
・ドメイン技術
すべて再利用は考えられない、ドメイン(適用の場面)に分けて範囲をきめる
なかなか再利用は難しい:組み込みは結構うまく回っている?
(4) 支援ライフサイクルプロセス
主ライフサイクルプロセスから呼び出される。
・検証プロセス:正しく製品を作っているか
→設計が間違ってたら、間違ってプログラムに反映されているか
・妥当性確認プロセス
→正しい製品を作っているか
・テーラリング(修整)の適用について
身の丈にあわせたものになているか?
・テーラリングのポイント
共通フレーム全部やらないといけないわけではない
自分たちのプロジェクトに合わせた形
省略する場合、省略して大丈夫か確認
・テーラリングしないと・・
小規模では冗長
品質を高める場合には足りない
→自分たちの属性に合わせて
・テーラリング方法
1.作業工程を定義する
工程名称は変わってもかまわないが、アクティビティの中身はあわせたほうが・・
→認識のズレがないように
時間軸に並べて
2.開発モデルの選択
3.プロセスの利用者を具体化
誰がやるのか、責任者は?をマッピング
■日本独自のプロセス拡張の狙い
・プロセス拡張の狙い
・国際規約は要件が確定しているところから
→要件を確定するところが大事でしょう
・日本ではそこを拡張
→どういう形でつかうのかが必要:超上流(2005年あたり)
・上流工程の上に大事な工程:超上流
→菊島さんが話します
・開発に入る前の「要求品質の確保」が大事
→「経営者が参画する要求寝室の確保」という本に
・超上流プロセス
経営戦略→システム化の方向性→システム化の計画
・もし超上流を軽視したら
システム開発における手戻り発生、コスト増加などのリスク
超上流でのトラブルの原因
・システム化の方針・目的があいまい
・要件が固まらない
・あいまいな見積もり
・共通フレームに考えられている考え方
「利害関係者の役割と責任分担の明確化」を提唱
事業要件、業務要件、システム要件を定義できるのは
経営者、業務部門、情報システム部
「多段階の見積もり方式」を提唱
初期:ブレが大きい
→見積もりは、何段階に分けて
→これができないのが、政府関係
分割発注は違う業者という規定
→一括発注になってしまう
「V字モデルの採用」を提唱
品質の担保:V字の右と左であわせる
「超上流における準委任契約の採用」を提唱
→「モデル契約」でも
「要件の合意及び変更ルールの事前確立」を提唱
→要件の変更ルールをきめておく
見積もりをとるとか
「非機能要件の重要性を認識すること」を提唱
「運用・保守を含めたSLCPを考えること」を提唱
■SLCPと共通フレームの最新動向
・ライフサイクルプロセスの動向
国際標準の2つのライフサイクルプロセス
ソフトウェア:12207
1995 制定
2002 追補1
2004 追補2
2008 改定
システム:15288
2002 制定発行
2008 改定→JIS化:2012か2013予定
・問題点と解決
・2つのライフサイクルプロセスの内容に整合性が取れていない
プロセス、アクティビティ、タスクの粒度がまちまち
・ソフトウェアアセスメント15504で求められている成果が
記述されていなかった→追補1,2で解決
・2008年版 ハーモナイズの中間結果
→まとまるのは数年先
・改訂版
ソフトウェアライフサイクルプロセスは変わっていない
組織、テクニカルの部分、システムの考え方を入れている
→テクニカルの部分、抽象度が上がっている
・2007の位置づけと今後
JISX0160 2012と、システムを取り入れて
共通フレーム201X
ISO/IEC 20000(ITIL)
ISO/IEC 29148(要求工学)
→今年度のSECの成果で出てくる?