【软考系统架构设计师】软件架构知识总结

【软考系统架构设计师】软件架构知识总结

软件架构知识总结

    • 【软考系统架构设计师】软件架构知识总结
            • 软件架构的概念
            • 软件架构风格
            • 数据流风格
            • 独立构件风格
            • 调用返回风格
            • 虚拟机风格
            • 仓库风格
            • 三层B/S架构
            • 三层C/S架构
            • 富互联网
          • 质量属性
          • 中间件
          • 典型的应用架构-J2EE和NET
            • ★J2EE和NET之争
          • MVC模式
          • 典型的应用架构-MVP设计模式
          • 基于服务的架构
          • 企业服务总线ESB和WebServers
          • 软件产品线技术
          • 软件体系结构评估
          • 软件架构评估-SAAM 软件架构分析法
          • 软件架构评估-架构权衡分析法ATAM

软件架构的概念

需求做好以后,需要将需求转换成详细设计,这两个阶段会有脱节的情况,有鸿沟的情况,这个时候就需要一个老师傅,他知道如何应对需求并做成方案,来衔接需求和设计这两部分。
将识别到的软件需求分配到各个部分就是架构做的事情。
架构设计的一个核心问题就是能够达到架构级别的复用。 架构风格定义了用于描述系统的术语表和一组指导构建系统的规则。

UML的4+1视图 结构类型 对应关系 4+1视图特征说明
UML逻辑视图 静态结构 对应最终用户 功能需求
UML实现视图 静态结构 对应开发人员 也叫模块视图,侧重软件模块的组织和管理
UML进程视图 动态结构 对应进程视图 性能,吞吐量,侧重于系统的运行特征
UML部署视图 动态结构 对应物理视图 系统拓扑,安装通信,主要考虑如何把软件映射到硬件上
UML用例视图 对应场景 重要系统活动的抽象
软件架构风格

架构风格反映了领域中众多系统所共有的结构和语义特征,并指导如何将各个构件有效的组织成一个完整的系统。
软件架构领域很多思想借鉴了建筑领域的内容。 通过对架构风格的定义,在项目中可以更好的实现技术的沟通。
目前主流的一共有五种架构风格,现在的软件开发过程中,往往会使用这其中的一种或多种风格的组合情况。
【软考系统架构设计师】软件架构知识总结_第1张图片

数据流风格

典型代表就是批处理管道过滤器风格。它的思想就是整个架构是以数据为导向的。
批处理风格有一个特点就是在整个流程当中是没有和用户交互的。 批处理风格中数据必须是完整的。而管道过滤器是支持流式的数据处理。如果部分处理完的话,那么先处理完的那部分就进入第二阶段进行处理,它不必等着一批处理完再走下一批,这就是管道过滤器和批处理最大的不一样的地方。
在DOS系统中,如果需要执行多个命令,一个命令的输出就是另一个命令的输入。这就是管道过滤器风格的显著特征。 编译器先做词法分析再做语法分析,它也用到了管道过滤器风格。

独立构件风格

进程通信和事件驱动风格。
进程通信:属于独立构件中的一种。构件是独立的过程,连接件是消息传递,构件通常是命名过程,消息传递的方式可以是点对点,异步或者同步的方式,以及远程过程方法调用等。
隐式调用:事件所产生的效果是不清楚的。建立一种关系,然后通过查找这种关系来建立对应的过程。它主要的优点就是软件复用性高,为构件的维护和演化带来了方便,其缺点是构件放弃了对系统计算的控制。

你可能感兴趣的:(#,系统架构设计师---必知必会,系统架构,uml,java)