「Open棟梁 wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
開発基盤のKPIとKGIは、以下のような関係にある。
KGI | | KPI |
QCD ・Q : Quality(品質/信頼性) ・C : Cost(原価低減) ・D : Delivery(納期短縮) 品質・生産性 | ⇔ | 標準化 |
・共通化 ・再利用 |
F : Flexibility(柔軟性) 保守性 | ⇔ | バージョンアップの指標 |
互換性(compatibility)の指標 |
移行性(portability)の指標 |
開発基盤は、
ソフトウェア・ライフサイクル上での「Q/C/D/F」向上
というKGIを達成するための、
KPI
- 標準化
- 共通化・再利用
- 保守性
- バージョンアップ
- 互換性(compatibility)
- 移行性(portability)
を向上させる
として機能する。
KGI †
アプリケーション開発から、保守までを含めたライフサイクル全体の成功
= ソフトウェア・ライフサイクル上での「Q/C/D/F」向上。
品質/信頼性 †
Q : Quality(品質/信頼性) †
生産性 †
生産性の向上による
C : Cost(原価低減) †
D : Delivery(納期短縮) †
柔軟性 †
柔軟性の向上による
F : Flexibility(柔軟性) †
- 迅速な障害対応
- 様々なアーキテクチャへの対応、最新技術のサポート
保守性 †
- バージョンアップ
- 移行性(portability)
- 互換性(compatibility)
KPI †
以下を指標として利用できます。
標準化の指標 †
標準化の度合い †
- 業務設計だけで如何にブレずに実装に落とし込めるか。
- 開発要員によって、モジュール設計や処理方式が
- 異なる場合、標準化の効果は弱いと言えます。
- 同じに慣れば、標準化の度合いは弱いと言えます。
標準化の効果 †
大規模案件になればなるほど大きくなる標準化等の設計工数を削減できます。
- 開発手順の一本化
- 開発の標準化による生産性・品質・信頼性の向上と、脆弱性の排除。
- 標準化や自動生成により、バラつきの無い手順で開発可能。
- 標準化により、共通化・再利用性が高まる。
例えば、カスタマイズ可能レイヤへ、
共通機能を追加・カスタマイズすることも可能になる。
- カスタマイズ & フィッティングで異なる要件の案件を跨いだ横展開も容易。
- 内部統制的なログ機能、国際化対応(多言語化)機能などを追加実装可能。
- 標準化によりトラブルが減る、トラブルシュートが容易になる。
- 標準化によりトラブルが減る。
- 標準的に実装される各種トレースログ出力を利用できる
(開発時だけでなく、保守・運用時も利用可能)。
- 開発時のデバッグのし易さ、デバッグ手順の確立。
- 保守・運用時のトラブルシュートのし易さ、
- トラブルシュート手順の確立。
- 一括外注、オフショア
標準化により、一括外注、オフショアなどの開発が容易になる。
- オフショア開発での管理を容易にして
プロジェクトの成功確率を飛躍的に高めます。
共通化・再利用の指標 †
対象 †
- 暗黙知
- 開発の暗黙知を「プロジェクト・テンプレート」に蓄積可能。
- いちいち、マニュアルを参照しなくても理解できる
- APIの利用方法
- 主要な共通部品の存在
- APIを組み立てテンプレート化する手順
- ツール・ライブラリ
「各種機能」のツール・ライブラリを再利用できる。
共通化・再利用の度合い †
- 共通部品の規模
- 用意されている共通部品の規模。
- 利用している共通部品の規模。
- 1つのオンライン処理が動作する中で処理される
ユーザコードと共通化コードのステップ数の比率
共通化・再利用の効果 †
設計と実装の共通化・再利用による工数削減が可能
バージョンアップの指標 †
ランタイムのバージョンアップに追随可能か?
互換性(compatibility)の指標 †
ランタイムを別ランタイムに装換可能か?
移行性(portability)の指標 †
異なる環境に移行可能か?
参考 †
参考になるリンク先。
KPIとKGI †
KPI †
KGI †
QCDF †
QCD(quality, cost, delivery) †
F(flexibility) †
下記の「保守性」を参照。
標準化 †
品質管理用語らしいです。
保守性 †
バージョンアップ †
互換性(compatibility) †
- Open棟梁も、UIサブシステムや、データアクセスがコンパチブルになっています。
移行性(portability) †
互換性(compatibility)があるため、移行性(portability)が担保されるように思います。
- 事例 : テンプレートをPaaS化、その後、ゲートキーパーデザインパターンに適合させた事例。