一、软件架构的定义
1、为什么要引入软件架构/p>
在传统的软件开发方法中,分为:软件定义、需求分析、软件设计、系统编码、软件测试、运行维护几个阶段。在需求分析结束后,形成《软件需求规格说明书》。经过评审后,形成了基线。然后,在此基础上进行软件设计。但是,在实际工作中存在一种情况,进行软件设计的人员感觉到《软件需求规格说明书》对他没有什么用,还是需要去根据软件的功能进行设计,这就意味着在需求分析和软件设计之间存在着一道鸿沟:
2、架构的通俗理解
在房屋建筑中,架构就是钢筋+水泥,建房子时,先把框架搭好,再进行砌砖的工作。砖头烂了没有关系,只要框架好,房子就不会倒塌;
在软件中也是这样,只要架构设计好了,就不会出现系统崩溃的情况;
3、软件架构的定义
软件架构具有一定形式的结构化元素,即构件的集合。包括:处理构件、数据构件、连接构件。处理构件负责对数据加工处理,数据构件是被加工的信息,连接构件是把架构的不同部分组合连接起来。
二、软件架构的作用
主要体现在以下3个方面:
1、软件架构是项目干系人进行交流的手段
架构代表了系统的公共的高层次的抽象。这样,系统的大部分有关人员能把它作为一个互相理解的基础,形成统一认识,互相交流。
2、软件架构是早期设计决策的体现
架构体现了系统的最早的一组设计决策;这些早期的约束比以后的设计、开发编码、测试以及运行维护的工作重要的多,对系统生命周期的影响也很大;架构使推理和控制更改更简单,有助于循序渐进的原型设计,架构可以作为培训的基础。
3、软件架构是可传递和可重用的模型
三、软件架构的发展史
逻辑视图(Logic View):即系统提供给最终用户的服务;
开发视图(Development View):也成为模块视图(Module View);
逻辑视图与开发视图是静态结构,例如:某企业的管理信息系统;
进程视图(Process View)
物理视图(Physical View)
进程视图与物理视图是动态结构,例如:实时监控系统;
场景(Scenarios):使四个视图有机联系起来
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!