架构
问题:结构问题 1.局部问题:数据结构+算法 代码层面 2.整体问题:系统结构 软件+硬件 |
结构问题:定义和设计软件的模块化,模块之间的交互,用户界面风格,对外接口方法,创新的设计特性,以及高层事物的对象操作、逻辑和流程。 1>元素的组成、功能分配; 1 2>通信、同步和数据访问的协议; 1-n 3>总体组织结构和全局控制结构; n-n 4>物理分布; 5>定标与性能; |
一、定义 |
架构A:一系列相关的抽象模式 #系统重要构件的组织或结构,重要构件通过接口与不断减小的构件与接口所组成的构件进行交互。 #内部:环境中的系统的完整性、紧急约束条件、审美需求、样式 #外部:系统的用户环境、开发环境中对系统整体考虑 架构描述语言ADL: 要素:元件划分和设计决定 元件划分:元件组成,相互作用。 #原件 [Component]: #联结器[Connector]: 描述这些元件之间通讯的路径、通讯的机制、通讯的预期结果 #任务流[Task-flow]: 描述系统如何使用这些元件和联结器完成某一项需求. 设计决定:设计:商业的和技术的决定 作用:指导软件系统设计 对象: 抽象组件:各个组件之间的连接则明确和相对细致地描述组件之间的通讯 实际组件:实现阶段,具体某个类或者对象。 组件连接:接口 层次: 一.逻辑架构:软件系统中元件之间关系 [表象层次,商业层次和数据持久层次] 三.系统架构:系统的非功能性特征 [可扩展、可靠、强壮、灵活性、性能等。] 视图: 用例视图:包括用例和场景,这些用例和场景包括在构架方面具有重要意义的行为、类或技术风险。它是用例模型的子集。 |
二、模式 |
定义:解决复杂构架问题的现成形式 作用:构架框架或构架基础设施(中间件)是可以在其上构建某种构架的构件集。 案例: 类别 模式 结构 层 交互系统 模型-视图-控制器 分布式系统 代理 自适应系统 反射 表示: 模式名、环境、问题、影响、描述应考虑的不同问题方面、解决方案、基本原理、结果环境、示例、模式名层、环境、需要进行结构分解的大系统、问题必须处理不同抽象层次的问题的系统。 |
三、设计图 |
构架视图的图形描述 进程视图:类图与对象图(包括任务 - 进程与线程)。 实施视图:构件图 部署视图:配置图 用例视图:用例图:描述用例、主角和普通设计类 顺序图:描述设计对象及其协作关系 |