首页 > 代码库 > 什么是软件架构

什么是软件架构

  软件应用架构是一个机构化解决方案,它包含了一组关于如何组织软件系统的重要决策,这些决策包括:

  如何选择构成系统的结构化元素和接口以及他们之间互相协作行为;

  如何将这些结构化或者行为性元素进行组合以构成一个更大的子系统;

  如何采用一种架构风格用以指导整个组织过程;

      软件架构还综合考虑了功能性、易用性、弹性、性能、重要性、可理解性、经济性以及技术约束、权衡和美观等方面。

 

  架构的目标:

  1、展示系统的结构但是隐藏实现细节

  2、意识到所有用例和应用场景

  3、力求顾及各参与者的需求

  4、处理功能和质量的需求

 

  创建架构设计的时候应考虑的问题:

  1、架构中哪些基础部分会在决策错误的时候导致巨大的风险

  2、架构中哪些部分最容易改变,或是哪些部分的设计可以稍微延迟一点但没什么影响?

  3、您的关键假设是哪些?如何测试他们?

  4、什么情况下需要您重构设计?

  

  架构的关键设计原则:

  1、考虑变化而不是一步到位

  2、使用模型来分析和减少风险

  3、使用建模和可视化作为沟通和合作的工具

  4、找出关键的工程决策

 

什么是软件架构