はじめに i |
第 Ⅰ 部 ソフトウェア開発環境 1 |
第 1 章 ソフトウェア工学の特性 2 |
従来型企業におけるソフトウェア技術者の 1日 4 |
アジャイル開発企業におけるソフトウェア技術者の 1日 6 |
なぜソフトウェアプロジェクトは失敗するのか? 8 |
第 2 章 ソフトウェア工学の手法 11 |
ソフトウェア開発の手法 12 |
スパイラルモデル, UP および XP の中から選択 20 |
用いるべきか否か?・・・・手法 22 |
第 3 章 チームワーク 25 |
ソフトウェア開発チームの形態と構造 27 |
学生のチームの編成と報奨 35 |
チームワークについてのゲーム理論的視点 39 |
アウトソーシング 42 |
まぬけの効用 44 |
ギャップに注意 45 |
第 4 章 製品としてのソフトウェア 47 |
ソフトウェア要求-背景 49 |
データ収集ツール 50 |
要求管理 55 |
要求管理のためのツールの特性 56 |
第 Ⅱ 部 ソフトウェア工学の世界 59 |
第 5 章 ソフトウェア工学の倫理規定 60 |
倫理規定 62 |
ソフトウェア工学の倫理規定 63 |
ソフトウェア工学の倫理規定の概観 66 |
第 6 章 ソフトウェア工学の国際的視点 79 |
ソフトウェア工学に関する国際的視点 81 |
さまざまな国における先端技術産業 82 |
ソフトウェア工学にかかわるその他の国際的話題 87 |
コンピュータサイエンスおよびソフトウェア工学分野における女性とマイノリティ 88 |
第 7 章 ソフトウェア工学についてのさまざまな視点 91 |
ソフトウェア工学: 多面的な分野 93 |
第 8 章 ソフトウェア工学の歴史 101 |
コンピューティングの初期 102 |
情報隠蔽-ソフトウェア開発手法の最初の芽 104 |
抽象化-手法のもう 1つの側面 105 |
ソフトウェア開発手法の初期 106 |
ソフトウェア開発手法の初期における顧客の役割 109 |
抽象化と情報隠蔽が前面に 109 |
ソフトウェア開発手法がソフトウェア工学の専門分野の一部となる 110 |
オブジェクト指向の勃興 113 |
アジャイル手法の誕生 114 |
第 Ⅲ 部 ソフトウェアと人間の相互作用 115 |
第 9 章 プログラム理解,コードインスペクション, リファクタリング 116 |
プログラム理解 118 |
プログラム理解についての理論 119 |
コードインスペクション ( コードレビュー) 123 |
リファクタリング 125 |
第 10 章 ソフトウェア工学の学習プロセス 130 |
内省的プラクティスとしてのソフトウェア工学 132 |
学習組織 138 |
第 11 章 抽象化およびソフトウェア開発の他のヒューリスティックス 145 |
ソフトウェア開発の中心的なヒューリスティックス 147 |
抽象化に関連するその他の話題 156 |
第 12 章 ソフトウェアの特性とソフトウェア工学の人間的視点 162 |
ソフトウェア特性 164 |
プログラミングスタイル 165 |
プログラミングスタイルの評価 169 |
人間とソフトウェアの相互作用の情緒的な視点 169 |
第 Ⅳ 部 ソフトウェア工学のビジネス分析 177 |
第 13 章 ソフトウェアプロジェクトの見積もりと追跡 178 |
貧弱なソフトウェアプロジェクト管理 179 |
要求定義 188 |
見積りと納期のゲーム 190 |
第 14 章 ビジネスとしてのソフトウェア 192 |
ソフトウェアビジネス小史 193 |
第 15 章 インターネットとソフトウェア工学の人間的側面 200 |
電子商取引 202 |
インターネットの時間に束縛されない特性 208 |
第 Ⅴ 部 ソフトウェア工学の教育 213 |
第 16 章 ソフトウェア工学のケーススタディ 214 |
ソフトウェア管理 215 |
ソフトウェア開発のパラダイム 218 |
一般的原則 220 |
第 17 章 学生のためのケーススタディプロジェクト 225 |
ケーススタディ 227 |
ケーススタディの構築 228 |
ケーススタディの発表 235 |
第 18 章 ソフトウェア工学教育についての所感 236 |
ソフトウェア工学教育の歴史 238 |
今日のソフトウェア技術者教育 239 |
ソフトウェア工学の人間的側面についての教育 240 |
第 19 章 本書で用いた文献および資料の一覧 243 |
参考文献と参考情報 251 |
付録 講義用スライド 265 |
索引 283 |
はじめに i |
第 Ⅰ 部 ソフトウェア開発環境 1 |
第 1 章 ソフトウェア工学の特性 2 |
従来型企業におけるソフトウェア技術者の 1日 4 |
アジャイル開発企業におけるソフトウェア技術者の 1日 6 |
なぜソフトウェアプロジェクトは失敗するのか? 8 |