「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
開発支援ツールには色々なものがあり、分類は参考にまとめた。
トレンド †
開発支援ツールには、昨今、以下のようなトレンドがある。
世界的には、 †
ITビッグ 5( Microsoft, Apple, Amazon, Oracle, etc. )など
がリリースする開発ツールの殆どは以下の特性を持っている。
IDE周辺の動向を見ると、自社のプラットフォームを利用させるための
IDEを中心とした言語・ライブラリ・開発ツールのエコシステムに、
非常に大きな投資を行い、大きな投資対効果を期待していることが解る。
日式SIer的には、 †
- EUC向けの差別化を行っているため、SI事業に適合しない。
- 故に、商材として担いでいるケースはあるが、自事業で利用することは殆ど無い。
- その一方、日本のSI事業者では、
「業務システム開発」の作業を単純作業化する志向が強い。
が多数開発されてきた。
- しかし、多様化の時代に、これらのツールは衰退の一途を辿っている。
- これらのツールは柔軟性と汎用性が低く、
多様化するアーキテクチャに追随できない。
- 多様化の時代、エンジニアの価値は右肩上がりだが、
自身の価値を高めないツールをエンジニアが積極的に習得しない。
- 従って、エンド・ユーザ目線でできていない。
(ベンダ内でも案件向けサポートが必要なケースが多い)
- このため、導入の際に、
「過去にx社のツールに辛酸なめさせられた。」
的なエンド・ユーザの経験を聞くことがある。
テンプレートとパッケージ †
- 業務システム開発に特化した開発効率の向上施策は、
- IDEベースのテンプレートと
- パッケージ(最小限のフレームワーク & ライブラリ)
が現代のベストプラクティスとなってきている。
- パッケージは、NuGetなどのパッケージ・マネージャー経由で取得する。
- テンプレートには以下の役割がある。
- プロジェクト構成や(、パッケージ・マネージャーで)、下位スタックを決定する。
- DI & AOP や OOPの技術を使用して、共通化とその呼出を行う。
- TERASORUNAは、v5.0からこの方式に変わっているもよう。
※ TERASORUNAでは、テンプレートをブランク・プロジェクト呼んでいる。
機能スタック †
以下のように構成される。
導入時の考慮点 †
技術面 †
KGI(QCDF向上)を達成するためのKPIの達成度合い。
その他 †
非技術面 †
信頼性(やり切ってくれるか?) †
SI案件は規模、契約価格が大きくリスクが高いので、
サポート・エンジニアは最後までやり切ってくれないと厳しい。
- サポート力
- セルフ・サポート・コンテンツの充実度合い
- オンライン or オンサイトのサポート力
- 緊急の対応に応じることができるか(バグ対応、仕様拡張)?
- セルフ・サポート可能か?
- 要求事項の実現に支障を与えるような制限事項は無いか?
- 案件独自のカスタマイズが可能か?(OSSであること)
プロダクトのライフサイクル †
数画面のアプリケーション開発と異なり、多数の業務画面を持つ大規模なプロダクトでは、
開発支援ツール、開発基盤のライフサイクルは長くなければならない。
, etc. †
思い付いたら追加します。
STP †
STPとは †
開発技術、開発支援ツール選定をする上で、STPマーケティングの
- セグメンテーション(segmentation、セグメント化)
- ターゲティング(targeting、ターゲット選定)
- ポジショニング(positioning、ポジションの明確化)
ST(セグメンテーション・ターゲティング)ぐらいは、技術面、非技術面含め考えたほうが良い。
※ STPマーケティングはマーケティング用語
STPの例 †
- 特にエンタープライズ分野では、このような問題が解決され、
成熟したタイミングで、やっと利用できるようになることが多い。
内部リンク †
参考 †
OSSコンソーシアム †
Wiki †
Blog †
その他、開発基盤の必要性 †
高品質・高信頼性 †
超高速な開発ができるわけ †
- 超高速な開発ができるわけ | Yakst
https://yakst.com/ja/posts/4668
「10倍の生産性での開発」が適合する場合と、しない場合があり、
実験的プロトタイプ、本番アプリケーションを区別することが重要である模様。
※ 冒頭にあるように「開発者の話ではなく、状況(前提条件)が大きなカギ」らしい。
プロセス / 手法 / ツール †
Tags: :.NET開発, :ツール類