「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>開発基盤とは]]

*目次 [#gf3b084e]
#contents

*概要 [#e76b9bfb]
開発基盤のプログラム・マネジメントの際の注意点。

-ポートフォリオから~
乖離しないようにプログラムを作成する。

-以下に注意して、
--個々のプロジェクトを組立る。
--そして、プログラム・マネジメントする。

*方針 [#h7ce5259]

**ポートフォリオ [#la990fc4]
[[ポートフォリオ>#lf46e846]]に合わせて個々のプロジェクトをプログラムする。

**オープン or クローズド [#vb474f6e]
-利用するモノと開発するモノがある。
-何を利用し、何を開発する(≒どのような価値を生む)か?明確にする。

***オープン [#n24db47a]
主に利用するモノ。

-コモディティ。

-内製する意味が無いモノ。

-利用する分には、オープンなモノの方がイイ。

--OSSであれば、ライセンス・フィー無しで利用できる。~
(ただし、付帯費用が発生するケースがある)

--特に、[[言語やプラットフォーム>#wfc693dd]]は、オープンな技術である方が、~
ライセンス(使用許諾)などに縛られず組み合わせられる。

***クロースド [#i7d00014]
主に独自開発するモノ。

-オープンなモノを利用するダケでは差別化不可能(ネットの情報で良い)。

-クロースドな要素(≒[[独自性の有るコンテンツ力>#hb719a93]])がどこかしらに必要になる。
--オープンなモノを組み立てて独自性があるモノにする。
--クローズドにする(マネタイズするにはイイが開発基盤には適合しない)。

-クロースドなモノより、[[オープン>#n24db47a]]なモノの方が利用させ易い。~
単独でマネタイズできない開発基盤は開示した方がイイ。

*要素 [#o1b6d980]
以下のような要素を準備した上で組み立てる。

**言語やプラットフォーム(オープン) [#wfc693dd]
-コモディティであるため、シェアが重要。
-実際の組み立ての際は、[[STPの見極め>#n79b6d9a]]が必要。

***言語 [#v60de13f]
[[シェア - .NET 開発基盤部会 Wiki > 言語>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E3%82%B7%E3%82%A7%E3%82%A2#od7c604b]]

***プラットフォーム [#x147597f]
[[シェア - .NET 開発基盤部会 Wiki > OS, クライアント, サーバ, プラットフォーマー>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E3%82%B7%E3%82%A7%E3%82%A2#a113cbc4]]

**独自性の有るコンテンツ力(クローズド) [#hb719a93]
-コンテンツ力が必要になる。
-[[プロジェクトの定義にある独自性 / 有期的 / 段階的詳細化>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?PMP%EF%BC%9A%E5%85%B1%E9%80%9A#wfc1fef5]]がある。

***ライブラリ、フレームワーク → テンプレート [#mbb16b85]
-技術分野毎に開発され得る。

--テンプレートとパッケージ・マネージャを使用して、~
スタックを組んで、TODOコメントを提供する。

--ライブラリ、フレームワークは、~
テンプレートの機能強化によって出来上がる。

-例
--Asakusa Framework
--Open Touryo

***ランタイム [#h73c7094]
ランタイムは毛色が少々異なる。

-opensource COBOL

[[言語やプラットフォーム(オープン)>#wfc693dd]]と対比すると「ニッチ」と言える。

***ドキュメント(形式知) [#c3026b45]
インターネットに書いた方がイイ(イントラは誰も見ない)。

***ノウハウ(暗黙知) [#x94d62c4]
-メリット
--ノウハウ(暗黙知)≒ 遂行能力
--更なる差別化が必要になる場合、遂行能力で差別化が可能。
--マネタイズ・レベル可能になる(が、開発基盤にはむしろマイナス)。

-デメリット
--暗黙知に近いと、文書化し難いので、オープンにし難い。
--依存度が高いと、セルフサポート化が難しくなる。

**業務パッケージ [#k33bcd8c]
-業務分野毎に開発され得る。

--MosP
--Pleasanter

-以下の検討が必要。~
昨今、後者が増えている。
--自分が主体となって開発するか?
--ソリューションの一角として利用するか?

*組立 [#eb3c0529]

**パターン [#j96abef5]

***スタック(前提) [#r82db6ab]
上位と下位をスタックさせて組み立てる。

-アプリケーションの場合~
プラットフォーム → ランタイム → ライブラリ → フレームワーク

-インフラストラクチャーの場合~
ホスト → ゲスト → コンテナ(docker) → コンテナ・イメージ(docker image)

上位・下位にズレると専門外になるので、組合わせに専門家間での連携が必要になる。~
(ただ、単純に乗るケースも多いので、1ユーザとして使用するダケで済む場合も多い)

※ 昨今、オープンなものは、大概、スタックは出来るようになってきた。~
(スタックすること自体は独自性が低く、施策の必要条件ではあるが十分条件では無くなって来ている)。

***コラボレーション(差別化) [#o333f18d]
-同じレイヤで横の繋がりを意識する。
--繋ぎ目は、オープンなプロトコルである必要がある(HTTP、JSON、OAuth2, etc.)
--スタックは単純に上に乗るが、コラボレーションはカナリ意図的に組み合わせる必要がある。
--同じレイヤ内なので、当該レイヤ内でかなり詳しくならないと「差別化可能な組み合わせ」に到達しない。

-[[フロントエンド + OAuth2 + バックエンド>https://techinfoofmicrosofttech.osscons.jp/index.php?UserAgent%E3%81%A7OAuth2%E3%81%AEToken%E3%82%92%E5%8F%96%E5%BE%97%E3%81%99%E3%82%8B%E3%83%99%E3%82%B9%E3%83%88%E3%83%BB%E3%83%97%E3%83%A9%E3%82%AF%E3%83%86%E3%82%A3%E3%82%B9]]
--モバイル
--AuthN / AuthZ Server
--Resource Server
--API Gateway

-[[IoT>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?IoT]] / [[ビッグデータ>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E3%83%93%E3%83%83%E3%82%B0%E3%83%87%E3%83%BC%E3%82%BF]] / AI

--[[IoT>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?IoT]]
---デバイス
---エッジ
---クラウド

--[[ビッグデータ>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E3%83%93%E3%83%83%E3%82%B0%E3%83%87%E3%83%BC%E3%82%BF]]
---ストレージ~
NoSQL~
データレイク~
データマート~
---EAI/ETL
---分散処理

--AI
---...。
---...。
---...。

-業務パッケージ~
ありものの業務パッケージでソリューションを構築。
--財務・会計
--勤怠・人給・人財
--ワークフロー
--など

**組立のポイント [#q8f06927]
そもそも、ビジネス・ニーズからブレークダウンすればあまり考えなくてイイ事だが、~
組織都合から施策(プロジェクト)がスタートしている場合は、組立に注意が必要。

***組織都合をベースにしない [#k6a9e197]
組織都合の例

-組織のミッションを達成しているというアリバイ工作のようなメトリクス(KPI)

-トランスフォーメーション出来ない組織が保有する、
--リソースの活用
--手段の目的化

-予算認可にのみフォーカスする~
(ベネフィットにコミットしない)
--予算の付き易いBuzzWord狙い。
--カタストロフィ狙い。

***ポートフォリオとの整合性 [#lf46e846]
-ポートフォリオとの整合性を維持する。

-例
--事業ポートフォリオ
---デジタル・マーケティング
---スマート・マニュファクチャリング
---ワークスタイル変革の促進
---ビジネスデータの活用・促進
---位置情報のデータ活用
---コネクテッド・モビリティ
---トータル・セキュリティ

--開発基盤のポートフォリオ
---インフラストラクチャ
---言語、IDE(統合開発環境)
---テンプレ&パッケージ
---その他、各種要素技術

***[[STP>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?STP%E3%83%9E%E3%83%BC%E3%82%B1%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0]]の見極め [#n79b6d9a]
実際にあるビジネス・ニーズに、自身が応えることが出来るか?と言う事。

-上位の方が明確だが、下位のモノにも存在する。

--開発ツール(上位)

---Visual Studio + ASP.NET~
プロフェッショナル・ツール

---Microsoft PowerApps~
EUC(End User Computing)ツール

--プラットフォーム(下位)

---Linux~
サーバー、サービス基盤

---Windows~
デスクトップ、情報システム部

-手段の目的化などでセグメント&ターゲットを見誤ると~
各プロジェクトの成果物がベネフィットを生まないので注意する。

--例
---自動生成
---テスト自動化
---CI / CD

--参考~
OSSコンソーシアム
---統合CASEツールの類は何故、廃れたのか?~
https://www.osscons.jp/joeii3bn2-537/
---SIでCIやテスト自動化が、なかなか上手く行かない理由~
https://www.osscons.jp/jo46pq2ts-537/
---Open PaaS系が某弊界隈で微妙だった件について分析してみた。~
https://www.osscons.jp/joqtakc2c-537/
---生産技術界隈でBuzzったケド、~
ダメだった過去の生産性向上施策の一覧~
https://www.osscons.jp/joy5hs42t-537/

-ビジネス・ニーズはあってもポジショニングが取れないと言うのは、~
既存事業的、若しくは、能力的に、優位なポジション取りが出来ないケース。

--例
---クラウドポータル
---Open PaaS
---, etc.

--参考~
OSSコンソーシアム
---プラットフォーマーへの未練が起こしている諸問題。~
https://www.osscons.jp/jo1y0zmc4-537/

***モチベーション、スポンサーシップ [#a9549376]
AS-IS ---(モチベーション、スポンサーシップ)---> TO-BEが、~
前述のポジショニング(STの次のP)のために重要になる。

-ポジションを取るには魅力的な品質が必要になる。
-コレには、モチベーション、スポンサーシップが重要になる。

-モチベーションの例
--開発基盤
---開発基盤は、先ずは、自社事業の治工具として出てくる(自社事業への貢献)。
---OAuth2の習得には、SaaS開発したいというモチベーションが必要だった。

--ビッグデータ
---ビッグデータを勉強するには、AS-ISでデータ分析業務が必要と思われる。

-スポンサーシップの例
--全体的に、ボトムアップでスポンサーシップが弱いのが日式。
--スポンサーの
---テクノロジに対する理解力
---経営戦略、システム戦略の立案力

***ガバナンス構造の確立と活動 [#e1a0676e]
プログラムとプロジェクトが、戦略目標と整合性維持し、正確に評価されるようにする必要がある。

-戦略目標との整合性維持と監視・制御の活動
--プロジェクト同士が互いに争わないようにする。
--プロジェクトが自律的にスタック&コラボレーションするようにする。

-メトリクス(KPI)を悪用できるものにしない。

--ベネフィットを適切に測定できるものにする。

--自助努力で伸びない数値をメトリクス(KPI)に設定しない。~
若しくは、メトリクス(KPI)が伸びない組織の環境要因を取り除く。

--ベネフィットを伸ばさず、メトリクス(KPI)だけが~
「数値的に」伸びる工夫がされていないか監視する。

*ツールと技法の利用 [#f14d9515]
プログラム・マネジメントのツールと技法を使用して、~
ビジネス・ニーズからベネフィット・マップへの落とし込む。

-シーズ(種)
-> ニーズ(想い)
-> ウォンツ(意欲)
-> デマンド(需要)
-> ベネフィット(提供された価値)

**ビジネス・ニーズ [#s11d4441]

***ニーズ [#y442701a]
開発基盤のオープン化が必要
-オープン・アーキテクチャ
-オープン・スタンダード
-オープン・ソースソフトウェア

***背景 [#jb5e59a2]
-ロックインされない
--ポータビリティ(可搬性)
--インターオペラビリティ(相互運用可能性)

-費用の軽減
--初期投資費用の軽減
--その後のサポートサービスとの契約締結も可能

-様々なプラットフォームをサポート可能
--様々なディストリビューション上でスタック可能。
--様々なシステムとコラボレーション可能。

**戦略目標とベネフィット [#ka119017]

***戦略目標 [#kbdf4aaf]
「顧客が望む」、オープン化に対応できるよう、開発基盤を変更する。
-オープン・アーキテクチャ
-オープン・スタンダード
-オープンソース・ソフトウェア

***ベネフィット [#fda0a410]
-生産性の向上~
基盤化によるナレッジの高集積化
--WikiやQiitaでは集積密度は低い。
--最低限、テンプレート化が必要。
--可能であれば、ライブラリ化、フレームワーク化し、~
パッケージ・マネージャーへ登録できると、尚良。

-クラウド、スマホ環境のサポート
--様々なディストリビューション上でスタック可能。
--様々なシステムとコラボレーション可能。

>↓ ↓ ↓

-魅力的な品質を持つプロダクトは更なる好循環を生む。
--受注貢献
--開発基盤導入比率の向上

**ビジネス・ケース [#l53ecacc]

***前提条件 [#fe0fdcc2]
-オープン・スタンダード&オープンソース・ソフトウェア縛り
-行動変容はプロダクトの品質次第となる(魅力的な品質を持つプロダクトが必要になる)。

***制約条件 [#s277cbfe]
-各種リソース面はコミュニティからとなる
-マネタイズは困難(昨今、OSSはサービサーが必要な設備として開発するケースが多い)

***リスク [#cd946bca]
-脅威
--連携OSSコミュニティ・プロダクトの破綻
--採用オープン・スタンダードのダウン・トレンド
--プロダクト品質が上がらない(オレオレ・フレームワークのレベルを脱しない)

-好機
--.NET5の登場(.NET Coreのメインストリーム化)
--WebAPI、SAML2、OAuth2 / OIDC のアップ・トレンド

-一般的な対応計画~
状況をOODA的にウォッチし迅速にピボットする。

***費用/財務 [#e85c084b]
OSSコミュニティで実施

***投資収益率(ROI) [#e28db41f]
>-

***市場分析 [#x733db9b]
-OSSがデファクト・スタンダード(.NET 5 の登場)
-クラウド・スマホのビジネス・ニーズは高まっている。

***競合分析 [#c4efc7e0]
-某ペイの状況などを見ると酷い有様。
-ある意味、日式エッスアイの限界

***組織の検討事項 [#l7347275]
技術情報開示決裁

***プログラム記述 [#h59f060c]
-Open棟梁の.NET 5 対応
-GUI開発スタックにNode.jsを採用
-WebAPI、SAML2、OAuth2 / OIDC / FAPIサポート
-IoT、ビッグデータ、AI分野への進出

***実行計画 [#b564d2f7]
[[ベネフィット・マップ>#ed461699]]

**ベネフィット・マップ [#ed461699]

***オープン・アーキテクチャ化 [#z1ae1128]
-オープンソース・ソフトウェア
|コンポーネント|行動変容|ベネフィット|行動変容|プログラム目標|h
|OSSの利用|---(開発 / 利用)--->|生産性向上、迅速に最新技術へ追随|---(活用の拡大)--->|「顧客が望む」、オープン化(オープンソース・ソフトウェア)に対応|
|OSSスタックに乗る|~|様々なディストリビューション上でスタック可能。|~|~|
|自身のOSS化|~|個別契約不要、ロックイン無しの安心感|~|~|

-オープン・スタンダード
|コンポーネント|行動変容|ベネフィット|行動変容|プログラム目標|h
|REST WebAPI|---(開発 / 利用)--->|様々なシステムとコラボレーション可能。|---(活用の拡大)--->|「顧客が望む」、オープン化(オープン・スタンダード)に対応|
|SAML2|~|・クロスドメイン認証|~|~|
|OAuth2 / OIDC|~|・クロスドメイン認証、WebAPI認証・認可|~|~|

***某弊開発基盤 [#yb8d0dd6]

-Open棟梁の.NET 5 対応
--ベネフィット:フロントエンド、バックエンドのWrite once, Run anywhere化
--プログラム目標:生産性の向上、更なる好循環を生む。

-GUI開発スタックにNode.jsを採用
--ベネフィット:フロントエンドのWrite once, Run anywhere化
--プログラム目標:クラウド、スマホ環境のサポート、生産性の向上

-WebAPI、SAML2、OAuth2 / OIDC / FAPIサポート
--ベネフィット:様々なシステム間連携を実現する。
--プログラム目標:クラウド、スマホ環境のサポート、生産性の向上

-IoT、ビッグデータ、AI分野への進出
--ベネフィット:トランスフォーメーションの促進
--プログラム目標:日式エッスアイ(項目移送おじさん)事業のシュリンクに伴う出口戦略を提供

|コンポーネント|行動変容|ベネフィット|行動変容|プログラム目標|h
|Open棟梁の.NET 5 対応|---(開発 / 利用)--->|Write once, Run anywhere化|---(活用の拡大)--->|・生産性の向上&br;・クラウド、スマホ環境のサポート&br;・更なる好循環を生む。|
|GUI開発スタックにNode.jsを採用|~|~|~|~|
|WebAPI、SAML2、OAuth2 / OIDC / FAPIサポート|~|様々なシステム間連携を実現する。|~|~|
|IoT、ビッグデータ、AI分野への進出|~|トランスフォーメーションの促進|~|日式エッスアイ(項目移送おじさん)&br;事業のシュリンクに伴う出口戦略を提供|

**実行と終結 [#r6f6697b]

***ガバナンス構造の確立と、監視・制御  [#n9835d40]
-メトリクス(KPI)を設定し、測定し、監視・制御する。

-詳しくは、下記を参照のこと。
--[[制度設計の重要性>#e1a0676e]]
--[[開発基盤のKPIとKGI]]

***サポートとメンテナンスの移管 [#f666f8f0]
-セルフ・サポート化の達成
-保守フェーズをコミュニティへ移管

*参考 [#l69c62c6]

**プログラム・マネジメントで生成された[[コンセプト]] [#z89b3c17]

**.NET 開発基盤部会 Wiki [#a46bc273]

***[[組織的プロジェクト・マネジメント(OPM)>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?PMP%EF%BC%9A%E5%85%B1%E9%80%9A%20-%20%E7%B5%84%E7%B9%94%E7%9A%84%E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%83%BB%E3%83%9E%E3%83%8D%E3%82%B8%E3%83%A1%E3%83%B3%E3%83%88%EF%BC%88OPM%EF%BC%89]] [#g1f26077]

-[[ポートフォリオ・マネジメント>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?PMP%EF%BC%9A%E5%85%B1%E9%80%9A%20-%20OPM%20-%20%E3%83%9D%E3%83%BC%E3%83%88%E3%83%95%E3%82%A9%E3%83%AA%E3%82%AA%E3%83%BB%E3%83%9E%E3%83%8D%E3%82%B8%E3%83%A1%E3%83%B3%E3%83%88]]

-[[プログラム・マネジメント>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?PMP%EF%BC%9A%E5%85%B1%E9%80%9A%20-%20OPM%20-%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%83%BB%E3%83%9E%E3%83%8D%E3%82%B8%E3%83%A1%E3%83%B3%E3%83%88]]

--[[プログラム・ライフサイクル>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?PMP%EF%BC%9A%E5%85%B1%E9%80%9A%20-%20OPM%20-%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%83%BB%E3%83%A9%E3%82%A4%E3%83%95%E3%82%B5%E3%82%A4%E3%82%AF%E3%83%AB]]
--[[プログラム・ライフサイクル>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?PMP%EF%BC%9A%E5%85%B1%E9%80%9A%20-%20OPM%20-%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%83%BB%E3%83%9E%E3%83%8D%E3%82%B8%E3%83%A1%E3%83%B3%E3%83%88#pd523b4e]]

--[[ソフトウェア生産技術界隈のプログラム・マネジメント>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?PMP%EF%BC%9A%E5%85%B1%E9%80%9A%20-%20OPM%20-%20%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%83%BB%E3%83%9E%E3%83%8D%E3%82%B8%E3%83%A1%E3%83%B3%E3%83%88#q3716e9b]]

***[[ステークホルダー・エンゲージメント・マネジメント>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?PMP%EF%BC%9A%E5%85%B1%E9%80%9A#qac125bd]] [#e9f4fb97]

**OSSコンソーシアム [#d1b65b67]

***2018年度 第3, 4Q 投稿記事とWikiアクセス・カウントまとめ [#g887b195]
2018年度 第3, 4Q は「サプライサイド・デマンドサイド対立」を分析してみました。

https://www.osscons.jp/jog2ubp4p-537/#_537

***組織的プロジェクトマネジメント(OPM)関連 [#ae89481f]
-ステークホルダーも納得するポートフォリオ・プログラムを再定義する。 ~
https://www.osscons.jp/joz2vckgh-537/

-組織的プロジェクトマネジメント(OPM)について考える。~
https://www.osscons.jp/joyxvre8h-537/

-ポートフォリオを読みプログラムを造り込む準備をする。~
https://www.osscons.jp/jo6hgeb0j-537/

-組織的プロジェクトマネジメント(OPM)に関する現時点の問題点。~
https://www.osscons.jp/jol4hhbjg-537/

-クローズドなライブラリが結果的に discon(中断) になる理由。~
https://www.osscons.jp/jobhz9xd6-537/

-QCDよりベネフィット。プログラム・マネジメントの必要性
--(前編)~
https://www.osscons.jp/jo9mda53s-537/
--(後編)~
https://www.osscons.jp/jo7lzgvc1-537/

-プログラム・マネジメントについて書いてみた。
--開発基盤の...~
https://www.osscons.jp/jodfa0hou-537/
--某弊部会の...~
https://www.osscons.jp/jo7bnzi9h-537/

-組織的プロジェクトマネジメント(OPM)に関する、まとめ。~
https://www.osscons.jp/jowyz4luu-537/


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS