软件架构是一个系统的草图,描述的对象是直接构成系统的抽象组件,用于指导软件系统各个方面的设计。1、软件架构的重要性软件工程中,架构提供了一个项目关系人之间交流的平台,明确了系统实现的约束条件,有助于原型开发和成本、进度评估。架构作为系统的总体设计,指导后续的详细设计和编码。架构在较高层面上实现软件复用,使基于模板的开发成为可能,有利于开发的规范化和一致性,减少开发与维护成本。2、软件架构设计过程架构设计的过程和内容的不是固定不变的,通常来说包含四个阶段:预架构阶段、概念架构阶段、细化阶段、实现阶段。3、软件架构设计5视图法:多视图方法是业界广泛认同的一种架构设计思路,软件系统的不同的角色会站在不同的角度上提出的问题。5视图法包括:逻辑架构视角、开发架构视角、运行架构视角、物理架构视角、数据架构视角。(1)逻辑架构从系统用户的角度考虑问题,重点是考虑软件功能性需求,包含用户直接可见的功能,还有系统中隐含的功能。设计出来的软件架构能够满足业务逻辑的需求,能够处理越来越复杂的业务逻辑需求。考虑的问题及输出各有不同,下图仅供参考:
(2)开发架构
从系统开发人员的角度来考虑问题,为了指导开发人员如何架构系统的开发环境,设计的架构要易于理解,易于开发,易于单元测试,最好做到让开发人员可以用最少的代码行数完成功能的开发。重点