「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>評価]] *目次 [#y2f433b6] #contents *概要 [#f8759b0e] 開発基盤のKPIとKGIは、以下のような関係にある。 |KGI||KPI|h |QCD&br;・Q : Quality(品質/信頼性)&br;・C : Cost(原価低減)&br;・D : Delivery(納期短縮)&br;品質・生産性|⇔|標準化| |~|~|・共通化&br;・再利用| |F : Flexibility(柔軟性)&br;保守性|⇔|バージョンアップの指標| |~|~|互換性(compatibility)の指標| |~|~|移行性(portability)の指標| 開発基盤は、 >ソフトウェア・ライフサイクル上での「Q/C/D/F」向上~ というKGIを達成するための、 KPI -標準化 -共通化・再利用 -保守性 --バージョンアップ --互換性(compatibility) --移行性(portability) を向上させる -枠組み -緩衝層 として機能する。 *KGI [#uc62fdb2] アプリケーション開発から、保守までを含めたライフサイクル全体の成功 >= ソフトウェア・ライフサイクル上での「Q/C/D/F」向上。 **品質/信頼性 [#nab41b25] ***Q : Quality(品質/信頼性) [#f6f4a554] **生産性 [#h8b74447] 生産性の向上による ***C : Cost(原価低減) [#ya169de8] ***D : Delivery(納期短縮) [#s90ca841] **柔軟性 [#b0c26adb] 柔軟性の向上による ***F : Flexibility(柔軟性) [#r4207469] -迅速な障害対応 -様々なアーキテクチャへの対応、最新技術のサポート ***保守性 [#l23c2cc7] -バージョンアップ -移行性(portability) -互換性(compatibility) *KPI [#d7eb2fc1] 以下を指標として利用できます。 **標準化の指標 [#fc902b6c] ***標準化の度合い [#nada81d0] -業務設計だけで如何にブレずに実装に落とし込めるか。 -開発要員によって、モジュール設計や処理方式が --異なる場合、標準化の効果は弱いと言えます。 --同じに慣れば、標準化の度合いは弱いと言えます。 ***標準化の効果 [#ief5c1e1] 大規模案件になればなるほど大きくなる標準化等の設計工数を削減できます。 -開発手順の一本化 --開発の標準化による生産性・品質・信頼性の向上と、脆弱性の排除。 --標準化や自動生成により、バラつきの無い手順で開発可能。 --標準化により、共通化・再利用性が高まる。~ 例えば、[[カスタマイズ可能レイヤ>ベースクラス2]]へ、~ 共通機能を追加・カスタマイズすることも可能になる。 ---カスタマイズ & フィッティングで異なる要件の案件を跨いだ横展開も容易。 ---内部統制的なログ機能、国際化対応(多言語化)機能などを追加実装可能。 -標準化によりトラブルが減る、トラブルシュートが容易になる。 --標準化によりトラブルが減る。 --標準的に実装される各種トレースログ出力を利用できる~ (開発時だけでなく、保守・運用時も利用可能)。 ---開発時のデバッグのし易さ、デバッグ手順の確立。 ---保守・運用時のトラブルシュートのし易さ、~ ---トラブルシュート手順の確立。 -一括外注、オフショア~ 標準化により、一括外注、オフショアなどの開発が容易になる。 --オフショア開発での管理を容易にして~ プロジェクトの成功確率を飛躍的に高めます。 **共通化・再利用の指標 [#yfb38254] ***対象 [#d7e881c4] -形式知 --「[[プロジェクト・テンプレート]]」のアーキテクチャごとのデザイン・パターンを再利用できる。 --「[[当サイト>https://opentouryo.osscons.jp/index.php?FrontPage]]」と「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」のサポート技術情報を再利用できる。 -暗黙知 --開発の暗黙知を「[[プロジェクト・テンプレート]]」に蓄積可能。 --いちいち、マニュアルを参照しなくても理解できる ---APIの利用方法 ---主要な共通部品の存在 ---APIを組み立てテンプレート化する手順 -ツール・ライブラリ~ 「[[各種機能>機能一覧]]」のツール・ライブラリを再利用できる。 ***共通化・再利用の度合い [#v6ccb62c] -共通部品の規模 --用意されている共通部品の規模。 --利用している共通部品の規模。 -1つのオンライン処理が動作する中で処理される~ ユーザコードと共通化コードのステップ数の比率 ***共通化・再利用の効果 [#g75bef0d] 設計と実装の共通化・再利用による工数削減が可能 **バージョンアップの指標 [#x07a96c9] ランタイムのバージョンアップに追随可能か? **互換性(compatibility)の指標 [#u3cf244e] ランタイムを別ランタイムに装換可能か? **移行性(portability)の指標 [#kd202812] 異なる環境に移行可能か? *参考 [#p8032896] 参考になるリンク先。 **開発基盤の必要性 [#n8ffdb60] スクラッチが良い場合と悪い場合があり、 -超高速な開発ができるわけ | Yakst~ https://yakst.com/ja/posts/4668 実験的プロトタイプ、本番アプリケーションを区別することが重要である模様。~ ※ 冒頭にあるように「開発者の話ではなく、状況(前提条件)が大きなカギ」らしい。 **KPIとKGI [#sefb81be] ***KPI [#q4523e36] -重要業績評価指標 - Wikipedia~ https://ja.wikipedia.org/wiki/%E9%87%8D%E8%A6%81%E6%A5%AD%E7%B8%BE%E8%A9%95%E4%BE%A1%E6%8C%87%E6%A8%99 --総合設備効率 - Wikipedia~ https://ja.wikipedia.org/wiki/%E7%B7%8F%E5%90%88%E8%A8%AD%E5%82%99%E5%8A%B9%E7%8E%87 ***KGI [#t03a3eee] **QCDF [#z0073468] ***QCD(quality, cost, delivery) [#y33262c4] -[[[[適用効果]]]] -大林組の営業情報システムを再構築し、情報共有と業務効率向上を実現~ 国内外の土木・建築の工事計画情報と関連情報を集約し、~ 営業体制の強化と受注拡大を支援|株式会社日立ソリューションズ~ http://www.hitachi-solutions.co.jp/company/press/news/2017/0330_2.html ***F(flexibility) [#u78f9ef6] 下記の「[[保守性>#s10d4be7]]」を参照。 **標準化 [#td5ee039] 品質管理用語らしいです。 -品質管理の考え方「標準化」とは?~ http://happymakeproject.com/6238/ -標準化(ひょうじゅんか)とは - コトバンク~ https://kotobank.jp/word/%E6%A8%99%E6%BA%96%E5%8C%96-7911 **保守性 [#s10d4be7] ***バージョンアップ [#w759936a] -[[バージョンアップ対応]] ***互換性(compatibility) [#ie2c8234] -基本的に、API([[ランタイム・フレームワーク]])層は、~ 得手・不得手があるため、コンパチブルであることが重要と考えています。 --JavaScriptフレームワーク選定の議論 - Qiita~ http://qiita.com/azu/items/2921f62127b8d3a1aa03 --Hibernateはどのようにして私のキャリアを破滅寸前にしたか | To Be Decided~ https://www.kaitoy.xyz/2017/02/23/how-hibernate-ruined-my-career/ --VS系コンテンツ - マイクロソフト系技術情報 Wiki~ https://techinfoofmicrosofttech.osscons.jp/index.php?VS%E7%B3%BB%E3%82%B3%E3%83%B3%E3%83%86%E3%83%B3%E3%83%84 ---Windows Form vs WPF ---ASP.NET Web Forms vs ASP.NET MVC ---ADO.NET vs Entity Framework ---ASP.NET Forms認証 vs ASP.NET Identity -Open棟梁も、UIサブシステムや、データアクセスがコンパチブルになっています。 --UIサブシステム~ [[通信制御機能]] --データアクセス ---[[クロスDB対応>https://techinfoofmicrosofttech.osscons.jp/index.php?%E3%82%AF%E3%83%AD%E3%82%B9DB%E5%AF%BE%E5%BF%9C]] ---[[ADO.NET vs Entity Framework>https://techinfoofmicrosofttech.osscons.jp/index.php?ADO.NET%20vs%20Entity%20Framework]] ***移行性(portability) [#r45722eb] [[互換性(compatibility)>#ie2c8234]]があるため、移行性(portability)が担保されるように思います。 -事例 : テンプレートをPaaS化、その後、ゲートキーパーデザインパターンに適合させた事例。 --Open棟梁概要説明 v02-00 > 自動車走行ログの集配信システムの例~ https://www.slideshare.net/daisukenishino/open-01-50-40474003/17 #ref(image1.png,left,nowrap,) --オープンアーキテクチャ,オープンソースソフトウェア時代の~ 標準化フレームワークを使用したプロジェクトマネジメント~ 新技術導入時のリスクヘッジの具体事例~ https://www.slideshare.net/daisukenishino/ss-66717458/19 #ref(image2.png,left,nowrap,) -クラウドに基幹を移行して5年超経過 - 急がば回れ、選ぶなら近道~ http://d.hatena.ne.jp/okachimachiorz/20170813/1502628049 --「クラウド化によって、システム寿命が伸びる。」の中にヒントが。 --「Asakusaの最大のメリットであるポータビリティの高さ」ということで、~ 業務ロジックとAPI(ランタイム・フレームワーク)の緩衝層として機能。