系统架构设计
上午题15到20
案例分析一题
论文一题
软件架构的概述
架构设计是在需求分析和软件设计之间的过渡阶段
软件架构设计与生命周期
需求分析:问题空间
架构设计SA:解空间
需求->软件架构设计->系统设计
构件
对象
模块
构件
服务
粒度是越来越大的
一个构建可包含多个类元素,但是一个类元素只能属于一个构件
构件标准
EJB常考
会话Bean
实体Bean
消息驱动Bean
COM微软
CORBA
对象请求代理 ORB
公共对象服务
公共设施
软件架构风格
选择题考挖空
五种架构风格
数据流风格
调用/返回风格
独立构件风格
虚拟机风格
仓库风格
数据流风格
区分批处理序列和管道-过滤器
主程序/子程序
面向对象
层次结构
构件和构件之间不能直接连接,需要通过连接件来连接
架构风格汇总
记忆关键词
a,,b
c
引入对象管理层,降低了性能
a
a
连接件绑定
a
下一个阶段
d
层次架构风格
选择提主要就是考察上面的那个表,这个层次架构风格不怎么考察
这个层次架构风格主要是在案例分析里面考察
表示层 (客户端使用)
数据层 (服务器)
表示层(客户端)
数据层(只包含数据存储)
功能层(包含数据层和表示层的业务处理功能)专门处理业务逻辑的
浏览器-服务器模式
本质是基于B/S三层架构
没有客户端
使用互联网传输,现场搭建客户端
结合了B/S架构和C/S架构的优点
视图和用户交互
控制器是处理用户交互的
模型是数据层(数据读取和业务逻辑处理)
最后的模型直接给视图(用户)返回数据了
面向服务的架构风格
对象
构件
服务
粒度越来越粗
功能和协议需要记忆一下
SOA的实现方式
- WEB Service
- 服务注册表
- ESB
c
d
架构复用
软件产品线是面向业务流的
对核心资产进行集成复用
机会复用:没有规划
系统复用:有规划
构造/获取可复用的软件资产
管理这些资产
针对特定的需求,从这些资产中选择可复用的部分
DSSA
特定领域的软件架构:DSSA
重要
适用于特定的领域
软件构件的集合
垂直域
水平域
领域分析
领域设计
领域实现
考察较多
领域专家
领域分析人员
领域设计人员
领域实现人员
考察较多
考察较少
c
c
c
d
b
ABSD
重要
基于架构的软件开发
架构驱动
业务,质量,功能需求 驱动架构设计
视角和视图 描述软件架构
用例和质量属性场景 描述需求
考察定义
需求,设计,文档化,复审,实现,演化
架构就是由一个一个的构件和连接件组成
类,构件,架构
架构文档化生成:
架构规格说明
测试架构需求的质量设计说明书
b
c
c
a
软件系统的质量属性
很少考察
软件架构评估(重点)
重点
质量属性的定义
质量属性所包含的子特性
使用什么设计策略达到相关的质量属性
可靠性和可用性优先可用性
后面三个考察较少
质量属性场景
刺激源:主体
刺激:操作
环境:条件
制品:客体
响应:
相应度量:
基于场景的评估方法
了解就行
ATM(重要)
右边的文字选择题考察
左边的图像是论文中思路
评估小组
项目决策者
其他项目相关人
场景和需求收集
体系结构视图和场景实现
属性模型构造和分析
折中
属性作为架构评估的核心概念(质量属性):性能,可用性,安全性,可修改性
关于左边的图:
描述和介绍阶段
调查和分析阶段
测试阶段
几乎不考
b
d
可靠性,可用性之间优先可用性
c
c
b
a
c
a
c
相关质量属性
d (不属于之前所学习的8个质量属性中的)
a (控制和调试)
d
c
下面的不重要
中间件
中间件
- 分布式系统环境
- 操作系统和应用程序之间的软件
中间件分类:
- 数据库访问中间件
- 远程过程调用RPC
- 面向消息中间件
- 分布式对象中间件
- 事务中间件
JAVA