软件开发中的架构、测试与管理实践探讨
在当今软件开发领域,各种方法和实践层出不穷,以满足不断增长的软件需求和提高软件质量。本文将深入探讨软件开发中的几个关键方面,包括极限编程(XP)的架构改进、类可测试性评估以及QA工作的跟踪管理。
1. 从架构角度增强极限编程
极限编程(XP)作为敏捷软件开发方法中的一种显著方法,具有很多有价值的特性和能力,但在系统质量控制以及质量属性相互影响方面存在不足。近年来,软件架构知识不断发展成熟,但像XP这样的敏捷方法在开发过程中并未充分考虑架构的重要性。
为了改进XP的开发过程以提升系统架构,引入了两种实践:持续架构重构(Continuous Architectural Refactoring,CAR)和真实架构资格认证(Real Architecture Qualification,RAQ)。这两种实践的主要特点是源自XP的价值观和实践,以保持其敏捷性。
虽然XP方法论中没有明确支持架构的概念,但它会形成一种我们称之为隐式架构的特定结构。实际上,有三个XP元素会影响这种隐式架构,分别是Spike Solutions、Metaphors和Refactoring,但这些元素并不足以有效控制架构。
质量属性通常可分为两类:
- 基于开发者关注的质量属性 :如可修改性、可测试性、可重用性、可理解性、可扩展性和可维护性等。通常由具有架构设计知识的架构师在CAR过程中通过系统模型和图表进行评估。
- 基于实际工作系统评估的质量属性 :如性能、可用性、易用性等。这些质量属性从用户角度是可外部观察的,因此由客户通过RAQ进行评估
架构、测试与QA协同实践
超级会员免费看
订阅专栏 解锁全文

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



