软件工程案例教程(第2版)
正版全新
¥
56.33
7.1折
¥
79
全新
库存2件
作者李军国 吴昊 郭晓燕 王舒
出版社清华大学出版社
ISBN9787302492986
出版时间2018-06
装帧其他
开本16开
纸张胶版纸
页数200页
定价79元
货号1334636
上书时间2023-10-13
商品详情
- 品相描述:全新
- 商品描述
-
【书 名】 软件工程案例教程(第2版)
【书 号】 9787302492986
【出 版 社】 清华大学出版社
【作 者】 李军国 吴昊 郭晓燕 王舒
【出版日期】 2018-06-01
【版 次】 2
【开 本】 16开
【页 码】 200
【定 价】 79.00元
【编辑推荐】
案例教学
【内容简介】
《软件工程案例教程(第2版)》系统的介绍了软件工程的基本概念、原理、方法、技术、标准和软件项目管理的知识。全书共分15章。以软件生命周期为主线,对软件工程的需求分析、概要设计、详细设计、代码设计、软件测试、软件项目管理和软件过程等方面的内容作了详尽的叙述,之后还对软件工程标准和软件文档的编写要点进行了讲解。突出了结构化方法和面向对象技术在软件开发中的运用,通过案例,讲解了软件建模的方法和过程。
【目录】
目录
第1章软件工程的基本概念
1.1软件的定义、特征和分类
1.1.1软件的定义
1.1.2软件的特征
1.1.3软件的分类
1.2软件的发展和软件危机
1.2.1软件的发展历程
1.2.2软件危机的表现、产生的原因和解决方法
1.3软件工程方法学
1.3.1软件工程的基本概念
1.3.2软件工程的要素
1.3.3软件工程的基本原理
1.3.4软件工程的基本目标
1.3.5软件工程的基本原则
1.3.6两种主要的软件工程方法
小结
习题
第2章软件生存周期及开发模型
2.1生存周期的种类
2.2生存周期的阶段划分
2.3软件过程的模型
2.3.1瀑布模型
2.3.2原型模型
2.3.3增量模型
2.3.4螺旋模型
2.3.5变换模型
2.3.6喷泉模型
2.3.7智能模型
2.3.8第4代技术模型
2.3.9基于构件的开发模型
小结
习题
第3章结构化需求分析
3.1可行性研究
3.1.1问题的定义
3.1.2可行性分析的内容
3.2需求分析的任务
3.3获取需求的方法
3.4结构化需求分析方法
3.4.1需求分析的原则
3.4.2需求分析的过程
3.5分析建模
3.5.1分析模型
3.5.2数据建模(ER图)
3.5.3功能建模(数据流图)
3.5.4行为建模(状态迁移图)
3.5.5数据字典
3.5.6加工说明的描述工具
3.6需求规格说明书
3.7需求验证
小结
习题
第4章结构化软件设计
4.1软件设计的原理
4.1.1软件设计的过程
4.1.2软件设计的原则
4.1.3软件体系结构
4.2软件结构设计
4.2.1模块化设计
4.2.2模块的独立性
4.2.3软件体系结构优化的方法
4.2.4体系结构设计案例
4.3面向数据流的设计方法
4.3.1变换流与变换型系统结构
4.3.2事务流与事务型系统结构图
4.3.3变换分析与映射
4.3.4事务分析与映射
4.4数据设计
4.4.1数据设计的原则
4.4.2文件设计的过程
4.4.3数据库设计
4.4.4数据库设计的技巧
4.5详细设计
4.5.1详细设计的任务
4.5.2详细设计的原则
4.5.3过程设计
4.5.4界面设计
4.5.5在线帮助的信息设计
4.5.6提示信息的信息设计
4.6设计规格说明与设计评审
4.6.1软件设计规格说明书
4.6.2软件设计的评审
小结
习题
第5章面向对象方法学
5.1面向对象概述
5.1.1面向对象基本概念
5.1.2面向对象基本特征
5.2面向对象开发方法概述
5.2.1软件开发过程
5.2.2传统开发方法存在的问题
5.2.3面向对象开发方法的特点
5.2.4Booch方法
5.2.5Coda/Yourdon方法
5.2.6OMT方法
5.2.7OOSE方法
5.3统一建模语言UML
5.3.1UML概述
5.3.2UML内容
小结
习题
第6章面向对象分析
6.1面向对象分析概述
6.1.1面向对象分析模型
6.1.2面向对象分析过程
6.2需求陈述
6.3建立功能模型
6.3.1确定基本系统模型图
6.3.2细化数据流图
6.3.3功能描述
6.3.4用例模型
6.4建立静态模型
6.4.1寻找类与对象
6.4.2确定关联
6.4.3确定属性
6.4.4识别主题
6.4.5识别结构
6.4.6定义服务
6.4.7完善对象模型
6.5建立动态模型
6.5.1准备脚本
6.5.2确定事件
6.5.3准备时序图
6.5.4生成协作图
6.5.5构造状态机图
6.5.6完善动态模型
6.6面向对象分析实例
小结
习题
第7章面向对象设计
7.1面向对象设计概述
7.1.1面向对象设计模型
7.1.2面向对象设计准则
7.1.3面向对象设计启发规则
7.2系统设计
7.2.1系统分解
7.2.2设计问题域子系统
7.2.3设计人机交互子系统
7.2.4设计任务管理子系统
7.2.5设计数据管理子系统
7.2.6全局资源管理
7.2.7控制流机制
7.2.8边界条件
7.2.9评审
7.3对象设计
7.3.1设计内部结构
7.3.2设计关联
7.3.3设计接口
7.3.4设计类中的服务
7.3.5选择复用构件
7.3.6优化对象设计
7.4面向对象设计实例
7.4.1分析阶段
7.4.2设计阶段
小结
习题
第8章代码设计
8.1程序设计语言
8.1.1程序设计语言的基本成分
8.1.2程序设计语言的分类
8.1.3程序设计语言的选择
8.2程序设计风格
8.2.1源程序的文档化
8.2.2数据说明
8.2.3语句构造
8.2.4输入与输出
8.2.5编程规范
8.3结构化程序设计
8.3.1结构化程序设计的原理
8.3.2结构化编程
8.4面向对象程序设计
8.4.1面向对象语言特点
8.4.2面向对象语言的选择
8.4.3面向对象程序设计风格
8.5程序效率
8.6程序复杂性度量
小结
习题
第9章软件测试
9.1软件测试基础
9.1.1什么是软件缺陷
9.1.2软件测试的原则
9.1.3软件测试过程模型
9.1.4软件测试的阶段
9.1.5软件测试的工作范畴
9.2软件测试基本技术
9.2.1黑盒测试和白盒测试
9.2.2静态测试和动态测试
9.2.3验证与确认
9.2.4自动化测试和随机测试
9.3黑盒测试法
9.3.1等价类划分法
9.3.2边界值分析法
9.3.3错误推测法
9.3.4因果图法
9.4白盒测试法
9.4.1逻辑覆盖法
9.4.2基本路径法
9.5软件测试计划
9.5.1测试策略
9.5.2制定测试计划
9.6测试用例设计
9.6.1什么是测试用例
9.6.2测试用例的书写标准
9.6.3测试用例设计的原则
9.7面向对象测试
9.7.1面向对象测试模型
9.7.2面向对象的单元测试
9.7.3面向对象的集成测试
9.8软件测试自动化
9.8.1自动化测试的基本概念
9.8.2测试工具的分类及选择
小结
习题
第10章软件过程
10.1软件过程概述
10.2软件过程能力成熟度模型
10.2.1软件过程能力成熟度模型(SWCMM)的诞生
10.2.2软件过程能力成熟度模型(CMM)的组织与结构
10.2.3能力等级的特点和关键过程域
10.2.4实施CMM是软件企业发展的必然趋势
10.3软件过程的改进
10.3.1软件过程改进的5条原则
10.3.2软件过程改进的策略
10.3.3软件过程改进战略策划
10.3.4软件过程改进建议
10.3.5为什么要实施SPI
10.3.6以项目形式管理SPI
小结
习题
第11章成本估算与进度规划
11.1软件度量与软件生产率
11.1.1软件度量
11.1.2面向规模的度量
11.1.3面向功能的度量
11.1.4软件质量的度量
11.1.5影响软件生产率的因素
11.2软件项目估算与开发成本估算
11.2.1软件项目计划的目标
11.2.2软件的范围
11.2.3软件开发的资源
11.2.4软件项目估算
11.2.5估算之前的任务分解
11.2.6软件开发成本估算
11.3进度计划
11.3.1各阶段工作量的分配
11.3.2制订开发进度计划
11.3.3进度安排的方法
小结
习题
第12章团队建设与沟通管理
12.1团队建设的基本概念
12.2项目团队的组织
12.2.1项目的组织结构模式
12.2.2程序设计小组的组织形式
12.3团队成员的选择与基本要求
12.3.1项目开发各阶段对人员的需求
12.3.2配备人员的原则
12.3.3对项目经理的要求
12.3.4团队成员的招聘与选择
12.4团队的建设与管理
12.4.1项目成员的使用与培训
12.4.2对项目成员的激励
12.4.3软件项目的指导
12.4.4软件项目的检验
12.5团队的沟通管理
12.5.1沟通管理与沟通的原则
12.5.2沟通方式
12.5.3编制项目沟通计划
小结
习题
第13章风险管理和配置管理
13.1风险管理
13.1.1软件风险分类
13.1.2风险识别
13.1.3风险预测
13.1.4处理风险的策略
13.2质量保证
13.2.1软件质量
13.2.2软件质量保证措施
13.3配置管理
13.3.1软件配置管理的内容
13.3.2软件配置管理的基本目标
13.3.3软件配置管理角色职责
13.3.4软件配置管理过程描述
13.3.5软件配置管理的关键活动
小结
习题
第14章软件工程标准
14.1软件工程标准化
14.1.1软件工程标准的概念
14.1.2软件工程标准的制定与推行
14.1.3软件工程标准层次
14.2软件质量认证
14.2.1软件质量认证的产生背景
14.2.2软件质量认证的标准
14.2.3软件质量认证的作用
14.2.4ISO 9000标准的构成
14.3GB/T 8567—2006计算机软件文档编制规范
14.3.1使用范围
14.3.2文档过程
14.3.3文档编制要求
小结
习题
第15章软件文档
15.1软件文档的意义
15.2软件文档的作用
15.2.1管理依据
15.2.2任务之间联系的凭证
15.2.3质量保证
15.2.4培训与参考
15.2.5软件维护支持
15.2.6历史档案
15.3软件文档的分类
15.3.1开发文档
15.3.2产品文档
15.3.3管理文档
15.4软件文档的管理
15.4.1概述
15.4.2管理者的作用
15.4.3制订文档编制策略
15.5软件文档的编写技巧
15.5.1从技术角度进行文档的编写和评价
15.5.2明确文档编写人员的责任
15.5.3让编写人员对开发项目有准确的认识
15.5.4让开发和设计人员参与文档审阅工作
15.6文档编写的常用工具
小结
习题
第16章软件文档编写指南
16.1概述
16.2软件开发文档
16.2.1可行性分析(研究)报告
16.2.2软件需求规格说明
16.2.3概要设计书
16.2.4详细设计书
16.3软件管理文档
16.3.1项目开发计划
16.3.2软件测试计划
16.3.3测试报告
16.3.4开发进度月报
16.3.5项目开发总结报告
16.4软件用户文档
16.4.1用户手册
16.4.2操作手册
小结
习题
参考文献
【文摘】
第3章结构化需求分析需求分析是必要且十分重要的环节。实践证明,软件分析工作的好坏,在很大程度上决定了软件的成败。本章将从实际案例出发,对结构化方法的可行性分析和需求分析过程进行全面的剖析。在软件开发实践中,经过成功和失败,使人们认识到,为了使开发出来的目标系统能满足实际需要,在着手编程之前,首先必须要有一定的时间用来认真考虑以下问题。(1) 需求所要求解决的问题是什么?(2) 为解决该问题,系统应该做些什么?(3) 系统应该怎么去做?软件分析的任务是: 通过计划和需求分析,*终完成系统的逻辑方案。逻辑方案不同于物理方案,前者解决“是什么”的问题,是软件分析的任务; 后者解决“如何做”的问题,是软件设计的任务。系统分析过程如图3.1所示。
图3.1系统分析过程流程图
3.1可行性研究
3.1.1问题的定义问题定义阶段的主要任务是回答“要解决的问题是什么”这一问题。问题定义的内容包括明确问题的背景、开发系统的现状、开发的理由和条件、开发系统的问题要求、总体要求、问题的性质、类型范围、要实现的目标、功能规模、实现目标的方案、开发的条件、环境要求等,然后写出问题定义报告,以供可行性分析阶段使用。1. 调研系统的开发一般都是由用户提出要求开始的。而对于这种开发要求是否具有可行性,以及原有系统是否真是到了必须推倒重来的地步等,都需要在软件开发之前认真考虑。在没有做这些考虑之前提前进入后续任何一项工作都是不明智的。为了使软件开发工作更加有效地展开,有经验的开发者往往将系统调查分为两步,第*步是初步调查,即先投入少量的人力对系统进行大致的了解,然后再看有无开发的可行性; 第二步是详细系统调查,即在软件开发具有可行性并已正式立项后,再投入大量人力展开大规模、全面的系统调查。初步调查的重点如下。(1) 了解用户与现有系统的总的情况,包括现有系统的规模、系统目标、发展历史、组织结构、人员分工、技术条件、技术水平等。(2) 现有系统与外部环境的联系,包括现有系统和外部环境有哪些联系,哪些外部条件制约系统的发展等。(3) 现有系统的现有资源,包括现有系统有哪些资源,系统的状况等。(4) 用户的需求,包括功能需求,性能需求,资源和环境要求,资金和开发进度等。通过调查研究,分析员根据软件工作范围,充分理解用户提出的每项功能与要求。同时从软件系统特征、软件开发的全过程,以及可行性分析报告中给出的资源和时间约束来确定软件开发的总策略。只有用户才知道自己需要什么,但是他们并不知道怎样利用软件来实现自己的需求,用户必须把他们对软件的需求尽量准确、具体地描述出来; 分析员知道怎样用软件实现人们的需求,但是在需求分析开始时他们对用户的需求并不十分清楚,必须通过与用户的沟通获取用户对软件的需求。对库存管理系统进行初步调查时使用的调查表如表3.1和表3.2所示。【案例31】库存管理系统案例31“库存管理系统”的调查表如下。
表3.1计算机调查表
序号品牌型号数量配置内存硬盘显示器软件1联想T6142GB200GB16英寸Windows XP2NECAPC1131GB100GB19英寸Windows 20073苹果iPAD211GB60GB14英寸Mac
表3.2计算机专业人员调查表
设计与开发人员实施与管理人员合计
高级中级初级高级中级初级
软件
硬件
2. 问题定义在问题定义阶段,分析员要深入现场,阅读用户书写的书面报告,听取用户对开发系统的要求,调查开发系统的背景理由。还要与用户负责人反复讨论,以澄清模糊的地方,改正不正确的地方。*后写出双方都满意的问题定义报告,并确定双方是否可进行深入系统可行性研究的意向。系统分析过程的第*步涉及对问题的确认。分析员会见客户,客户可能是外面公司、分析员所在公司的市场部门或另一个技术部门的代表,其意图是了解软件开发的目的,并定义满足这一目的所需的具体目标。问题定义报告的主要内容包括项目名称、背景、项目目标、项目范围、开发条件、环境要求和初步设想等。一旦确定了全部目标,分析员转向可行性评估: 建造系统的技术是否存在?将需要什么特殊的开发和制造资源?对成本和进度有什么限制?通过问题的回答以确定目标系统的可执行性。本书以案例31“库存管理系统”为例介绍和描述问题的定义。案例31“库存管理系统”的问题定义如下。××公司是小型生产企业,随着改革的深入和经济的发展,该公司的生产任务日益繁重,从而对库存管理的要求也更加严格。在传统的手工管理时期,一种物品由进货到发货,要经过若干环节,且由于物品的规格型号繁多,加之业务人员素质较低等因素,造成物品供应效率低下,严重影响了企业的正常生产。同时,由于库房与管理部门之间的信息交流困难,造成库存严重积压,极大地影响了企业的资金周转速度,另外也使得物资管理、数据汇总成为一大难题。当今企业的竞争压力越来越大,企业要想生存,就必须在各个方面加强管理,并要求企业有更高的信息化集成,能够对企业的整体资源进行集成管理。现代企业都意识到,企业的竞争是综合实力的竞争,要求企业有更强的资金实力,更快的市场响应速度。这就要求企业各部门之间统一计划,协调生产步骤,汇总信息,调配集团内部资源,实现既要独立,又要统一的资源共享管理。随着信息技术的发展,该厂为了提高库存周转率,加快资金周转速度,决定开发“库存管理系统”。如下所示是库存管理系统的问题定义报告。
(1) 项目: 库存管理系统。(2) 背景: 由于人工系统业务流程复杂、业务人员素质低,造成工作效率低下; 信息交流不畅,造成库存严重积压,极大地影响了企业的资金周转速度; 物资管理、数据汇总困难。(3) 项目目标: 建立一个高效、准确,操作方便,具有查询、更新及统计功能的信息系统,以满足管理人员进行综合的、模糊的查询及更新要求,从而更加方便地管理库存物品。(4) 项目范围: 硬件利用现有设备,软件开发费用2万元。(5) 开发条件。系统结构: B/S结构。服务器端技术: ASP.NET。开发语言: C#。数据库技术: SQL Server 2000。(6) 环境要求。服务器端: Windows 2003 IIS 5.1 Visual Studio 2003 SQL Server 2000。客户端: IE 6.0。网络: 服务器和客户端应有网络连通,配置TCP/IP。(7) 初步设想: 增加库存查询、库存提示、库存统计等功能。(8) 可行性研究: 建议进行一周,费用1000元。
3.1.2可行性分析的内容可行性分析又称作可行性研究。可行性分析的任务是以*小的代价、在尽可能短的时间内确定问题是否能够解决,也就是判断原定的目标和规模是否现实。如果在定义阶段较早地识别出一个错误构思的系统,那么,可以避免时间和财物的无谓损失。一般地,在软件项目策划阶段进行的可行性研究应包括经济可行性、技术可行性、法律可行性、方案的选择、可行性分析报告5个方面的内容,如下所示。
1. 项目背景
1.1问题描述1.2实现环境1.3限制条件2. 管理概要和建议2.1重要的研究结果2.
— 没有更多了 —
以下为对购买帮助不大的评价