《21世紀高等學(xué)校規(guī)劃教材·信息管理與信息系統(tǒng)·信息系統(tǒng)開發(fā):方法、案例與實驗》以整個信息系統(tǒng)開發(fā)生命周期為主線,重點圍繞結(jié)構(gòu)化方法和面向?qū)ο箝_發(fā)方法,詳細闡述系統(tǒng)規(guī)劃、系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實施以及系統(tǒng)運行與支持等各階段的主要內(nèi)容,并介紹了項目管理工具以及系統(tǒng)分析、設(shè)計的case等,使其更具實踐性。在每章之后提供了典型應(yīng)用案例、思考題和練習(xí)題,用以加深理解。本書共分三部分: 第1章至第3章主要介紹信息系統(tǒng)的概念、主要開發(fā)方法以及貫穿項目生命周期的項目管理技術(shù);第4章至第11章講述系統(tǒng)開發(fā)各階段的任務(wù)、過程、結(jié)構(gòu)化方法和工具;第12章至第17章講述面向?qū)ο笮枨罄斫、面向(qū)ο蠓治觥⒚嫦驅(qū)ο笤O(shè)計和面向?qū)ο髮崿F(xiàn)。附錄部分針對教學(xué)內(nèi)容提供了10個系統(tǒng)開發(fā)項目,并設(shè)計了8個實驗和6套模擬題,以強化讀者的實踐能力。
《21世紀高等學(xué)校規(guī)劃教材·信息管理與信息系統(tǒng)·信息系統(tǒng)開發(fā):方法、案例與實驗》內(nèi)容豐富,翔實生動,融合了方法、案例和實驗,便于讀者理論聯(lián)系實際,可作為高等院校管理工程和管理信息系統(tǒng)專業(yè)教材,也可作為計算機和信息系統(tǒng)專業(yè)本科生、研究生的教科書,同時也可供軟件工程、系統(tǒng)分析技術(shù)人員參考。
信息化已經(jīng)成為世界經(jīng)濟和社會發(fā)展的大趨勢,信息系統(tǒng)的建設(shè)是信息化工作的關(guān)鍵環(huán)節(jié),而信息系統(tǒng)開發(fā)成功的關(guān)鍵就在于正確的方法論,能否運用科學(xué)規(guī)范的系統(tǒng)開發(fā)方法往往影響到信息系統(tǒng)開發(fā)的質(zhì)量,乃至成敗。只有既掌握管理又掌握信息技術(shù)的優(yōu)秀系統(tǒng)分析員,才能夠科學(xué)有效地開展系統(tǒng)需求分析和設(shè)計,擔(dān)負起組織實施的重任。
為了適應(yīng)社會與技術(shù)的發(fā)展,以培養(yǎng)具有現(xiàn)代綜合素質(zhì)的系統(tǒng)分析員為目標(biāo),在教學(xué)思想上強化了與國際接軌、互動式教學(xué)和培養(yǎng)學(xué)生綜合運用理論知識解決問題的技能。我們以精品課建設(shè)項目為契機,立足于課程改革要求,在教材建設(shè)上盡量突出以下特色:
1. 強調(diào)經(jīng)典與前沿的統(tǒng)一。在內(nèi)容組織上強調(diào)傳統(tǒng)的結(jié)構(gòu)化開發(fā)方法與新的面向?qū)ο箝_發(fā)方法的并重。結(jié)構(gòu)化方法作為經(jīng)典和成熟的開發(fā)方法,具有很強的實用價值。面向?qū)ο蠓椒ㄗ鳛闃I(yè)界較為流行的開發(fā)方法,也被行業(yè)普遍接受。因此,教材內(nèi)容在保留經(jīng)典的同時,也關(guān)注前沿的開發(fā)理念和方法,使學(xué)生能夠適應(yīng)社會發(fā)展需求。
2. 注重案例的篩選和講解。針對重點內(nèi)容設(shè)計了適合于課堂分析的典型案例,加強學(xué)生對基本概念的學(xué)以致用和消化理解。
3. 通過實驗環(huán)節(jié)加強學(xué)生的實踐操作能力。針對部分需要實踐操作的章節(jié),增加實驗環(huán)節(jié),分別設(shè)計了驗證性實驗、設(shè)計性實驗和綜合性實驗,強化對開發(fā)工具與方法的綜合運用能力。
4. 針對知識點的鞏固與練習(xí)。練習(xí)與知識點相配套,在一些重要知識點后設(shè)計了練習(xí)模塊,并給出具體的解題思路,引導(dǎo)讀者主動思考和解決問題。此外,每章都列出了小結(jié),并配有適量的、經(jīng)過精選的習(xí)題,促進讀者對內(nèi)容進行深入學(xué)習(xí)和思考。
5. 本書融合了一些優(yōu)秀教科書的內(nèi)容,注重融入新的技術(shù)和理念,如極限編程、敏捷開發(fā)、面向?qū)ο蟮刃路椒ê托录夹g(shù),以跟蹤系統(tǒng)分析與設(shè)計前沿技術(shù)和方法的發(fā)展動態(tài)。
6. 強調(diào)對CASE工具的運用和掌握。使學(xué)生了解主流的軟件工具和軟件開發(fā)環(huán)境產(chǎn)品,并借助CASE工具如Visio、PowerDesigner、Rational Rose等提高系統(tǒng)開發(fā)的效率。
7. 各章教學(xué)內(nèi)容相對獨立,針對不同知識模塊的案例也相對獨立,在實際授課時,教師可以根據(jù)課時和教學(xué)需要,有選擇地安排教學(xué)內(nèi)容和實驗環(huán)節(jié)。
本教材由郝曉玲主編,韓冬梅與韓松喬為副主編,負責(zé)全書內(nèi)容的編寫。周鑫、徐珊珊、武茂枝、謝姚蕾等同學(xué)對書稿進行了校對,并完成書中圖表的修正,在此表示感謝。
本書難免存在疏漏和不足之處,敬請廣大讀者批評指正,編者將不勝感謝。
編 者2010年8月
第1章 信息系統(tǒng)開發(fā)概述
1.1 信息系統(tǒng)的基本概念
1.1.1 信息系統(tǒng)與信息技術(shù)
1.1.2 信息系統(tǒng)的結(jié)構(gòu)
1.1.3 信息系統(tǒng)的類型
1.1.4 信息系統(tǒng)的生命周期
1.2 信息系統(tǒng)開發(fā)過程
1.2.1 系統(tǒng)規(guī)劃
1.2.2 系統(tǒng)分析
1.2.3 系統(tǒng)設(shè)計
1.2.4 系統(tǒng)實施
1.2.5 系統(tǒng)運行與維護
1.3 信息系統(tǒng)的相關(guān)角色
1.3.1 信息系統(tǒng)所有者
1.3.2 信息系統(tǒng)用戶
1.3.3 信息系統(tǒng)設(shè)計員
1.3.4 信息系統(tǒng)構(gòu)造人員
1.3.5 信息系統(tǒng)分析員
1.3.6 項目經(jīng)理
1.3.7 信息系統(tǒng)各種角色比較
1.4 案例分析--校園二手書交易平臺的設(shè)計與實現(xiàn)
1.4.1 系統(tǒng)需求分析
1.4.2 系統(tǒng)設(shè)計
1.4.3 系統(tǒng)實現(xiàn)
1.4.4 案例思考
本章小結(jié)
思考與練習(xí)
第2章 信息系統(tǒng)開發(fā)路線、方法與工具
2.1 信息系統(tǒng)開發(fā)路線概述
2.2 模型驅(qū)動開發(fā)路線
2.2.1 面向過程方法
2.2.2 面向數(shù)據(jù)方法
2.2.3 面向?qū)ο蠓椒?br>2.3 快速應(yīng)用開發(fā)路線
2.3.1 迭代式開發(fā)
2.3.2 敏捷式開發(fā)
2.4 商用軟件開發(fā)路線
2.4.1 購買現(xiàn)成商用軟件
2.4.2 現(xiàn)成軟件包二次開發(fā)
2.5 選擇合適的開發(fā)路線與方法
2.6 自動化工具與技術(shù)
2.6.1 case定義
2.6.2 case工具分類
2.6.3 基于case的系統(tǒng)開發(fā)過程
2.6.4 case工具的特點
2.7 案例分析--case工具在系統(tǒng)開發(fā)中的應(yīng)用
2.7.1 采用powerdesigner進行過程建模
2.7.2 采用powerdesigner進行數(shù)據(jù)建模
2.7.3 采用powerdesigner進行對象建模
2.7.4 使用powerdesigner生成信息系統(tǒng)開發(fā)報告
2.7.5 案例思考
本章小結(jié)
思考與練習(xí)
第3章 信息系統(tǒng)項目管理
3.1 信息系統(tǒng)項目管理生命周期
3.1.1 項目發(fā)起
3.1.2 項目規(guī)劃
3.1.3 項目執(zhí)行
3.1.4 項目終結(jié)
3.2 項目組織
3.2.1 單純型項目組織
3.2.2 職能型項目組織
3.2.3 矩陣型項目組織
3.3 項目管理技術(shù)
3.3.1 工作分解結(jié)構(gòu)
3.3.2 甘特圖
3.3.3 計劃評審技術(shù)
3.4 案例分析--某系統(tǒng)開發(fā)項目管理失敗原因分析
本章小結(jié)
思考與練習(xí)
第4章 需求獲取
4.1 系統(tǒng)需求概述
4.1.1 需求獲取的重要性
4.1.2 系統(tǒng)需求分類
4.2 需求獲取過程
4.2.1 了解用戶需求
4.2.2 分析用戶需求
4.2.3 編寫需求文檔
4.2.4 評審需求文檔
4.2.5 需求管理
4.3 需求獲取的方法
4.3.1 訪談
4.3.2 名義團體技術(shù)
4.3.3 直接觀察用戶
4.3.4 文檔、文件、表格抽樣
4.3.5 聯(lián)合應(yīng)用設(shè)計
4.3.6 在需求獲取中使用原型
4.4 案例分析--客戶關(guān)系管理系統(tǒng)的需求獲取
本章小結(jié)
思考與練習(xí)
第5章 過程建模
5.1 過程建模概述
5.2 數(shù)據(jù)流圖
5.2.1 數(shù)據(jù)流程圖的概念和作用
5.2.2 數(shù)據(jù)流程圖的基本符號
5.2.3 數(shù)據(jù)流圖的繪制
5.2.4 數(shù)據(jù)流圖規(guī)則
5.2.5 數(shù)據(jù)流圖的分解
5.2.6 數(shù)據(jù)流圖的平衡
5.3 過程邏輯
5.3.1 結(jié)構(gòu)化語言
5.3.2 決策表
5.3.3 決策樹
5.3.4 結(jié)構(gòu)化語言、決策表和決策樹的選擇
5.4 數(shù)據(jù)字典
5.4.1 數(shù)據(jù)項
5.4.2 數(shù)據(jù)結(jié)構(gòu)
5.4.3 數(shù)據(jù)流
5.4.4 過程字典
5.4.5 數(shù)據(jù)存儲
5.5 案例分析--百貨商店業(yè)務(wù)管理信息系統(tǒng)過程建模
本章小結(jié)
思考與練習(xí)
第6章 數(shù)據(jù)建模
6.1 數(shù)據(jù)建模相關(guān)概念
6.1.1 e-r圖
6.1.2 實體
6.1.3 關(guān)系
6.2 邏輯數(shù)據(jù)建模過程
6.2.1 確定基本實體
6.2.2 建立實體間的關(guān)聯(lián)
6.2.3 確定主碼和屬性
6.3 規(guī)范化
6.3.1 第一范式
6.3.2 第二范式
6.3.3 第三范式
6.4 數(shù)據(jù)-過程模型映射
6.5 案例分析--某網(wǎng)上商店概念數(shù)據(jù)建模
6.5.1 確定基本實體
6.5.2 確定實體間的關(guān)聯(lián)
6.5.3 確定主碼和屬性
本章小結(jié)
思考與練習(xí)
第7章 應(yīng)用架構(gòu)設(shè)計
7.1 架構(gòu)概述
7.1.1 應(yīng)用架構(gòu)與框架
7.1.2 架構(gòu)的邏輯層次
7.2 典型的系統(tǒng)應(yīng)用架構(gòu)
7.2.1 基于主機的服務(wù)器架構(gòu)
7.2.2 文件服務(wù)器架構(gòu)
7.2.3 客戶/服務(wù)器架構(gòu)
7.2.4 三層或n層客戶/服務(wù)器架構(gòu)
7.2.5 瀏覽器/服務(wù)器架構(gòu)
7.3 應(yīng)用架構(gòu)舉例
7.3.1 mvc架構(gòu)
7.3.2 架構(gòu)組成
7.4 應(yīng)用架構(gòu)設(shè)計內(nèi)容
7.4.1 數(shù)據(jù)架構(gòu)設(shè)計
7.4.2 過程架構(gòu)設(shè)計
7.4.3 網(wǎng)絡(luò)架構(gòu)設(shè)計
7.5 案例分析--某服務(wù)臺系統(tǒng)架構(gòu)設(shè)計
本章小結(jié)
思考與練習(xí)
第8章 軟件過程設(shè)計
8.1 過程設(shè)計主要內(nèi)容
8.1.1 總體設(shè)計
8.1.2 詳細設(shè)計
8.2 軟件設(shè)計的基本原理
8.2.1 模塊化
8.2.2 抽象與信息隱蔽
8.2.3 模塊獨立性
8.3 軟件設(shè)計工具
8.3.1 hipo圖
8.3.2 軟件結(jié)構(gòu)圖
8.3.3 詳細設(shè)計工具
8.4 軟件結(jié)構(gòu)設(shè)計方法
8.4.1 變換分析設(shè)計
8.4.2 事務(wù)分析設(shè)計
8.4.3 綜合數(shù)據(jù)流圖的映射
8.4.4 分層數(shù)據(jù)流圖的映射
8.5 軟件詳細設(shè)計
8.5.1 結(jié)構(gòu)化程序設(shè)計
8.5.2 程序設(shè)計目標(biāo)
8.5.3 程序設(shè)計方法
8.6 案例分析--百貨商店業(yè)務(wù)管理信息系統(tǒng)過程設(shè)計
本章小結(jié)
思考與練習(xí)
第9章 數(shù)據(jù)庫設(shè)計
9.1 邏輯數(shù)據(jù)模型和物理數(shù)據(jù)模型
9.1.1 數(shù)據(jù)庫設(shè)計前提
9.1.2 邏輯數(shù)據(jù)模型到物理數(shù)據(jù)模型的轉(zhuǎn)換規(guī)則
9.2 關(guān)系數(shù)據(jù)庫模型
9.3 將e-r圖轉(zhuǎn)化成關(guān)系
9.3.1 實體轉(zhuǎn)換
9.3.2 關(guān)系轉(zhuǎn)換
9.3.3 關(guān)系合并
9.4 設(shè)計字段
9.4.1 選擇數(shù)據(jù)類型
9.4.2 控制數(shù)據(jù)完整性
9.4.3 設(shè)計文件的控制策略
9.5 代碼設(shè)計
9.5.1 代碼及其作用
9.5.2 代碼種類
9.5.3 代碼設(shè)計方法
9.5.4 代碼校驗
本章小結(jié)
思考與練習(xí)
第10章 輸入輸出與用戶界面設(shè)計
10.1 輸出設(shè)計
10.1.1 輸出設(shè)計目的
10.1.2 輸出設(shè)計原則
10.1.3 輸出方式選擇
10.1.4 輸出格式設(shè)計
10.1.5 輸出設(shè)計過程
10.1.6 輸出設(shè)計說明
10.2 輸入設(shè)計
10.2.1 輸入設(shè)計目的
10.2.2 輸入設(shè)計原則
10.2.3 輸入方式選擇
10.2.4 輸入格式設(shè)計
10.2.5 輸入控制與校驗
10.2.6 輸入設(shè)計過程
10.3 用戶界面設(shè)計
10.3.1 用戶界面設(shè)計原則
10.3.2 用戶界面設(shè)計元素
10.3.3 用戶界面交互方式
10.3.4 用戶界面設(shè)計步驟
10.4 輸入輸出界面示例
本章小結(jié)
思考與練習(xí)
第11章 系統(tǒng)實現(xiàn)與運行
11.1 軟件實現(xiàn)
11.1.1 軟件編程
11.1.2 軟件包安裝與測試
11.2 軟件測試
11.2.1 軟件測試準(zhǔn)則與標(biāo)準(zhǔn)
11.2.2 測試步驟
11.3 白盒測試技術(shù)
11.3.1 邏輯覆蓋
11.3.2 控制結(jié)構(gòu)測試
11.3.3 循環(huán)測試
11.4 黑盒測試技術(shù)
11.4.1 等價類劃分法
11.4.2 邊界值分析法
11.4.3 錯誤推測法
11.5 網(wǎng)絡(luò)實現(xiàn)
11.6 數(shù)據(jù)庫實現(xiàn)
11.6.1 定義數(shù)據(jù)庫結(jié)構(gòu)
11.6.2 數(shù)據(jù)裝載
11.6.3 數(shù)據(jù)庫試運行
11.7 系統(tǒng)轉(zhuǎn)換
11.7.1 直接轉(zhuǎn)換法
11.7.2 并行轉(zhuǎn)換法
11.7.3 試點過渡法
11.8 系統(tǒng)運行與支持
11.8.1 系統(tǒng)運行
11.8.2 系統(tǒng)支持與維護
11.9 案例分析--某網(wǎng)站系統(tǒng)測試
11.9.1 測試內(nèi)容概述
11.9.2 程序測試
11.9.3 通用測試內(nèi)容
11.9.4 模塊功能測試
本章小結(jié)
思考與練習(xí)
第12章 面向?qū)ο箝_發(fā)概述
12.1 面向?qū)ο笙嚓P(guān)概念
12.1.1 實體與對象
12.1.2 類與對象
12.1.3 消息
12.1.4 屬性
12.1.5 操作
12.2 面向?qū)ο蟮奶匦?br>12.2.1 封裝
12.2.2 繼承
12.2.3 多態(tài)性
12.3 面向?qū)ο箝_發(fā)的主要方法
12.3.1 booch的ood方法
12.3.2 coad/yourdon的ooa-ood方法
12.3.3 rumbaugh的omt方法
12.3.4 jacoson方法
12.3.5 各種方法的集成
本章小結(jié)
思考與練習(xí)
第13章 uml
13.1 uml概述
13.1.1 uml的概念和特點
13.1.2 uml的構(gòu)成
13.2 用例圖
13.2.1 參與者
13.2.2 用例
13.2.3 關(guān)聯(lián)
13.2.4 用例之間關(guān)系
13.3 類圖和對象圖
13.3.1 類的定義
13.3.2 類之間的關(guān)聯(lián)
13.3.3 類的版型
13.3.4 對象圖
13.4 狀態(tài)圖
13.4.1 狀態(tài)
13.4.2 事件
13.5 活動圖
13.5.1 活動
13.5.2 泳道
13.5.3 判定點
13.5.4 并發(fā)路徑
13.5.5 對象流
13.5.6 信號
13.6 順序圖
13.6.1 順序圖符號
13.6.2 對象
13.6.3 消息
13.7 協(xié)作圖
13.7.1 序列化
13.7.2 迭代
13.7.3 控制點條件
13.8 組件圖
13.8.1 組件
13.8.2 依賴關(guān)系
13.8.3 接口
13.9 部署圖
13.9.1 節(jié)點
13.9.2 通信關(guān)聯(lián)
13.10 包圖
13.10.1 包之間的關(guān)系
13.10.2 合并包
本章小結(jié)
思考與練習(xí)
第14章 面向?qū)ο笮枨罄斫?br>14.1 基于uml的系統(tǒng)開發(fā)過程
14.1.1 需求理解
14.1.2 系統(tǒng)分析
14.1.3 系統(tǒng)設(shè)計
14.1.4 系統(tǒng)實現(xiàn)
14.2 理解需求
14.2.1 確定業(yè)務(wù)參與者
14.2.2 確定用例
14.2.3 構(gòu)造用例圖
14.2.4 用例說明
14.2.5 用例模型檢查
14.3 案例分析--電子培訓(xùn)系統(tǒng)的需求理解
14.3.1 分析問題領(lǐng)域
14.3.2 確定abc e-training系統(tǒng)范圍和系統(tǒng)邊界
14.3.3 定義參與者
14.3.4 定義用例
14.3.5 繪制用例圖
14.3.6 用例說明
本章小結(jié)
思考與練習(xí)
第15章 面向?qū)ο蠓治?br>15.1 領(lǐng)域建模
15.1.1 發(fā)現(xiàn)類
15.1.2 確定關(guān)聯(lián)
15.1.3 確定屬性
15.2 行為建模
15.2.1 狀態(tài)圖
15.2.2 活動圖
15.2.3 順序圖
15.3 案例分析--網(wǎng)上商店客戶訂單處理系統(tǒng)分析
15.3.1 用例圖
15.3.2 活動圖
15.3.3 類模型
15.3.4 順序圖
15.3.5 狀態(tài)圖
本章小結(jié)
思考與練習(xí)
第16章 面向?qū)ο笤O(shè)計
16.1 系統(tǒng)設(shè)計與uml
16.1.1 系統(tǒng)設(shè)計的主要任務(wù)
16.1.2 協(xié)作圖
16.1.3 組件圖
16.1.4 部署圖
16.2 通用職責(zé)分配軟件模式
16.2.1 專家模式
16.2.2 創(chuàng)建者模式
16.2.3 控制器模式
16.2.4 低耦合模式
16.2.5 高內(nèi)聚模式
16.3 類的設(shè)計
16.3.1 設(shè)計類
16.3.2 設(shè)計關(guān)系
16.3.3 設(shè)計類圖
16.4 接口設(shè)計
16.4.1 單個對象的接口設(shè)計
16.4.2 多個對象的接口設(shè)計
16.4.3 層次之間接口設(shè)計
16.5 包設(shè)計
16.5.1 包設(shè)計原則
16.5.2 包設(shè)計步驟
16.6 數(shù)據(jù)庫設(shè)計
16.6.1 uml類圖映射為庫表的原則
16.6.2 關(guān)系約束檢查策略
本章小結(jié)
思考與練習(xí)
第17章 面向?qū)ο髮崿F(xiàn)
17.1 設(shè)計映射到代碼
17.1.1 根據(jù)設(shè)計類圖創(chuàng)建類的定義
17.1.2 根據(jù)協(xié)作圖創(chuàng)建方法
17.2 面向?qū)ο蟪绦蛟O(shè)計
17.2.1 可重用原則
17.2.2 可擴充原則
17.2.3 健壯性原則
17.3 面向?qū)ο鬁y試策略
17.3.1 單元測試
17.3.2 集成測試
17.3.3 系統(tǒng)測試
17.3.4 回歸測試
17.4 設(shè)計測試用例
本章小結(jié)
思考與練習(xí)
附錄a 課程實驗
a.1 實驗教學(xué)的目的
a.2 實驗教學(xué)的任務(wù)
a.3 實驗內(nèi)容
a.4 實驗要求
a.5 實驗考核標(biāo)準(zhǔn)
a.6 信息系統(tǒng)項目
a.7 信息系統(tǒng)實驗
a.7.1 實驗1--project軟件項目管理
a.7.2 實驗2--利用visio進行需求分析
a.7.3 實驗3--結(jié)構(gòu)化設(shè)計
a.7.4 實驗4--系統(tǒng)開發(fā)環(huán)境配置
a.7.5 實驗5--軟件編碼與測試
a.7.6 實驗6--uml與面向?qū)ο箝_發(fā)
a.7.7 實驗7--結(jié)構(gòu)化設(shè)計綜合實驗
a.7.8 實驗8--面向?qū)ο缶C合實驗
附錄b 模擬題
模擬題
模擬題
模擬題
模擬題
模擬題
模擬題