end0tknr's kipple - web写経開発

太宰府天満宮の狛犬って、妙にカワイイ

JUAS (日本情報システムユーザ協会)によるシステム開発・保守・運用調査

software design 2022/1 に記載の「"学習する"チームで仕事をする」を 読んだことをきっかけに、今更、2020版を確認。(既に16年目)

以降では、気になった部分を記載しています。 (その中でも更に気になった部分には★を記載)

公開資料(pdf)のurl

https://juas.or.jp/library/research_rpt/swm/

  • 1) ソフトウェアメトリックス調査 システム開発・保守調査 報告書 (全291ページ)
  • 2) IT運用コストメトリックス調査2020 報告書 (全112ページ)

上記の資料は 1)291+2)112ページもありますが、図や表が多く、読み進めやすいですし、 時間がなければ、1)p.247~:まとめ、2)p.65~:Appendix を読むだけでも、 良い気がします。

ちなみに...

  • juasの場合、「メトリクス」でなく「メトリックス」と表記するみたい
  • 保守と運用の違いは不明

でした

3 開発・保守 - フェーズ(工程)の定義 p.12

特に「実装」に「詳細設計」を含めている点に納得感。

工程 SLCPプロセス
設計 システム方式設計 + ソフトウエア方式設計
実装 詳細設計 + コード作成 + コードテスト
ベンダーテスト ソフトウエア結合 + システム結合

3.2 ★ 開発・保守 - 業務パッケージ p.20

全体では スクラッチ?が64.5%で大半を占めますが、 ERPや単体パッケージ、SaaSの割合が年々、増加。

使用状況 2016年累積 2020年累積
ERP 5.3% 12.8%
単体パッケージ 5.7% 12.3%
SaaS -.-% 5.2%
他ツール 5.3% 12.8%
上記を使用せず -.-% 64.5%

3.5-3.6 開発・保守 - 主要開発言語、RDBMS p.22

Java(62%)や、Oracle(53.9%)と大半を占めるのは、 ある程度、規模や歴史のある企業を調査対象にしていることに 起因していると、想像しています。

言語 %(※1)
cobol 20.2
c 18.3
vb 16.1
pl/sql 18.8
java 62.0
html+js 11.7
他(※2) 34.7

※1 割合の合計が100%超となる理由は不明です ※2 shell, pl/i, abap, php, perl, xml, asp, ruby

RDBMS %
oracle 53.9
sql server 14.9
postgres 7.0
mysql 3.7
sybase 0.4
informix 0.2
isam 0.7
db2 18.7
ms access 1.5
hirdb 1.2
ims 5.7
7.7

3.8 開発・保守 - 実装環境 p.29

実装環境 %
オンプレミス 71.4
プライベートクラウド 28.6
パブリッククラウド 16.0

3.8 ★ 開発・保守 - データガバナンス p.30

CoEな部門がないから、DXが進まなかったり、個別最適だったりするのかと思います。

CoE設置状況 %
経営戦略部門 1.9
情報システム部門 45.2
独立したデータマネジメント部門 1.9
存在しない 51.0

4.2 ★ 開発・保守 - 全体工数と工期 p.49

 \displaystyle \Large{
   全体工期(ケ月) =  2.7 ✕ \sqrt[3]{ 全体工数(人月) }
   }

※ p.191や197によれば、上記の2.7は、2008年の2.4から品質重視により増加

※ 三乗根のグラフは、wolframalphaが分かりやすいかと思います

https://www.wolframalpha.com/input/?i=2.7+%5Csqrt%5B3%5D%7B+x+%7D

4.3 ★ 開発・保守 - 間接工数 p.61

ここでの「間接工数」とは、PMやPMOの工数

規模(人月) 間接工数比(% ※1)
<10 11
<50 10
<100 9
<500 8
≧500 9

※1 間接工数比 = 間接工数 / 全体工数

4.5 開発・保守 - レビュー工数比率と品質 p.77

f:id:end0tknr:20211219145715p:plain

レビュー工数比率をあげても換算欠陥率が減少するとも言い切れなかった。
レビューが大切なのは明確であるので、レビュー内容やタイミング、
方法などプロジェクト内の共通認識やコミュニケーションを向上させる工夫と、
仕様を明確にする努力が必要なのかもしれない。

4.7 ★ 開発・保守 - 総費用と全体工数 p.89

 \displaystyle \Large
   総費用(万円) =  117.15 ✕ 全体工数(人月)

尚、決定係数は、

 \displaystyle \Large
   R^2 = 0.92

4.14 ★ 開発・保守 - まとめ p.180~

5.1.2 保守作業割合 p.202

保守理由 2016年(%) 2018~20年(%)
ユーザからの問合せ受付、回答 (ヘルプデスク) 31.6 24.5
是正保守 (バグの修正) 15.6 10.4
改良保守 (担当者の要望への対応) 26.3 20.5
適応保守 (制度、法律、業務変更に対する対応) 12.2 12.5
完全化保守 (開発時からの不具合修正) 3.3 5.6
予防保守 (データ量の変更対応、セキュリティ対策) 5.1 6.5
基盤整備 (HW,MW変更の対応) 5.9 9.3
-.- 10.7

5.1.4 開発・保守 - 年間保守費用 p.203

項目 平均(百万円)
1.保守業務費用(人件費)*1 1,376
(1)自社費用 92.3
(2)業務委託費(情報子会社) 896.1
(3)外注費(ベンダー・協力会社) 451.9
2.ソフトウエア開発回収保守費(人件費以外) 525.5
3.パッケージライセンス費 728.0
4.パッケージ保守費 232.6
年間保守費合計 (1+2+3+4) 2,185.7
5.システム総費用 8,431.1
年間保守費 / システム総費用 47.5%

※ 資料に記載の 年間保守費用(2,185.7)とシステム総費用(8,431.1)と、 その割合(47.5%)が整合していないように見えます

5.1.6 開発・保守 - 保守契約金額 p.207

項目 平均(万円)
2018~20年 74.6~132.8
2016年 全プロジェクト 75.7~107.7
パッケージ 75.9~120.4
クラッチ 75.5~102.4

5.3 開発・保守 - 保守調査の考察とまとめ p.247

クラッチの場合、7割強のシステムで追加開発が実施され、 保守+追加開発の費用は、開発費の20% (5年で開発費と同額に)

手法 追加開発の発生 保守 追加開発
クラッチ 7割 7.8% 12.0%
パッケージ 8割 10.9% 31.4%

3.2 運用 - 役割コスト p.11

項目 平均(百万円)
管理・統制 115.0
補修・故障対応 286.0
定常運用 428.9
ヘルプデスク 56.7

3.3 運用 - 設備系コスト p.14

項目 平均(百万円)
HW製品保守コスト 299.9
SW製品保守コスト 495.9
リース・レンタル料 (設備・HW・SW等) 568.7
通信・回線費 279.3
外部サービス利用料 (ハウジング,ホスティング,※1) 681.0
データセンタ費用(自社,外部) 183.7
2358.5
【計】 2602.4

※1 クラウドサービス利用料は含まず

Appendix B ★ 運用 - コスト削減施策 p.76

f:id:end0tknr:20211219150351p:plain

*1:1)+(2)+(3