从质量属性到模式:软件架构设计的关键指引
1. 质量属性概述
在软件项目中,存在两种类型的需求:功能性需求和非功能性需求。功能性需求描述了软件解决方案必须完成的任务,通常以用例或故事的形式表达,例如用户与系统交互时的操作,像填写订单、更新客户详细信息、批准贷款等。而非功能性需求则是系统预期具备或展现的属性,常见的包括性能、安全性、可用性等方面,更合适的称呼是“质量属性”。
以下是质量属性及相关概念的正式定义:
- 质量属性 :软件的一种特性,是适用于质量因素、质量子因素或度量值的通用术语。
- 质量因素 :软件的一种面向管理的属性,有助于提升软件质量。这里更常用“质量属性”来表述。
- 质量子因素 :将质量因素或质量子因素分解为其技术组件,这里称为“具体属性”。
- 度量值 :度量的输出或属于度量范围的元素。
- 软件质量度量 :一种函数,其输入为软件数据,输出为单个数值,可解释为软件具备影响其质量的给定属性的程度。
大多数驱动软件架构设计的需求来自系统的质量属性,因为质量属性的影响通常是系统级的。例如,我们期望系统整体性能良好,而不仅仅是用户界面部分。不过,也有少数需求可能来自功能性需求。那么,如何确定这些需求呢?答案在于软件架构的定义,质量属性的来源是利益相关者。利益相关者是对项目有切身利益的人,包括客户、最终用户、运维人员、开发团队、测试人员、维护人员和管理人员等,在某些系统中,甚至可能是股东或公众。
架构师的一个重要
超级会员免费看
订阅专栏 解锁全文
713

被折叠的 条评论
为什么被折叠?



