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

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

外部软件质量

外部软件质量指软件所在的系统在指定条件下使用时,软件产品提供系统行为满足明确和隐含要求的能力。外部质量特征指软件运行过程中可观察的特征。例如,软件未出现运行故障,由此便可证明是可靠的    ;软件能有效处理大数据,而未遇到故障或出现效率低的情况,便可看作是可扩展的。

外部软件质量有时又叫作黑盒质量方法,因为质量的评估只通过检测软件执行而无须检查代码即可完成。因此,软件效率的黑盒视角能评估诸如运行时间或资源利用率之类的指标,但无法确定支撑高效运行的SAS最佳技术操作是否运行。黑盒测试会在第 16可测试性部分进行讲解。

在传统的软件应用程序中,用户无法获得代码,只能通过黑盒测试方法评估外部的软件质量。因此,尽管外部软件质量特征对创建可靠、耐用、易于维护的代码非常重要,但我们只能向客户、用户及其他无法获取代码的利益相关者展示外部软件的质量特征。由于 SAS 软件用户通常都能获取基础的代码,因此,相对于其他语言来讲,黑盒和白盒测试测试外部软件质量,后面部分会讲到这一点之间的差别在   SAS软件开发中就显得不那么重要了。

功能性

功能的适用性指软件产品在特定条件下使用时,提供满足明确和隐含要求的功能的能力。但是,本书与ISO标准和大部分文献保持一致,使用的是功能性,而不是功能的适用性。而且,在需求文档中,功能性需求指的是技术性而非性能上的要——例如,规定紫色为分析报告中的准确色调以满足大众要求。

外部软件质量的核心特点是功能性,缺少了功能性,软件便没有了目标。本书和其他许多软件开发类文献省略了功能性,因为它描述的是具体的软件意图,而性能质量特征含义更广。去掉功能性,剩余其他的外部软件特征包含动态性能属性,如可靠性或效率,但如果缺少了功能,可靠和效率则无从谈起。

动态性能需求

性能需求指确定某个功能质量属性或某个功能性需求必须要达到某种程度的可衡    量的标准。动态性能需求指在软件运行过程中可观测的性能属性,换句话说,它们表    示的是除功能性之外的所有外部软件质量特征,如图2-3所示。动态指的是软件必须在运行中(在运转中)进行评估,而静态性能属性则指必须在软件的静止状态下,    通过代码检验进行软件评估。

在本书中,性能需求有时称作性能属性,尤其是描述一个在特定软件中并未要求的质量特征时,我们会用性能属性来表示。例如,如果某个SAS从业人员打算在软件计划中应用可扩展性和安全性原则,但又决定忽略安全性,那么由于软件并未要求或应用质量特征,安全性就会称作性能属性,而不是性能需求,以避免混乱。但通常来讲,这两个词是可以互换的。

由于所有的利益相关者都能观察到动态性能需求,所以通常来讲,动态性能需求    要比静态性能需求更重要,因此,也更容易被优先添加到软件设计和要求中。例如,    客户更容易理解运行速度较快的软件的优点,因为速度是可测量的。但是,除非该客    户有软件开发方面的背景,否则他可能很难理解在软件中添加模块化或可测试性的优    点,因为这些属性是无法直接测量的,它们的效果在运行中也是无法观测的。


 image.png

 

2-3    软件质量架构和维度的互动

 

相关文章
|
2月前
|
SQL 存储 数据挖掘
大模型与数据分析:探索Text-to-SQL(下)
大模型与数据分析:探索Text-to-SQL(下)
233 3
|
2月前
|
SQL 自然语言处理 数据挖掘
大模型与数据分析:探索Text-to-SQL(上)
大模型与数据分析:探索Text-to-SQL(上)
744 0
|
2月前
|
SQL 自然语言处理 数据挖掘
大模型与数据分析:探索Text-to-SQL(中)
大模型与数据分析:探索Text-to-SQL(中)
306 0
|
2月前
|
搜索推荐 数据可视化 数据挖掘
产品服务数据分析与报告
产品服务数据分析与报告
59 3
|
5天前
|
文字识别 算法 数据挖掘
视觉智能开放平台产品使用合集之对于统计研究和数据分析,有哪些比较好的工具推荐
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。
|
2月前
|
SQL Cloud Native 数据挖掘
云原生数据仓库产品使用合集之在使用 ADB 进行数据分析处理时,出现分区倾斜的情况,如何解决
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
11天前
|
存储 弹性计算 DataWorks
云端开发与数据分析的强强联合
通过这次方案的搭建和使用,我更加确信阿里云产品组合是企业数字化转型的强大助力。我鼓励大家积极探索和尝试这些服务,以发掘它们在实际业务中的潜力和价值。我深刻体会到了阿里云产品组合的强大能力和灵活性。它们不仅帮助我们解决了实际问题,还为未来的发展提供了坚实的基础。我强烈推荐其他企业和开发者尝试这样的产品组合,以提升开发效率和数据处理能力。
89 35
|
7天前
|
机器学习/深度学习 自然语言处理 数据挖掘
使用Python和大模型进行数据分析和文本生成
Python语言以其简洁和强大的特性,成为了数据科学、机器学习和人工智能开发的首选语言之一。随着大模型(Large Language Models, LLMs)如GPT-4的崛起,我们能够利用这些模型实现诸多复杂任务,从文本生成到智能对话、数据分析等等。在这篇文章中,我将介绍如何用Python连接和使用大模型,并通过示例展示如何在实际项目中应用这些技术。
|
15天前
|
存储 数据挖掘 索引
Python streamlit框架开发数据分析网站并免费部署
使用Python的Streamlit框架,开发了一个在线数据分析工具,替代Excel查看设备温度CSV数据。通过pandas读取数据,matplotlib绘制图表。程序处理CSV,提取所需列,计算最大最小平均值,用户可多选查看特定数据。[GitHub](https://github.com/yigedaigua/MGHB)上有完整代码,应用已部署至Streamlit Cloud。
|
2月前
|
数据采集 监控 网络协议
利用Perl编写局域网监控软件的数据分析与报告生成模块
使用Perl编写局域网监控软件,包括数据采集(如获取主机列表)、数据分析(统计主机在线时长)和报告生成。代码示例展示了如何利用Net::ARP模块收集信息、定时统计在线时间并生成报告。此外,通过LWP::UserAgent模块,可将监控数据自动提交至网站,便于管理员远程监控网络状态,保障网络安全。
83 0

热门文章

最新文章