SPI Japan 2020
ミニ講演&みんなで納得セッション

ソフトウェア品質をめぐる諸問題とプロセス改善

千葉工業大学 社会システム科学部
プロジェクトマネジメント学科
小笠原秀人（hideto.ogasawara@p.chibakoudai.jp）
1目次
1. SPI Japan における近年の話題
2. SEPGへの期待
3. SEPGとしてのマインドセット
4. どのように立ち向かえばよいか
5. これからのソフトウェア開発※ SPI : Software Process Improvement–

ソフトウェアプロセス改善※ SEPG ： Software Engineering Process Group–組織で使用されるソフトウェアプロセスの定義、保守、および改善を促進する専門家の集団のこと

2

1. SPI Japan における近年の話題

3

2016～2019年の内容•システム開発– アジャイル開発、派生開発、要求仕様開発、…

•

品質管理– 利用時品質、ITIL、ドキュメント再構築、メトリクス…

•ＡＩ– 機械学習、ディープランニング、…

•レビュー– コードレビュー、プルリクエスト、レビュー戦略、…

•教育– デザイン思考、ビジネスアナリスト育成、新人教育、…

•自動化– DevOps、テスト自動化、データ自動化、…

•

分析– ふりかえり、感情評価、問題解決管理、…

•

発表件数165件

ツール– 信頼度成長曲線、タスク管理ツール、プログラム解析、…

分析・分類 •

管理– 障害対応管理、課題管理、…

4

近年の傾向とSEPGの役割との関連• 近年の傾向• SEPGの役割– プロセスの安定を目指す• 品質管理、レビュー、教育、分析、管理– プロセス標準とＤＢの確立– アセスメントの実施– 教育、コンサルテーション– 新しい技術や環境への対応• システム開発、ＡＩ、自動化、
ツール– 技術導入の支援【出典】小池利和、品質保証活動を形骸化させないコツ～プロセス改善に魂を込めるには～、【プロセス改善ベストプラクティス】 ワークショップ – IPA、2011．
https://www.ipa.go.jp/files/000005285.pdf

52. SEPGへの期待

6

技術導入の推進
AI、ツール、自動化など：技術変革、プロセス変革につながる可能性が高い
手法やツールの導入がうまくいかな
い。うまくいっても継続できない。

新技術などがうまく導入できて、変革が進む。

♪
♪
♪
♪
♪
♪

？？

今までは、土台作りが中心！

これからは、変革につなげる【出典】小笠原秀人、東芝におけるソフトウェアプロセス改善活動の推進方法10年目のＳＰＩ～推進結果と今後の展望～、ソフトウェアシンポジウム2010．
http://www.sea.or.jp/Events/symposium/ss2010/wg6/SS2010-SPI_Working_Toshiba.pdf

7

期待される役割• 永続的なプロセス改善活動の実行・推進（常態化）– プロセス改善活動の推進、プロセス資産の開発・保守– プロセス技術／ソフトウェア生産技術の担い手①改善活動の推進

今まで以上に高度な専門性が求められる！

⑧技術変革活動の中心となる②定期的なアセスメントと状況報告⑦プロジェクトへのコンサルテーション⑥測定リポジトリの確立・維持

SEPG⑤プロセス資産の確立・維持組織の標準ソフトウェアプロセス(OSSP)④プロセス教育の提供③標準プロセスの確立・維持組織の標準ｿﾌﾄｳｪｱﾌﾟﾛｾｽの記述
ｿﾌﾄｳｪｱﾌﾟﾛｾｽｱｰｷﾃｸﾁｬ【出典】小笠原秀人、SPIの動向と発表事例の概要紹介、WOCS（クリティカル・ソフトウエア・ワークショップ）2010．
https://www.ipa.go.jp/files/000005330.pdf

ｿﾌﾄｳｪｱﾌﾟﾛｾｽ要素の記述
ソフトウェアプロセス要素の記述

8

3. SEPGとしてのマインドセット～ この半年間の経験に基づく提言 ～9変革を進めるマインドセット• 変えざるを得ない状況では、直観を信じ、難しいことにチャンレジする！
• 言い訳をせず、食わず嫌いを止めて、デジタルへ移行する！
• ニューノーマルを楽しむ！
• 大切にするものは何かを再確認する！

10

変えざるを得ない状況では、直観を信じ、難しいことにチャンレジする！
•••

新型コロナがなくても変えなくていけなかった
でも、悩んでいた（12月～4月上旬頃まで）5月からオンライン授業開始が決定！
– 待ったなしの状態•

実践した事：– 伝えたい事を明確にする– 前半はライブ（30～40分）、後半は課題– ツールを積極的に使う• astah*、PICT Master など– 課題の結果を次の授業でフィードバック•

アンケート結果は良かった！
– 動画配信の授業より高い評価※ 動画配信が悪いわけではない11

言い訳をせず、食わず嫌いを止めて、デジタルへ移行する！
••

今までも使える状態だった
でも、現状の方法（資料を配布し、書き込んでもらう）を変更するつもりはなかったので、なびかなかった。
– 目の前に使えるものがあるのに…
– 結局、使わない言い訳をしていただけ•

使ってみるととても良い。便利。学生も教員も。
– 教材配布、お知らせの配信、掲示板、レポート、小テス
ト、プロジェクト学習、ポートフォリオなど•利用した結果––––レポート、小テストの結果を次の講義で活用しやすい
印刷不要、テスト結果の保管不要
成績管理が簡単
再利用が容易12

ニューノーマルを楽しむ！
• テレワーク– ICT（情報通信技術）を活用し、時間や場所を有効に活用できる柔軟な働き方– https://work-holiday.mhlw.go.jp/telework/• ワーケーション– 「ワーク」（労働）と「バケーション」（休暇）を組み合わせた造語（かばん語）で、観光地やリゾート地でテレワーク（リモートワーク）を活用しながら、働きながら休暇をとる過ごし方。
仕事をしながら家族と– https://ja.wikipedia.org/wiki/ワーケーション

ゆったりとした時間を過ごす• 私の場合– 今までも普通にやってきた。何が新しいのか？

集中して仕事をする時はここ• しかし、– 仕事を持ち帰るな、自宅で仕事をしてはいけない、と言っていたはずが… （今までの常識は非常識？）– 自分が働きやすいように主張するのがよいと思う

電車の中でメールをさばく

13大切にするものは何かを再確認する！
• ソフトウェア・シンポジウム2020– オンラインで、普通に開催できた！
– 参加者も多く、議論も活発で楽しかった。

• でも、やっぱり寂しい。
• 「久しぶりです、元気ですか？」の何気ないやり取りの大切さを痛感。
• 実は、会議前後のちょっとした会話、“ちょっといい”と声をかけることのできる環境、ちらちらと横目で様子を見る、といったことが大きな役割を果たしていたのだと思う。

https://www.sea.jp/ss2020/

14

4. どのように立ち向かえばよいか

15

未来と現実を見据える• 自分が変わる！
• 現実の問題を解決し、“次”への準備に取りかかる！

16

自分が変わる！
• 時間の使い方は変わる
はず。
– 変わってなければ、何かがおかしい…

開発部門の支援移動時間• 変革をリードするために、自分はどうなりたいか？
– その姿を思い描き、そのために時間を使う。

社外活動

技術開発

開発部門を支援していた頃の工数分布

17現場開発はドロドロしてる（新型コロナとは関係なしに）よくある事例• ハードウェアとソフトウェアの折衝、連携で問題になる–––

顧客がソフトウェアがに詳しくない
ハードウェアの制約があり、ソフトウェアで対応しなければならない
ハードウェアの問題発生時に対応しなくてはいけない• 仕様検討が長引く、変更が多くなる• ノウハウが溜まりづらい
–

–
–
–

要件が増える立ち上げ時に見通せない想定した技術要素で対応できない–

失敗（バグ発生など）した時の上位管理層や顧客への報告資料作成など• 計画どおりに仕事が進まない

メンバが忙しい、よく交代する––• 新人教育が確立されていない• コスト削減の要請が強く、費用と期間を両立するのが難しい• リスク発生時の対処方法が難しい• 計画外の業務が増える

委託先や自社の進捗が遅れた分をリカバーしなければならない
他社のスケジュールが遅れる• 要員調達が難しい• 開発のための環境整備が遅れる–

テストなどで活用する設備（例えば、オシロスコープなど）が使えな
いことが開発途中で判明する「わかる！」（販田部長：真矢ミキ）
18

現実の問題を解決し、“次”への準備に取りかかる！
• システム／ソフトウェア開発の現状（ノイラートの船：Neurath’s Boat）– We are like sailors who on the open sea must reconstruct their ship, but are never able to start
afresh from the bottom.
– われわれは、大海の真中で舟を修理しながら航海を続けなければならない水夫みたいなものである。新しい船を最初から作り直せたらよいのだが、それはできない。

• 手に入れた時間の使い方– 設計改善– リファクタリング– 新規開発に必要な教育– 設計手法の習得、など【出典】三菱電機コントロールソフトウェアの事例：
ET2019 AFFORDDスペシャルセッション
https://affordd.jp/tech_documents/et2019_03.pdf
19

5. これからのソフトウェア開発

20

常に非常時と考える。そして、非常時に対処するためにABCを実践する• 非常時のソフトウェア開発に必要な事–––––

1 常にユーザを念頭に置く
2 明確に定義されたプログラムユーザインタフェースの重要性
3 インフラストラクチャとしてのクラウドの優位性
4 サービスをとにかく出す
5 自分が動けば人が動く• 振り返ってみると– 今回の震災対応で重要だったことは、実は日頃からやれること・やるべきことなのではないかと、思う。
– これら「当たり前」のことを日頃から実践するのは難しい。そして、日頃から実践していないことを、緊急時に実践するのも難しい。
– 今やるべきことは“目の前にある”

ABC：当たり前のことを、ぼんやりせずに、ちゃんとする【出典】 Google Person Finder 最初の一週間 －非常時におけるサービス開発の一記録および考察－、
賀沢秀人、情報処理学会 デジタルプラクティス、Vol.2 No.3 (2011)21