需求分析与系统设计 原书第3版 pdf

需求分析与系统设计 原书第3版

内容简介

论述软件分析与设计的原理、方法和技术,并特别关注设计阶段,对软件体系结构的内容进行了很大的扩充。强调对象技术及统一建模语言(UML)在企业信息系统开发中的应用,并讨论了使用Web技术和数据库技术进行开发的方法。

本书是大学本科生学习系统分析与设计、软件工程、软件项目管理、数据库和对象技术的理想教材和参考书;对于软件工程技术人员来说,《需求分析与系统设计(原书第3版)》也是很好的参考资料。

作者简介

Leszek A.Maciaszek 澳大利亚悉尼Macquarie大学副教授。他原籍波兰,曾在世界许多国家担任研究员、咨询专家和教师,于1985年移居澳大利亚。他具有在许多大型跨国公司从事技术咨询和培训工作的经验。他的研究领域包括系统开发和集成、软件工程、数据库、对象技术以及分布式计算,已经写了100多篇论文,并出版了7本书。

目录

译者序

前言

第1章 软件过程

1.1 软件开发的本质

1.1.1 软件开发的不变事实

1.1.2 软件开发的“意外事件”

1.1.3 开发还是集成

复习小测验1.1

1.2 系统规划

1.2.1 SWOT方法

1.2.2 VCM方法

1.2.3 BPR方法

1.2.4 ISA方法

复习小测验1.2

1.3 三级管理系统

1.3.1 事务处理系统

1.3.2 分析处理系统

1.3.3 知识处理系统

复习小测验1.3

1.4 软件开发生命周期

1.4.1 开发方法

1.4.2 生命周期的阶段

1.4.3 跨越生命周期的活动

复习小测验1.4

1.5 开发模型与方法

1.5.1 螺旋模型

1.5.2 IBM Rational统一过程

1.5.3 模型驱动的体系结构

1.5.4 敏捷软件开发

1.5.5 面向方面的软件开发

复习小测验1.5

1.6 实例研究的问题陈述

1.6.1 大学注册

1.6.2 音像商店

1.6.3 关系管理

1.6.4 电话销售

1.6.5 广告支出

1.6.6 时间记录

1.6.7 货币兑换

小结

关键术语

选择题

问题

复习小测验答案

选择题答案

奇数编号问题的答案


第2章 需求确定

2.1 从业务过程到解决方案构想

2.1.1 过程层次建模

2.1.2 业务过程建模

2.1.3 解决方案构想

复习小测验2.1

2.2 需求引导

2.2.1 系统需求

2.2.2 需求引导的传统方法

2.2.3 需求引导的现代方法

复习小测验2.2

2.3 需求协商与确认

2.3.1 超出范围的需求

2.3.2 需求依赖矩阵

2.3.3 需求风险和优先级

复习小测验2.3

2.4 需求管理

2.4.1 需求标识与分类

2.4.2 需求层次

2.4.3 变更管理

2.4.4 需求可跟踪性

复习小测验2.4

2.5 需求业务模型

2.5.1 系统范围模型

2.5.2 业务用例模型

2.5.3 业务词汇表

2.5.4 业务类模型

复习小测验2.5

2.6 需求文档

2.6.1 文档模板

2.6.2 项目准备

2.6.3 系统服务

2.6.4 系统约束

2.6.5 项目的其他问题

2.6.6 附录

复习小测验2.6

小结

关键术语

选择题

问题

练习:广告支出

练习:时间记录

复习小测验答案

选择题答案

奇数编号问题的答案

练习的解决方案:AE


第3章 可视化建模基础

3.1 用例视图

3.1.1 参与者

3.1.2 用例

3.1.3 用例图

3.1.4 用例文档化

复习小测验3.1

3.2 活动视图

3.2.1 动作

3.2.2 活动图

复习小测验3.2

3.3 结构视图

3.3.1 类

3.3.2 属性

3.3.3 关联

3.3.4 聚合

3.3.5 泛化

3.3.6 类图

复习小测验3.3

3.4 交互视图

3.4.1 顺序图

3.4.2 通信图

3.4.3 类方法

复习小测验3.4

3.5 状态机视图

3.5.1 状态和转换

3.5.2 状态机图

复习小测验3.5

3.6 实现视图

3.6.1 子系统和包

3.6.2 构件和构件图

3.6.3 节点和部署图

复习小测验3.6

小结

关键术语

选择题

问题

练习

练习:音像商店

复习小测验答案

选择题答案

奇数编号问题的答案

奇数编号练习的解决方案

奇数编号练习的解决方案:音像商店


第4章 需求规格说明

4.1 体系结构优先权

4.1.1 模型-视图-控制器

4.1.2 J2EE的核心体系结构

4.1.3 表示-控制器-bean-中介者-实体-资源

复习小测验4.1

4.2 状态规格说明

4.2.1 类建模

4.2.2 关联建模

4.2.3 聚合及复合关系建模

4.2.4 泛化关系建模

4.2.5 接口建模

4.2.6 对象建模

复习小测验4.2

4.3 行为规格说明

4.3.1 用例建模

4.3.2 活动建模

4.3.3 交互建模

4.3.4 操作建模

复习小测验4.3

4.4 状态变化规格说明

4.4.1 对象状态建模

复习小测验4.4

小结

关键术语

选择题

问题

练习:音像商店

练习:关系管理

练习:大学注册

复习小测验答案

选择题答案

奇数编号问题的答案

练习的解决方案:大学注册


第5章 从分析到设计

5.1 高级类建模

5.1.1 扩展机制

5.1.2 可见性与封装

5.1.3 导出信息

5.1.4 限定关联

5.1.5 关联类与具体化类

复习小测验5.1

5.2 高级泛化与继承建模

5.2.1 泛化和可替换性

5.2.2 继承与封装

5.2.3 接口继承

5.2.4 实现继承

复习小测验5.2

5.3 高级聚合与委托建模

5.3.1 给聚合增加更多的语义

5.3.2 作为泛化的可选方案的聚合

5.3.3 聚合与整体构件-一些仅供

思考的材料

复习小测验5.3

5.4 高级交互建模

5.4.1 生命线和消息

5.4.2 片段

5.4.3 交互使用

复习小测验5.4

小结

关键术语

选择题

问题

练习

练习:时间记录

练习:广告支出

复习小测验答案

选择题答案

奇数编号问题的答案

奇数编号练习的解决方案

练习的解决方案:时间记录


第6章 系统体系结构与程序设计

6.1 分布式物理体系结构

6.1.1 对等体系结构

6.1.2 分层体系结构

6.1.3 数据库为中心的体系结构

复习小测验6.1

6.2 多层逻辑体系结构

6.2.1 体系结构的复杂性

6.2.2 体系结构模式

复习小测验6.2

6.3 体系结构建模

6.3.1 包

6.3.2 构件

6.3.3 结点

复习小测验6.3

6.4 程序设计与复用原则

6.4.1 类的内聚与耦合

6.4.2 复用策略

复习小测验6.4

6.5 协作建模

6.5.1 协作

6.5.2 复合结构

6.5.3 从用例到复合协作

6.5.4 从协作到交互

6.5.5 从交互到复合结构

复习小测验6.5

小结

关键术语

选择题

问题

练习:音像商店

练习:广告支出

复习小测验答案

选择题答案

奇数编号问题的答案

练习的解决方案:广告支出


第7章 图形用户界面设计

7.1 GUI设计原则

7.1.1 从GUI原型到实现

7.1.2 良好GUI设计指南

复习小测验7.1

7.2 桌面GUI设计

7.2.1 主窗口

7.2.2 辅窗口

7.2.3 菜单和工具栏

7.2.4 按钮及其他控件

复习小测验7.2

7.3 WebGUI设计

7.3.1 Web应用系统的使能技术

7.3.2 内容设计

7.3.3 导航设计

7.3.4 利用GUI框架支持Web设计

复习小测验7.3

7.4 GUI导航建模

7.4.1 用户体验故事情节

7.4.2 UX元素建模

7.4.3 行为性UX协作

7.4.4 结构性UX协作

复习小测验7.4

小结

关键术语

选择题

问题

练习:关系管理

练习:电话销售

复习小测验答案

选择题答案

奇数编号问题的答案

练习的解决方案:关系管理


第8章 持久性与数据库设计

8.1 业务对象和持久性

8.1.1 数据库管理系统

8.1.2 数据模型的层次

8.1.3 集成应用系统与数据库建模

8.1.4 对象-数据库映射基础

复习小测验8.1

8.2 关系数据库模型

8.2.1 列.域和规则

8.2.2 表

8.2.3 引用完整性

8.2.4 触发器

8.2.5 存储过程

8.2.6 视图

8.2.7 范式

复习小测验8.2

8.3 对象-关系映射

8.3.1 映射实体类

8.3.2 映射关联

8.3.3 映射聚合

8.3.4 映射泛化

复习小测验8.3

8.4 管理持久对象的模式

8.4.1 检索持久对象

8.4.2 装载持久对象

8.4.3 释放持久对象

复习小测验8.4

8.5 设计数据库访问和事务

8.5.1 SQL程序设计的层次

8.5.2 设计业务事务

复习小测验8.5

小结

关键术语

选择题

问题

练习:关系管理

练习:电话销售

复习小测验答案

选择题答案

奇数编号问题的答案

练习的解决方案:关系管理


第9章 质量与变更管理

9.1 质量管理

9.1.1 质量保证

9.1.2 质量控制

复习小测验9.1

9.2 变更管理

9.2.1 工具与管理变更请求

9.2.2 可追踪性

复习小测验9.2

小结

关键术语

选择题

问题

复习小测验答案

选择题答案

奇数编号问题的答案


第10章 复习巩固指南

10.1 用例建模

10.1.1 参与者

10.1.2 用例

10.1.3 用例图

10.1.4 编写用例文档

10.2 活动建模

10.2.1 动作

10.2.2 活动图

10.3 类建模

10.3.1 类

10.3.2 属性

10.3.3 关联

10.3.4 聚合

10.3.5 泛化

10.3.6 类图

10.4 交互建模

10.4.1 顺序图

10.4.2 通信图

10.5 状态机建模

10.5.1 状态和转换

10.5.2 状态机图

10.6 实现模型

10.6.1 子系统

10.6.2 包

10.6.3 构件

10.6.4 注释

10.7 对象协作设计

10.7.1 用例设计规格说明

10.7.2 用户界面原型

10.7.3 顺序图

10.7.4 设计层类图

10.8 窗口导航设计

10.8.1 用户体验元素

10.8.2 行为性UX协作

10.8.3 结构性UX协作

10.9 数据库设计

10.9.1 对象-关系映射

10.9.2 引用完整性设计

小结

练习:在线购物

附录A对象技术基础

参考文献

感悟与笔记

需求分析的任务与过程

需求分析所要做的工作是深入描述软件的功能和性能,确定软件设计的限制和软件同其他系统元素的接口细节,定义软件的其他有效性需求,细化软件要处理的数据域。用一句话概括就是:需求分析主要是确定待开发软件的功能、性能、数据、界面等要求。需求分析的实现步骤通常包括:获取当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型三个部分。具体来说,需求分析阶段的工作可以分成 4 个方面:

(1)问题识别:用于发现需求、描述需求,主要包括功能需求、性能需求、环境需求、可靠性需求、安全保密需求、用户界面需求、资源使用需求、软件成本消耗与开发进度需求,以此来预先估计以后系统可能达到的目标。

(2)分析与综合:也就是对问题进行分析,然后在此基础上整合出解决方案。这个步骤经常是反复进行的,常用的方法有面向数据流的结构化分析方法(Structured Analysis, SA),面向数据结构的 Jackson 方法,面向对象的分析方法(Object Oriented Analysis,OOA),以及用于建立动态模型的状态迁移图和 Petri 网。

(3)编制需求分析的文档:也就是对已经确定的需求进行文档化描述,该文档通常称为“需求规格说明书”。

(4)需求分析与评审:它是需求分析工作的最后一步,主要是对功能的正确性、完整性和清晰性,以及其他需求给予评价。

Copyright © 2021-2022 知识猫. All Rights Reserved.