北国之春日语版软件体系结构(Software Architecture)第七讲:软件体系结构评估(一)buzz
•“复杂软件或复杂系统的体系结构涉及诸多难度较大的决策,对这些决策进行修改往往要付出高昂的代价。成功的产品开发和演化依赖于体系结构的选择是否恰当。你能承受由于不鉴别、不评估体系结构而带来的后果吗?”
——Alexander Ran (Nokia CSA)•“如果体系结构是构建系统的基础,体系结构评估则是得到一个‘好’体系结构的基础中的一部分。如何在构建系统之前对体系结构进行评估,确定它是否可行、是否适合要开发的系统?”
——Rich Hilliard (ConntCache CTO)
•“很多系统的性能或其他问题都是由于体系结构不当引起的。也就是说,这些问题早就存在,但通常很晚——快要到最后期限时,或者更为糟糕的,在问题已经被炒得沸沸扬扬时才发现。在这种情况下采取补救措施会导致一系列问题:延期交付、成本超支、不能满足上市时间要求、损坏与客户的关系或其他类似问题。如果能尽早对若干个备选体系结构进行评估,从中选择一个合适的系统,就可以很容易地避免上述问题。”
——Connie U. Smith (L&S)
体系结构是软件系统的基础•任何软件系统的基础都是其体系结构,即用独立
开发的构件建造软件的方式,以及这些构件彼此
交互和联系的方式。
–性能、可修改性、可用性、安全性、可靠性、……•采用恰当的体系结构是项目成功的第一步。体系
结构不当,必将导致灾难性的损失。
→如果你所在组织的未来依赖于某系统或一系列
相关系统的体系结构,怎样才能保证所采用的体
系结构是恰当的?bargain
•创建体系结构的实践日臻成熟。我们可以确定出
软件体系结构设计决策与按此体系结构设计出的
一个或多个系统的质量和特性之间的因果关系。
gobo
chen guangcheng这就意味着可能根据所要开发的系统的质量目标
prosperous和需求对体系结构进行评估,对体系结构决策进
mlgbd什么意思
行分析。
启明星学校
SA: 相关人员的交流工具•体系结构是系统的公共抽象,为相关人员提供了可以理解、讨论的共同语言
–用户:可用性、可靠性ptr
–客户:进度、预算
–项目经理:进度、预算、开发效率、可控性
–开发人员:可实现性
–测试人员:可测性
behalf–……
•体系结构为大型复杂系统提供了一个可供各类相关人员进行早期决策的、复杂度受控的共同语言•多视图
–逻辑、进程、实现、部署、U Ca
–功能、并发、代码、实现、物理