12. 12
ソフトウェア工学の歴史区分
Capers Jones, “The Technical and Social
History of Software Engineering,” 2013
(C) Keizo Tatsumi 2019
[出典] Capers Jones, "The Technical and Social History of Software Engineering," Addison-Wesley, 2013
1950年~1959年:デジタルコンピュータとソフトウェアの登場
1960年~1969年:ビジネスコンピュータ/ソフトウェアの台頭
1970年~1979年:コンピュータとソフトウェアによる富の創造
1980年~1989年:パーソナルコンピュータ/ソフトウェアの台頭
1990年~1999年:WWWの拡大と.comの台頭
2000年~2009年:ソーシャルネットワークの台頭と経済危機
2010年~2019年:クラウド(Cloud, Crowd), ブログ, ビッグデータ, 予測分析
13. 13
ソフトウェア工学の歴史の振り返り
(C) Keizo Tatsumi 2019
1950 1980 19901960 1970 2000 2010 2020
▲ ▲ ▲
EDSAC(最初のノイマン型コンピュータ) IBM System/360 IBM System/370 Cray-1(スパコン)
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
UNIVAC1(世界初の商用コンピュータ) DEC PDP-1 DEC PDP-8 Apple PC IBM PC ▲ Apple Macintosh iPhone iPad
▲ ▲ ▲ Sun-1 ▲ ▲
IBM 701 IBM 704 Intel 4004MPU Sun SPARC Intel Pentium Pro
(科学演算用) ● ●
(Apple社設立) (Sun Microsystems社設立)
▲ ▲ ▲ ▲ ▲ ▲ ▲
OS/360 UNIX CP/M MS-DOS UNIX System V Linux Windows NT ▲
(4004MPU用OS) Netware ▲ ▲ ▲ Android
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ Windows 3.1 ▲ J2EE .NET ▲
SpeedCode FORTRAN FORTRAN COBOL LISP PL/I C言語 ▲ C++ ▲ Java ▲ Ajax
開発開始 ▲ ALGOL Smalltalk-72 Smalltalk-80 Eiffel ▲ ▲Internet Explorer Ruby on Rails
FLOW-MATIC ▲ Netscape ▲ ▲ ▲
● ● HTML/HTTP/WWW XML ● SOAP ● HTML5
(Microsoft社設立) (Free Software Foundation) (Apache Software Foundation) (Eclipse Foundation)
▲SAGE(防空管制システム) ▲ ● ● ▲ ▲
▲SABRE(航空座席予約システム) CompuServe America Online Amazon.com Amazon Web Services Amazon EC2
▲マーキュリー計画 (商用オンラインサービス) ● ● Google Docs & Spreadsheets
▲ジェミニ計画 Yahoo! Google ☆クラウド・コンピューティング
▲アポロ計画発表 ▲アポロ11号 有人月面着陸 ● ●
eBay Salesforce.com
● ●
Facebook Twitter
コンピュータとソフト
ウェアによる富の
創造
1970年~1979年
パーソナルコン
ピュータ/ソフトウェ
アの台頭
1980年~1989年
ビジネスコンピュー
タ/ソフトウェアの台
頭
1960年~1969年
デジタルコンピュー
タとソフトウェアの
登場
1950年~1959年
ワールドワイドウェ
ブの拡大とドットコ
ムの台頭
1990年~1999年
ソーシャルネット
ワークの台頭
と経済危機
2000年~2009年
Clouds, Crowds,
ブログ, ビッグデー
タ, 予測分析
2010年~2019年
14. 14
ソフトウェア工学の歴史の振り返り
(C) Keizo Tatsumi 2019
1950 1980 19901960 1970 2000 2010 2020
▲ ▲ ▲
EDSAC(最初のノイマン型コンピュータ) IBM System/360 IBM System/370 Cray-1(スパコン)
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
UNIVAC1(世界初の商用コンピュータ) DEC PDP-1 DEC PDP-8 Apple PC IBM PC ▲ Apple Macintosh iPhone iPad
▲ ▲ ▲ Sun-1 ▲ ▲
IBM 701 IBM 704 Intel 4004MPU Sun SPARC Intel Pentium Pro
(科学演算用) ● ●
(Apple社設立) (Sun Microsystems社設立)
▲ ▲ ▲ ▲ ▲ ▲ ▲
OS/360 UNIX CP/M MS-DOS UNIX System V Linux Windows NT ▲
(4004MPU用OS) Netware ▲ ▲ ▲ Android
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ Windows 3.1 ▲ J2EE .NET ▲
SpeedCode FORTRAN FORTRAN COBOL LISP PL/I C言語 ▲ C++ ▲ Java ▲ Ajax
開発開始 ▲ ALGOL Smalltalk-72 Smalltalk-80 Eiffel ▲ ▲Internet Explorer Ruby on Rails
FLOW-MATIC ▲ Netscape ▲ ▲ ▲
● ● HTML/HTTP/WWW XML ● SOAP ● HTML5
(Microsoft社設立) (Free Software Foundation) (Apache Software Foundation) (Eclipse Foundation)
▲SAGE(防空管制システム) ▲ ● ● ▲ ▲
▲SABRE(航空座席予約システム) CompuServe America Online Amazon.com Amazon Web Services Amazon EC2
▲マーキュリー計画 (商用オンラインサービス) ● ● Google Docs & Spreadsheets
▲ジェミニ計画 Yahoo! Google ☆クラウド・コンピューティング
▲アポロ計画発表 ▲アポロ11号 有人月面着陸 ● ●
eBay Salesforce.com
● ●
Facebook Twitter
コンピュータとソフト
ウェアによる富の
創造
1970年~1979年
パーソナルコン
ピュータ/ソフトウェ
アの台頭
1980年~1989年
ビジネスコンピュー
タ/ソフトウェアの台
頭
1960年~1969年
デジタルコンピュー
タとソフトウェアの
登場
1950年~1959年
ワールドワイドウェ
ブの拡大とドットコ
ムの台頭
1990年~1999年
ソーシャルネット
ワークの台頭
と経済危機
2000年~2009年
Clouds, Crowds,
ブログ, ビッグデー
タ, 予測分析
2010年~2019年
デジタルコンピュータとソフトウェ
アの登場
1950年~1959年
15. 15
ソフトウェア工学の歴史の振り返り
(C) Keizo Tatsumi 2019
1950 1980 19901960 1970 2000 2010 2020
▲ ▲ ▲
EDSAC(最初のノイマン型コンピュータ) IBM System/360 IBM System/370 Cray-1(スパコン)
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
UNIVAC1(世界初の商用コンピュータ) DEC PDP-1 DEC PDP-8 Apple PC IBM PC ▲ Apple Macintosh iPhone iPad
▲ ▲ ▲ Sun-1 ▲ ▲
IBM 701 IBM 704 Intel 4004MPU Sun SPARC Intel Pentium Pro
(科学演算用) ● ●
(Apple社設立) (Sun Microsystems社設立)
▲ ▲ ▲ ▲ ▲ ▲ ▲
OS/360 UNIX CP/M MS-DOS UNIX System V Linux Windows NT ▲
(4004MPU用OS) Netware ▲ ▲ ▲ Android
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ Windows 3.1 ▲ J2EE .NET ▲
SpeedCode FORTRAN FORTRAN COBOL LISP PL/I C言語 ▲ C++ ▲ Java ▲ Ajax
開発開始 ▲ ALGOL Smalltalk-72 Smalltalk-80 Eiffel ▲ ▲Internet Explorer Ruby on Rails
FLOW-MATIC ▲ Netscape ▲ ▲ ▲
● ● HTML/HTTP/WWW XML ● SOAP ● HTML5
(Microsoft社設立) (Free Software Foundation) (Apache Software Foundation) (Eclipse Foundation)
▲SAGE(防空管制システム) ▲ ● ● ▲ ▲
▲SABRE(航空座席予約システム) CompuServe America Online Amazon.com Amazon Web Services Amazon EC2
▲マーキュリー計画 (商用オンラインサービス) ● ● Google Docs & Spreadsheets
▲ジェミニ計画 Yahoo! Google ☆クラウド・コンピューティング
▲アポロ計画発表 ▲アポロ11号 有人月面着陸 ● ●
eBay Salesforce.com
● ●
Facebook Twitter
コンピュータとソフト
ウェアによる富の
創造
1970年~1979年
パーソナルコン
ピュータ/ソフトウェ
アの台頭
1980年~1989年
ビジネスコンピュー
タ/ソフトウェアの台
頭
1960年~1969年
デジタルコンピュー
タとソフトウェアの
登場
1950年~1959年
ワールドワイドウェ
ブの拡大とドットコ
ムの台頭
1990年~1999年
ソーシャルネット
ワークの台頭
と経済危機
2000年~2009年
Clouds, Crowds,
ブログ, ビッグデー
タ, 予測分析
2010年~2019年
1960年~1969年
ビジネスコンピュータ/ソフト
ウェアの台頭
16. 16
ソフトウェア工学の歴史の振り返り
(C) Keizo Tatsumi 2019
1950 1980 19901960 1970 2000 2010 2020
▲ ▲ ▲
EDSAC(最初のノイマン型コンピュータ) IBM System/360 IBM System/370 Cray-1(スパコン)
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
UNIVAC1(世界初の商用コンピュータ) DEC PDP-1 DEC PDP-8 Apple PC IBM PC ▲ Apple Macintosh iPhone iPad
▲ ▲ ▲ Sun-1 ▲ ▲
IBM 701 IBM 704 Intel 4004MPU Sun SPARC Intel Pentium Pro
(科学演算用) ● ●
(Apple社設立) (Sun Microsystems社設立)
▲ ▲ ▲ ▲ ▲ ▲ ▲
OS/360 UNIX CP/M MS-DOS UNIX System V Linux Windows NT ▲
(4004MPU用OS) Netware ▲ ▲ ▲ Android
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ Windows 3.1 ▲ J2EE .NET ▲
SpeedCode FORTRAN FORTRAN COBOL LISP PL/I C言語 ▲ C++ ▲ Java ▲ Ajax
開発開始 ▲ ALGOL Smalltalk-72 Smalltalk-80 Eiffel ▲ ▲Internet Explorer Ruby on Rails
FLOW-MATIC ▲ Netscape ▲ ▲ ▲
● ● HTML/HTTP/WWW XML ● SOAP ● HTML5
(Microsoft社設立) (Free Software Foundation) (Apache Software Foundation) (Eclipse Foundation)
▲SAGE(防空管制システム) ▲ ● ● ▲ ▲
▲SABRE(航空座席予約システム) CompuServe America Online Amazon.com Amazon Web Services Amazon EC2
▲マーキュリー計画 (商用オンラインサービス) ● ● Google Docs & Spreadsheets
▲ジェミニ計画 Yahoo! Google ☆クラウド・コンピューティング
▲アポロ計画発表 ▲アポロ11号 有人月面着陸 ● ●
eBay Salesforce.com
● ●
Facebook Twitter
コンピュータとソフト
ウェアによる富の
創造
1970年~1979年
パーソナルコン
ピュータ/ソフトウェ
アの台頭
1980年~1989年
ビジネスコンピュー
タ/ソフトウェアの台
頭
1960年~1969年
デジタルコンピュー
タとソフトウェアの
登場
1950年~1959年
ワールドワイドウェ
ブの拡大とドットコ
ムの台頭
1990年~1999年
ソーシャルネット
ワークの台頭
と経済危機
2000年~2009年
Clouds, Crowds,
ブログ, ビッグデー
タ, 予測分析
2010年~2019年
コンピュータとソフトウェアによる
富の創造
1970年~1979年
17. 17
ソフトウェア工学の歴史の振り返り
(C) Keizo Tatsumi 2019
1950 1980 19901960 1970 2000 2010 2020
▲ ▲ ▲
EDSAC(最初のノイマン型コンピュータ) IBM System/360 IBM System/370 Cray-1(スパコン)
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
UNIVAC1(世界初の商用コンピュータ) DEC PDP-1 DEC PDP-8 Apple PC IBM PC ▲ Apple Macintosh iPhone iPad
▲ ▲ ▲ Sun-1 ▲ ▲
IBM 701 IBM 704 Intel 4004MPU Sun SPARC Intel Pentium Pro
(科学演算用) ● ●
(Apple社設立) (Sun Microsystems社設立)
▲ ▲ ▲ ▲ ▲ ▲ ▲
OS/360 UNIX CP/M MS-DOS UNIX System V Linux Windows NT ▲
(4004MPU用OS) Netware ▲ ▲ ▲ Android
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ Windows 3.1 ▲ J2EE .NET ▲
SpeedCode FORTRAN FORTRAN COBOL LISP PL/I C言語 ▲ C++ ▲ Java ▲ Ajax
開発開始 ▲ ALGOL Smalltalk-72 Smalltalk-80 Eiffel ▲ ▲Internet Explorer Ruby on Rails
FLOW-MATIC ▲ Netscape ▲ ▲ ▲
● ● HTML/HTTP/WWW XML ● SOAP ● HTML5
(Microsoft社設立) (Free Software Foundation) (Apache Software Foundation) (Eclipse Foundation)
▲SAGE(防空管制システム) ▲ ● ● ▲ ▲
▲SABRE(航空座席予約システム) CompuServe America Online Amazon.com Amazon Web Services Amazon EC2
▲マーキュリー計画 (商用オンラインサービス) ● ● Google Docs & Spreadsheets
▲ジェミニ計画 Yahoo! Google ☆クラウド・コンピューティング
▲アポロ計画発表 ▲アポロ11号 有人月面着陸 ● ●
eBay Salesforce.com
● ●
Facebook Twitter
コンピュータとソフト
ウェアによる富の
創造
1970年~1979年
パーソナルコン
ピュータ/ソフトウェ
アの台頭
1980年~1989年
ビジネスコンピュー
タ/ソフトウェアの台
頭
1960年~1969年
デジタルコンピュー
タとソフトウェアの
登場
1950年~1959年
ワールドワイドウェ
ブの拡大とドットコ
ムの台頭
1990年~1999年
ソーシャルネット
ワークの台頭
と経済危機
2000年~2009年
Clouds, Crowds,
ブログ, ビッグデー
タ, 予測分析
2010年~2019年
パーソナルコンピュータ/ソフト
ウェアの台頭
1980年~1989年
18. 18
ソフトウェア工学の歴史の振り返り
(C) Keizo Tatsumi 2019
1950 1980 19901960 1970 2000 2010 2020
▲ ▲ ▲
EDSAC(最初のノイマン型コンピュータ) IBM System/360 IBM System/370 Cray-1(スパコン)
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
UNIVAC1(世界初の商用コンピュータ) DEC PDP-1 DEC PDP-8 Apple PC IBM PC ▲ Apple Macintosh iPhone iPad
▲ ▲ ▲ Sun-1 ▲ ▲
IBM 701 IBM 704 Intel 4004MPU Sun SPARC Intel Pentium Pro
(科学演算用) ● ●
(Apple社設立) (Sun Microsystems社設立)
▲ ▲ ▲ ▲ ▲ ▲ ▲
OS/360 UNIX CP/M MS-DOS UNIX System V Linux Windows NT ▲
(4004MPU用OS) Netware ▲ ▲ ▲ Android
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ Windows 3.1 ▲ J2EE .NET ▲
SpeedCode FORTRAN FORTRAN COBOL LISP PL/I C言語 ▲ C++ ▲ Java ▲ Ajax
開発開始 ▲ ALGOL Smalltalk-72 Smalltalk-80 Eiffel ▲ ▲Internet Explorer Ruby on Rails
FLOW-MATIC ▲ Netscape ▲ ▲ ▲
● ● HTML/HTTP/WWW XML ● SOAP ● HTML5
(Microsoft社設立) (Free Software Foundation) (Apache Software Foundation) (Eclipse Foundation)
▲SAGE(防空管制システム) ▲ ● ● ▲ ▲
▲SABRE(航空座席予約システム) CompuServe America Online Amazon.com Amazon Web Services Amazon EC2
▲マーキュリー計画 (商用オンラインサービス) ● ● Google Docs & Spreadsheets
▲ジェミニ計画 Yahoo! Google ☆クラウド・コンピューティング
▲アポロ計画発表 ▲アポロ11号 有人月面着陸 ● ●
eBay Salesforce.com
● ●
Facebook Twitter
コンピュータとソフト
ウェアによる富の
創造
1970年~1979年
パーソナルコン
ピュータ/ソフトウェ
アの台頭
1980年~1989年
ビジネスコンピュー
タ/ソフトウェアの台
頭
1960年~1969年
デジタルコンピュー
タとソフトウェアの
登場
1950年~1959年
ワールドワイドウェ
ブの拡大とドットコ
ムの台頭
1990年~1999年
ソーシャルネット
ワークの台頭
と経済危機
2000年~2009年
Clouds, Crowds,
ブログ, ビッグデー
タ, 予測分析
2010年~2019年
ワールドワイドウェブの拡大と
ドットコムの台頭
1990年~1999年
19. 19
ソフトウェア工学の歴史の振り返り
(C) Keizo Tatsumi 2019
1950 1980 19901960 1970 2000 2010 2020
▲ ▲ ▲
EDSAC(最初のノイマン型コンピュータ) IBM System/360 IBM System/370 Cray-1(スパコン)
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
UNIVAC1(世界初の商用コンピュータ) DEC PDP-1 DEC PDP-8 Apple PC IBM PC ▲ Apple Macintosh iPhone iPad
▲ ▲ ▲ Sun-1 ▲ ▲
IBM 701 IBM 704 Intel 4004MPU Sun SPARC Intel Pentium Pro
(科学演算用) ● ●
(Apple社設立) (Sun Microsystems社設立)
▲ ▲ ▲ ▲ ▲ ▲ ▲
OS/360 UNIX CP/M MS-DOS UNIX System V Linux Windows NT ▲
(4004MPU用OS) Netware ▲ ▲ ▲ Android
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ Windows 3.1 ▲ J2EE .NET ▲
SpeedCode FORTRAN FORTRAN COBOL LISP PL/I C言語 ▲ C++ ▲ Java ▲ Ajax
開発開始 ▲ ALGOL Smalltalk-72 Smalltalk-80 Eiffel ▲ ▲Internet Explorer Ruby on Rails
FLOW-MATIC ▲ Netscape ▲ ▲ ▲
● ● HTML/HTTP/WWW XML ● SOAP ● HTML5
(Microsoft社設立) (Free Software Foundation) (Apache Software Foundation) (Eclipse Foundation)
▲SAGE(防空管制システム) ▲ ● ● ▲ ▲
▲SABRE(航空座席予約システム) CompuServe America Online Amazon.com Amazon Web Services Amazon EC2
▲マーキュリー計画 (商用オンラインサービス) ● ● Google Docs & Spreadsheets
▲ジェミニ計画 Yahoo! Google ☆クラウド・コンピューティング
▲アポロ計画発表 ▲アポロ11号 有人月面着陸 ● ●
eBay Salesforce.com
● ●
Facebook Twitter
コンピュータとソフト
ウェアによる富の
創造
1970年~1979年
パーソナルコン
ピュータ/ソフトウェ
アの台頭
1980年~1989年
ビジネスコンピュー
タ/ソフトウェアの台
頭
1960年~1969年
デジタルコンピュー
タとソフトウェアの
登場
1950年~1959年
ワールドワイドウェ
ブの拡大とドットコ
ムの台頭
1990年~1999年
ソーシャルネット
ワークの台頭
と経済危機
2000年~2009年
Clouds, Crowds,
ブログ, ビッグデー
タ, 予測分析
2010年~2019年
ソーシャルネットワークの台頭と
経済危機
2000~2009年
21. 21
ソフトウェアテストの歴史区分
D. Gelperin and W. Hetzel,
“The Growth of Software Testing,” 1988
(C) Keizo Tatsumi 2019
[出典] D. Gelperin and W. Hetzel, "The Growth of Software Testing," 1988
~1956年: デバッグ指向の時代
デバッグとテストは区別されていなかった
~1978年: 論証指向の時代
テストはプログラムが仕様を満足していることを示すためのもの
~1982年: 破壊指向の時代
テストはエラーをみつけるつもりでプログラムを実行する過程
~1987年: 評価指向の時代
ライフサイクルを通じた評価活動の中にテストが位置付けられた
1988年~: 予防指向の時代
ライフサイクルと並行して進められる予防指向のテストプロセス
29. 29
次のニューノーマルに向けて
(C) Keizo Tatsumi 2019
変化を察知しよう
社会基盤の変化: Internet Trends
経営層の意識の変化: IBM Global C-suite Study
IT担当幹部の意識の変化: World Quality Report
テスターの現場の変化: State of Testing Survey