(一)定义&ldquo软件构架包含了一组关于如何组织软件系统的重要决策,这些决策包括:如何选择构成系统的结构化元素和接口以及他们之间互相协作行为如何将这些结构化或者行为性元素进行组合以构成一个更大的
(一)定义
“软件构架包含了一组关于如何组织软件系统的重要决策,这些决策包括:如何选择构成系统的结构化元素和接口以及他们之间互相协作行为;如何将这些结构化或者行为性元素进行组合以构成一个更大的子系统;以及如何采用一种构架风格用以指导整个组织过程。软件构架还综合考虑了功能性、易用性、弹性、性能、重用性、可理解性、经济性、及技术约束、权衡和美观等方面”出自《Software Architecture:Persectives on an Emerging Discipline》
“在最高层次将系统拆分成部分;难以变动的决策;在一个系统中有多个构架;能改变系统生命周期的重要构架;说到底构架归结为任何重要的东西。”出自《企业应用构架模式》
“程序或计算机系统的软件构架是系统的结构,它由软件元素、这些元素的外在可见属性及元素之间的关系组成。构架关注的是接口的公共部分,元素的私有细节——仅仅涉及内部实现的那些细节——不属于构架的范畴”出自《软件构架实践(第二版)》。
(二)软件构架需要考虑的高层次关注点
用户会如何使用应用程序?
应用程序如何在生产环境中部署和管理?
应用程序的质量特性需求是什么?比如安全、性能、并发、全球化和配置?
应用程序如何设计才能始终保持灵活性和可维护性?
现在或在应用程序部署之后,影响我们应用程序构架的趋势是什么?
(三)构架的目标
展示系统的结构但是隐藏实现细节。
意识到所有用例和应用场景。
力求估计各参与者的需求。
处理功能和治理需求。
本站技术原创栏目文章均为中睿原创或编译,转载请注明:文章来自中睿,本站保留追究责任的权利。