- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章基于体系结构的软件开发
第7章 基于体系结构的软件开发
7.1 设计模式
7.1.1 设计模式概述
Erich Gamma、Richard Helm、Ralph Johnson、John Vlissides四人95年出版了Design Patterns一书,可重用设计。来源于建筑设计重用。
算法,编程领域的设计模式,可以重用。
MVC模式:图7-1,视图虽变,但模型可重用。
设计模式:系统地命名、解释和评价某一个重要的可重现的面向对象的设计方案。
软件体系结构的模式:出现在特定设计语境、再现问题、解决方案、通用图示。
做到几点:P193
7.1.2 设计模式的组成
四个基本成分:
(1) 模式名称:描述设计问题。
(2) 问题:什么时候使用。
(3) 解决方案:如何解决再现问题。
(4) 后果:结果和权衡。
描述格式:Gamma等人的书,P195-196。
7.1.3 模式和软件体系结构
1.作为构造块:用已定义属性进行特定的软件体系结构的构造。
2.异构:多个模式,解决多个问题,支持构造已定义属性的软件体系结构。
3.微方法:模式描述包含了实现指南。
4.实现:用几乎所有编程语言实现。
7.1.4 设计模式方法分类
1.Coad的划分:三类,P198。
2.代码模式:从语法角度对软件体系结构提供基本规范。
3.应用框架:特定的框架适用于特定的需求,“菜谱”。
4.形式合约:描述框架设计,优缺点:P199
5. Gamma分类:表7-2
7.2 基于体系结构的设计方法
ABSD产生概念体系结构(Conceptual Architecture),(Module、Execution、Code),第一选择,体系结构驱动。
三个基础:功能分解,选择风格,软件模板。
7.2.1 有关术语
1.设计元素:泛指软件系统、概念子系统或概念构件,图7-2。
2.视角和视图:从动态和静态视角观察体系结构元素,逻辑、并发、配置视图。
3.用例和场景:用例使功能需求具体化,特定场景捕获质量需求。
7.2.2 ABSD方法与生命周期
图7-3中间,输入:六部分。输出:三个视图的概念构件集合。
7.2.3 ABSD方法的步骤
1.定义设计元素:顶层分解-概念子系统分解-概念构件。
2.产生顺序:广度遍历或深度遍历(图7-4)。
3.活动:分解序列:图7-5反馈环,逻辑视图定义步骤:图7-6。
实例:从图7-7开始,设计步骤:
(1) 功能分解:每组在结构中独立。
(2) 选择风格:体系结构驱动。
(3) 分配功能:决定构件类型数量和功能。
(4) 细化模板:加上功能。
(5) 功能校验:由用例验证功能。
(6) 并发视图:图7-8。
(7) 配置视图:图7-9。
(8) 验证质量:用场景。
(9) 验证约束:没有矛盾。
7.3 体系结构的设计与演化
演化增量开发已成为标准,需求变化,初始原型与最终产品相差很大。好的结构应演化。
7.3.1 设计和演化过程
实验原型阶段和演化开发阶段。
7.3.2 实验原型阶段
第一开发周期:两个小组,一个创建界面,另一个创建问题域。
第二开发周期:设计正交软件体系结构,六个小阶段:
(1) 标识构件:生成类图(7-10),分组,类簇打包。
(2) 提出模型:选风格。
(3) 映射:产生中间结构。
(4) 分析交互:分析构件的相互作用,用顺序图(7-11)。
(5) 产生结构:精化中间结构。
(6) 正交化:自顶向下、由左到右进行。
7.3.3 演化开发阶段
确定正交体系结构后,开始构件开发,八个步骤:P214-215。
7.4 基于体系结构的软件开发模型
ABSDM,六个子过程,图7-12。
7.4.1 体系结构需求
图7-13,需求获取、标识构件、需求评审。
7.4.2 体系结构设计
图7-14,五步。
7.4.3 体系结构文档化
输出需求规格说明和质量设计说明书。
7.4.4 体系结构复审
由外部人员进行复审。
7.4.5 体系结构实现
图7-15(虚线框)。
7.4.6 体系结构演化
图7-16,七步。
7.5 应用开发实例
7.5.1 系统简介
劳动和社会保险信息系统,图7-17,层次式体系结构。
1.通用核心层:图7-18,图7-19,基类:P221。
2.基层单位管理平台:图7-20。
3.业务管理系统:图7-21。
4.扩展应用层:图7-22。
7.7.2 系统设计与实现
三级正交结构,第一级八个线索:图7-23。某个二级线索:图7-24,某个三级线索:图7-25,整个系统五层:图7-26。
7.5.3 系统演化
六个步骤,P225-226。
7.6 基于体系结构的软件过程
7
文档评论(0)