『著名なソフトウェア開発手法についてどんなのがあるか知っておきたい。』
そんな知識欲に駆られてあちこち読みにいったけれど全然頭に入ってこない・意味が分からない、そんなこともあるよね..?
丁寧に読み進めようとしても全く理解に至れない一因として、その著作・主張の作られた当時事情を分かっていないのがあると思った。
この記事は、気になるワードの発表時期を整理することで、当時事情を読み解く一助にしようとしたものです。
現代よく耳にする手法がどんな時期に発表されたのか、想像を膨らませつつ眺めることで何か新しい発見があるといいな。
(なおこの記事は随時更新されます)
前提
この記事は書くにあたり以下の基準で書いています。
- 基本的に発表年を基準に西暦で記載します。
- 情報はwikiを中心に、wikiで記載を見つけられなかった場合は補足の情報を探して得ます。
- 全てweb上で手に入る情報を元にして、web外(例えば書籍内の記載)からは情報を探しません。
- 年表に載せる・載せないは思いつきのままに取捨しています。
年表
- 1873
- イギリスで明暗を電気の強弱に変えて遠方に伝えるテレビジョンの開発が始まる。
- 1883
- 山手線上野駅が開業
- 1897
- ドイツのフェルディナント・ブラウン、テレビの受像管に用いる陰極線管であるブラウン管の発明。
- 1911
- IBM創立
- 1925
- 山手線が環状運転を実施開始
- 1926
- 浜松高等工業学校の高柳健次郎が電子式テレビ受像機(ブラウン管テレビ)の開発。撮像に機械式のニプコー円板を、受像に電子式のブラウン管を用いた。「イ」の字を表示させる。
- 1927
- 東京地下鉄道株式会社が浅草駅-上野駅間を開業
- 1940
- ベル研究所 / リレー計算機 Complex Number Calculator を開発
- 1946
- ENIAC 発表
- 1950 前後
- EDSAC 発表
- 1964
- BASIC 誕生
- 1968
- NATO後援の国際会議 / ウォーターフォール・モデルの原形が提唱
- Intel 設立
- 1970年代
- ソフトウェアプロトタイピング / wikiによるとこの頃には用語としてあったらしい, どこ出自の用語かは不明。
- 1972
- Cコンパイラ 登場
- 1974
- Zilog Corp 設立
- 1975
- The Mythical Man-Month: Essays on Software Engineering / 人月の神話 / IBM OS/360開発時の失敗を元に。
- 1986
- 研究論文「The New New Product Development Game」 / 用語として"Scrum"が使われる
- No Silver Bullet - essence and accidents of software engineering 出版 / 銀の弾などない
- 1988
- A Spiral Model of Software Development and Enhancement / スパイラルモデル提唱 / 1回のループは6ヶ月から2年
- 1990
- MIT / The Machine that Changed the World 出版 (リーン生産方式)
- Windows 3.1 リリース
- 1991
- Linux 0.01 登場
- Python 0.90 SourceCode公開
- 1993
- Ruby誕生
- 1994
- PHP誕生
- ジュリアナ東京閉店
- 1995
- Windows 95 発売
- 1998
- Windows 98 発売
- 1999
- Extreme Programming Explained
- Refactoring
- DOCOMO iモード サービス開始
- 2000
- The Scrum Software Development Process for Small Teams / プロジェクトは最長4週間の期間に分割
- Windows 2000 発売
- C# 登場
- SONY プレイステーション2 発売
- 2001
- アメリカ合衆国内のスキーリゾート / アジャイルソフトウェア開発宣言
- MacOS X v10.0 発売
- 任天堂 ゲームボーイアドバンス 発売
- 任天堂 ゲームキューブ 発売
- 2002
- Test-Driven Development 出版
- マイクロソフト Xbox発売
- 2003
- Domain-Driven Design: Tackling Complexity in the Heart of Software 出版
- 六本木ヒルズ オープン
- 2004
- 任天堂 ニンテンドーDS 発売
- 2005
- UE4 開発中なことが公表
- マイクロソフト Xbox 360 発売
- 2006
- Continuous Integration
- Windows Vista 発売
- SONY プレイステーション3 発売
- 任天堂 Wii 発売
- 2007
- iPhone 初代 発表
- 2008
- アジャイルカンファレンス / 「アジャイル・インフラストラクチャ」について議論
- Android 1.0 SDK, Release 1 発表
- SoftBank iPhone発売
- 2009
- DevOpsDays / DevOps登場
- Windows 7 発売
- 2010
- Unity 3 公開
- 2012
- 任天堂 WiiU発売
- 2013
- The Scrum Guide
- 2014
- Reinventing Organizations 出版 / ティール組織
- Oculus DK2 発表
- SONY プレイステーション4 発売
- 2015
- Behaviour-Driven Development / 時期若干怪しい;
- Windows 10 発売
- 2016
- Microsoft HoloLens 発売
- 2019
- Oculus RiftS 発売
- Oculus Quest 発売
所感
- IBM創立から100年経過、老舗企業は本当に昔からあった。
- 初期のリレー式計算機出現から100年はまだ経過していない。江戸時代約265年と比べるとコンピュータ史はまだまだ若い。江戸時代さんが100歳まで生きた想定に正規化するとagileさん今まだ37歳くらい。2020年時点で年齢110歳超えの方々は最初期の電子計算機登場の以前から生きている。
- テレビ装置のほうが電子計算機より前にあった。
- 90年のリーン生産方式は、その時点ですでにあったトヨタ生産方式を整理再編したものなので、それ以前からそれにいたる生産ライン実装が存在していたってことか。
- 2001のアジャイルソフトウェア開発宣言以前から、XP・Scrumは存在している。”アジャイルな”ソフトウェア開発手法が同時多発的に発生して、それらを束ねる形で開発宣言が発表、既存手法が合わせて再編されつつ現代に至るって解釈だと思った。宣言以前から存在する手法がある以上、各種アジャイルプラクティスはアジャイルソフトウェア開発宣言に準拠していないことがありえるはず。
- ”アジャイルな”の対象が、ソフトウェア開発手法→インフラ→サービスのリリースサイクル、っていうふうに目先のソフトウェア実装についての話から、サービス自体を対象とするよう変遷してきたようだ。それぞれの著作ごとに、何を対象として書かれているのかを意識しながら読むことが大事そう。
-
スパイラルモデルでは要求分析〜顧客確認までを6ヶ月〜2年を反復していたところを、スクラムでは最大4週までを反復して行う。比較するととても俊敏な=="agileな"
さいごに
-
だらだらと気になったものを時系列並べてみたけど、もっときちんとした目線で年表まとめられてる資料ないのかなと思ってgoogleったら(最初にやるべき)良さそう資料作られている方いらっしゃったのでリンクを。
おまけ
- 歴史上の同時多発的なイベント群を、意味があるように並べようという時点で主観・取捨入るのは必然..といったとき、自分なりの軸をどこに置くかって謎い。
- ↓ 歴史上におきたイベントを調べる幅を広げていくと探索範囲が広がりすぎて主題から遠くへ行きすぎてしまう・狭めすぎると周辺事情が分からなくなる。
- ↓ 周辺事情を把握理解・腑に落とすために調べているので、自分の時間感のある歴史とできるだけすり合わせたい。
- ↓ 気になるワードをあちこち調べつつどの年代の出来事かを年表に詰め込む。
- ↓ アジャイルと関係ない話題が増える
- ↓ 主題が埋もれる
- ↓ しかし周辺事情は見えるようになったしこれはこれで良いかな?
Comments