《软件构架实践》读后感02
在我们了解了构架是什么以后,我们就要学会如何创建构架,又因为质量属性的实现对系统的成功至关重要,所以我又学习了质量属性的意义和如何实现质量属性。
我们的系统开发出来是给人使用的,一般都会用作商业用途。商业目的决定了系统的一些质量属性,但是质量属性又高于系统的一些基本要求。质量属性并不是孤立的个体,每一个质量属性都会对系统中的其他的质量属性产生影响。质量属性分为3类:1.系统的质量属性;2.受构架影响的商业属性;3.与构架本身相关的一些质量属性。
系统的质量属性需要应用质量属性场景来确定。质量属性场景是一种面向特定的质量属性的要求,它由刺激源、刺激、环境、制品、响应、响应程度6个部分组成。一般的质量属性场景与具体的质量属性场景的区别在于:一般的质量属性是指独立于系统,很可能适合任何系统的场景;具体的质量属性场景是指适合正在考虑的某个特定系统的场景。
某些商业质量目标往往会对我们的系统的构建产生极大的影响,所以商业质量属性也非常重要。商业质量属性从上市时间、成本和收益、所希望的系统生命期的长短、目标市场、推出计划、与老系统的集成这6个方面进行考虑。构架的质量属性包括概念完整性、正确性和完整性、可构建性组成。
在了解了构架的质量属性是什么以后,我们就要开始思考如何实现这些质量属性。
就像古代在打仗之前要根据实际情况来制定一个作战方案,也就是战术,在实现质量属性的时候我们也要选择使用什么样的战术来指导构架决策。实现这些质量属性依赖于基本的设计决策,这些设计决策就是我们实现质量属性的各个战术,对这些设计决策进行分析就是来选择我们的战术的过程。
战术分为可用性战术、可修改性战术、性能战术、安全性战术、可测试性战术、易用性战术运行时战术等。这些战术就是针对我们的质量属性的各个特点来制定的。
在将战术与模式关联起来的过程中,选择战术仅仅是我们创建软件构件的工作的第一步,但是第一步决定了我们的方向,所以战术的选择就尤为重要。我们一定要结合实际来选择战术,实现我们合理的软件构架!