软件工程:实践者的研究方法(原书第8版·本科教学版) 9787111555018

配送至
$ $ USD 美元

作者简介

Roger S. Pressman软件过程改善和软件工程技术方面的国际知名人士,目前还担任R. S. Pressman and Associates 公司总裁。30多年来,他作为软件工程师、管理人员、教授、作者及咨询顾问始终工作在软件工程领域。Pressman博士著有6部著作,并撰写了很多技术文章,是多种行业期刊的固定撰稿人,曾任多个行业杂志的编委,多年来一直担任 《IEEE Software》杂志的Manager专栏的编辑。Pressman博士是知名的演讲者,曾在许多行业会议上演讲,他还是美国计算机协会 (ACM)、美国电气与电子工程师协会(IEEE)等组织的成员。

目录

目录
Software Engineering: A Practitioner’s Approach, Eighth Edition, Chinese Abridgement
出版者的话
改编者序
译者序
前言
第1章 软件的本质1
1.1 软件的本质3
1.1.1 定义软件3
1.1.2 软件应用领域4
1.1.3 遗留软件5
1.2 软件的变更本质6
1.2.1 WebApp6
1.2.2 移动App7
1.2.3 云计算7
1.2.4 产品线软件8
习题与思考题8
扩展阅读与信息资源8
第2章 软件工程10
2.1 定义软件工程学科11
2.2 软件过程11
2.2.1 过程框架12
2.2.2 普适性活动12
2.2.3 过程的适应性调整13
2.3 软件工程实践13
2.3.1 实践的精髓14
2.3.2 通用原则14
2.4 软件开发神话16
2.5 这一切是如何开始的18
习题与思考题19
扩展阅读与信息资源19
第一部分 软件过程
第3章 软件过程结构22
3.1 通用过程模型23
3.2 定义框架活动24
3.3 明确任务集24
3.4 过程模式25
习题与思考题27
扩展阅读与信息资源27
第4章 过程模型29
4.1 惯用过程模型30
4.1.1 瀑布模型30
4.1.2 增量过程模型32
4.1.3 演化过程模型32
4.1.4 并发模型36
4.1.5 演化过程的最终评述37
4.2 专用过程模型38
4.2.1 基于构件的开发38
4.2.2 形式化方法模型39
4.2.3 面向方面的软件开发39
4.3 统一过程40
4.3.1 统一过程的简史41
4.3.2 统一过程的阶段41
4.4 产品和过程42
习题与思考题43
扩展阅读与信息资源43
第5章 敏捷开发45
5.1 什么是敏捷46
5.2 敏捷及变更成本47
5.3 什么是敏捷过程47
5.3.1 敏捷原则48
5.3.2 敏捷开发战略49
5.4 极限编程49
5.4.1 极限编程过程49
5.4.2 工业极限编程51
5.5 其他敏捷过程模型53
5.5.1 Scrum53
5.5.2 动态系统开发方法54
5.5.3 敏捷建模55
5.5.4 敏捷统一过程56
5.6 敏捷过程工具集57
习题与思考题58
扩展阅读与信息资源58
第6章 软件工程的人员方面60
6.1 软件工程师的特质60
6.2 软件工程心理学61
6.3 软件团队62
6.4 团队结构63
6.5 敏捷团队64
6.5.1 通用敏捷团队64
6.5.2 XP团队65
6.6 社交媒体的影响66
6.7 软件工程中云的应用67
6.8 协作工具67
6.9 全球化团队68
习题与思考题69
扩展阅读与信息资源69
第二部分 建模
第7章 理解需求72
7.1 需求工程73
7.2 建立根基78
7.2.1 确认利益相关者78
7.2.2 识别多重观点78
7.2.3 协同合作79
7.2.4 首次提问79
7.3 获取需求80
7.3.1 协作收集需求80
7.3.2 质量功能部署82
7.3.3 使用场景83
7.3.4 获取工作产品84
7.3.5 敏捷需求获取84
7.3.6 面向服务的方法84
7.4 开发用例85
7.5 构建分析模型88
7.5.1 分析模型的元素89
7.5.2 分析模式91
7.5.3 敏捷需求工程91
7.5.4 自适应系统的需求91
7.6 避免常见错误92
习题与思考题92
扩展阅读与信息资源93
第8章 需求建模:基于场景的方法95
8.1 需求分析96
8.1.1 总体目标和原理96
8.1.2 分析的经验原则97
8.1.3 域分析97
8.1.4 需求建模的方法99
8.2 基于场景建模100
8.2.1 创建初始用例100
8.2.2 细化初始用例102
8.2.3 编写正式用例103
8.3 补充用例的UML模型105
8.3.1 开发活动图105
8.3.2 泳道图106
习题与思考题107
扩展阅读与信息资源107
第9章 需求建模:基于类的方法108
9.1 识别分析类108
9.2 描述属性111
9.3 定义操作111
9.4 类–职责–协作者建模113
9.5 关联和依赖118
9.6 分析包118
习题与思考题119
扩展阅读与信息资源119
第10章 需求建模:行为和模式121
10.1 生成行为模型121
10.2 识别用例事件122
10.3 状态表达122
10.4 需求建模的模式125
10.4.1 发现分析模式125
10.4.2 需求模式举例:执行器–传感器126
习题与思考题129
扩展阅读与信息资源129
第11章 设计概念131
11.1 软件工程中的设计132
11.2 设计过程134
11.2.1 软件质量指导原则和属性134
11.2.2 软件设计的演化136
11.3 设计概念137
11.3.1 抽象137
11.3.2 体系结构137
11.3.3 模式138
11.3.4 关注点分离138
11.3.5 模块化138
11.3.6 信息隐蔽139
11.3.7 功能独立139
11.3.8 求精140
11.3.9 方面140
11.3.10 重构141
11.3.11 面向对象的设计概念141
11.3.12 设计类142

序言

改编者序Software Engineering: A Practitioner’s Approach, Eighth Edition, Chinese AbridgementPressman博士的《软件工程:实践者的研究方法》(第8版)加入了Maxim博士的工作,一如既往是软件工程领域的经典教材。
此次本科教学版的推出,主要是为了与第7版本科教学版保持一致,使内容更符合普通高校本科生的课程大纲,适合本科学生在一学期内掌握软件工程最核心的基础内容,也帮助更多学生更好地接受英文原版教材。
与原版相比,第8版本科教学版的改动内容如下。
我们注意到新版增加了移动App和安全工程这两块非常重要的内容。然而,考虑到课时限制,我们只保留了安全工程部分,将移动App的内容留给研究生课程。与第7版的改动宗旨相似,我们主要关注公共框架中的基本概念,而将WebApp、移动App、度量及其他高级课题内容留给研究生阶段的课程。
本科教学版不包含但适合研究生阶段学习的章节有:完整版第16章(基于模式的设计),第17章(WebApp设计),第18章(移动App设计),第20章(评审技术),第25章(测试WebApp),第26章(测试移动App),第28章(形式化建模与验证),第36章(维护与再工程),以及关于高级课题的第五部分。完整版第30章(产品度量)也是比较高级的课题,但概要介绍框架性概念的30.1节可保留,此节被移到第21章(软件质量保证)最后,变为21.10节。
此外,为了与第7版本科教学版保持一致,下列章节中还做了少量裁减:
1. 所有与WebApp和移动App相关的章节都被删除,具体包括:11.5节、14.5节、15.5节、22.5~22.6节、29.4节、32.2.6节、34.5.4 节。
2. 第3、4章:裁减3.5节和4.4~4.5节属于研究生课程中的高级内容。
3. 第7章:该章只是引言,其核心内容将在后面的章节中逐一展开介绍。为减少学生必须阅读的篇幅,该章被整体删除。
4. 第8章:裁减8.2.5~8.2.6节、8.6~8.8节属于研究生课程中的高级内容。
5. 第23章:裁减23.4.4节、23.6.1节、23.6.4节、23.8~23.10节属于研究生课程中的高级内容。
6. 对于本科课程而言,了解关于度量和估算的基本概念就足够了,因此32.4~32.6节以及33.9~33.10节也作为高级内容被裁减。
经过压缩,英文完整版900余页的篇幅被大幅压缩到中文版页左右。由于我们只是就知识点做了裁减,对于保留部分并未删减原作的语言和案例,所以不会对写作风格造成明显的破坏。鉴于改编者的经验和学识有限,对于裁减内容的定夺或存在欠妥之处,欢迎广大读者批评指正。
陈越2016年11月译者序Software Engineering: A Practitioner’s Approach, Eighth Edition, Chinese Abridgement本书是国际知名软件工程专家罗杰 S. 普莱斯曼(Roger S. Pressman)的最新著作。自35年前第1版问世以来,这本书在软件工程界产生了巨大而深远的影响。其权威性是无可置疑的,在培养软件工程专业人才方面所起的作用也是显而易见的。在这一版中,新加入的布鲁斯(Bruce)作为第二作者参与了本书的编写工作。
我自20世纪80年代中期开始从事高校软件工程方面的教学与科研工作,多年来,这本书的各个版本一直是我的重要参考书,它给了我许多启发和帮助,我也曾多次向许多业界好友和学生推荐此书。
如今基于计算机的系统已经广泛而深入地渗透到经济、国防和人们日常生活的各个领域,特别是在互联网的推动下,不仅许多行业得以改进和更新,而且产生了一批新的行业,展现了全新的业态。我们必须意识到,在计算机不断向社会的深度和广度层面发展的过程中,软件始终处在系统的核心地位,起着中枢和灵魂的作用,而且这种作用正日益突出。因此,如何为现代化系统配备合格和优良的软件也就更加受到人们的广泛关注。
本书系统地论证了软件工程领域的基本知识和最新研究成果,包括新的概念、原则、技术、方法和工具。同时书中还为读者提供了进一步学习和研究的线索,包括许多可供利用的网上资料和信息。与第7版相比,本版继承了一些优点,同时也做了一些改动、扩充和更新。
本书特点1. 全书内容分为四个部分,共26章,还包括两个附录。四个部分的内容分别为软件过程、建模、质量管理和管理软件项目。
2. 本书继承了前一版的特色,突出了软件质量管理的内容,同时也加强了软件过程部分。此外,增加的内容还包括:软件工程工作对人员的要求;近年来软件产业发展中出现的新课题——软件系统安全性和移动App。
3. 仍然在各章的开头给出“要点浏览”(包括概念、人员、重要性、步骤、工作产品和质量保证措施)以及“关键概念”(全章内容的关键词)。
4. 仍然在各章的末尾给出“习题与思考题”以及“扩展阅读与信息资源”,这些都非常适合有兴趣、有需要的读者沿着所提供的线索开展进一步的学习和研究。
5. 仍然保留了本书历次版本在各章中为读者提供的多种形式的辅助阅读信息,可以说这是本书的一个突出特点。这些信息从形式上分为两类:一类是采用通栏形式的说明框,包括要点浏览、信息栏、软件工具和SafeHome对话框等;另一类是居于页面右侧的说明框,包括关键概念、引述
ISBN9787111555018
出版社机械工业出版社
作者罗杰 S. 普莱斯曼
尺寸16