您好,欢迎来到聚文网。 登录 免费注册
软件工程

软件工程

软件工程领域经典著作的*新升级,本科教学版更适合教学与自学
  • 装帧: 平装
  • 出版社: 机械工业出版社
  • 作者: (美)罗杰 S.普莱斯曼(Roger S.Pressman),(美)布鲁斯 R.马克西姆(Bruce R.Maxim) 著;郑人杰 等 译
  • 出版日期: 2017-01-01
  • 商品条码: 9787111555018
  • 版次: 1
  • 开本: 16开
  • 页数: 394
  • 出版年份: 2017
定价:¥59 销售价:登录后查看价格  ¥{{selectedSku?.salePrice}} 
库存: {{selectedSku?.stock}} 库存充足
{{item.title}}:
{{its.name}}
精选
内容简介
本书自靠前版出版至今,30多年来在软件工程界产生了巨大而深远的影响。第8版继承了之前版本的风格与优势,系统地讲解软件过程、建模、质量管理、项目管理等基础知识,涵盖相关概念、原则、方法和工具,并且提供丰富的辅助阅读资源和网络资源,指导有兴趣的读者进行更深入的学习和研究。本书是面向本科生的版本,保留了完整版中的基础内容,压缩或删除了一些不错内容,更加适合作为高等院校计算机、软件工程及相关专业的软件工程课程教材。
作者简介
Roger S.Pressman软件过程改善和软件工程技术方面的靠前知名人士,目前还担任R.S.Pressman and Associates 公司总裁。30多年来,他作为软件工程师、管理人员、教授、作者及咨询顾问始终工作在软件工程领域。Pressman博士著有6部著作,并撰写了很多技术文章,是多种行业期刊的固定撰稿人,曾任多个行业杂志的编委,多年来一直担任《IEEE Software》杂志的Manager专栏的编辑。Pressman博士是知名的演讲者,曾在许多行业会议上演讲,他还是美国计算机协会 (ACM)、美国电气与电子工程师协会(IEEE)等组织的成员。
目录
出版者的话
改编者序
译者序
前言
第1章软件的本质1
1.1软件的本质3
1.1.1定义软件3
1.1.2软件应用领域4
1.1.3遗留软件5
1.2软件的变更本质6
1.2.1WebApp6
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.1Scrum53
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.2XP团队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 Abridgement如果有这样一款计算机软件,它能满足用户的需求,能在相当长的时间内无故障地运行,修改起来轻松便捷,使用起来更是得心应手,那么,这款软件必定是成功的,它切实改善了我们的生活。但是,如果有这样一款软件,它令用户失望,错误频出,修改起来困难重重,使用起来更是举步维艰,那么,这必定是一款失败的软件,它使我们的生活一团糟。谁都希望开发出优秀的软件,为我们的生活带来便利,而不是把自己陷入失败的深渊。要想使软件获得成功,在设计和构建软件时就需要有规范,需要采用工程化的方法。
    自本书第1版问世以来的近35年中,软件工程已经从少数倡导者提出的一些朦胧概念发展成为一门正规的工程学科,已被公认为是一个值得深入研究、认真学习和热烈讨论的课题。在整个行业中,软件工程师已经代替程序员成为人们优先选择的工作岗位,软件过程模型、软件工程方法和软件工具都已在全行业的所有环节成功采用。
    尽管管理人员和一线专业人员都承认需要有更为规范的软件方法,但他们却始终在争论应该采用什么样的规范。有许多个人和公司至今仍在杂乱无章地开发着自己的软件,甚至即使他们正在开发的系统要服务于当今最为先进的技术,状况也仍是如此。许多专业人员和学生并不了解现代方法,这导致他们所开发的软件质量很差,因而造成了严重的后果。此外,有关软件工程方法真实本质的争论一直持续进行着。软件工程的地位问题已成为一门对比研究课题。人们对软件工程的态度已经有所改善,研究工作已取得了进展,不过要成为一门完全成熟的学科,我们还有大量的工作要做。
    我们希望本书能够成为引导读者进入正在走向成熟的软件工程学科的入门读物,和以前的7个版本一样,第8版对学生和专业人员同样具有很强的吸引力。它既是软件专业人员的工作指南,也是高年级本科生和一年级研究生的综合性参考书。
    第8版中包含了许多新的内容,它绝不只是前一版的简单更新。这一版不仅对内容做了适当的修改,而且调整了全书的结构,以改进教学顺序;同时更加强调一些新的和重要的软件工程过程和软件工程实践知识。此外,本书进一步加强了“支持系统”,为学生、教师和专业人员提供了更为丰富的知识资源。读者可访问专门为本书建立的网站(www.mhhe.com/pressman)查阅这些信息。
    篇章结构本书共26章,分为四个部分。这种划分有利于那些无法在一个学期内讲完全书内容的教师灵活安排教学。
    第一部分“软件过程”给出了有关软件过程的各种不同观点,讨论了所有重要的过程模型,还涉及惯用过程和敏捷过程在指导思想上的分歧。第二部分“建模”给出了分析方法和设计方法,重点讲解面向对象方法和UML建模。第三部分“质量管理”介绍了有关质量管理的概念、规程和方法,使得软件团队能够很好地评估软件质量,实施软件质量保证规程,并正确地运用有效的测试策略和战术。第四部分“管理软件项目”介绍了与计划、管理和控制软件开发项目的人员有关的问题。
    第8版沿用了前面几个版本的做法,在各章中都提供了大量的辅助阅读信息,包括一个虚拟软件团队在工作中遇到困难时展开的对话,还包括对各章相关知识给出的补充方法和工具。
    致谢我们要特别感谢渥太华大学的Tim Lethbridge,他帮助我们开发了UML和OCL的案例,以及配合本书内容的其他案例研究。Colby学院的Dale Skrien开发了附录1的UML教辅资源。他们的帮助和意见都是十分宝贵的。此外也感谢高级软件工程师Austin Krauss,他提供了关于视频游戏产业软件开发的宝贵意见。同时,要对为第8版评审做出贡献的几位教授表示感谢,他们是佛罗里达大学的Manuel E. Bermudez、堪萨斯州立大学的Scott DeLoach、密歇根州立大学的Alex Liu和犹他州立大学的Dean Mathias。正是他们的详尽而真诚的评审意见帮助了我们,使得本书更加完善。
    特别感谢十分高兴有机会与罗杰合作,参与本书第8版的撰写工作。在此期间我的儿子Benjamin推出了他的第一款移动App,我的女儿Katherine开始了她的室内设计生涯。我十分高兴地看到他们已经长大成人。同时非常感谢妻子Norma,她热情地支持我,使我能够将所有空闲时间都投入本书的写作。
    布鲁斯R. 马克西姆(Bruce R. Maxim)随着本书各版本的不断推出,我的两个儿子Mathew和Michael也逐渐从小男孩成长为男子汉。他们在生活中的成熟、品格和成功鼓舞着我,没有什么比这更让我自豪了。他们现在也已经有了自己的孩子——Maya和 Lily,这两个女孩已经是移动计算时代新智能设备方面的奇才。最后要感谢妻子Barbara,她宽容我花费如此多的时间在办公室工作,并且还鼓励我继续写作本书的下一个版本。
    罗杰 S.普莱斯曼(Roger S. Pressman)

蜀ICP备2024047804号

Copyright 版权所有 © jvwen.com 聚文网