书籍作者:龚家瑜 | ISBN:9787547857182 |
书籍语言:简体中文 | 连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 | 下载次数:6247 |
创建日期:2023-04-27 | 发布日期:2023-04-27 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
软件质量始终是软件领域的热门话题。当下新一代信息技术层出不穷,软件的复杂性也变得越来越高,对于软件质量的测量和评价也变得越来越困难。本书围绕着软件工程领域的标准展开,以软件质量、软件测试、软件质量评价、软件质量保证等标准应用为主导,逐一对软件质量、软件测试、质量保证、软件规模度量、软件复杂性度量相关的技术要点展开讲解。
蔡立志,上海计算机软件技术开发中心副主任,博士、研究员,上海市青联委员(信息产业界别),上海市软件行业标兵,上海市政府采购专家,上海市科学技术委员会、上海市经济和信息化委员会专家库专家,上海市技术带头人,上海软件质量管理和过程改进委员会副主任,CCF软件工程专业委员会委员,上海计算机学会软件工程专业委员会副主任,ISO/IEC JTC1/WG6工作组专家。
龚家瑜,上海计算机软件技术开发中心软件评测方向技术负责人,博士、高级工程师,ISO/IEC JTC1/SC7 WG42中国专家,全国信息技术标准化技术委员会软件与系统工程分技术委员会委员,主持国家自然科学基金青年基金项目、上海市青年英才扬帆计划,作为主要起草人参与编制了软件质量、软件测试相关的国家标准、行业标准10余项。
赵毅,工程师,参与编制20余项国家、行业和团体标准,作为第一起草人编制GB/T 38634.2《系统与软件工程 软件测试 第2部分:测试过程》、SJ 30011《JG软件测试验证 测试过程和管理》,2017年获得上海市标准化优秀学术成果奖三等奖。
沈颖,上海计算机软件技术开发中心软件工程研究所所长,高级工程师,上海市计算机学会软件工程专业委员会秘书长,CNAS、CMA评审员,软件工程造价评估评审专家,参与编制了软件测试、软件工程造价评估、软件能力成熟度评估等10余项国家标准、团体标准。
胡芸,上海计算机软件技术开发中心软件工程研究所副所长,高级工程师,ISO/IEC SC7 WG6和WG26双工作组认证专家,上海市服务标准化技术委员会委员,完成编制70余项国际、国家、行业、JG、团体标准,ISO/IEC 25020—2019项目负责人,2014年获得上海市科技进步奖三等奖,拥有专利10项。
软件的质量在当今“互联网+”时代的地位越来越突出,软件形态已不仅仅局限于一台计算机设备上所运行的程序,而是存在于无处不在的终端设备中。本书紧扣Z新的软件质量和软件测试标准,凝结了软件质量标准化的Z新研究成果,提供了多个实践案例,覆盖面广、内容系统全面,是希望学习软件质量、软件测试等标准化知识的研究人员、开发人员和测试人员的不二之选。
近年来,随着人工智能、大数据、云计算、移动互联网、物联网、工业互联网及区块链等新一代信息技术构建的智能化应用和产品的爆发式增长,软件形态已经不仅仅局限于一台计算机设备上所运行的程序,而是存在于无处不在的终端设备中。一个摄像头、一台冰箱甚至一辆车都可以是软件运行的载体。新技术的发展和产业规模的扩大势必会引入新的风险因素,软件的质量问题在新一代信息技术构建的信息系统中越来越突出,对软件的质量模型、质量测量和测试方法提出了更高的挑战。
自从我国第一个软件质量国家标准GB/T 16260—1996颁布实施开始,上海计算机软件技术开发中心就一直致力于软件质量标准化工作。本书中所涉及的大部分软件质量与软件测试相关标准,上海计算机软件技术开发中心均参与了编制,主要牵头编制的标准包括: GB/T 25000.10—2016、GB/T 25000.51—2016、GB/T 25000.23—2019、GB/T 38634—2020(4部分)等。这些标准在本书中均做了详细的解读和使用指导。
本书具有如下特点:
紧扣标准——本书紧扣最新的软件质量和软件测试标准,凝结了软件质量标准化的最新研究成果;以国家标准GB/T 25000、GB/T 38634系列为基础,详细解读了标准中的各项要求,为软件质量标准化提供了实践的指导。
覆盖面广——本书覆盖面广、内容系统全面,以软件质量的视角展开讲解,涵盖了软件质量、软件测试、软件质量保证、软件规模度量、软件复杂性度量等主题,并针对标准的技术点给出了全面深入的解读。
实用性强——本书结合软件质量和软件测试等领域的相关概念,提供了多个实践案例,具备了实用性和可操作性,有助于读者理解标准内涵,真正将标准应用于实际项目中,同时也为刚接触软件质量和软件测试的读者提供了参考和指导。
第1章概述了软件质量的概念和定义,以及软件质量模型。
第2章从软件质量与测试角度介绍了国内外的标准化组织及目前的标准化情况。
第3章主要讲述了软件规模度量的方法,用于软件开发工作量及成本的预估。
第4章对软件复杂性度量进行了介绍,详述了软件的内聚性、耦合性及面向对象软件的复杂性度量指标,并以此为依据讲解了复杂性在软件缺陷预测上的应用。
第5章讲述了软件的质量保证过程及方法,提供了保证软件质量的技术及方法。
第6章以软件测试相关标准为依据,对软件测试的过程、级别、类型和技术进行了介绍,涵盖了软件质量各个特性的测试要点、微服务架构软件各测试级别的测试内容,并详述了常见的软件测试用例设计。
本书第7章和第8章分别以软件质量测量和软件产品评价的标准为依据,详细讲述了测量软件质量及评价软件产品的方法,为软件产品的利益相关方对软件的报价、开发、测试、部署、运维等提供了质量维度的依据。
本书由蔡立志总策划,各章编者如下: 第1、3、4章由龚家瑜编写,第2、7、8章由赵毅编写,第5章由沈颖编写,第6章由龚家瑜、赵毅、胡芸编写。全书由蔡立志、龚家瑜汇总和审阅。
限于作者的学识和水平,书中难免有疏漏和不足的地方,恳请读者批评指正。作者联系方式: [email protected]。
龚家瑜
第1章系统与软件质量概述
1.1质量/1
1.2软件质量/2
1.2.1软件/2
1.2.2软件质量事故/3
1.2.3软件危机与软件工程/5
1.3软件质量模型/8
1.3.1Jim McCall软件质量模型/8
1.3.2Barry W. Boehm软件质量模型/9
1.3.3FURPS/FURPS+软件质量模型/10
1.3.4R. Geoff Dromey软件质量模型/11
1.3.5ISO/IEC软件质量模型/12
1.4软件质量相关标准关系/12
第2章软件质量与测试标准体系
2.1软件质量与测试相关标准化/15
2.2软件质量与测试相关的标准化组织/18
2.2.1ISO/IEC JTC1/SC7/18
2.2.2IEEE/19
2.2.3SAC/TC28/20
2.2.4其他标准化组织/21
2.3软件质量与测试标准体系的发展/22
2.3.1软件质量标准体系发展/22
2.3.2软件测试标准体系发展/25
2.4软件质量标准/26
2.4.1软件质量模型/26
2.4.2软件质量测量/28
2.4.3软件质量需求/29
2.5软件测试标准/34
2.6软件质量保证体系标准概述/36
第3章软件规模度量
3.1IFPUG方法/41
3.1.1功能规模的计算/42
3.1.2功能点的计数/47
3.2其他功能点度量方法/49
3.2.1Mark Ⅱ/49
3.2.2COSMIC/50
3.2.3FiSMA/51
3.2.4NESMA/52
3.2.5功能点法的比较/53
3.3功能点度量案例/54
3.3.1系统需求/54
3.3.2数据功能度量/56
3.3.3事务功能度量/57
3.3.4结果计算/58
3.4软件功能规模的应用——成本度量/58
第4章软件复杂性度量
4.1内聚性与耦合性/62
4.1.1内聚的形式/64
4.1.2内聚性度量/67
4.1.3耦合的形式/69
4.1.4耦合性度量/72
4.2其他复杂性度量指标/73
4.2.1程序结构复杂性度量/73
4.2.2类复杂性度量/78
4.2.3抽象性度量/79
4.2.4封装性度量/80
4.2.5注释度量/81
4.3基于复杂性度量的软件缺陷预测/82
4.3.1构建软件缺陷数据仓库/82
4.3.2构建度量元/83
4.3.3特征提取/83
4.3.4预测方法/83
4.3.5软件缺陷预测的难点/84
第5章软件质量保证
5.1质量保证体系标准/87
5.1.1CMMI/87
5.1.2PSP/90
5.1.3TSP/92
5.1.46Sigma/93
5.1.5ISO 9001质量管理体系/96
5.1.6ISO/IEC 15504及ISO/IEC 33000/98
5.2质量保证内容/104
5.3文档评审/105
5.3.1专家评审/106
5.3.2会议评审/106
5.4风险管理/107
5.4.1风险管理规划/108
5.4.2风险管理过程/109
5.4.3风险识别方法/117
5.5需求跟踪/120
5.5.1建立需求跟踪矩阵/121
5.5.2需求跟踪记录/122
5.5.3需求变更流程/122
5.6配置管理/123
5.6.1配置管理计划编制/124
5.6.2配置项管理&基线管理/125
5.6.3配置状态报告编制/126
5.6.4配置审计/127
5.6.5变更管理/128
5.6.6版本发布/129
5.7项目度量/129
5.7.1项目度量方法/130
5.7.2实用软件测量/132
5.8任务跟踪/135
5.8.1个人工作周报/135
5.8.2项目组周报/135
5.8.3项目例会/136
5.8.4项目里程碑评审会议/136
5.9代码规范/137
5.10QA测试/138
第6章软件测试方法
6.1测试标准应用/140
6.2测试过程/142
6.2.1组织级测试过程/143
6.2.2测试管理过程/145
6.2.3动态测试过程/149
6.3测试级别/154
6.3.1单元测试/157
6.3.2集成测试/161
6.3.3组件测试/163
6.3.4契约测试/167
6.3.5端到端测试/170
6.3.6小结/170
6.4测试类型/171
6.4.1功能测试/171
6.4.2性能效率测试/173
6.4.3兼容性测试/176
6.4.4易用性测试/177
6.4.5可靠性测试/179
6.4.6信息安全性测试/182
6.4.7维护性测试/184
6.4.8可移植性测试/186
6.5测试技术/188
6.5.1基于规格说明的测试设计技术/189
6.5.2基于结构的测试设计技术/213
6.5.3基于经验的测试设计技术(错误推测法)/231
第7章软件质量测量
7.1质量模型/232
7.1.1产品质量模型/232
7.1.2使用质量模型/234
7.1.3数据质量模型/235
7.1.4质量模型的使用/238
7.2质量测量/238
7.2.1质量测量框架/238
7.2.2产品质量测量/241
7.2.3使用质量测量/243
7.2.4数据质量测量/244
7.2.5不同质量模型质量测度之间的关系/246
7.3质量测度数据分析/247
7.4质量测量案例/250
7.4.1项目概述/250
7.4.2技术方案/250
7.4.3质量模型建立/250
7.4.4质量测量方法设计/254
7.4.5质量测量使用/255
第8章软件产品评价
8.1评价过程/259
8.1.1确立评价需求/259
8.1.2规定评价/260
8.1.3设计评价/262
8.1.4执行评价/262
8.1.5结束评价/262
8.2质量评价方法/263
8.2.1加权平均法/263
8.2.2模糊综合评价法/272
8.2.3人工神经网络法/275
8.3评价实例/278
8.3.1移动教学软件质量评价/278
8.3.2翻译类软件产品的质量评价/281
8.3.3文本编辑软件质量评价/288
附录: Function Point Modeler使用指南