带你读《SAS数据分析开发之道 软件质量的维度》第二章质量2.2软件产品质量模型(三)

简介: 带你读《SAS数据分析开发之道 软件质量的维度》第二章质量2.2软件产品质量模型

内部软件质量

内部软件质量的定义是软件产品在特定条件下使用时,它们的一组静态属性满足明确和隐含要求的能力。这些特征只能通过代码的静态审查观测,可读性有时会在附加的软件文档中体现。可测试性有时可通过一个正式的测试计划和测试案例进行评估,第 16可测试性会讲到这一点。

内部软件质量有时被称作白盒质量方法(玻璃箱,因为质量的评估是通过代码监测而不是代码执行完成的。软件复用的白盒视图是根据复用原则评估软件可被复用的程度,但要求手动查看代码,或通过解析代码的第三方软件审查代码。由于在传统加密的软件应用程序中,用户无法获取基础的代码,因此,他们无法评估内部的软件质量    ;如果他们缺少技术方面的经验,那么他们可能甚至都不知道内部软件质量这个概念。

静态性能需求

     静态性能需求指内部软件质量,如可维护性、模块化或稳定性。在某些组织和软件项目中,由于内部软件质量特征具有本质上的不显露性,所以与那些更容易观察的动态性能需求比起来,我们更难让利益相关者重视并进而将这些静态质量特征考虑进软件内。例如,我们很容易向客户阐释速度提升的好处,但若要解释清楚提升复用性的好处,则需要介绍复用性和软件的重复利用。

静态性能需求除了更难观测之外,它给利益相关人员带来的也不是即时的满足,    而代表的是对软件产品的未来投资。例如,当完善动态性能以提升软件运行速度时,    这效果不仅是可观测的,还是即时的。若要完善静态性能以提升软件的可读性或模块化时,这些改变是无法观测的(通过软件性能,而且,我们只能在下次软件需要审查或修改时才能看到此次改进的益处。模块化能够助长被改进的动态性能的功效,第 7  运行效率会讲到这一点,但通常来讲,静态性能需求既无法观测,又能获得即时的效果。但随着软件的预期使用期限不断延长,静态性能需求也变得  越来越重要,因为它们能提升软件的可维护性——这是增加软件寿命最关键的特征  之一。


混合质量

单个软件质量维度的组织是非常简单的,但由于术语定义的多样化,高级结构中

(如质量模型)质量维度的组织可能是非常复杂的。例如,外部软件质量包括功能性    和性能需求,软件的文献中通常会将这两种要求分开。这一点反映在 ISO软件产品质量模型中,该模型将功能的适用性(功能性)划归为软件产品质量。

其他质量模型包含了性能特征但删掉了功能性。例如,铁三角(项目范围、进度    和成本之间的联系)的许多定义将范围解释为具有独立质量和功能性的组件,这表明    它是一个不包含功能性的质量模型。国际商业分析研究所在业务分析知识体系指南

(BABOKGuide®)中的需求定义中将质量与功能性进行了区分 :

■     功能性需求   :系统在所管理的行为和信息方面应具有的功能   ;

■     非功能性需求或服务质量需求     :与系统的功能性行为没有直接的联系,而是指系统必须保持有效的运转状况或者系统必须具有的质量。

较多的质量模型混合存在,因为软件性能需求既包括动态性能需求,又包括静态性能需求,前者代表的是外部软件质量特征(删除功能性,而后者指内部软件质量特征。由于本书主要讲述软件性能,而不提及功能性(假设功能性需求在所有情况下均已达到,因此,本书所涉及的质量结构体现的是动态和静态性能的二元现象。

2-3展示的是混合质量结构,在对质量的多种诠释中,突出强调的是功能性、可靠性和可维护性。无论功能性是软件的一个成分,还是功能性和质量都是范围属性的成分,有一点是非常清楚的——软件功能性和软件性能之间确实会相互竞争资源,以期被优先考虑到软件产品需求中,质量的这一方面及其他权衡取舍会在后面部分进行讲解。

相关文章
|
12月前
|
机器学习/深度学习 数据采集 数据挖掘
实战派教学:掌握Scikit-learn,轻松实现数据分析与机器学习模型优化!
【10月更文挑战第4天】Scikit-learn凭借高效、易用及全面性成为数据科学领域的首选工具,简化了数据预处理、模型训练与评估流程,并提供丰富算法库。本文通过实战教学,详细介绍Scikit-learn的基础入门、数据预处理、模型选择与训练、评估及调优等关键步骤,助你快速掌握并优化数据分析与机器学习模型。从环境搭建到参数调优,每一步都配有示例代码,便于理解和实践。
330 2
|
3月前
|
消息中间件 监控 数据可视化
实时看板数据分析的力量:推动高效决策的17个关键维度
实时看板数据分析通过可视化工具将企业运营数据实时整合展示,助力快速决策。它结合数据收集、处理与交互分析,广泛应用于制造、零售、金融等领域,提升响应速度与协作效率。技术上依赖流数据处理与可视化工具,如Power BI、Tableau等,同时关注数据安全与用户体验优化。
186 1
|
12天前
|
人工智能 数据挖掘 数据库
通义灵码产品演示: 数据库设计与数据分析
本演示展示如何使用通义灵码进行数据库设计与数据分析。通过SQLite构建电商订单表,利用AI生成表结构、插入样本数据,并完成多维度数据分析及可视化图表展示,体现AI在数据库操作中的高效能力。
99 9
|
2月前
|
机器学习/深度学习 算法 数据挖掘
【数据分析】基于matlab私家车充电模型(含私家车日行驶距离概率密度及累加函数,电动汽车出发时间(或者称开始充电的时间)概率)(Matlab代码实现)
【数据分析】基于matlab私家车充电模型(含私家车日行驶距离概率密度及累加函数,电动汽车出发时间(或者称开始充电的时间)概率)(Matlab代码实现)
|
8月前
|
数据挖掘 Android开发 数据安全/隐私保护
Cellebrite Inseyets PA 10.4 - 取证数据分析软件
Cellebrite Inseyets PA 10.4 - 取证数据分析软件
171 10
Cellebrite Inseyets PA 10.4 - 取证数据分析软件
|
8月前
|
数据可视化 数据挖掘 BI
表格软件推荐:为何选择VeryReport让数据分析和报表生成更高效?
表格软件推荐:为何选择VeryReport让数据分析和报表生成更高效?
|
7月前
|
SQL 数据挖掘 大数据
Excel 后,我们需要怎样的数据分析软件
在现代商业中,数据分析至关重要,但传统BI工具和编程语言如Python、SQL等各有局限。Excel虽交互性强,但面对复杂计算和大数据时力不从心。esProc Desktop作为后Excel时代的数据分析神器,采用SPL语言,具备强大的表格计算能力和天然的大数据支持,可显著降低复杂计算难度。其强交互性、简短代码和内嵌Excel插件功能,让业务人员轻松完成多步骤交互式计算,是理想的数据分析工具。现提供免费使用及丰富学习资源。
|
7月前
|
机器学习/深度学习 传感器 数据采集
基于机器学习的数据分析:PLC采集的生产数据预测设备故障模型
本文介绍如何利用Python和Scikit-learn构建基于PLC数据的设备故障预测模型。通过实时采集温度、振动、电流等参数,进行数据预处理和特征提取,选择合适的机器学习模型(如随机森林、XGBoost),并优化模型性能。文章还分享了边缘计算部署方案及常见问题排查,强调模型预测应结合定期维护,确保系统稳定运行。
695 0
|
10月前
|
运维 监控 安全
公司监控软件:SAS 数据分析引擎驱动网络异常精准检测
在数字化商业环境中,企业网络系统面临复杂威胁。SAS 数据分析引擎凭借高效处理能力,成为网络异常检测的关键技术。通过统计分析、时间序列分析等方法,SAS 帮助企业及时发现并处理异常流量,确保网络安全和业务连续性。
156 11
|
数据采集 机器学习/深度学习 算法
"揭秘数据质量自动化的秘密武器:机器学习模型如何精准捕捉数据中的‘隐形陷阱’,让你的数据分析无懈可击?"
【8月更文挑战第20天】随着大数据成为核心资源,数据质量直接影响机器学习模型的准确性和效果。传统的人工审查方法效率低且易错。本文介绍如何运用机器学习自动化评估数据质量,解决缺失值、异常值等问题,提升模型训练效率和预测准确性。通过Python和scikit-learn示例展示了异常值检测的过程,最后强调在自动化评估的同时结合人工审查的重要性。
297 2