新書推薦:
《
甲骨文丛书·消逝的光明:欧洲国际史,1919—1933年(套装全2册)
》
售價:NT$
1265.0
《
剑桥日本戏剧史(剑桥世界戏剧史译丛)
》
售價:NT$
918.0
《
中国高等艺术院校精品教材大系:材料的时尚表达??服装创意设计
》
售價:NT$
347.0
《
美丽与哀愁:第一次世界大战个人史
》
售價:NT$
653.0
《
国家豁免法的域外借鉴与实践建议
》
售價:NT$
857.0
《
大单元教学设计20讲
》
售價:NT$
347.0
《
儿童自我关怀练习册:做自己最好的朋友
》
售價:NT$
316.0
《
高敏感女性的力量(意大利心理学家FSP博士重磅力作。高敏感是优势,更是力量)
》
售價:NT$
286.0
|
編輯推薦: |
内容先进,案例丰富。吸收了国内外大量的新知识、新技术、新方法和国际通用准则。注重实践性,提供了丰富的开发案例,能对实践环节提供有效的支撑。
结构新颖,注重实用。在内容安排上打破常规,以实践过程的时间轴为核心,有助于理论知识与实际应用的有机结合。
职业引导,助力发展。基于软件行业背景,为大学生就业和职业角色的转变提供帮助,引导学生实现个人能力、团队协作、职业道德等方面的培养。
|
內容簡介: |
本书简明扼要地介绍软件工程的基本原理和技术,旨在帮助读者了解软件工程的主要框架知识,并掌握基本的软件开发方法。本书以软件开发过程为时间轴,以结构化方法和面向对象方法为重点,结合丰富的案例详细阐述需求分析、系统设计、实现和测试的方法,以及软件的维护。本书不仅着重于软件工程基本知识和理论的掌握,同时也强调软件工程实践能力的培养和提高。内容覆盖软件资格考试所需的基本软件工程理论知识,也为指导实践提供了较为完整的案例和文档规范,具有较强的实用性。 本书适合作为高等院校计算机与信息类相关专业的教材,也可以作为研究生及软件工程实践者的参考资料。
|
目錄:
|
第1章软件工程概述1
1.1软件1
1.1.1软件的概念和特点1
1.1.2软件的分类2
1.1.3软件的发展历程3
1.2软件危机5
1.2.1软件危机及其表现5
1.2.2软件危机的启示6
1.3软件工程7
1.3.1软件工程的概念7
1.3.2软件工程的要素7
1.3.3软件工程的基本原则8
1.3.4软件工程知识体系9
1.4软件生命周期11
1.4.1软件生命周期的概念11
1.4.2软件生命周期的阶段划分11
1.5软件开发过程13
1.5.1软件过程13
1.5.2软件过程模型13
1.5.3软件开发方法21
1.5.4软件过程模型的选定23
1.6软件工程的相关规范24
1.6.1软件工程的标准化24
1.6.2软件工程文档编制26
1.7练习题28第2章软件项目管理30
2.1工作量估算30
2.1.1估算软件规模31
2.1.2专家判断33
2.1.3算法方法34
2.1.4机器学习方法36
2.2进度计划37
2.2.1基本原则37
2.2.2Gantt图38
2.2.3PERT图38
2.3项目人员40
2.3.1人员角色和特性40
2.3.2工作风格41
2.3.3项目组织42
2.4风险管理44
2.4.1风险评价44
2.4.2风险控制45
2.5质量保证46
2.5.1软件质量及特征46
2.5.2软件质量保证措施47
2.6配置管理48
2.6.1软件配置要素48
2.6.2配置管理过程49
2.7练习题50第3章可行性与计划研究52
3.1可行性研究52
3.1.1可行性研究的目的52
3.1.2可行性研究的内容53
3.1.3可行性研究的步骤56
3.1.4软件项目的立项57
3.2软件开发计划58
3.2.1软件开发计划的内容58
3.2.2软件开发计划文档59
3.3练习题60第4章结构化分析61
4.1需求分析概述61
4.1.1需求的概念61
4.1.2需求分析的重要性61
4.1.3需求分析的过程62
4.2结构化分析建模67
4.2.1结构化分析模型67
4.2.2数据建模68
4.2.3功能建模70
4.2.4行为建模74
4.2.5数据字典76
4.3汽车租赁系统结构化分析77
4.3.1系统需求描述77
4.3.2建立数据模型78
4.3.3建立功能模型79
4.3.4建立行为模型82
4.3.5系统数据字典82
4.4练习题83第5章面向对象分析85
5.1面向对象方法学概述85
5.1.1面向对象的概念85
5.1.2面向对象方法的要点87
5.1.3面向对象方法学的优点87
5.1.4面向对象开发方法88
5.2统一建模语言UML89
5.2.1UML简介89
5.2.2UML的概念模型90
5.2.3UML的应用范围94
5.2.4UML建模工具95
5.2.5使用UML的准则96
5.3面向对象分析建模96
5.3.1面向对象分析方法96
5.3.2功能模型98
5.3.3对象模型105
5.3.4动态模型112
5.4校园招聘系统面向对象分析119
5.4.1需求描述119
5.4.2用例分析121
5.4.3识别分析类124
5.4.4分析交互126
5.4.5统一分析类128
5.5练习题128第6章软件体系结构131
6.1软件体系结构概述131
6.1.1软件体系结构的组成131
6.1.2软件体系结构建模132
6.1.3软件体系结构的作用133
6.2软件体系结构风格134
6.2.1管道和过滤器134
6.2.2客户服务器135
6.2.3对等网络136
6.2.4发布订阅136
6.2.5信息库137
6.2.6分层138
6.2.7组合风格138
6.3质量属性和策略139
6.3.1可修改性140
6.3.2性能140
6.3.3安全性141
6.3.4可靠性142
6.3.5健壮性143
6.3.6易使用性143
6.3.7商业目标144
6.4体系结构框架144
6.4.1MVC框架144
6.4.2MVP框架145
6.4.3J2EE框架146
6.4.4PCMEF框架147
6.4.5PCBMER框架147
6.5练习题148第7章结构化设计150
7.1软件设计概述150
7.1.1软件设计的目标150
7.1.2结构化设计的任务150
7.2软件设计的原则151
7.2.1模块化151
7.2.2接口156
7.2.3信息隐藏156
7.2.4抽象和逐步求精157
7.2.5通用性158
7.2.6结构化设计启发式规则158
7.3体系结构设计161
7.3.1描述软件结构的工具161
7.3.2面向数据流的设计方法163
7.3.3设计优化170
7.4接口设计171
7.4.1接口设计概述171
7.4.2人机界面接口172
7.5数据设计174
7.5.1数据库设计步骤174
7.5.2逻辑结构设计174
7.5.3物理结构设计175
7.6过程设计176
7.6.1程序流程图176
7.6.2盒图177
7.6.3PAD图178
7.6.4判定表179
7.6.5判定树180
7.6.6过程设计语言180
7.7软件设计文档181
7.7.1设计文档的内容181
7.7.2设计文档的评审181
7.8汽车租赁系统结构化设计182
7.8.1设计系统体系结构182
7.8.2设计数据库183
7.9练习题185第8章面向对象设计187
8.1面向对象设计概述187
8.1.1面向对象设计的基本原则187
8.1.2更复杂的面向对象设计原则189
8.1.3面向对象设计的启发规则192
8.1.4面向对象设计的基本任务193
8.1.5面向对象的设计模式194
8.2系统设计201
8.2.1系统分解201
8.2.2问题域部分的设计202
8.2.3人机交互部分的设计205
8.2.4任务管理部分的设计207
8.2.5数据管理部分的设计209
8.3对象设计212
8.3.1设计类212
8.3.2创建设计类213
8.3.3设计类间的关系215
8.4校园招聘服务系统面向对象设计219
8.4.1架构设计219
8.4.2用例设计219
8.4.3类设计221
8.4.4数据库设计223
8.5练习题225第9章软件实现227
9.1编程语言227
9.1.1编程语言的发展227
9.1.2编程语言的选择228
9.2编程的指导原则229
9.2.1控制结构229
9.2.2算法效率229
9.2.3数据结构230
9.2.4通用性指导原则230
9.3程序文档232
9.3.1内部文档232
9.3.2外部文档235
9.4编程过程236
9.4.1编程方法236
9.4.2编程风格237
9.5练习题239第10章软件测试241
10.1软件测试概述241
10.1.1软件测试的目标241
10.1.2软件测试的准则242
10.1.3软件测试的步骤242
10.2白盒测试技术243
10.2.1逻辑覆盖法243
10.2.2基本路径法246
10.2.3循环测试249
10.3黑盒测试技术250
10.3.1等价类划分法250
10.3.2边界值分析法253
10.3.3错误推测法253
10.3.4因果图法254
10.4软件测试过程257
10.4.1单元测试257
10.4.2集成测试259
10.4.3系统测试263
10.4.4测试文档269
10.5面向对象测试269
10.5.1面向对象测试和传统测试的区别269
10.5.2面向对象测试过程270
10.6自动化测试工具271
10.6.1代码分析工具271
10.6.2测试执行工具273
10.6.3测试用例生成器273
10.7调试274
10.7.1调试过程274
10.7.2调试途径274
10.8练习题275第11章软件维护277
11.1软件维护概述277
11.1.1软件维护的定义277
11.1.2软件维护的实施278
11.2软件的可维护性280
11.2.1可维护性的度量280
11.2.2软件维护的副作用282
11.3自动化维护工具283
11.4软件再生284
11.4.1重组285
11.4.2文档重构285
11.4.3逆向工程286
11.4.4再工程286
11.4.5软件再生的前景287
11.5练习题287第12章从大学生到软件工程师289
12.1个人发展289
12.1.1软件工程师的任务289
12.1.2软件工程师的成长290
12.1.3软件工程师的思维误区291
12.1.4软件工程师的职业发展292
12.2团队合作293
12.2.1结对编程293
12.2.2如何影响他人294
12.2.3如何给予反馈294
12.3软件工程师伦理守则295
12.3.1PEO伦理守则295
12.3.2ACM/IEEE软件工程伦理守则和职业实践296附录A计算机软件文档编制规范301
A.1可行性分析(研究)报告(FAR)301
A.2软件开发计划(SDP)302
A.3软件需求规格说明(SRS)304
A.4软件(结构)设计说明(SDD)307
A.5软件测试计划(STP)308
A.6软件测试说明(STD)309
A.7软件测试报告(STR)309附录B部分练习题答案311参考文献313
|
內容試閱:
|
软件是新一代信息技术的灵魂,是数字经济发展的基础,是制造强国、网络强国、数字中国建设的关键支撑。习近平总书记强调,要全面推进产业化、规模化应用,重点突破关键软件,推动软件产业做大做强,提升关键软件技术创新和供给能力。党的十八大以来,我国软件和信息技术服务业产业规模迅速扩大,企业实力不断提升,创新能力大幅增强,涌现出一批竞争力强的创新性产品和服务,行业应用持续深入,质量效益全面跃升,在由大变强的道路上迈出了坚实步伐。在国家高度重视和大力扶持下,我国软件和信息技术服务业规模迅速扩大,技术水平显著提升,已发展成为战略性新兴产业的重要组成部分。“十四五”规划提出,要培育壮大新兴数字产业,提升关键软件等产业水平。这为未来五年我国软件产业发展指明了方向和路径,同时也对软件研发、管理和维护相关专业人才提出了更加迫切的需求。
软件工程是一门指导计算机软件开发、维护和管理的新兴学科,主要利用工程化的概念、原理、技术和方法,在计划、开发、运行、维护与管理软件过程中,将科学的管理和先进的技术方法紧密结合,从而以经济的手段获得满足用户需求的高质量软件并能有效地维护。软件工程课程是高等学校计算机及信息类相关专业的一门专业主干课程。软件工程知识涵盖软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程工具和方法、软件质量等方面。同时,软件工程也是与计算机科学、工程科学、管理科学、数学等学科交叉的多学科领域。
编者在高等院校长期从事软件工程相关课程和实践环节的教学和指导,与企业展开过长期稳定的合作,主持和参与多项校企合作协同育人项目,积累了丰富的软件工程实践经验。针对高校计算机及相关专业应用型人才培养的需要,编者特梳理了上述案例与经验编写了本书。
本书从实用的角度,吸取了国内外软件工程的工程理论和实用技术、方法,提供了丰富的案例。全书共12章,内容为软件工程概述、软件项目管理、可行性与计划研究、结构化分析、面向对象分析、软件体系结构、结构化设计、面向对象设计、软件实现、软件测试、软件维护、从大学生到软件工程师等。书中针对结构化和面向对象两种方法学的分析、设计环节提供了在校学生相对熟悉的典型案例,可帮助学生在掌握理论、技术和方法的同时,将其转化为实践分析和设计能力。除第12章外,每章均附有适当的习题,以复习巩固所学知识。本书的主要特点如下。
(1) 内容先进,案例丰富。吸收了软件工程领域大量的新知识、新技术、新方法和国际通用准则。注重实践性,提供了丰富的开发案例,能对实践环节提供有效的支撑。
(2) 结构新颖,注重实用。在内容安排上打破常规,以实践过程的时间轴为主线,有助于理论知识与实际应用的有机结合。
(3) 职业引导,助力发展。基于软件行业背景,为大学生就业和职业角色的转变提供帮助,引导学生实现个人能力、团队协作、职业道德等方面的培养。
(4) 资源配套,便于教学。为了方便理论和实践的教学,书后附有部分习题答案以及各阶段文档的编写规范。
本书由祁燕任主编,杨大为、刘丽萍、李芳、崔宁海任副主编。其中祁燕统筹编写大纲、设计项目案例及插图等,祁燕、李芳、崔宁海编写第4~8章,杨大为、刘丽萍编写第1~3章、第9~12章以及附录部分。
感谢合作企业的郭燕等提供企业文档规范。同时,感谢对本书编写给予大力支持与帮助的各位技术专家、教师以及合作企业单位。因无法对编写过程中参阅的大量重要文献资料进行完全准确的注明,在此特向所有文献的作者深表歉意及谢意!
因作者水平有限,书中难免存在不妥之处,敬请读者谅解,并欢迎提出宝贵意见和建议。
祁燕2023年8月
|
|