買ってよかった技術書を紹介しよう!
https://qiita.com/official-events/8746fa99d4e403fad3d1
参加記事です。
<この項は書きかけです。順次追記します。>
This article is not completed. I will add some words in order.
人生で影響を受けた
本100冊。
https://qiita.com/kaizen_nagoya/items/16af53acbb147a94172e
に掲載した本のうち、「新人プログラマ応援」企画で「私の推薦書33冊」として33冊紹介した。
新人プログラマ応援 私の推薦書33冊
https://qiita.com/kaizen_nagoya/items/98c62f051dbdb4f8aca2
でも紹介している。
- プロセス改善ナビゲーションガイド ベストプラクティス編 JAXA/IPA クリティカルソフトウェアワークショップ WOCS言語関連発表(改定版)
https://qiita.com/kaizen_nagoya/items/4789832baf494cb74626
を別の視点で紹介します。
NASAを超えるつもりがあれば
NASAの本を読もう。あるいは、NASAで動いているソフトを解析しよう。いや、NASAにシステムを売り込みに行こう。
NASA Systems Engineering Handbook Revision 2
https://www.nasa.gov/connect/ebooks/nasa-systems-engineering-handbook
「プロセス改善ナビゲーションガイド」読む前に
読む前に読んでいただいても、読んだ後で読んでいただいても、読みながらちろみしていただいても結構です。
購入できるし、無償ダウンロードできる。
無償ダウンロードで危険なことは、どうせ只だからたいしたことが書いてないだろうと思って、読み飛ばしてしまうことです。お金を払っていれば、そのお金分の知見を得ようと、血眼になって役にたちそうなことを探すはずです。姿勢の違いが、得るところの違いに一番大きな影響を与えていることを仮定してみてください。
買えと言っているわけではありません。少なくとも、購入金額までの知見を得ることを最低限の目標にして読んでくださいというお願いです。
10事例
残念なのは、目次に事例の組織名がないことです。
事例1:設計からはじめる見逃しバグの防止 ……………………22
事例2:生産性を5年で2.5倍に! ………………………………36
事例3:究極の高品質ソフトウェア開発プロセスを目指して …5
4
事例4:生産性原理を具現化するプロセス改善……………………72
事例5:高品質ソフトウェア開発管理プロセスの実現……………9
8
事例6:マネジメント自らが予防のための行動を取り、
問題が起こりにくい組織に ……………………………114
事例7:派生開発による品質および開発効率の向上 ……………132
事例8:ソフトウェア部品による組立型開発と品質保証 ………1
46
事例9:全社レベルでのプロジェクト管理の改善 ………………168
事例1
0:GDD(Genba Driven Development) ……………1
第3章ベストプラクティス集
P17の表に、現在の組織のURLを追記した。
事例番号 | タイトル | 組 織 | 概 要 |
---|---|---|---|
1 | 設計からはじめる 見逃しバグの防止 ~F2T の活用~ | 株式会社日立ハイテクノロジーズ ナノテクノロジー製品事業本部 https://www.hitachi-hightech.com/jp/ | 独立検証組織である品質保証部で検出し たバグの原因を分析した結果、設計部門で 実施したテストの漏れと網羅性の欠如に起 因したバグの比率が高いことが判明。その 対策として、機能仕様の作成とテスト仕様 の作成を、同時並行で対応付けを明確にし ながら実施。その結果、テスト項目の漏れ がなくなり、品質が向上。 |
2 | 生 産 性 を5年で2.5倍に!~一人ひとりを改善の主役にする KAIZEN塾の設置~ | 株式会社富士通ソフトウェアテクノロジーズ https://www.fujitsu.com/jp/ | 富士通ソフトウェアテクノロジーズは、 その前身である富士通プライムソフトテク ノロジ時代の2003年に「5年後に生産性を 2.5倍にする!」という狙いを掲げ、全社規 模の NPS(Nagare Kaizen Profit System)活動に取り組む。NPS 活動は、トヨ タ自動車の強みは何であるのかを既存のプ ロセスモデルに捉われずに考え、改善によ りムダを徹底的に排除する「トヨタ生産方 式(Toyota Production System)」に学 び、現場をよくしようとする文化・風土を 作り、生産性を改善していく活動。 第 3 章 ベ ス ト プ ラ ク テ ィ ス 集 (つづく) |
3 | 究極の高品質ソフトウェア開発プロセスを目指して ~ソフトウェア独立検証および妥当性確認 Software IV&V~ | 独立行政法人 宇宙航空研究開発機構 (JAXA) https://www.jaxa.jp/ | 究極の高品質ソフトウェア開発プロセス を目指して、SW IV&V と SQA を組み合わ せた。SQA は開発部門から独立した組織が、 開発プロセス規定に則って成果物が作成さ れたことを保証する活動。一方 SW IV &V は、開発部門から独立した組織が、成果 物の安全および品質(記述内容の論理性、 一貫性、妥当性等)の検証および妥当性確 認を行うための技術・枠組み。 |
4 | 生産性原理を具現 化するプロセス改善~生産管理システム「ACTUM」の活用~ | 株式会社ジャステック https://www.jastec.co.jp/ | 全社一体となってプロセス改善を前提と した生産性原理の具現化を図り、見積りか らプロジェクト管理まで一貫した指標(開 発量、生産性変数および環境変数)を持ち、 独自の考え方に基づいた予実差異分析を行 うことで、開発局面ごとのプロセス改善機 会の創出促進。プロセス改善の「計る化(定 量化)」を目指し、環境変数を統計処理し変 動幅の是正や安定性の確保に取り組む。 |
5 | 高品質ソフトウェ ア開発管理プロセスの実現 ~QMTXによる品 質メトリクスの活用~ | 日本電気株式会社 システムソフトウェア事業本部 https://jpn.nec.com/ | |
6 | マネジメント自ら が予防のための行動を取り、問題が起こりにくい組織に ~ Preventive Management による実現~ | 情報技術開発株式会社 https://www.tdi.co.jp/ | SW-CMM のレベル3を達成した後、さ らに赤字プロジェクトの撲滅を目指して、 「Preventive Management」というキー ワードのもとに展開した活動。プロジェク ト計画からプロジェクト完了プロセスに加 え、案件引き合い段階から、受注までのプ ロセスを定義し、それに準拠した活動を実 施することで、全プロジェクトの黒字化に 成功。 |
7 | 派生開発による品 質および開発効率の向上 ~XDDP・USDMの徹底~ | 東京エレクトロンソフトウェア・テクノロジーズ株式会社札幌テクノロジーセンター https://www.tel.co.jp/ | 従来製造拠点からの修正依頼に基づき、 ソースコードを修正していたが、母体のド キュメントがなく、修正依頼→コード調査 →コード修正→テストというプロセスを実 施していた。その結果、修正漏れが起因と なった不具合が発生し、修正コードを納品 してからも不具合対応に追われているとい う有様となり、このような状況を打破する ために、XDDP を取り入れ、手戻りの少な いソフトウェア保守を行うプロセスを実現。 |
8 | ソフトウェア部品 による組立型開発と品質保証 ~基幹システムでのコードの再 利用~ | 住友電気工業株式会社情報システム部&住友電工情報システム株式会社システムソリューション事業本部 https://sumitomoelectric.com/jp/ | エンタープライズ系システム開発の工業 化を目指して、属人性を排除した設計手法 の確立、部品組立型システム開発、統計的 手法を使った品質管理を実践。20年を超え る継続的な改善への取り組みの結果、大幅 な開発工数とコストの削減、並びに出荷後 欠陥数の削減を実現。 |
9 | 全社レベルでのプ ロジェクト管理の改善 ~段階別にツールを導入し作業内容変更の最小化をはかる~ | 日立ソフトウェアエンジニアリング株式会社 https://www.hitachi-solutions.co.jp/ | プロジェクトの管理項目、各項目の評価 方法等は規格化されているが、実際に使う 管理ツールやデータの管理方法等は各プロ ジェクトの実情に合わせて決定可能。しか しそれが全社 PMO が各プロジェクトを監 視する際の弊害になっていたため、全社で 利用する統一的なプロジェクト管理ツール の導入を行う。導入は、まず簡単なシステ ムを導入し、システムのメリットを実証し てシステム導入のコミットメントを得た後、 システムの機能拡張をしてユーザを拡大、 さらに操作性を改善し全社導入という、段 階的な導入戦略をとることで、全社規模で の導入に成功。 |
10 | GDD (Genba Driven Development) ~現場主導によるアジャイル開発のすゝめ~ | ソニー株式会社PCアプリケーションソフトウェアセンター設計部 https://www.sony.co.jp/ | 開発現場のソフトウェアエンジニアの問 題意識をきっかけにしてはじまったボトム アップでの改善実施事例。「eXtreme Programming」の手法を参照して、20人規模 の開発プロジェクトにおいて、検証工程で の不具合数の減少、レビューやリファクタ リングによる知識の共有等を実現。 |
ソニー、NEC、住友電工のように親会社が仕切っている場合を除き、10組織中4組織が統合している。
改善が、一つの組織で何かをすることだと思っている限り、成功しないことに気がつくといいかもしれない。
JAXAが取り組んできた、クリティカルソフトウェアワークショップは、航空宇宙産業の成功例と自動車産業をはじめとする民生事業での成功例とを情報交換する場を形成したように、産業間のやっててよかったことを交換するとよい。
計算機、言語、OS、通信規約、模擬試験・検証などのの技術に依存した部分は最先端の成果を前提としているとよい。
表1 検証手法と工程 p.70
3番目の事例「究極の高品質ソフトウェア開発プロセスを目指して ~ソフトウェア独立検証および妥当性確認 Software IV&V~ 独立行政法人宇宙航空研究開発機構 (JAXA)」は、NASAでも取り組んでいる検証手法を紹介している。NASA,ESA,JAXAは、相互に情報交換して、よりよい航空宇宙技術の改善に取り組んでいおり、NASAが取り組んでいることは、JAXAでも取り組んでいる。
JAXAの表のうち、水色で塗りつぶした部分はJAXAでは取り組んでいなかった。たぶんNASAでも取り組んでいなかったのだろう。自動車産業などでは航空宇宙産業よりも先進的な取り組みをいくつかしてきた。NASAなどが自動車産業を審査した際に、NASAなどよりも先進的な取り組みをしていたことが確認できたという話をお聞きしたことがある。
どのような資料も、真似るだけでなく、そこにある課題を見つけ、よりよい取り組みをすることが大事だという経験になった。自動車産業で、先進のアメリカ、ドイツのやり方をやってみて、課題をみつけ、同じことをするのではなく、よりよいやり方を発見するための第一歩にするというお話をお聞きした。
NASAを超えるつもりがあれば、一通りやってみて、全部自動化するか、自動化のための道具づくりを行うとよい。
93. プロセス改善ナビゲーションガイド ベストプラクティス編
情報処理推進機構ソフトウェアエンジニアリングセンター
https://www.ipa.go.jp/files/000005129.pdf
https://www.amazon.co.jp/dp/4274501752/
https://bookmeter.com/books/349562
https://booklog.jp/item/1/4274501752
10箇所の改善事例を取り上げている。
この改善事例をどうやって活用するとよいかはその組織の状況によるかもしれない。
教育機関に対して、ソフトウェア技術教育として、How-TO(ハウツー)を教えて欲しいという要請がしばしばある。
教育でWhat(何)を知識として教えてもらっても、どうやればよいかが分からないので、無駄な知識として廃棄されていくことになるそうだ。(場合によっては人も含めて)
本書では、JAXAの事例が一番役立つと感じた。
必要な技術に関する話題も多く、幅広い内容になっている。
プログラマとして共感したのは住友電工の例だ。
ジャスティックは、主導者の意見がとても印象的だったが、記事にうまく反映できているかはやや心配な気がする。
富士通STの例は、名古屋アジャイル勉強会に参加しないと分からないかもしれない。
本書で記載している用語を一覧にしてみれば、どういう技術を知っていないと、そもそも改善ができないかが分かるかもしれない。
アジャイル宣言と照らし合わせてみたら、12のうち8はほぼ全部の組織で実行している事だが、
1つは半分くらい、残りの3つは、あまりはっきりしなかった。
原因としては、ソースコードの書き手に着目している事例が1つだけだからかもしれない。
ハウツーは、現場、現地、現物によって違うので、一律に教えることができない。
教えるときは、ある一つの事例でのハウツーを示すことになる。一つの事例を鵜呑みにして、異なる現場で、習ったハウツーをそのまま実践しようとする人がいる。
それでは、いい迷惑だと思うのは現場の人達だけかもしれない。また、事例集にありがちなことは、本が出たときには、その活動をしていた組織では活動が下火になってしまっていることがある。
本書の事例を見たら、現状ではどのような展開になっているか、機会があれば調べてみるとよいかもしれない。
少なくともJAXAでは、WOCSというシンポジウムを開いて、その成果を継続して改善しようとしている。
ps.
取り上げられている富士通STの会議室で名古屋アジャイル勉強会が開催されたときに、富士通プライムソフトの改善のポスターが今でも貼ってあることを確認した。
時間とともに、ハウツーであるやり方は変わっていくが、本質的な改善の火が消えていないことが大切だと感じた。
すべての事例の火が消えていないかどうかを確認することは難しいが、一つでも消えていなければよしとしてはいけないでしょうか。
名古屋アジャイル勉強会に参加すると、その後が分かるかもしれない。
JAXA/IPA クリティカルソフトウェアワークショップ WOCS言語関連発表(改定版)
https://qiita.com/kaizen_nagoya/items/4789832baf494cb74626
参考資料
@kazuo_reve 私が効果を確認した「小川メソッド」
https://qiita.com/kazuo_reve/items/a3ea1d9171deeccc04da
自己参照
ちょけねこ たんじょうびのおくりもの
https://qiita.com/kaizen_nagoya/items/fc9675686c229f7a155e
あなたはシステム全体を書き下せますか?
https://qiita.com/kaizen_nagoya/items/0b69dec55790dadd9f48
JAXA/IPA クリティカルソフトウェアワークショップ WOCS言語関連発表(改定版)
https://qiita.com/kaizen_nagoya/items/4789832baf494cb74626
安全分析(HAZOP)の際の声かけ。安全(20)
https://qiita.com/kaizen_nagoya/items/381649a6ea025ecba173
図を使って分析・設計すればこんなに簡単。安全(11)
https://qiita.com/kaizen_nagoya/items/6347eb55b2812d745549
JAXA「H3ロケットの試験機1号機の打上げについて」IT分野から支援できること
https://qiita.com/kaizen_nagoya/items/dcb9e8bad6270dc7eacd
小川メソッド 覚え(書きかけ)
https://qiita.com/kaizen_nagoya/items/3593d72eca551742df68
物理記事 上位100
https://qiita.com/kaizen_nagoya/items/66e90fe31fbe3facc6ff
数学関連記事100
https://qiita.com/kaizen_nagoya/items/d8dadb49a6397e854c6d
言語・文学記事 100
https://qiita.com/kaizen_nagoya/items/42d58d5ef7fb53c407d6
医工連携関連記事一覧
https://qiita.com/kaizen_nagoya/items/6ab51c12ba51bc260a82
通信記事100
https://qiita.com/kaizen_nagoya/items/1d67de5e1cd207b05ef7
自動車 記事 100
https://qiita.com/kaizen_nagoya/items/f7f0b9ab36569ad409c5
仮説(0)一覧(目標100現在40)
https://qiita.com/kaizen_nagoya/items/f000506fe1837b3590df
安全(0)安全工学シンポジウムに向けて: 21
https://qiita.com/kaizen_nagoya/items/c5d78f3def8195cb2409
Error一覧 error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8
Ethernet 記事一覧 Ethernet(0)
https://qiita.com/kaizen_nagoya/items/88d35e99f74aefc98794
Wireshark 一覧 wireshark(0)、Ethernet(48)
https://qiita.com/kaizen_nagoya/items/fbed841f61875c4731d0
線網(Wi-Fi)空中線(antenna)(0) 記事一覧(118/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001
OSEK OS設計の基礎 OSEK(100)
https://qiita.com/kaizen_nagoya/items/7528a22a14242d2d58a3
官公庁・学校・公的団体(NPOを含む)システムの課題、官(0)
https://qiita.com/kaizen_nagoya/items/04ee6eaf7ec13d3af4c3
Error一覧(C/C++, python, bash...) Error(0)
https://qiita.com/kaizen_nagoya/items/48b6cbc8d68eae2c42b8
C++ Support(0)
https://qiita.com/kaizen_nagoya/items/8720d26f762369a80514
Coding Rules(0) C Secure , MISRA and so on
https://qiita.com/kaizen_nagoya/items/400725644a8a0e90fbb0
なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2
言語処理100本ノックをdockerで。python覚えるのに最適。:10+12
https://qiita.com/kaizen_nagoya/items/7e7eb7c543e0c18438c4
プログラムちょい替え(0)一覧:4件
https://qiita.com/kaizen_nagoya/items/296d87ef4bfd516bc394
TOPPERSまとめ #名古屋のIoTは名古屋のOSで
https://qiita.com/kaizen_nagoya/items/9026c049cb0309b9d451
自動制御、制御工学一覧(0)
https://qiita.com/kaizen_nagoya/items/7767a4e19a6ae1479e6b
プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945
一覧の一覧( The directory of directories of mine.) Qiita(100)
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39
小川清最終講義、小川清最終講義(再)計画, Ethernet(100) 英語(100) 安全(100)
https://qiita.com/kaizen_nagoya/items/e2df642e3951e35e6a53
<この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。>
This article is an individual impression based on the individual's experience. It has nothing to do with the organization or business to which I currently belong.
文書履歴(document history)
ver. 0.01 初稿 20220619
ver. 0.02 加筆 20220827
ver. 0.03 ありがとう追記 20230624
最後までおよみいただきありがとうございました。
いいね 💚、フォローをお願いします。
Thank you very much for reading to the last sentence.
Please press the like icon 💚 and follow me for your happy life.