本書是一本介紹系統(tǒng)分析與設(shè)計(jì)的原理、方法、技術(shù)、工具和應(yīng)用的教科書,重點(diǎn)討論系統(tǒng)開發(fā)生存周期中的分析和設(shè)計(jì)階段的活動(dòng)。全書共10章,分4個(gè)部分全面介紹系統(tǒng)分析與設(shè)計(jì)涉及的相關(guān)概念、建模和設(shè)計(jì)的方法與技術(shù)、系統(tǒng)構(gòu)造及實(shí)施、應(yīng)用案例等內(nèi)容。第1部分(第1章)從信息系統(tǒng)的設(shè)計(jì)模型、應(yīng)用環(huán)境開始,介紹系統(tǒng)分析與設(shè)計(jì)的定義、過程與流行的技術(shù)方法;第2部分(第2~8章)是本書的重點(diǎn)內(nèi)容,其中第2~4章分別從靜態(tài)、動(dòng)態(tài)和數(shù)據(jù)的角度討論建模的方法和技術(shù),第5~8章則分別從系統(tǒng)整體架構(gòu)設(shè)計(jì)、類和包設(shè)計(jì)、人機(jī)界面設(shè)計(jì)及數(shù)據(jù)模式設(shè)計(jì)的角度討論系統(tǒng)設(shè)計(jì)的方法和技術(shù);第3部分(第9章)給出系統(tǒng)生存周期中,設(shè)計(jì)階段的后續(xù)銜接階段內(nèi)容,介紹系統(tǒng)的構(gòu)造、實(shí)施以及運(yùn)行和支持階段的主要工作;第4部分(第10章)以一個(gè)簡(jiǎn)化的教學(xué)管理系統(tǒng)作為示例,介紹本書前面章節(jié)的原則和技術(shù)在軟件項(xiàng)目的分析設(shè)計(jì)過程中的應(yīng)用。每章后附有小結(jié)和習(xí)題,并配有免費(fèi)電子課件。
本書可作為軟件工程、信息管理與信息系統(tǒng)、計(jì)算機(jī)科學(xué)與技術(shù)等專業(yè)“系統(tǒng)分析與設(shè)計(jì)”課程的本科教材,也可作為計(jì)算機(jī)專業(yè)、軟件工程專業(yè)、信息系統(tǒng)專業(yè)的培訓(xùn)教材,還可以供相關(guān)領(lǐng)域碩士研究生或從事系統(tǒng)分析與設(shè)計(jì)的相關(guān)技術(shù)人員、管理人員參考。
《系統(tǒng)分析與設(shè)計(jì)》一書跟蹤軟件工程的**發(fā)展,講述了軟件系統(tǒng)的分析、設(shè)計(jì)以及構(gòu)造過程,重點(diǎn)介紹了如何應(yīng)用UML建模工具完成系統(tǒng)的分析和設(shè)計(jì)。作者結(jié)合大量的實(shí)例剖析系統(tǒng)分析和設(shè)計(jì)的各個(gè)環(huán)節(jié),同時(shí)對(duì)概念、過程、工具、技術(shù)等各方面內(nèi)容進(jìn)行了很好的平衡。
李愛萍,女,計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院計(jì)算機(jī)工程系主任,副教授,碩士生導(dǎo)師,博士。中國(guó)計(jì)算機(jī)學(xué)會(huì)會(huì)員,ACM會(huì)員。 1995年畢業(yè)于中國(guó)礦業(yè)大學(xué)自動(dòng)化系計(jì)算機(jī)及其應(yīng)用專業(yè),獲工學(xué)學(xué)士學(xué)位;2001年畢業(yè)于太原理工大學(xué)機(jī)械電子工程專業(yè),獲工學(xué)碩士學(xué)位。2006年畢業(yè)于西安電子科技大學(xué)測(cè)試計(jì)量技術(shù)及儀器專業(yè),獲工學(xué)博士學(xué)位。2011年8月至2011年10月以公派訪問學(xué)者身份赴日本橫濱國(guó)立大學(xué)進(jìn)行研修。長(zhǎng)期從事高校的計(jì)算機(jī)專業(yè)基礎(chǔ)、計(jì)算機(jī)科學(xué)理論及軟件理論的教學(xué)與科研工作。主要研究方向?yàn)檐浖问交枋雠c驗(yàn)證、軟件測(cè)試、軟件體系結(jié)構(gòu)、高級(jí)語言翻譯器的技術(shù)等。近年來發(fā)表論文20余篇,承擔(dān)并參與了10余項(xiàng)國(guó)家、省部級(jí)和橫向科研項(xiàng)目,出版著作4部。指導(dǎo)過大學(xué)生創(chuàng)新實(shí)驗(yàn)計(jì)劃項(xiàng)目、ACM程序設(shè)計(jì)大賽、機(jī)器人大賽、物聯(lián)網(wǎng)創(chuàng)新大賽等多項(xiàng)賽事并獲獎(jiǎng)。
第1章 系統(tǒng)分析與設(shè)計(jì)概述1
1.1 系統(tǒng)的概念和特性1
1.1.1 系統(tǒng)概念及特性1
1.1.2 系統(tǒng)分類與環(huán)境2
1.2 系統(tǒng)模型的概念和類型4
1.2.1 系統(tǒng)模型的概念4
1.2.2 系統(tǒng)模型的類型5
1.3 系統(tǒng)關(guān)聯(lián)人員5
1.3.1 系統(tǒng)所有者6
1.3.2 系統(tǒng)用戶6
1.3.3 系統(tǒng)分析設(shè)計(jì)人員6
1.3.4 系統(tǒng)外部服務(wù)者7
1.3.5 項(xiàng)目經(jīng)理7
1.4 系統(tǒng)發(fā)展的階段理論7
1.4.1 諾蘭的階段模型8
1.4.2 西諾特模型9
1.4.3 米切模型9
1.5 系統(tǒng)分析與問題領(lǐng)域10
1.5.1 系統(tǒng)分析過程11
1.5.2 信息領(lǐng)域12
1.5.3 建模和模擬13
1.6 系統(tǒng)開發(fā)與項(xiàng)目管理14
1.6.1 系統(tǒng)開發(fā)生存周期14
1.6.2 系統(tǒng)開發(fā)方法論16
1.6.3 團(tuán)隊(duì)合作與管理22
1.7 系統(tǒng)分析與設(shè)計(jì)工具27
1.7.1 CASE工具的發(fā)展27
1.7.2 支持系統(tǒng)開發(fā)的CASE工具27
1.7.3 統(tǒng)一建模語言UML27
本章小結(jié)29
本章習(xí)題29
第2章 系統(tǒng)靜態(tài)分析建模31
2.1 系統(tǒng)分析概念及其常用方法31
2.1.1 什么是系統(tǒng)分析31
2.1.2 模型驅(qū)動(dòng)分析方法32
2.1.3 加速系統(tǒng)分析法32
2.1.4 需求獲取法33
2.1.5 業(yè)務(wù)過程重構(gòu)法34
2.2 系統(tǒng)模型的創(chuàng)建34
2.2.1 對(duì)象模型34
2.2.2 功能模型35
2.2.3 動(dòng)態(tài)模型35
2.3 對(duì)象和類的分析35
2.3.1 類圖、對(duì)象圖概述35
2.3.2 類圖元素38
2.3.3 分析階段類圖的構(gòu)建45
2.3.4 在線銷售系統(tǒng)類圖分析示例47
2.4 用例分析51
2.4.1 用例元素的確定51
2.4.2 分析階段用例圖的建造56
2.4.3 在線銷售系統(tǒng)用例分析示例58
2.5 包圖60
2.5.1 包圖及其模型元素60
2.5.2 包圖建模及在線銷售系統(tǒng)包圖分析示例62
2.6 構(gòu)件圖與部署圖63
2.6.1構(gòu)件圖及其模型元素63
2.6.2 構(gòu)件圖建模及示例66
2.6.3 部署圖及其模型元素67
2.6.4 部署圖建模及其應(yīng)用68
2.6.5 在線銷售系統(tǒng)部署圖建模
分析示例70
本章小結(jié)71
本章習(xí)題71
第3章 系統(tǒng)動(dòng)態(tài)分析建模73
3.1 活動(dòng)和狀態(tài)分析73
3.1.1 活動(dòng)和狀態(tài)的確定73
3.1.2 活動(dòng)和狀態(tài)圖的建造81
3.1.3 活動(dòng)和狀態(tài)的建模示例84
3.2 時(shí)序與協(xié)作分析87
3.2.1 時(shí)序與協(xié)作的確定88
3.2.2 順序圖與通信圖的建造93
3.2.3 時(shí)序與協(xié)作的建模示例94
3.3 過程建模97
3.3.1 過程建模概述97
3.3.2 過程建模的元素97
3.3.3 過程建模的步驟100
3.3.4 過程建模分析示例101
本章小結(jié)105
本章習(xí)題106
第4章 數(shù)據(jù)建模108
4.1 數(shù)據(jù)模型108
4.1.1 基于記錄的邏輯模型108
4.1.2 基于對(duì)象的邏輯模型114
4.2 實(shí)體關(guān)系(E-R)模型117
4.2.1 實(shí)體之間的基本關(guān)系117
4.2.2 實(shí)體關(guān)系圖117
4.3 UML用于數(shù)據(jù)建模階段的規(guī)范119
4.3.1 實(shí)體的表示(類的表示)120
4.3.2 聯(lián)系的表示121
4.3.3 數(shù)據(jù)字典和元數(shù)據(jù)的表示123
4.4 教務(wù)管理系統(tǒng)分析示例127
4.4.1 示例分析128
4.4.2 示例的物理模型129
4.5 實(shí)體關(guān)系圖集成示例129
本章小結(jié)130
本章習(xí)題131
第5章 系統(tǒng)架構(gòu)設(shè)計(jì)132
5.1 架構(gòu)設(shè)計(jì)(總體設(shè)計(jì))132
5.1.1 架構(gòu)師的定位及其應(yīng)掌握的知識(shí)體系133
5.1.2 軟件架構(gòu)的設(shè)計(jì)目標(biāo)、設(shè)計(jì)策略和原則134
5.1.3 常用的軟件架構(gòu)風(fēng)格及使用情況分析136
5.1.4 分層架構(gòu)138
5.1.5 客戶/服務(wù)器架構(gòu)140
5.1.6 教學(xué)管理系統(tǒng)架構(gòu)選擇和設(shè)計(jì)示例143
5.2 從需求到設(shè)計(jì)的轉(zhuǎn)換143
5.2.1 從數(shù)據(jù)流圖到軟件結(jié)構(gòu)圖的轉(zhuǎn)換144
5.2.2 工資管理系統(tǒng)數(shù)據(jù)流圖到軟件結(jié)構(gòu)圖的轉(zhuǎn)換示例147
5.2.3 從需求模型到軟件架構(gòu)148
5.2.4 軟件設(shè)計(jì)模式149
5.2.5 GRASP模式149
5.2.6 GOF設(shè)計(jì)模式158
5.3 系統(tǒng)資源設(shè)計(jì)160
5.3.1 系統(tǒng)應(yīng)用邏輯結(jié)構(gòu)設(shè)計(jì)160
5.3.2 系統(tǒng)物理設(shè)計(jì)及其實(shí)現(xiàn)165
本章小結(jié)172
本章習(xí)題172
第6章 對(duì)象模型設(shè)計(jì)174
6.1 類設(shè)計(jì)174
6.1.1 類設(shè)計(jì)原則174
6.1.2 類設(shè)計(jì)、構(gòu)建設(shè)計(jì)類圖的過程177
6.1.3 確定設(shè)計(jì)類177
6.1.4 定義類的屬性、操作178
6.1.5 設(shè)計(jì)類之間的關(guān)系181
6.1.6 在線銷售系統(tǒng)類圖設(shè)計(jì)示例183
6.2 包設(shè)計(jì)188
6.2.1 包設(shè)計(jì)原則188
6.2.2 在線銷售系統(tǒng)包圖設(shè)計(jì)示例192
本章小結(jié)195
本章習(xí)題196
第7章 界面設(shè)計(jì)197
7.1 界面設(shè)計(jì)的概述197
7.1.1 人機(jī)界面的定義197
7.1.2 人機(jī)界面設(shè)計(jì)198
7.1.3 界面設(shè)計(jì)分類200
7.2 人機(jī)交互201
7.2.1 人機(jī)交互的特點(diǎn)和要素201
7.2.2 人機(jī)界面與人機(jī)交互的關(guān)系202
7.3 人機(jī)界面的風(fēng)格202
7.4 人機(jī)界面的發(fā)展203
7.4.1 命令語言用戶界面203
7.4.2 圖形用戶界面203
7.4.3 多媒體用戶界面204
7.4.4 多通道用戶界面204
7.4.5 虛擬現(xiàn)實(shí)界面205
7.4.6 自適應(yīng)人機(jī)界面206
7.5 人機(jī)界面設(shè)計(jì)的方法206
7.6 人機(jī)界面設(shè)計(jì)的目標(biāo)和遵循的原則207
7.6.1 人機(jī)界面設(shè)計(jì)的目標(biāo)207
7.6.2 人機(jī)界面設(shè)計(jì)遵循的原則207
7.7 界面結(jié)構(gòu)設(shè)計(jì)與實(shí)現(xiàn)208
7.8 人機(jī)界面設(shè)計(jì)過程中的設(shè)計(jì)問題209
7.9 人機(jī)界面設(shè)計(jì)的過程211
7.10 人機(jī)界面設(shè)計(jì)的評(píng)價(jià)213
7.10.1 人機(jī)界面設(shè)計(jì)的評(píng)價(jià)方法213
7.10.2 人機(jī)界面設(shè)計(jì)的評(píng)價(jià)213
7.11 未來人機(jī)界面設(shè)計(jì)的展望214
本章小結(jié)214
本章習(xí)題215
第8章 數(shù)據(jù)模式設(shè)計(jì)216
8.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述216
8.1.1 數(shù)據(jù)庫(kù)與數(shù)據(jù)庫(kù)設(shè)計(jì)216
8.1.2 數(shù)據(jù)庫(kù)設(shè)計(jì)的方法與過程218
8.2 UML用于數(shù)據(jù)庫(kù)設(shè)計(jì)階段的規(guī)范220
8.2.1 數(shù)據(jù)庫(kù)類到數(shù)據(jù)庫(kù)表的設(shè)計(jì)220
8.2.2 關(guān)鍵字和索引的設(shè)計(jì)222
8.2.3 約束的設(shè)計(jì)222
8.2.4 聯(lián)系的設(shè)計(jì)223
8.3 關(guān)系數(shù)據(jù)庫(kù)邏輯模式的設(shè)計(jì)224
8.3.1 邏輯模式的概念224
8.3.2 實(shí)體關(guān)系圖向邏輯模式的轉(zhuǎn)化224
8.3.3 從類創(chuàng)建數(shù)據(jù)庫(kù)表225
8.3.4 從類之間的關(guān)系設(shè)計(jì)表之間的聯(lián)系226
8.3.5 類約束向存儲(chǔ)過程和觸發(fā)器的映射227
8.4 關(guān)系數(shù)據(jù)庫(kù)物理模型的設(shè)計(jì)229
8.4.1 確定數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)230
8.4.2 評(píng)價(jià)物理結(jié)構(gòu)230
8.5 教務(wù)管理系統(tǒng)數(shù)據(jù)模式設(shè)計(jì)示例231
本章小結(jié)235
本章習(xí)題235
第9章 系統(tǒng)構(gòu)造及實(shí)施237
9.1 系統(tǒng)構(gòu)造237
9.1.1 建立和測(cè)試網(wǎng)絡(luò)237
9.1.2 建立和測(cè)試數(shù)據(jù)庫(kù)238
9.1.3 安裝和測(cè)試新軟件包238
9.1.4 編寫和測(cè)試新程序239
9.2 系統(tǒng)實(shí)施239
9.2.1 執(zhí)行系統(tǒng)測(cè)試240
9.2.2 準(zhǔn)備轉(zhuǎn)變計(jì)劃241
9.2.3 安裝數(shù)據(jù)庫(kù)241
9.2.4 培訓(xùn)系統(tǒng)用戶242
9.2.5 轉(zhuǎn)變到新系統(tǒng)242
9.3 系統(tǒng)運(yùn)行和支持242
9.3.1 系統(tǒng)維護(hù)243
9.3.2 系統(tǒng)恢復(fù)244
9.3.3 技術(shù)支持244
9.3.4 系統(tǒng)增強(qiáng)244
本章小結(jié)245
本章習(xí)題245
第10章 教學(xué)管理系統(tǒng)的分析與設(shè)計(jì)246
10.1 系統(tǒng)需求分析246
10.2 問題領(lǐng)域分析247
10.2.1 確定系統(tǒng)范圍和系統(tǒng)邊界248
10.2.2 定義參與者248
10.2.3 定義用例248
10.2.4 繪制用例圖250
10.2.5 繪制主要交互圖251
10.3 靜態(tài)結(jié)構(gòu)建模252
10.3.1 建立對(duì)象類圖252
10.3.2 建立數(shù)據(jù)庫(kù)模型256
10.3.3 建