文档详情

软件架构考试笔.doc

发布:2017-06-17约4.63千字共13页下载文档
文本预览下载声明
(一)软件过程改进—能力成熟度模型CMM 1、初始级。软件过程的特点是无秩序、随意,甚至混乱。 2、可重复级。已建立基本的项目管理过程,可用于对成本、进度和功能特性进行跟踪。软件开发过程是按计划执行且阶段可控。 3、已定义级。用于管理和工程方面的软件过程已文档化、标准化,并形成组织方面的标准软件过程。 4、已管理级。软件过程和产品质量有详细的度量标准,得到了定量的认识和控制。软件开发成为一个工业生产活动。 5、优化级。通过对来自过程、新概念、新技术等有用信息的定量分析,能不断地、持续地进行过程改进。 管理方面 组织方面 工程方面 优化级 技术改进 过程改进 缺陷预防 可管理级 定量管理过程 软件质量 已定义级 集成(综合) 软件管理 组间协调 组织过程焦点、定义、培训 软件产品工程同级评审 可重复级 需求管理 软件项目计划、项目跟踪与监控、子合同管理、质量保证、配置管理 (二)能力成熟度模型集成CMMI CMMI涉及面更广,专业领域覆盖软件过程、系统过程、集成产品开发和系统采购,可看作把各种集成到一个系列模型中,其基础源模型包括软件CMM、系统过程CMM、集成产品和过程开发CMM。 (三)质量管理—质量属性 质量特性 质量子特性 功能性 适宜性、准确性、互用性、依从性、安全性 可靠性 成熟性、容错性、可恢复性 可用性 可理解性、易学性、可操作性 效率 时间特性、资源特性 可维护性 可分析性、可修改性、稳定性、可测试性 可移植性 适应性、易安装性、一致性、可替换性 (四)软件架构模型 模型名称 过程内容 结构模型 以架构的构件、连接件等来刻画结构,并以此来反映系统的语义内容。研究系统的配置、约束、隐含的假设条件、风格和性质 架构模型 不注重结构细节而更侧重整体,主要以一些特殊问题为目标建立相应的结构 动态模型 是结构和架构模型的补充,研究系统大颗粒的行为特性 过程模型 研究构造系统的步骤和过程 功能模型 研究下层功能构件如何向上层提供服务 模型名称 基本内容 逻辑视图 设计的对象模型(类图),主要支持系统的功能需求 开发视图 侧重软件模块的组织管理,考虑软件的内部需求(开发的容易性、软件的重用和通用性) 进程视图 侧重系统的运行特性,强调并发性、分布性、系统集成性和容错能力,观众一下非功能性需求(系统的性能和可用性) 物理视图 主要考虑如何把软件映射到硬件上,要考虑系统拓扑结构、系统安装和通信问题 场景视图 重用活动的抽象,使4个视图有机联系清理 (五)软件架构的设计模式 1、创建型模式:负责对象创建。 2、结构型模式:处理类与对象间的组合,可以解决一些继承依赖性的问题。 3、行为型模式:类与对象交互中的职责分配,可以解决组件间如何和交互,隔离变化。 目的 设计模式 设计意图 创建型 Abstract Factory 抽象工厂模式 提供一个接口,让其创建一系列相关或相互依赖的对象,而无须指定它们的具体类 Builder 生成器模式 将一个复杂类的表示与其构造相分离,使得相同的构建过程能够得出不同的表示 Factory Method 工厂方法模式 定义一个用于创建对象的接口,让子类决定实例化那个类 Prototype 原型模式 用原型实例指定创建对象的种类,然后通过拷贝这些原型来创建新的对象 Singleton 单子模式 保证一个类仅有一个实例,并提供一个该实例全局的访问点 原型模式实例:客户端程序(ClientApp)是依赖于抽象(Prototype),而对象的具体实现也是依赖于抽象(Prototype)。注意:抽象代码中有一个Clone的方法。使得我们可以非常灵活地动态创建“拥有某些稳定接口”的新对象—所需工作仅仅是注册一个新类的对象(即原型),然后在任何需要的地方不断地Clone。 工厂方法模式实例: 要解决的是“某个对象”的创建工作,由于需求的变化,这个对象常常面临着剧烈的变化,但是这个对象拥有的接口相对稳定。也就是说:枝节常常发生变化,但是枝节与主干的接口相对稳定。 生成器模式实例:用Manager来管理汽车的构建,构建一个抽象的类对象(对象如下图的builder,抽象类为AbstractBuilder),对于BMW和BORA的构建类型继承AbstractBuilder类。注意:抽象子对象变化较频繁。 抽象工厂模式实例: 单件模式实例:创建一个登陆窗口。 目的 设计模式 设计意图 结构型 Adapter 适配器模式 将一个类的接口转换成客户希望的另一个接口,使得原本由于接口不兼容而不能一起工作的类可以一起工作 Bridge 桥模式 将抽象部分与实现部分分离,使他们可以独立的变化 Composite 组合模式 将对象组合成树形
显示全部
相似文档