Upgrade to Pro — share decks privately, control downloads, hide ads and more …

製造業とソフトウェアは本当に共存できていたのか?品質とスピードを問い直す

 製造業とソフトウェアは本当に共存できていたのか?品質とスピードを問い直す

【ヤマハ発動機×SUBARU×三菱電機】今こそ考えたい「開発プロセスの品質視点」登壇資料です。

https://techplay.jp/event/967093

Hiroyuki TAKAHASHI

January 29, 2025
Tweet

More Decks by Hiroyuki TAKAHASHI

Other Decks in Technology

Transcript

  1. Findy Inc. 2 本コンテンツの目的 本日お伝えしたいこと Learning Outcome • 自己紹介 •

    “If Japan can ……Why can’t we” • 日本のソフトウェア開発は何が問題なのか • おわりに Agenda • ソフトウェアエンジニアリングの50年の歴史を振り返り、その進 化を理解する。 • 特に日本がなぜソフトウェアでリード出来ていないのか、その真 因にせまる • なぜ「間違った古い考えを捨てられない」か?の理由を探る • 現代のソフトウェア開発環境やプラクティスがなぜ重要であるか を理解する。
  2. Findy Inc. 高橋 裕之 / Hiroyuki Takahashi ファインディ株式会社 CTO室 Software

    Engineer, SPI Coach, Agile Coach @Taka_bow takabow hiroyukitakah • 1989年より組込みエンジニアとして、OS開発、通信プロトコル開発、 RTOSや組込みLinuxを基盤としたガジェット開発に16年携わる。 • 2005年、それまでの経験を活かし、エンジニア人材と組織の課題解決に 特化したSPI(ソフトウェアプロセス改善)の専門家へ転身。 • 現在は、SPIコーチおよびアジャイルコーチとして活動し、DORAメトリ クスを活用したプロセス改善活動を得意とする。 • ソフトウェアエンジニアリングの潜在能力向上支援(イネーブルメン ト)に注力し、組織のパフォーマンス最適化に貢献している。 4
  3. 会社名 ファインディ株式会社 / Findy Inc. 代表取締役 山田 裕一朗 設立 2014

    年 2 月 ※ 本格的な事業開始は2016年7月 社員数 263 名 資本金 18 億 5,043 万円 ※ 資本準備金含む 住所 東京都品川区大崎1-2-2 アートヴィレッジ大崎セントラルタワー 5階 事業許可番号 13-ユ-308478 サービス ・ スカウト型リクルーティングサービス「Findy」 ・ ハイスキルな業務委託エンジニア紹介サービス「Findy Freelance」 ・ 外国籍エンジニア紹介サービス「Findy Global」 ・ エンジニア組織支援SaaS「Findy Team+」 ・ 開発ツールに特化したレビューサイト「Findy Tools」 投資家 グローバル・ブレイン、ユナイテッド、SMBCベンチャーキャピタル、KDDI、JA 三井リース、みずほキャピタル、博報堂DYベンチャーズ、Carbide Ventures、等 会社概要
  4. © Findy Inc. ファインディが展開するエンジニアプラットフォーム サービス紹介 ※ 各種数値は、2024年6月時点のFindy転職、Findy Freelance、Findy Team+、Findy Globalの4サービスの累計での社数及び登録者数です。

    なお、1社又は1名の方が複数のサービスに登録している場合は、そのサービスの数に応じて複数のカウントをしています。 ToC / ToB SaaS / ToB マッチングサービス 組織分析SaaS ToC / ToB 開発ツールメディア β版 GitHubやJiraを解析し、エンジニア組織の 見える化と生産性向上をサポート。 エンジニア組織の見える化 5万人以上のフリーランスエンジニアの 成功報酬型の人材紹介サービス。 フリーランスエンジニアの採用 約12万人のエンジニアと880社以上の テック企業をマッチング。 正社員エンジニアの採用 実際に利用している企業の声を元に、 開発ツールの導入や検討に必要な情報を 集約。企業の技術選定をサポート。 開発ツールのレビューサイト 9
  5. Findy Inc. 12 戦後日本の「ものづくり」 ⚫戦後、日本のものづくりは「安かろう悪かろう」 ⚫1950年 統計学の専門家であったW.E.Deming博士が日本科学技術連盟(JUSE)の招 きにより来日 ⚫ 日本の経営者に品質管理の考え方や統計的手法を伝える

    ⚫ 「品質の統計的管理8日間コース」セミナー ⚫ 「経営者のための品質管理講習会1日コース」セミナー ⚫ 日本製品の飛躍的な品質向上に貢献 ⚫ PDCA=デミング・サイクル ⚫1954年アメリカの品質管理コンサルタントであるJ.M.Juran博士が来日 ⚫1960年〜1980年代 日本版TQC(Total Quality Control)が普及・発展 ⚫ Deming博士とJuran博士の教えが色濃く反映 ⚫ トヨタ自動車、1961年からTQCを導入 ⚫ トヨタ自動車、1965年 デミング賞(日科技連)実施賞を受賞 ⚫1990年代〜TQCはTQM( Total Quality Management)へと発展 W.E.Deming博士(1900〜1993)
  6. Findy Inc. 13 品質管理の発展 神尾, 信. (1995). トヨタ生産方式とTQC: TQCへの期待に関する一考察. 生産管理,

    2(1), 3–14. https://doi.org/10.14846/seisankanri1995.2.3 良い結果は良いプロセスから得られるので両面から評 価する必要がある。このことを表す言葉に 「品質は工程で作り込め。不良は後工程に流すな。」 がある。 (中略) 図4は縦軸に発見された不具合件数をとり、横軸は製品 の主要開発ステップを示したものである。 BタイプはTQCを導入していない日本の企業によくみら れるパターンで図3のメーカーもこれに相当するといえ る。 Cタイプでは出荷検査時と市場に出回ってからの不具合 が多く発見され、プロセスの管理が不十分であったこ とが伺われ失敗コストが膨大となっている。 TQCを導入し、企画・開発・設計段階の源流工程で品 質の作り込みと不具合流出防止の管理を行えば、 Aタイプとなり失敗コストも大幅に減少 することになる。図3で示したメーカーもデミング賞実 施賞受賞後では、Aタイプの型になり向上した。
  7. Findy Inc. 14 戦後日本の「ものづくり」 ⚫日本製品が欧米で人気 ⚫1979年、米ハーバード大学のエズラ・ ヴォーゲル教授は『Japan as Number One:

    Lessons for America』を出版 ⚫米テレビ局NBCが1980年に “If Japan can ……Why can’t we”(もし 日本にできるのなら……なぜ私たちに はできないのか)という番組で、アメリ カではほぼ無名であったデミング博士 を紹介 ⚫ 日本がなぜ高品質な製品を生産できるのか、 その背景にある管理手法や文化を掘り下げた 番組 ⚫ 特に、エドワーズ・デミング博士の提唱する 統計的品質管理(SQC)が日本で採用され、 成功を収めていることが強調される “ウォークマン” 1号機 TPS-L2 (1979) Toyota Corolla Liftback SR5 001 (1980〜) ソニートリニトロンシリーズ (1968〜) Vogel, E. F. (1979). Japan as number one: Lessons for America. Cambridge, MA: Harvard University Press. W.E.Deming博士(1900〜1993)
  8. Findy Inc. 15 戦後日本の「ものづくり」 ⚫日本製品が欧米で人気 ⚫1979年、米ハーバード大学のエズラ・ ヴォーゲル教授は『Japan as Number One:

    Lessons for America』を出版 ⚫米テレビ局NBCが1980年に “If Japan can ……Why can’t we”(もし 日本にできるのなら……なぜ私たちに はできないのか)という番組で、アメリ カではほぼ無名であったデミング博士 を紹介 ⚫ 日本がなぜ高品質な製品を生産できるのか、 その背景にある管理手法や文化を掘り下げた 番組 ⚫ 特に、エドワーズ・デミング博士の提唱する 統計的品質管理(SQC)が日本で採用され、 成功を収めていることが強調される “ウォークマン” 1号機 TPS-L2 (1979) Toyota Corolla Liftback SR5 001 (1980〜) ソニートリニトロンシリーズ (1968〜) Vogel, E. F. (1979). Japan as number one: Lessons for America. Cambridge, MA: Harvard University Press. W.E.Deming博士(1900〜1993) 戦後日本は愚直に学び、 品質を鍛え抜いて世界を驚かせた。 そして50年が経った・・・
  9. 16

  10. 22 要件定義 外部設計 実装 コーディング/ テスト 結合テスト システムテスト 内部設計 テスト会社A

    テスト会社B バグ管理 不具合 不具合 不具合 PdM 開発者(社員) 開発者(協力会社) コード管理
  11. 23 要件定義 外部設計 実装 コーディング/ テスト 結合テスト システムテスト 内部設計 テスト会社A

    テスト会社B 不具合 不具合 不具合 不具合分析 PdM 開発者(社員) バグ管理 コード管理
  12. 24 要件定義 外部設計 実装 コーディング/ テスト 結合テスト システムテスト 内部設計 テスト会社A

    テスト会社B 不具合 不具合 不具合 コード管理 不具合分析 バグ修正 PdM 開発者(社員) バグ管理
  13. 25 要件定義 外部設計 実装 コーディング/ テスト 結合テスト システムテスト 内部設計 テスト会社A

    テスト会社B 不具合 不具合 不具合 不具合分析 再テスト PdM バグ修正 開発者(社員) バグ管理 コード管理
  14. 26 要件定義 外部設計 実装 コーディング/ テスト 結合テスト システムテスト 内部設計 テスト会社A

    テスト会社B 不具合 不具合 不具合 不具合分析 再テスト PdM バグ修正 開発者(社員) バグ管理 コード管理
  15. Findy Inc. 27 品質管理の発展 神尾, 信. (1995). トヨタ生産方式とTQC: TQCへの期待に関する一考察. 生産管理,

    2(1), 3–14. https://doi.org/10.14846/seisankanri1995.2.3 一般社団法人日本情報システム・ユーザー協会. (2020). ユーザー企業ソフトウェアメトリッ クス調査2020 システム開発・保守調査報告書 (p. 38, 図表NE3-2: QCDに影響した事象の発現 工程と原因工程 2018-2020年累積). 一般社団法人日本情報システム・ユーザー協会. https://juas.or.jp/library/research_rpt/swm/(筆者が折線を追加) ものづくり ソフトウェア開発
  16. Findy Inc. 28 品質管理の発展 神尾, 信. (1995). トヨタ生産方式とTQC: TQCへの期待に関する一考察. 生産管理,

    2(1), 3–14. https://doi.org/10.14846/seisankanri1995.2.3 一般社団法人日本情報システム・ユーザー協会. (2020). ユーザー企業ソフトウェアメトリッ クス調査2020 システム開発・保守調査報告書 (p. 38, 図表NE3-2: QCDに影響した事象の発現 工程と原因工程 2018-2020年累積). 一般社団法人日本情報システム・ユーザー協会. https://juas.or.jp/library/research_rpt/swm/(筆者が折線を追加) ものづくり ソフトウェア開発 「品質は工程で作り込め。 不良は後工程に流すな。」 には見えない
  17. Findy Inc. 『日本のソフトウエア産業、衰退の真因』2005年10月 ⚫松原友夫氏(トム・デマルコ本の翻訳でおなじみ)による寄稿 ⚫ https://xtech.nikkei.com/it/article/COLUMN/20070306/264055/ ⚫要約 ① 背景と警告 1990年代、アメリカではエド・ヨードンがソフトウェア産業の危機を警告し、日本を模範的な存在として

    称賛しましたが、その後、アメリカはオブジェクト指向やアジャイルなどの新しい開発手法により復活を 遂げました。 ② 日本の遅れ 日本は、90年代においてメインフレームからクライアントサーバーへの移行に乗り遅れ、ソフトウェア開 発における国際競争力を失いました。また、技術伝承の断絶や不十分なプロジェクト管理が原因で、開発 の質が低下しました。 ③ 産業構造の問題 日本のソフトウェア産業には多重下請け構造が蔓延し、派遣プログラマーに依存する状況が問題視され ています。これにより、ソフトウェア開発の品質と効率が損なわれ、さらに低賃金の海外労働力に仕事が 流れる懸念が高まっています。 ④ 提言 日本のソフトウェア産業の再生には、「自立」が必要であると述べています。これは、ソフトウェア企業 や技術者が自主的に技術と経営の自立を目指し、プロジェクトマネジメント力を高めることで達成される べきです。また、政府やユーザー企業も、この自立を支援する役割を果たすべきであると提案しています。
  18. Findy Inc. 『日本のソフトウエア産業、衰退の真因』2005年10月 ⚫松原友夫氏(トム・デマルコ本の翻訳でおなじみ)による寄稿 ⚫ https://xtech.nikkei.com/it/article/COLUMN/20070306/264055/ ⚫要約 ① 背景と警告 1990年代、アメリカではエド・ヨードンがソフトウェア産業の危機を警告し、日本を模範的な存在として

    称賛しましたが、その後、アメリカはオブジェクト指向やアジャイルなどの新しい開発手法により復活を 遂げました。 ② 日本の遅れ 日本は、90年代においてメインフレームからクライアントサーバーへの移行に乗り遅れ、ソフトウェア開 発における国際競争力を失いました。また、技術伝承の断絶や不十分なプロジェクト管理が原因で、開発 の質が低下しました。 ③ 産業構造の問題 日本のソフトウェア産業には多重下請け構造が蔓延し、派遣プログラマーに依存する状況が問題視され ています。これにより、ソフトウェア開発の品質と効率が損なわれ、さらに低賃金の海外労働力に仕事が 流れる懸念が高まっています。 ④ 提言 日本のソフトウェア産業の再生には、「自立」が必要であると述べています。これは、ソフトウェア企業 や技術者が自主的に技術と経営の自立を目指し、プロジェクトマネジメント力を高めることで達成される べきです。また、政府やユーザー企業も、この自立を支援する役割を果たすべきであると提案しています。
  19. Findy Inc. 『日本のソフトウエア産業、衰退の真因』2005年10月 ⚫松原友夫氏(トム・デマルコ本の翻訳でおなじみ)による寄稿 ⚫ https://xtech.nikkei.com/it/article/COLUMN/20070306/264055/ ⚫要約 ① 背景と警告 1990年代、アメリカではエド・ヨードンがソフトウェア産業の危機を警告し、日本を模範的な存在として

    称賛しましたが、その後、アメリカはオブジェクト指向やアジャイルなどの新しい開発手法により復活を 遂げました。 ② 日本の遅れ 日本は、90年代においてメインフレームからクライアントサーバーへの移行に乗り遅れ、ソフトウェア開 発における国際競争力を失いました。また、技術伝承の断絶や不十分なプロジェクト管理が原因で、開発 の質が低下しました。 ③ 産業構造の問題 日本のソフトウェア産業には多重下請け構造が蔓延し、派遣プログラマーに依存する状況が問題視され ています。これにより、ソフトウェア開発の品質と効率が損なわれ、さらに低賃金の海外労働力に仕事が 流れる懸念が高まっています。 ④ 提言 日本のソフトウェア産業の再生には、「自立」が必要であると述べています。これは、ソフトウェア企業 や技術者が自主的に技術と経営の自立を目指し、プロジェクトマネジメント力を高めることで達成される べきです。また、政府やユーザー企業も、この自立を支援する役割を果たすべきであると提案しています。 20年前のこの警告から、我々は 何を学び、何かを変えれたのか?
  20. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 10年前 20年前 30年前 40年前 50年前 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 ★ ITバブル崩壊 Ver2.00
  21. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  22. Findy Inc. 34 戦後日本の「ものづくり」 ⚫日本製品が欧米で人気 ⚫1979年、米ハーバード大学のエズラ・ ヴォーゲル教授は『Japan as Number One:

    Lessons for America』を出版 ⚫米テレビ局NBCが1980年に “If Japan can ……Why can’t we”(もし 日本にできるのなら……なぜ私たちに はできないのか)という番組で、アメリ カではほぼ無名であったデミング博士 を紹介 ⚫ 日本がなぜ高品質な製品を生産できるのか、 その背景にある管理手法や文化を掘り下げた 番組 ⚫ 特に、エドワーズ・デミング博士の提唱する 統計的品質管理(SQC)が日本で採用され、 成功を収めていることが強調される “ウォークマン” 1号機 TPS-L2 (1979) Toyota Corolla Liftback SR5 001 (1980〜) ソニートリニトロンシリーズ (1968〜) Vogel, E. F. (1979). Japan as number one: Lessons for America. Cambridge, MA: Harvard University Press. W.E.Deming博士(1900〜1993)
  23. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  24. Findy Inc. 36 ウォーターフォール ⚫Winston W. Royce による”Managing the Development

    of Large Software Systems(1970)” Winston W. Royce (ウィンストン・W・ロイス)
  25. Findy Inc. 37 ウォーターフォール ⚫Winston W. Royce による”Managing the Development

    of Large Software Systems(1970)” ⚫ Winston W. Royceは、論文の中でウォーターフォールモ デルを紹介した際に、その欠点についても詳しく述べて います。彼は、反復とフィードバックの重要性を強調し、 単純な直線的なプロセスとしてのウォーターフォールは 実用的ではないと述べました。 ⚫ しかし、彼の警告や提案が十分に理解されず、単純化さ れた形で広まってしまったのです。 ⚫ 1970年代から1980年代にかけて、多くの企業や政府機 関がウォーターフォールモデルを公式な開発プロセスと して採用しました。 ⚫ これらの組織は、プロジェクト管理のための厳密な手順 と文書化を重視し、ウォーターフォールの直線的な進行 を強調しました。 ⚫ 結果として、プロジェクトマネージャーやエンジニアは、 ウォーターフォールモデルが反復を含まないものとして 理解するようになりました。
  26. Findy Inc. 38 ウォーターフォール ⚫Winston W. Royce による”Managing the Development

    of Large Software Systems(1970)” ⚫ Winston W. Royceは、論文の中でウォーターフォールモ デルを紹介した際に、その欠点についても詳しく述べて います。彼は、反復とフィードバックの重要性を強調し、 単純な直線的なプロセスとしてのウォーターフォールは 実用的ではないと述べました。 ⚫ しかし、彼の警告や提案が十分に理解されず、単純化さ れた形で広まってしまったのです。 ⚫ 1970年代から1980年代にかけて、多くの企業や政府機 関がウォーターフォールモデルを公式な開発プロセスと して採用しました。 ⚫ これらの組織は、プロジェクト管理のための厳密な手順 と文書化を重視し、ウォーターフォールの直線的な進行 を強調しました。 ⚫ 結果として、プロジェクトマネージャーやエンジニアは、 ウォーターフォールモデルが反復を含まないものとして 理解するようになりました。
  27. Findy Inc. 39 ウォーターフォール ⚫Winston W. Royce による”Managing the Development

    of Large Software Systems(1970)” 図3 顧客に引き渡すための大規模プログラムを開発するための実現ステップ 図4 反復(後戻り)は隣り合うステップに限定されない
  28. Findy Inc. 犯人 ⚫ 「Software Requirements: Are They Really a

    Problem?」とい うT.E. BellとT.A. Thayerによる論文では、Winston W. Royce の1970年の論文を参照し、「開発活動のウォーターフォール (滝)」という表現を用いて、ソフトウェア開発プロセスの段 階的なアプローチを説明しています。この際、Royceの提案を、 各フェーズが順番に進む線形で非反復的なプロセスとして解釈 しています。 ⚫ Royce自身は、元の論文で反復的なフィードバックと改善の必 要性を強調していましたが、この論文では、ソフトウェア要件 の問題の重要性を強調し、要件の不備が設計や実装段階での失 敗につながると述べています。その結果、要件の不備を防ぐた めに「トップダウン型で進む厳密なプロセス」が必要であると の主張が間接的にウォーターフォールの誤解に結びつきました。 ⚫ さらに、この概念が広く普及した背景には、Barry Boehm氏 (COCOMOやスパイラルモデルを提唱した人物)が1981年の 著書「Software Engineering Economics」でRoyce氏のモデル をウォーターフォール型として紹介したことも影響しています。 これにより、ウォーターフォールモデルの誤解が強固なものと なり、業界全体でそのイメージが固定化されました。 Bell, T. E., & Thayer, T. A. (1976). Software requirements: Are they really a problem? Proceedings of the 2nd International Conference on Software Engineering (ICSE '76), 61–68. https://doi.org/10.5555/800253.807650
  29. 41 要件定義 外部設計 実装 コーディング/ テスト 結合テスト システムテスト 内部設計 開発者(社員)

    テスト会社A テスト会社B PdM 開発者(協力会社) 間違った論文の 「ウォーターフォール」を 続けてて良いの?
  30. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  31. Findy Inc. 43 とてつもないハードウェアの進化 指標 IBM System/360 登場年 1964年 用途

    メインフレーム、企業や政府の大規模データ処理 処理速度 数百万命令/秒(MIPS) CPU ビット単位の並列処理が可能なプロセッサ メモリ 最大1MB ストレージ 数MBから数GB サイズ 非常に大きく、専用のコンピュータルームが必要 消費電力 数キロワット コスト 数百万ドル(当時の価格) メインフレーム時代 IBM System 360 at USDA
  32. Findy Inc. 44 とてつもないハードウェアの進化 指標 IBM System/360 MacBook Pro M3

    Max 比較結果 登場年 1964年 2023年 - 用途 メインフレーム、企業や政府の大規模データ処理 ポータブルコンピュータ、様々な用途 - 処理速度 数百万命令/秒(MIPS) 数十億命令/秒(BIPS) 約10,000倍 CPU ビット単位の並列処理が可能なプロセッサ Apple M3 Maxチップ、12コアCPU、38コアGPU 最新のCPUアーキテクチャ メモリ 最大1MB 64GB(=64,000MB) 約64,000倍 ストレージ 数MBから数GB 最大8TB(=8,000GB) 約8,000倍 サイズ 非常に大きく、専用のコンピュータルームが必要 薄型軽量デザイン、持ち運び可能 コンパクトで携帯可能 消費電力 数キロワット 数十ワット 約100分の1の消費電力 コスト 数百万ドル(当時の価格) 約$3,499(基本モデル) - MacBook Pro M3 Max (2023) メインフレーム時代 IBM System 360 at USDA
  33. Findy Inc. 45 とてつもないハードウェアの進化 指標 IBM System/360 MacBook Pro M3

    Max 比較結果 登場年 1964年 2023年 - 用途 メインフレーム、企業や政府の大規模データ処理 ポータブルコンピュータ、様々な用途 - 処理速度 数百万命令/秒(MIPS) 数十億命令/秒(BIPS) 約10,000倍 CPU ビット単位の並列処理が可能なプロセッサ Apple M3 Maxチップ、12コアCPU、38コアGPU 最新のCPUアーキテクチャ メモリ 最大1MB 64GB(=64,000MB) 約64,000倍 ストレージ 数MBから数GB 最大8TB(=8,000GB) 約8,000倍 サイズ 非常に大きく、専用のコンピュータルームが必要 薄型軽量デザイン、持ち運び可能 コンパクトで携帯可能 消費電力 数キロワット 数十ワット 約100分の1の消費電力 コスト 数百万ドル(当時の価格) 約$3,499(基本モデル) - MacBook Pro M3 Max (2023) メインフレーム時代 IBM System 360 at USDA 1976 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用
  34. Findy Inc. 46 とてつもないハードウェアの進化 指標 IBM System/360 MacBook Pro M3

    Max 比較結果 登場年 1964年 2023年 - 用途 メインフレーム、企業や政府の大規模データ処理 ポータブルコンピュータ、様々な用途 - 処理速度 数百万命令/秒(MIPS) 数十億命令/秒(BIPS) 約10,000倍 CPU ビット単位の並列処理が可能なプロセッサ Apple M3 Maxチップ、12コアCPU、38コアGPU 最新のCPUアーキテクチャ メモリ 最大1MB 64GB(=64,000MB) 約64,000倍 ストレージ 数MBから数GB 最大8TB(=8,000GB) 約8,000倍 サイズ 非常に大きく、専用のコンピュータルームが必要 薄型軽量デザイン、持ち運び可能 コンパクトで携帯可能 消費電力 数キロワット 数十ワット 約100分の1の消費電力 コスト 数百万ドル(当時の価格) 約$3,499(基本モデル) - MacBook Pro M3 Max (2023) メインフレーム時代 IBM System 360 at USDA 1976 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用
  35. Findy Inc. 47 とてつもないハードウェアの進化 指標 IBM System/360 MacBook Pro M3

    Max 比較結果 登場年 1964年 2023年 - 用途 メインフレーム、企業や政府の大規模データ処理 ポータブルコンピュータ、様々な用途 - 処理速度 数百万命令/秒(MIPS) 数十億命令/秒(BIPS) 約10,000倍 CPU ビット単位の並列処理が可能なプロセッサ Apple M3 Maxチップ、12コアCPU、38コアGPU 最新のCPUアーキテクチャ メモリ 最大1MB 64GB(=64,000MB) 約64,000倍 ストレージ 数MBから数GB 最大8TB(=8,000GB) 約8,000倍 サイズ 非常に大きく、専用のコンピュータルームが必要 薄型軽量デザイン、持ち運び可能 コンパクトで携帯可能 消費電力 数キロワット 数十ワット 約100分の1の消費電力 コスト 数百万ドル(当時の価格) 約$3,499(基本モデル) - MacBook Pro M3 Max (2023) メインフレーム時代 IBM System 360 at USDA 1976 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 とてつもないハードウェアの進化で 「ウォーターフォール」を 誤魔化していませんか?
  36. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  37. Findy Inc. 49 ラショナル・ユニファイドプロセス(RUP) • 1998年、ウォーターフォールの欠点を補うべ く生まれたのがRational software社の Rational Unified

    Process(RUP) • 後にIBMに買収され統合(2003年) • Rational software社にはUMLを生み出した“3 アミーゴ”が所属していたことも有名 • RUPはソフトウェア開発のためのプロセスフ レームワークであり、特に大規模で複雑なソ フトウェアプロジェクトに適しています。 RUPは、反復的(イテレーション)かつイン クリメンタルな開発をサポートし、プロジェ クトのリスクを早期に発見し、対応すること を目的としています。
  38. Findy Inc. 50 ラショナル・ユニファイドプロセス(RUP) ⚫ウォーターフォールの提唱者 Winston Walker Royce の息子はWalker Royceは、

    IBMでRUPの発展の中心人物 ⚫ 彼は(当時)IBMのRational部門のチーフソフトウェアエコノミストであり、「Software Project Management, A Unified Framework」の著者であり、IBM Rational Unified Process (RUP)における管理哲学においてボードメンバーであった。 米IBMソフトウェアグループ、 ラショナルブランドサービスバイスプレジデント(2003年当時) Walker Royce氏(長男) https://japan.cnet.com/article/2005985 3/ 親子 Winston W. Royce (ウィンストン・W・ロイス)
  39. Findy Inc. 51 ラショナル・ユニファイドプロセス(RUP) ⚫当時のIBMは、RUPを中核に添えてツールを売りたかった ⚫ Rational Rose: UMLベースのソフトウェア設計およびモデリングツール。 ⚫

    Rational Software Architect (RSA): モデル駆動型開発のための包括的な設計およびモデリング ツール。 ⚫ Rational RequisitePro: 要件収集、管理、および追跡のためのツール。 ⚫ Rational DOORS: 大規模なシステムやソフトウェアプロジェクトのための要件管理ツール。 ⚫ Rational ClearCase: バージョン管理、構成管理、およびソフトウェアビルドのためのツール。 ⚫ Rational Synergy: 構成管理および変更管理ツール。 ⚫ Rational ClearQuest: バグ追跡および変更管理のためのツール。 ⚫ Rational Application Developer (RAD): JavaおよびWebアプリケーションの開発のための統合開 発環境。 ⚫RUPは、複雑さと導入コスト高さにより徐々に衰退する ⚫ RUPはその包括的な性質ゆえに非常に複雑であり、完全に導入するためには多くのトレーニング と管理が必要です。この複雑さが、多くの組織にとって導入のハードルとなりました。 ⚫ RUPを効果的に導入・運用するためには、専用のツールやコンサルティングが必要であり、これ が高いコストを伴いました。特に中小企業にとっては、コストの問題が大きな障害となりました。
  40. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  41. Findy Inc. 53 ソフトウェアエンジニアリングの始まり ⚫ソフトウェア危機 ⚫ 1960年代に入ると、コンピュータのハードウェア技術が急速に進化し、それに伴いソフトウェ アの複雑さも増大しました。この時期、多くのソフトウェアプロジェクトが予定通りに完成せず、 予算を超過し、バグが多発するという「ソフトウェア危機」と呼ばれる状況が頻発しました。こ の危機がソフトウェア開発の新しいアプローチを求める声を強めました

    。 ⚫NATO Software Engineering Conference ⚫ 1968年と1969年に、NATO(北大西洋条約機構)主催でソフトウェア工学会議(NATO Software Engineering Conference)が開催されました。1968年の会議はドイツのガルミッシュ で行われ、ここで「ソフトウェア工学(Software Engineering)」という用語が初めて正式に使 われました。この会議では、ソフトウェア開発を工学的なアプローチで捉える必要性が強調され ました 。 ⚫ その後、日本では 1977年に情報処理学会においてソフトウェア工学研究会(SIGSE: Special Interest Group on Software Engineering) が発足し、「ソフトウェア工学」という用語がまず は一般化した。
  42. Findy Inc. 54 ソフトウェアエンジニアリングの始まり ⚫構造化分析とシステム仕様 ⚫ トム・デマルコ著 ⚫ 初版 1979年

    ⚫ 最初のDFD(Data Flow Diagram)の解説本 ⚫実践ソフトウェアエンジニアリング ⚫ ロジャー・プレスマン、他 著 ⚫ 初版 1982年 ⚫ こまめに版を重ね、最新は9版 ⚫ 常に業界の変化に対応している ⚫ 日本語翻訳本が2021年に出版 2021/12/1 1982 2019/9/30
  43. Findy Inc. 55 実践ソフトウェアエンジニアリング[第9版](2021/12/1) 部 章 序章 第1章ソフトウェアとソフトウェアエンジニアリング 第1部 ソフトウェアプロセス

    第2章 プロセスモデル 第3章 アジャイルとプロセス 第4章 推奨のプロセスモデル 第5章 ソフトウェアエンジニアリングの人間的側面 第2部 モデリング 第6章 プラクティスの指針となる原則 第7章 要求エンジニアリング 第8章 要求モデリングの推奨手法 第9章 設計の概念 第10章 アーキテクチャ設計の推奨手法 第11章 コンポーネント設計 第12章 ユーザエクスペリエンス設計 第13章 移動体端末におけるソフトウェアの設計 第14章 パターンに基づく設計 第3部 品質とセキュリティ 第15章 品質の概念 第16章 レビューの推奨手法 第17章 ソフトウェア品質保証 第18章 ソフトウェアセキュリティエンジニアリング 第19章 ソフトウェアテスト―コンポーネントレベル 第20章 ソフトウェアテスト―統合レベル 第21章 ソフトウェアテスト―移動体端末と特定ドメインに対するテスト 第22章 ソフトウェア構成マネジメント 第23章 ソフトウェアメトリクスと分析 第4部 ソフトウェアプロジェクトのマネジメ ント 第24章 プロジェクトマネジメントの概念 第25章 実行可能で役立つソフトウェア計画 第26章 リスクマネジメント 第27章 ソフトウェアサポート戦略 第5部 先端的な話題 第28章 ソフトウェアプロセス改善 第29章 ソフトウェアエンジニアリングの新興トレンド 第30章 おわりに 2021/12/1 2019/9/30
  44. Findy Inc. 56 実践ソフトウェアエンジニアリング[第9版](2021/12/1) 部 章 序章 第1章ソフトウェアとソフトウェアエンジニアリング 第1部 ソフトウェアプロセス

    第2章 プロセスモデル 第3章 アジャイルとプロセス 第4章 推奨のプロセスモデル 第5章 ソフトウェアエンジニアリングの人間的側面 第2部 モデリング 第6章 プラクティスの指針となる原則 第7章 要求エンジニアリング 第8章 要求モデリングの推奨手法 第9章 設計の概念 第10章 アーキテクチャ設計の推奨手法 第11章 コンポーネント設計 第12章 ユーザエクスペリエンス設計 第13章 移動体端末におけるソフトウェアの設計 第14章 パターンに基づく設計 第3部 品質とセキュリティ 第15章 品質の概念 第16章 レビューの推奨手法 第17章 ソフトウェア品質保証 第18章 ソフトウェアセキュリティエンジニアリング 第19章 ソフトウェアテスト―コンポーネントレベル 第20章 ソフトウェアテスト―統合レベル 第21章 ソフトウェアテスト―移動体端末と特定ドメインに対するテスト 第22章 ソフトウェア構成マネジメント 第23章 ソフトウェアメトリクスと分析 第4部 ソフトウェアプロジェクトのマネジメ ント 第24章 プロジェクトマネジメントの概念 第25章 実行可能で役立つソフトウェア計画 第26章 リスクマネジメント 第27章 ソフトウェアサポート戦略 第5部 先端的な話題 第28章 ソフトウェアプロセス改善 第29章 ソフトウェアエンジニアリングの新興トレンド 第30章 おわりに 2021/12/1 2019/9/30
  45. Findy Inc. 57 実践ソフトウェアエンジニアリング[第9版](2021/12/1) ⚫ ウォーターフォールモデルはソフトウェアエンジ ニア リングにおける最も古いパラダイムである。 しかし、 登場から50年以上が経過し、積極的に支持していた

    人々でさえ今では有効性に疑問を抱くようになった。ウ ォーターフォールモデル適用時の問題には次のようなも のがある。 1. 現実のプロジェクトでは、モデルに示されているワークフロ ーの順番どおり進行することはほとんどない 2. プロジェクト開始時に顧客が要求事項をすべて明確に述べる ことは難しい 3. 実際に動作するプログラムはプロジェクトの後半になるまで 入手できず、顧客は辛抱強く待たなければならない 4. プログラムが動く段階になるまで大きな問題が発見されない 場合がある ⚫ 今日、ソフトウェア開発はスピードが求められ、(機能 やフィーチャ、情報コンテンツに対する)変更の奔流に 晒されている。ウォーターフォールモデルはこうした状 況には適していない。 プレスマン, R., & マキシム, B. (2021). 実践ソフトウェアエンジニアリング (第9版) (p. 20). オーム社. 2021/12/1 2019/9/30
  46. Findy Inc. 58 実践ソフトウェアエンジニアリング[第9版](2021/12/1) ⚫ ウォーターフォールモデルはソフトウェアエンジ ニア リングにおける最も古いパラダイムである。 しかし、 登場から50年以上が経過し、積極的に支持していた

    人々でさえ今では有効性に疑問を抱くようになった。ウ ォーターフォールモデル適用時の問題には次のようなも のがある。 1. 現実のプロジェクトでは、モデルに示されているワークフロ ーの順番どおり進行することはほとんどない 2. プロジェクト開始時に顧客が要求事項をすべて明確に述べる ことは難しい 3. 実際に動作するプログラムはプロジェクトの後半になるまで 入手できず、顧客は辛抱強く待たなければならない 4. プログラムが動く段階になるまで大きな問題が発見されない 場合がある ⚫ 今日、ソフトウェア開発はスピードが求められ、(機能 やフィーチャ、情報コンテンツに対する)変更の奔流に 晒されている。ウォーターフォールモデルはこうした状 況には適していない。 プレスマン, R., & マキシム, B. (2021). 実践ソフトウェアエンジニアリング (第9版) (p. 20). オーム社. 2021/12/1 2019/9/30
  47. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  48. Findy Inc. 61 CMM(CMMI)の登場 ⚫ワッツ・S・ハンフリーの著書『Managing the Software Process』 Managing the

    Software Process (1989) 引用:https://www.plays-in-business.com/cmmi-capability-maturity-model-integration/
  49. Findy Inc. 62 CMM(CMMI)の登場 プロセス領域 区分 成熟度 レベル 要件管理 (REQM:

    Requirements Management) プロジェクト管理 2 プロジェクト計画策定 (PP: Project Planning) プロジェクト管理 2 プロジェクトの監視と制御 (PMC: Project Monitoring and Control) プロジェクト管理 2 供給者合意管理 (SAM: Supplier Agreement Management) プロジェクト管理 2 測定と分析 (MA: Measurement and Analysis) 支援 2 プロセスと成果物の品質保証 (PPQA: Process and Product Quality Assurance) 支援 2 構成管理 (CM: Configuration Management) 支援 2 要件開発 (RD: Requirements Development) エンジニアリング 3 技術解 (TS: Technical Solution) エンジニアリング 3 成果物統合 (PI: Product Integration) エンジニアリング 3 検証 (VER: Verification) エンジニアリング 3 妥当性確認 (VAL: Validation) エンジニアリング 3 組織プロセス重視 (OPF: Organizational Process Focus) プロセス管理 3 組織プロセス定義 (OPD: Organizational Process Definition) プロセス管理 3 組織トレーニング (OT: Organizational Training) プロセス管理 3 統合プロジェクト管理 (IPM: Integrated Project Management) プロジェクト管理 3 リスク管理 (RSKM: Risk Management) プロジェクト管理 3 決定分析と解決 (DAR: Decision Analysis and Resolution) 支援 3 組織プロセス実績 (OPP: Organizational Process Performance) プロセス管理 4 定量的プロジェクト管理 (QPM: Quantitative Project Management) プロジェクト管理 4 組織実績管理 (OPM: Organizational Performance Management) プロセス管理 5 原因分析と解決 (CAR: Causal Analysis and Resolution) 支援 5 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生
  50. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  51. Findy Inc. 64 日本ソフトウェア産業のつまづき ⚫1988〜1989:米国「通商法スーパー301条」が施行。不公正貿 易障壁の候補に国産OS BTRONが名指しされる。(社)トロン 協会からの誤解であるという主張を受け入れ対象品目からは外 れるものの、日本政府主導で行われるOS開発への米国圧力は続 き、BTRONを搭載したパソコン開発が中止。メインのTRONプ

    ロジェクトもメーカーが次々と撤退することに。(組み込みOS のμITRONは生き残っている) ⚫1985〜1990:Σプロジェクトは、ソフトウェア生産性の向上 を目指した壮大な国家プロジェクトであったが、技術的進化の 欠如、不十分なツールの評価、市場変化への対応不足、プロジ ェクト管理の問題、ハードウェア依存などが原因で期待された 成果を上げることができなかった。結果として、1990年にプロ ジェクトは終了し、その後設立されたシグマシステムも1995年 には解散した。
  52. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  53. Findy Inc. 『日本のソフトウエア産業、衰退の真因』2005年10月 ⚫松原友夫氏(トム・デマルコ本の翻訳でおなじみ)による寄稿 ⚫ https://xtech.nikkei.com/it/article/COLUMN/20070306/264055/ ⚫要約 ① 背景と警告 1990年代、アメリカではエド・ヨードンがソフトウェア産業の危機を警告し、日本を模範的な存在として

    称賛しましたが、その後、アメリカはオブジェクト指向やアジャイルなどの新しい開発手法により復活を 遂げました。 ② 日本の遅れ 日本は、90年代においてメインフレームからクライアントサーバーへの移行に乗り遅れ、ソフトウェア開 発における国際競争力を失いました。また、技術伝承の断絶や不十分なプロジェクト管理が原因で、開発 の質が低下しました。 ③ 産業構造の問題 日本のソフトウェア産業には多重下請け構造が蔓延し、派遣プログラマーに依存する状況が問題視され ています。これにより、ソフトウェア開発の品質と効率が損なわれ、さらに低賃金の海外労働力に仕事が 流れる懸念が高まっています。 ④ 提言 日本のソフトウェア産業の再生には、「自立」が必要であると述べています。これは、ソフトウェア企業 や技術者が自主的に技術と経営の自立を目指し、プロジェクトマネジメント力を高めることで達成される べきです。また、政府やユーザー企業も、この自立を支援する役割を果たすべきであると提案しています。 ソフトウェアで復活を遂げたアメリカ 1992/3/13 僅か4年後 1996/4/1
  54. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  55. Findy Inc. 69 The New New Product Development Game (1986)

    竹内弘高 ハーバード大学経営大学院シニ アフェロー、一橋大学名誉教授、 学校法人国際基督教大学理事長 野中郁次郎 一橋大学名誉教授、カリフォル ニア大学バークレー校特別名誉 教授、日本学士院会員
  56. Findy Inc. 70 The New New Product Development Game (1986)

    竹内弘高 ハーバード大学経営大学院シニ アフェロー、一橋大学名誉教授、 学校法人国際基督教大学理事長 野中郁次郎 一橋大学名誉教授、カリフォル ニア大学バークレー校特別名誉 教授、日本学士院会員 Abstract: 新しい製品開発において、特にそのスピードと柔軟性の向上 が重要であることがますます認識されるようになってきまし た。本論文では、日本の企業がどのようにしてこれらの特性 を達成しているかを分析します。具体的には、製品開発プロ セスを従来の「リレー・レース型」から「ラグビー型」に移 行させることに焦点を当てます。「ラグビー型」では、プロ ジェクトチームが一体となって連携し、反復的かつ漸進的に 作業を進めていきます。この方法により、企業は市場の変化 に迅速に対応し、より効率的に製品を開発することが可能と なります。
  57. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  58. Findy Inc. 74 Extreme Programming Explained: Embrace Change(1999) Kent Beck

    1. 反復的な開発: 短期間のイテレーション(通常1〜2週間)を繰り返し、各イテレーションで動作するソフトウェアを提供する。 2. 顧客の関与: 顧客が開発チームの一員として積極的に関与し、要求を直接伝え、フィードバックを提供する。 3. ペアプログラミング: 2人のプログラマーが1台のコンピューターで共同作業を行い、コードの品質を向上させる。 4. テスト駆動開発(TDD): コードを書く前にテストを作成し、そのテストに合格するコードを書くことで品質を保証する。 5. リファクタリング: コードの機能を変えずに内部構造を改善し、コードの保守性を向上させる。 6. シンプルな設計: 必要最低限の機能を持つシンプルな設計を行い、後で必要に応じて機能を追加する。 7. 継続的インテグレーション: 新しいコードを頻繁に統合し、自動化されたビルドとテストを実行して問題を早期に発見する。 8. 持続可能なペース: 開発チームが過労にならないように、持続可能なペースで作業を進める。 9. コレクティブオーナーシップ: チーム全員がコードの責任を共有し、誰でもコードを変更できるようにする。 10. メタファーの使用: プロジェクト全体の理解を助けるために、共通のメタファーや比喩を使用する。 11. コードの共有: すべての開発者がコードを共有し、どの開発者も任意のコードを改善できるようにする。
  59. Findy Inc. 75 Extreme Programming Explained: Embrace Change(1999) Kent Beck

    1. 反復的な開発: 短期間のイテレーション(通常1〜2週間)を繰り返し、各イテレーションで動作するソフトウェアを提供する。 2. 顧客の関与: 顧客が開発チームの一員として積極的に関与し、要求を直接伝え、フィードバックを提供する。 3. ペアプログラミング: 2人のプログラマーが1台のコンピューターで共同作業を行い、コードの品質を向上させる。 4. テスト駆動開発(TDD): コードを書く前にテストを作成し、そのテストに合格するコードを書くことで品質を保証する。 5. リファクタリング: コードの機能を変えずに内部構造を改善し、コードの保守性を向上させる。 6. シンプルな設計: 必要最低限の機能を持つシンプルな設計を行い、後で必要に応じて機能を追加する。 7. 継続的インテグレーション: 新しいコードを頻繁に統合し、自動化されたビルドとテストを実行して問題を早期に発見する。 8. 持続可能なペース: 開発チームが過労にならないように、持続可能なペースで作業を進める。 9. コレクティブオーナーシップ: チーム全員がコードの責任を共有し、誰でもコードを変更できるようにする。 10. メタファーの使用: プロジェクト全体の理解を助けるために、共通のメタファーや比喩を使用する。 11. コードの共有: すべての開発者がコードを共有し、どの開発者も任意のコードを改善できるようにする。 現在“モダン”と言われる開発プラクティスは ほぼ、ここで出尽くしたと言っても過言ではない あとは実践研究と発展の歴史である
  60. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  61. Findy Inc. 77 Agile Software Development with SCRUM(2001/10/15) 書籍解説: eXtreme

    Programming(XP)は、多くのソフト ウェア企業が目指す理想ですが、ソフトウェアを 迅速に生産するという絶え間ないプレッシャーの ため、実際に実装することができません。 アジャイルソフトウェアプロセスは、企業が eXtreme Programmingを迅速かつ即座に実装し、 30日以内に段階的にソフトウェアを生産し始める ことを可能にします。 しかし、eXtreme Programmingの実装は言うほ ど簡単ではありません。このプロセスは時間がか かり、実際に進行中のソフトウェアプロジェクト を遅らせることもあります。 この本は、読者にSCRUMというアジャイルソフ トウェア開発プロセスを使用して、XPを素早く シームレスに自社で実装する方法を示しています。 そして、その間も実際のソフトウェアを生産し続 けることができます。SCRUMとアジャイルプロ セスを使用することで、XPの実装中のダウンタ イムを事実上排除することができます。
  62. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  63. Findy Inc. 79 アジャイルソフトウェア開発宣言(2001) 私たちは、実際にソフトウェアを開発し、他の人々がそれを 実践するのを助けることによって、より良い開発方法を発見 しています。この作業を通じて、次のような価値を見出しま した: ⚫ プロセスやツールよりも個人と対話

    ⚫ 包括的なドキュメントよりも動作するソフトウェア ⚫ 契約交渉よりも顧客との協力 ⚫ 計画に従うことよりも変化への対応 つまり、右側の項目にも価値はありますが、私たちは左側の 項目により価値を置きます。 ※日本語訳ページもあるのですが、表現が硬いので勝手に柔らかく訳し直しました https://agilemanifesto.org/iso/ja/manifesto.html ⚫ アジャイルソフトウェア開発宣言(Agile Manifesto)は、2001年2月にアメリカ・ユタ州の スノーバードスキーリゾートで開発された。この宣 言は、17人のソフトウェア開発の専門家たちが集 まって、ソフトウェア開発プロセスの改善について 議論し、アジャイルというアプローチが生まれたこ とから発表された。 ⚫ その中で主要な貢献者として知られているのは、 ケント・ベック、マーティン・ファウラー、 ロン・ジェファリーズ、ジム・ハイスミス、 ジョン・カーンズ、ウォード・カニンガム、 ジョン・ハント、アンドリュー・ハント、 ブライアン・マリック、ロバート・マーティン、 デイブ・トーマス、マイク・ビードル、 アリスター・コーバーン、ジェームズ・グレニング、ジェフ・サザ ーランド、ケン・シュワイバー、 ジョン・ブラント ⚫ これらの人々は、それぞれ異なるソフトウェア開発 手法(例:Scrum、Extreme Programming)を提 唱・開発していたが、アジャイル宣言を通じて、共 通の価値観と原則に基づいてソフトウェア開発を行 うことで合意した。
  64. Findy Inc. 80 アジャイルソフトウェア開発宣言(2001) ボブ・マーティンの思い出: (略) 2000年の春、Kent Beckがオレゴン州メドフォードにある自宅近くのRogue River Lodgeで会議を開きまし

    た。彼はこれをExtreme Programming Leadership Conferenceと名付けました。出席者には私、Ron Jeffries、Ken Auer、Martin Fowler、そしてXP運動の立ち上げに尽力した他の数名がいました。 (略) Alistairは事実上のオーガナイザーになりました。彼は開催地をアンギラからソルトレイクシティのスノー バードに変更することを提案しました。ほとんどの他の招待者がフライトが簡単になるため同意しました。 AlistairとJim Highsmithが部屋、食事、アクティビティの手配を行いました。物事は急速に進展しました。 会議には約20人の招待者のうち17人が出席しました(出席者のリストはwww.agilemanifesto.orgを参照)。 残念ながらGrady BoochとBig Dave Thomasは参加できませんでしたが、彼らの影響はその後の議論に強く 感じられました。 (略) Martin FowlerとWard Cunninghamは事実上のファシリテーターになりました。彼らの助けを借りて、私た ちは2日間のアジェンダと意思決定の方法をすぐにまとめました。 実際に、これらの異なるアイデアを持つ人々が非常によく協力しているのを見るのは本当にスリルがありま した。私は、これほどポイントに集中し、目標を簡単に達成し、ほとんど争いのない会議に参加したことが ありませんでした。それはまるでピースがなんとなく一緒に収まったかのようでした。 初期の議論の一つは名前についてでした。誰も Lightweight という用語を気に入りませんでした。Leanや Adaptiveなどの他のオプションも提案されましたが、Agileという名前が勝ちました。 マニフェストの構造は相互に合意されました。私はWardが相対的価値のペアのアイデアをフレーミングす る上で大きな役割を果たしたことを覚えていますが、そのアイデアを思いついたのはMartinとPragmatic Dave Thomasかもしれません。PragDaveの回想は次のとおりです: 実際、それはMartinと私が昼食時にホワイトボードで考えを練っていた時のことです。最初の三つを思い ついたと思います。その後、グループが五つに増やし、それが四つに絞られました。実際、Wardは現在彼 のマニフェストサイトに飾られている、アイデアを議論している皆の写真を撮りました。 (略) スノーバードでの二日間の終わりまでに、マニフェストは完成し、原則が概説され、Agile Allianceが誕生 しました。 https://www.facebook.com/TotherAlistair/posts/10156214284634035 https://sites.google.com/site/unclebobconsultingllc/the-founding-of-the-agile-allianc
  65. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  66. Findy Inc. 82 The Scrum Guide(2010〜) 2010 2011/7 2011/10 2013

    2016 2017 2020 Ken Schwaber Scrum.org の運営者 ソフトウェア開発者 コンサルタント Jeff Sutherland Scrum, Inc.の創設者 兼 主任コンサルタント 元空軍パイロット 1986
  67. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  68. 85

  69. 86

  70. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  71. Findy Inc. 私の印象では、ソフトウェア産業は学ぶことも進化することもなかな かできないで苦闘しているように見えます。 この相対的な停滞は、コードを実行するハードウェアのとてつもない 進化によって見えなくされているのです。 David Farley(2021) 引用:Farley, D.(2022),

    長尾高弘 (訳). 継続的デリバリーのソフトウェア工学: もっと早く、もっと良いソフトウェアを作るための秘訣 (Nagao, T., Trans.). 日経BP社. (Original work published 2021) p.69 Modern Software Engineering 88
  72. Findy Inc. 間違った考え方をなかなか捨てられない理由のひとつは、 ソフトウェア開発のパフォーマンス(能力、業績)を 効果的に計測できていないことにあります David Farley(2021) 引用:Farley, D.(2022), 長尾高弘

    (訳). 継続的デリバリーのソフトウェア工学: もっと早く、もっと良いソフトウェアを作るための秘訣 (Nagao, T., Trans.). 日経BP社. (Original work published 2021) p.70 Modern Software Engineering 91
  73. 92 要件定義 外部設計 実装 コーディング/ テスト 結合テスト システムテスト 内部設計 開発者(社員)

    テスト会社A テスト会社B PdM 開発者(協力会社) 間違った論文の 「ウォーターフォール」を 続けてて良いの?
  74. 93 要件定義 外部設計 実装 コーディング/ テスト 結合テスト システムテスト 内部設計 開発者(社員)

    テスト会社A テスト会社B PdM 開発者(協力会社) 間違った論文の 「ウォーターフォール」を 続けてて良いの? 効果的に計測できていないと(永遠に)分からない
  75. Findy Inc. ハード(エレキ・メカ) 開発 組み込みソフト開発 アプリ(サービス)開発 試作 量産試作 量産 要件定義

    設計 テスト 実装 要件定義 設計 テスト 実装 要件定義 設計 テスト 実装 要件定義 設計 テスト 実装 phase1 phase1 phase2 phase2 ハードウェアが制約の組み込み開発 制約 制約
  76. Findy Inc. ハード(エレキ・メカ) 開発 組み込みソフト開発 アプリ(サービス)開発 試作 量産試作 量産 クラウドによる仮想化

    クラウドによる仮想化 クラウドネイティブ時代の組み込み開発 品質向上の原点回帰
  77. Findy Inc. 98 品質管理の発展 神尾, 信. (1995). トヨタ生産方式とTQC: TQCへの期待に関する一考察. 生産管理,

    2(1), 3–14. https://doi.org/10.14846/seisankanri1995.2.3 良い結果は良いプロセスから得られるので両面から評 価する必要がある。このことを表す言葉に 「品質は工程で作り込め。不良は後工程に流すな。」 がある。 (中略) 図4は縦軸に発見された不具合件数をとり、横軸は製品 の主要開発ステップを示したものである。 BタイプはTQCを導入していない日本の企業によくみら れるパターンで図3のメーカーもこれに相当するといえ る。 Cタイプでは出荷検査時と市場に出回ってからの不具合 が多く発見され、プロセスの管理が不十分であったこ とが伺われ失敗コストが膨大となっている。 TQCを導入し、企画・開発・設計段階の源流工程で品 質の作り込みと不具合流出防止の管理を行えば、 Aタイプとなり失敗コストも大幅に減少 することになる。図3で示したメーカーもデミング賞実 施賞受賞後では、Aタイプの型になり向上した。
  78. Findy Inc. 99 品質管理の発展 神尾, 信. (1995). トヨタ生産方式とTQC: TQCへの期待に関する一考察. 生産管理,

    2(1), 3–14. https://doi.org/10.14846/seisankanri1995.2.3 良い結果は良いプロセスから得られるので両面から評 価する必要がある。このことを表す言葉に 「品質は工程で作り込め。不良は後工程に流すな。」 がある。 (中略) 図4は縦軸に発見された不具合件数をとり、横軸は製品 の主要開発ステップを示したものである。 BタイプはTQCを導入していない日本の企業によくみら れるパターンで図3のメーカーもこれに相当するといえ る。 Cタイプでは出荷検査時と市場に出回ってからの不具合 が多く発見され、プロセスの管理が不十分であったこ とが伺われ失敗コストが膨大となっている。 TQCを導入し、企画・開発・設計段階の源流工程で品 質の作り込みと不具合流出防止の管理を行えば、 Aタイプとなり失敗コストも大幅に減少 することになる。図3で示したメーカーもデミング賞実 施賞受賞後では、Aタイプの型になり向上した。 「品質は工程で作り込め。 不良は後工程に流すな。」
  79. Findy Inc. (出典) Infrastructure as Code, 2nd Edition , Figure

    1-2. Speed and quality map to quadrants 100 スピードより 品質を重視 品質より スピードを重視 スピードと品質 の両立 壊れやすい 厄介な状態 高品質 低品質 遅い 速い 右下の象限: 品質よりスピードを重視 • いわゆる「早く作って壊す」という考え方です。 スピードを重視して品質を犠牲にするチームは、 乱雑で脆弱なシステムを構築します。その粗悪な システムによって作業が遅くなり、左下の象限に 滑り落ちていきます。このやり方を続けてきたス タートアップの多くが「勢い」を失ったと嘆きま す。以前なら素早く対応できた簡単な変更が、シ ステムが複雑に絡み合っているために、今では何 日も何週間もかかるようになっています。 左上の象限: スピードより品質を重視 • 「私たちは重要な仕事をしているのだから、きちんとやらなければならない」という考え方です。しかし、 納期のプレッシャーにより「場当たり的な対応」を強いられます。重厚なプロセスが改善の障壁となり、 技術的負債は「既知の問題」リストとともに増大します。これらのチームは左下の象限に落ち込みます。 改善が困難なため、結果として低品質なシステムになってしまいます。失敗への対応として更にプロセス を追加します。このプロセスが改善をより困難にし、脆弱性とリスクを増大させます。これがさらなる失 敗とプロセスの追加を招きます。特にリスクに敏感な業界では、このように働く組織の多くの人々が、こ れが普通だと思い込んでいます。 スピードと品質はトレードオフではない
  80. Findy Inc. (出典) Infrastructure as Code, 2nd Edition , Figure

    1-2. Speed and quality map to quadrants 101 スピードより 品質を重視 品質より スピードを重視 スピードと品質 の両立 壊れやすい 厄介な状態 高品質 低品質 遅い 速い 右下の象限: 品質よりスピードを重視 • いわゆる「早く作って壊す」という考え方です。 スピードを重視して品質を犠牲にするチームは、 乱雑で脆弱なシステムを構築します。その粗悪な システムによって作業が遅くなり、左下の象限に 滑り落ちていきます。このやり方を続けてきたス タートアップの多くが「勢い」を失ったと嘆きま す。以前なら素早く対応できた簡単な変更が、シ ステムが複雑に絡み合っているために、今では何 日も何週間もかかるようになっています。 左上の象限: スピードより品質を重視 • 「私たちは重要な仕事をしているのだから、きちんとやらなければならない」という考え方です。しかし、 納期のプレッシャーにより「場当たり的な対応」を強いられます。重厚なプロセスが改善の障壁となり、 技術的負債は「既知の問題」リストとともに増大します。これらのチームは左下の象限に落ち込みます。 改善が困難なため、結果として低品質なシステムになってしまいます。失敗への対応として更にプロセス を追加します。このプロセスが改善をより困難にし、脆弱性とリスクを増大させます。これがさらなる失 敗とプロセスの追加を招きます。特にリスクに敏感な業界では、このように働く組織の多くの人々が、こ れが普通だと思い込んでいます。 スピードと品質はトレードオフではない
  81. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  82. Findy Inc. 103 DORA Metrics ⚫原書は「Accelerate: The Science Behind Devops:

    Building and Scaling High Performing Technology Organizations」 ⚫2018年3月出版、日本語版は2018年11月に出版。 ⚫迅速かつ高品質なデリバリを実施している組織とそうでない組織の違いに関する 研究結果をDORAがまとめている。 https://book.impress.co.jp/books/1118101029 https://www.oreilly.com/library/view/accelerate/97814571914 35/ この調査結果は チームや組織のサイズ、 業種は無関係である
  83. Findy Inc. DevOps Four Keys 104 Four Keysとフェーズドリブン リードタイム 変更リードタイム

    変更失敗率 デプロイ失敗からの 回復時間 デプロイ頻度 信頼性 企画 計画 実装 テスト デプロイ 運用 設計 障害〜復旧 変更リードタイムを向上させるためには、 プロダクト開発全体の仕事の流れを理解する必要がある
  84. Findy Inc. 105 DevOps指標 変更リードタイム デプロイ頻度 デプロイ失敗からの 回復時間 変更失敗率 信頼性(可用性)

    Four Keys DORA Model 統計的相関 (参考)Google Cloud. ” Explore DORA's research program”. Google Cloud. https://www.devops-research.com/research.html. (参照 2023-1-10)
  85. © Findy Inc. ファインディが展開するエンジニアプラットフォーム サービス紹介 ※ 各種数値は、2024年6月時点のFindy転職、Findy Freelance、Findy Team+、Findy Globalの4サービスの累計での社数及び登録者数です。

    なお、1社又は1名の方が複数のサービスに登録している場合は、そのサービスの数に応じて複数のカウントをしています。 ToC / ToB SaaS / ToB マッチングサービス 組織分析SaaS ToC / ToB 開発ツールメディア β版 GitHubやJiraを解析し、エンジニア組織の 見える化と生産性向上をサポート。 エンジニア組織の見える化 5万人以上のフリーランスエンジニアの 成功報酬型の人材紹介サービス。 フリーランスエンジニアの採用 約12万人のエンジニアと880社以上の テック企業をマッチング。 正社員エンジニアの採用 実際に利用している企業の声を元に、 開発ツールの導入や検討に必要な情報を 集約。企業の技術選定をサポート。 開発ツールのレビューサイト 106
  86. Findy Inc. 107 Findy Team+画面イメージ:生産性可視化・向上 DevOps指標やコーディングプロセスにおける生産性を測定することで、効率・クオリティの 全体観を把握しながら、生産性向上を検討できます 開発プロセス全体の生産性把握 (特に) コーディングプロセスの生産性把握

    DevOps指標を観測し、開発効率やクオリティの全体観を把握 プルリク作成数やクローズ時間を観測することで、 コーディングプロセスの全体観を把握 現状の課題や開発組織としての目標、ビジネススピードを鑑みながら、生産性向上の打ち手を検討可能
  87. Findy Inc. 間違った考え方をなかなか捨てられない理由のひとつは、 ソフトウェア開発のパフォーマンス(能力、業績)を 効果的に計測できていないことにあります David Farley(2021) 引用:Farley, D.(2022), 長尾高弘

    (訳). 継続的デリバリーのソフトウェア工学: もっと早く、もっと良いソフトウェアを作るための秘訣 (Nagao, T., Trans.). 日経BP社. (Original work published 2021) p.70 Modern Software Engineering 108
  88. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13
  89. 1974 2024 1976 1978 1980 1982 1984 1986 1988 1990

    1992 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 2014 2016 2018 2020 2022 1975 1999 2018/11/22 2018/3/27 2004/11/16 2000/12/1 2006/10/19 1977 1986 2002 1995 2010〜 アジャイルマニフェスト (2001/2/11) 10年前 20年前 30年前 40年前 50年前 メインフレーム時代 IBM System 360 at USDA 初代iPhone発表 (2007/1/9) 2010/7/27 Linux誕生 (1991) PC/AT互換機時代 (1981〜) CVS 誕生 (1990) Subversion誕生(2000) (2005) GitHub開始 (2008) Bugzilla誕生 (2000) Jira誕生 (2002) AWS サービス開始 (2006) Jenkins 誕生 (2011) GitHub Actions 開始 (2018) 2016/10/6 2017/6/22 マイクロソフト、GitHub を 75 億ドルで買収 (2018) ChatGPT 開始 (2022/11/30) GitHub Copilot 開始 (2021/6/29) 1994/10/31 1989 1986〜1997 アメリカ国防総省空軍 がカーネギメロン大学 (CMU)のソフトウ ェア工学研究所 (SEI)に資金提供。 2001〜2010年代 米空軍との契約に際 して業者にレベル3の 基準達成を必須とし たため、世界中で CMMIレベル取得ブー ムが発生 Java v1.0 正式リリース (1996) UNIX戦争 (1980年代後半〜1990年代前半) SPARCstation (1989〜1994) サービス開始 (2021/10) 2024/7/11 1987 1970 1970〜1980年代 多くの企業や政府機関 がウォーターフォール モデルを公式な開発プ ロセスとして採用 Azure サービス開始 (2010) (1995) 第一次ブラウザ戦争 (1990〜2000) 第二次ブラウザ戦争 (2009〜2020) (2018) 2000年代前半、ADSL が急速に普及。下り 1.5〜8Mbpsを実現。 また、2001年にはフ レッツ光「Bフレッ ツ」が100Mbpsで提 供スタート。 iMac (1998〜) Apple Macintosh (1984〜) DynaBook (1994〜) (2004) Google Cloud サービス開始 (2008) 1989/02/01 1982 1979 UMLやRUPブーム (1990〜2000年頃) 欧州の自動車メーカ が中心となって公開 (2005) (2011) 2005/10/7 MacBook Pro M3 Max (2023) 2019/9/17 "ウォークマン” 1号機 TPS-L2 (1979) 世界初のポータブルCDプレーヤー D-50(1984) Σ計画が頓挫 (1985〜1990) Toyota Corolla Liftback SR5 001 (1980〜) 1992/3/13 1996/4/1 2010/10/12 2011/7/16 DevOps発現 (2009) 2022/12/17 1990/10/10 1978/5/1 1988/3/1 2011/10/18 2021/3/15 1984 2001/5/18 1996/8 2021/8/1 1995/10/1 2003/9/1 1979 (2006) (2004) 2004/7/16 2013/8/1 “トリニトロン” 日本製品が欧米で人気 ★ 日本バブル崩壊 ★ リーマンショック ★ COVID-19 2014/4/22 2019/9/30 2021/12/10 1988 米国「通商法スーパー 301条」をきっかけに、 国産OS BTRONへの 日本政府支援中止の圧 力が高まる ★ ITバブル崩壊 1978 ソフトウェア近代史 Ver2.04 1976 2024/9/13 アメリカで 日本製品 大ブーム 日米 貿易摩擦 日本の製造業が とことん研究される 国家プロジェ クトの失敗 日本の製造業ナレッジが モダンソフトウェアエンジニアリングへ WFが 生まれる とてつもないハードウェア・ネットワークの進化 クラウド の誕生 日本IT業界の人月商売・多重請負構造 メインフレームが廃れ PCへ 外注から内製開発へ VUCAの時代、めまぐるしく変わる要件 スピードを重視 アジャイル 言語化 オンプレからSaaSへ