普通高等教育软件工程“十二五”规划教材

系统分析与设计

UML与系统分析设计、UML、面向对象分析方法
分享 推荐 2 收藏 20 阅读 3.2K
李爱萍 (主编) 孟东霞 , 雷 , 红 , 杨崇艳 (副主编) 978-7-115-39600-6

关于本书的内容有任何问题,请联系 张斌


1.讲解如何应用UML 建模工具完成系统的分析和设计
2.剖析大量实例的系统分析和设计各个环节,对概念、过程、工具、技术等内容的平衡很好
¥42.00 ¥35.70 (8.5 折)
教学资源仅供教师教学使用,转载或另作他用版权方有权追究法律责任。

内容摘要


本书介绍系统分析与设计的原理、方法、技术、工具和应用,全书分 4 个部分, 第 1 部分(第 1 章)从信息系统的设计模型、应用环境开始,介绍系统分析与设计的定义、过程与流行的技术方法;第 2 部分(第 2 ~ 8 章)是本书的重点内容,其中第 2 ~ 4 章分别从静态、动态和数据的角度讨论建模的方法和技术, 第 5 ~ 8 章则分别从系统整体架构设计、类和包设计、人机界面设计及数据模式设计的角度讨论系统设计的方法和技术;第 3 部分(第 9 章)给出系统生存周期中,设计阶段的后续衔接阶段内容,介绍系统的构造、实施以及运行和支持阶段的主要工作;第 4 部分(第 10 章)以一个简化的教学管理系统作为示例, 介绍本书前面章节的原则和技术在软件项目的分析设计过程中的应用。

前言

自1968年第一届NATO会议上首次提出“软件工程”的概念至今,软件工程得到了很大发展。2011年2月,我国国务院学位委员会新修订学科目录中将软件工程(学科代码为0835)增设为一级学科,进一步促进了软件工程的发展。
软件工程强调软件开发过程应该遵循生存周期阶段模型理论,即软件计划、软件开发和软件运行3个时期。面向过程的软件工程将生存周期细化为问题定义、可行性研究、需求分析、总体设计、详细设计、编码、测试和运行维护等过程。面向对象的软件工程则将软件生存周期分为面向对象分析、面向对象设计与面向对象实现3个阶段。系统分析与设计主要关注软件工程生存周期阶段中的分析与设计阶段。
本书按照面向对象软件工程的生存周期阶段模型展开,详细阐述面向对象软件工程中的面向对象分析与设计环节,对应介绍面向过程软件工程生存周期中的需求分析、总体设计和详细设计阶段,并提供与生存周期过程其他阶段的有效衔接。同时给出对应的案例指导,比较全面地反映了系统分析与设计的全貌。
全书共10章,按生存周期阶段的专题安排,便于组织教学。
第1章是系统分析与设计概述,介绍系统及信息系统的基本概念、特性,从信息系统的设计模型、应用环境讲起,依据基本概念、原理和发展趋势的思路,分别介绍了系统分析与设计的定义、过程与流行的技术方法,从战略的观点研讨信息系统持续发展的阶段理论,概要地描述信息系统开发的全过程。第2~3章分别从静态和动态建模的角度,讲述系统分析过程中建模的具体方法和步骤。第4章专门介绍数据建模的分类、实现方法和步骤。系统分析阶段确定了新系统的逻辑模型、功能要求等内容,系统设计阶段就需要在用户提供的环境条件下,设计出一个能够方便实施的方案。第5章讲述系统架构的设计,给出当前非常流行的系统架构设计步骤和案例。第6章介绍对象模型的设计,该阶段是对前述的分析和设计工作的精雕细琢,是设计者根据系统设计时所选取的策略对分析阶段建立的对象模型进行精化、完善及优化的过程。第7章介绍人机界面设计的原则、方法和步骤。第8章介绍第4章数据建模结果对应的数据设计。第9章简单介绍系统分析与设计的后续阶段,即系统的构造与实施。第10章通过一个教学管理系统的分析与设计过程,给出前面各章内容的综合应用。全书以UML为系统分析与设计的主线,指导和贯穿各章内容。
本书由太原理工大学软件学院长期从事“软件工程”“系统分析与设计”课程教学和科研的一线教师编写。在前导课程“软件工程”教学基础上,详细阐述系统分析与设计的原则、方法和步骤。本书共10章,其中第1、3章由孟东霞编写,第2、6章由雷红编写,第4、8章由杨崇艳编写,第5章由李爱萍编写,第7章由宋春花编写,第9章由段利国编写,第10章由杨丽凤编写。李爱萍同志负责全书架构的设计和统稿。
本书编写过程中参考了国内外有关软件工程及系统分析与设计的专著、教材和论文,详见书后所附的主要参考文献。在此,向所有作者一并表示谢意。
本书的参考学时为48~64学时,建议采用理论实践一体化教学模式,各章的参考学时(包括实践)见下面的学时分配表。
学时分配表
章 课 程 内 容 学 时
第1章 介绍系统分析与设计的定义、过程与流行的技术方法,从战略的观点研讨信息系统持续发展的阶段理论,概要地描述信息系统开发的全过程 6~8
第2章 介绍如何运用面向对象分析方法,使用UML语言构建系统的静态分析模型 6~8
第3章 从系统对象动态活动的角度,对系统分析的各构件组成及对象动态行为模型进行详细介绍 6~8
第4章 针对系统中的数据建模进行专门分析 4~6
第5章 介绍关于系统设计阶段的主体内容及注意事项,重点介绍架构设计 9~10
第6章 结合对象模型的设计原则和方法,介绍类设计和包设计 4~6
第7章 对人机界面的定义、发展历史、设计原则、评价及展望等进行综合介绍 3~4
第8章 对数据模式的设计进行详细阐述 4~6
第9章 介绍系统的构造、实施以及运行和支持阶段的主要工作 2~3
第10章 以一个简化教学管理系统作为示例,简要说明软件项目的分析与设计过程 4~5
学时总计 48~64

由于近年来软件工程、系统分析与设计及相关领域发展迅速,加之编者水平有限,书中难免存在不足之处,敬请广大读者提出宝贵意见和建议。

目录

第 1章 系统分析与设计概述 1
1.1 系统的概念和特性 1
1.1.1 系统概念及特性 1
1.1.2 系统分类与环境 2
1.2 系统模型的概念和类型 4
1.2.1 系统模型的概念 4
1.2.2 系统模型的类型 5
1.3 系统关联人员 5
1.3.1 系统所有者 6
1.3.2 系统用户 6
1.3.3 系统分析设计人员 6
1.3.4 系统外部服务者 7
1.3.5 项目经理 7
1.4 系统发展的阶段理论 7
1.4.1 诺兰的阶段模型 8
1.4.2 西诺特模型 9
1.4.3 米切模型 9
1.5 系统分析与问题领域 10
1.5.1 系统分析过程 11
1.5.2 信息领域 12
1.5.3 建模和模拟 13
1.6 系统开发与项目管理 14
1.6.1 系统开发生存周期 14
1.6.2 系统开发方法论 16
1.6.3 团队合作与管理 22
1.7 系统分析与设计工具 27
1.7.1 CASE工具的发展 27
1.7.2 支持系统开发的CASE工具 27
1.7.3 统一建模语言UML 27
本章小结 29
本章习题 29
第 2章 系统静态分析建模 31
2.1 系统分析概念及其常用方法 31
2.1.1 什么是系统分析 31
2.1.2 模型驱动分析方法 32
2.1.3 加速系统分析法 32
2.1.4 需求获取法 33
2.1.5 业务过程重构法 34
2.2 系统模型的创建 34
2.2.1 对象模型 34
2.2.2 功能模型 35
2.2.3 动态模型 35
2.3 对象和类的分析 35
2.3.1 类图、对象图概述 35
2.3.2 类图元素 38
2.3.3 分析阶段类图的构建 45
2.3.4 在线销售系统类图分析示例 47
2.4 用例分析 51
2.4.1 用例元素的确定 51
2.4.2 分析阶段用例图的建造 56
2.4.3 在线销售系统用例分析示例 58
2.5 包图 60
2.5.1 包图及其模型元素 60
2.5.2 包图建模及在线销售系统包图分析示例 62
2.6 构件图与部署图 63
2.6.1构件图及其模型元素 63
2.6.2 构件图建模及示例 66
2.6.3 部署图及其模型元素 67
2.6.4 部署图建模及其应用 68
2.6.5 在线销售系统部署图建模
分析示例 70
本章小结 71
本章习题 71
第3章 系统动态分析建模 73
3.1 活动和状态分析 73
3.1.1 活动和状态的确定 73
3.1.2 活动和状态图的建造 81
3.1.3 活动和状态的建模示例 84
3.2 时序与协作分析 87
3.2.1 时序与协作的确定 88
3.2.2 顺序图与通信图的建造 93
3.2.3 时序与协作的建模示例 94
3.3 过程建模 97
3.3.1 过程建模概述 97
3.3.2 过程建模的元素 97
3.3.3 过程建模的步骤 100
3.3.4 过程建模分析示例 101
本章小结 105
本章习题 106
第4章 数据建模 108
4.1 数据模型 108
4.1.1 基于记录的逻辑模型 108
4.1.2 基于对象的逻辑模型 114
4.2 实体关系(E-R)模型 117
4.2.1 实体之间的基本关系 117
4.2.2 实体关系图 117
4.3 UML用于数据建模阶段的规范 119
4.3.1 实体的表示(类的表示) 120
4.3.2 联系的表示 121
4.3.3 数据字典和元数据的表示 123
4.4 教务管理系统分析示例 127
4.4.1 示例分析 128
4.4.2 示例的物理模型 129
4.5 实体关系图集成示例 129
本章小结 130
本章习题 131
第5章 系统架构设计 132
5.1 架构设计(总体设计) 132
5.1.1 架构师的定位及其应掌握的知识体系 133
5.1.2 软件架构的设计目标、设计策略和原则 134
5.1.3 常用的软件架构风格及使用情况分析 136
5.1.4 分层架构 138
5.1.5 客户/服务器架构 140
5.1.6 教学管理系统架构选择和设计示例 143
5.2 从需求到设计的转换 143
5.2.1 从数据流图到软件结构图的转换 144
5.2.2 工资管理系统数据流图到软件结构图的转换示例 147
5.2.3 从需求模型到软件架构 148
5.2.4 软件设计模式 149
5.2.5 GRASP模式 149
5.2.6 GOF设计模式 158
5.3 系统资源设计 160
5.3.1 系统应用逻辑结构设计 160
5.3.2 系统物理设计及其实现 165
本章小结 172
本章习题 172
第6章 对象模型设计 174
6.1 类设计 174
6.1.1 类设计原则 174
6.1.2 类设计、构建设计类图的过程 177
6.1.3 确定设计类 177
6.1.4 定义类的属性、操作 178
6.1.5 设计类之间的关系 181
6.1.6 在线销售系统类图设计示例 183
6.2 包设计 188
6.2.1 包设计原则 188
6.2.2 在线销售系统包图设计示例 192
本章小结 195
本章习题 196
第7章 界面设计 197
7.1 界面设计的概述 197
7.1.1 人机界面的定义 197
7.1.2 人机界面设计 198
7.1.3 界面设计分类 200
7.2 人机交互 201
7.2.1 人机交互的特点和要素 201
7.2.2 人机界面与人机交互的关系 202
7.3 人机界面的风格 202
7.4 人机界面的发展 203
7.4.1 命令语言用户界面 203
7.4.2 图形用户界面 203
7.4.3 多媒体用户界面 204
7.4.4 多通道用户界面 204
7.4.5 虚拟现实界面 205
7.4.6 自适应人机界面 206
7.5 人机界面设计的方法 206
7.6 人机界面设计的目标和遵循的原则 207
7.6.1 人机界面设计的目标 207
7.6.2 人机界面设计遵循的原则 207
7.7 界面结构设计与实现 208
7.8 人机界面设计过程中的设计问题 209
7.9 人机界面设计的过程 211
7.10 人机界面设计的评价 213
7.10.1 人机界面设计的评价方法 213
7.10.2 人机界面设计的评价 213
7.11 未来人机界面设计的展望 214
本章小结 214
本章习题 215
第8章 数据模式设计 216
8.1 数据库设计概述 216
8.1.1 数据库与数据库设计 216
8.1.2 数据库设计的方法与过程 218
8.2 UML用于数据库设计阶段的规范 220
8.2.1 数据库类到数据库表的设计 220
8.2.2 关键字和索引的设计 222
8.2.3 约束的设计 222
8.2.4 联系的设计 223
8.3 关系数据库逻辑模式的设计 224
8.3.1 逻辑模式的概念 224
8.3.2 实体关系图向逻辑模式的转化 224
8.3.3 从类创建数据库表 225
8.3.4 从类之间的关系设计表之间的联系 226
8.3.5 类约束向存储过程和触发器的映射 227
8.4 关系数据库物理模型的设计 229
8.4.1 确定数据库的物理结构 230
8.4.2 评价物理结构 230
8.5 教务管理系统数据模式设计示例 231
本章小结 235
本章习题 235
第9章 系统构造及实施 237
9.1 系统构造 237
9.1.1 建立和测试网络 237
9.1.2 建立和测试数据库 238
9.1.3 安装和测试新软件包 238
9.1.4 编写和测试新程序 239
9.2 系统实施 239
9.2.1 执行系统测试 240
9.2.2 准备转变计划 241
9.2.3 安装数据库 241
9.2.4 培训系统用户 242
9.2.5 转变到新系统 242
9.3 系统运行和支持 242
9.3.1 系统维护 243
9.3.2 系统恢复 244
9.3.3 技术支持 244
9.3.4 系统增强 244
本章小结 245
本章习题 245
第 10章 教学管理系统的分析与设计246
10.1 系统需求分析 246
10.2 问题领域分析 247
10.2.1 确定系统范围和系统边界 248
10.2.2 定义参与者 248
10.2.3 定义用例 248
10.2.4 绘制用例图 250
10.2.5 绘制主要交互图 251
10.3 静态结构建模 252
10.3.1 建立对象类图 252
10.3.2 建立数据库模型 256
10.3.3 建

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

李爱萍,女,计算机科学与技术学院计算机工程系主任,副教授,硕士生导师,博士。中国计算机学会会员,ACM会员。 1995年毕业于中国矿业大学自动化系计算机及其应用专业,获工学学士学位;2001年毕业于太原理工大学机械电子工程专业,获工学硕士学位。2006年毕业于西安电子科技大学测试计量技术及仪器专业,获工学博士学位。2011年8月至2011年10月以公派访问学者身份赴日本横滨国立大学进行研修。长期从事高校的计算机专业基础、计算机科学理论及软件理论的教学与科研工作。主要研究方向为软件形式化描述与验证、软件测试、软件体系结构、高级语言翻译器的技术等。近年来发表论文20余篇,承担并参与了10余项国家、省部级和横向科研项目,出版著作4部。指导过大学生创新实验计划项目、ACM程序设计大赛、机器人大赛、物联网创新大赛等多项赛事并获奖。

推荐用户

同系列书

购买本书用户

相关图书

人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部