- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子科技大学,软件工程第十章 构件级设计建模
第十章 构件级设计建模;10.1 什么是构件
通俗地讲,构件是一段程序,该程序能完成一个相对独立的功能,并有一定的通用性。
正式定义:系统中某一定型化的、可配置的和可替换的部件,该部件封装并暴露一系列接口。
模块和构件的异同。
; 针对不同的系统设计体系,构件所指的对象不一样。
在面向对象的设计中,构件指一个协作类的集合。(对象和类的异同)
一般来讲,构件的规模比类大,但有时一个构件也可以对应一个类。
在构件级设计时,应设计出类的所有属性以及和其它类之间的相关操作,通信接口必须明确定义。;
在传统的软件设计观点下,一个构件就是程序的一个功能要素(功能块),也被称为模块。
构件(模块)的分类:
控制构件(模块)----协调不同模块之间的调用
问题域构件-----完成部分或全部用户的需求
基础设施构件----负责完成问题域中的相关处理的功能
模块的导出是以数据流图的方式进行的
控制构件位于顶层,问题域构件位于低层
; 在实际工作中,往往借鉴他人或自己前期的工作成果,直接引用或做一定的改进后引用已有的一些构件,基本原理是所从事的项目之间有内在的联系或相关性。
10.2 设计基于类的构件
基本原则:
开关原则---对外延有开放性,对修改具有封闭性。; Liskov替换原则---子类可以替换它们的基类
依赖倒置原则----构件依赖的其它构件愈多,扩展起来就愈困难
接口分离原则----多个用户专用接口比一个通用接口要好
构件有一定的独立性,但又不完全独立,要和其它构件 协同工作,从而完成一个完整的任务。; 将多个构件组织起来的原则:
发布复用等价性原则---对类打包管理,同时升级。
共同封装原则----关联性强的类在一起打包。
共同复用原则----可能一起被复用的类才能打包到一块。;构件级设计指导方针(可以借鉴的方法):
构件的名称应能体现该构件的主要功能。
接口的表示---表示必须的接口,放在构件框的左边。
依赖与继承---依赖自左向右,继承自下而上。;内聚性---类的属性或操作是该项目中所对应类所必须的,且这些属性或操作之间的关系很密切。
内聚性的分类:
功能内聚
分层内聚
通信内聚
顺序内聚
过程内聚
暂时内聚
实用内聚;耦合性
耦合---是类之间彼此联系程度的一种定性度量,尽量低耦合。
耦合的分类:
内容耦合
共用耦合
控制耦合
印记耦合
数据耦合
例程调用耦合
类型使用耦合
包含或导入耦合
外部耦合;10.3 实施构件级设计
一个典型的构件级设计步骤:
1)标识出所有与问题域相对应的类
2) 确定所有与基础设施域相对应的类
3)细化所有不能作为复用构件的类
说明消息的细节
确定接口
细化属性并定义数据类型和结构
描述每个操作中的处理流
4)说明持久数据源(数据库或文件)等相关类
5)开发并细化类的欣慰表示
6) 细化部署图
7) 反省和检查现有的设计;10.4 对象约束语言
对象约束语言(Object Constraint Language, OCL),一种形式化语言
四个组成部分:
语境
特征
操作
关键字;10.5 设计传统构件
由各种逻辑结构组成:顺序型、条件型、重复型
图形化设计表示----流程图 (在分析阶段,往往用活动图等)
注意条件型中退出时的处理方式; 表格式设计方式:
决策表---将事件、事件的发生条件、发生的具体模式等信息填写在一张表里。
不如流程图直观。
程序设计语言(Program Design Language, PDL),不像现代的编程语言,没有强烈的语法约束,不能被编译,更多用文字描述。
;
各种设计方法的比较:流程图直观,决策表简便,内容全
面,PDL 较综合。
您可能关注的文档
最近下载
- 混凝土结构工程施工质量验收规范GB50204-2015.pdf VIP
- 《基础护理学》第17章 病情观察及危重症病人的管理(含答案).docx VIP
- 2025至2030高纯砷产业行业市场占有率及投资前景评估规划报告.docx VIP
- 气体绝缘金属封闭开关设备特高频法局部放电在线监测装置技术规范 QGDW 11311-2021.docx VIP
- 部编版三年级上册道德与法治《说说我们的学校》名师教案.docx VIP
- 沟槽片石换填施工方案.docx VIP
- 2023中国血脂管理指南解读.pptx VIP
- 国家开放大学汉语言文学本科《中国现代文学专题》期末纸质考试第二大题填空题库[2025春期版].doc VIP
- 新建年产5万吨有机肥加工厂环评(新版环评)环境影响报告表.doc VIP
- 2025年高考化学(广西卷) 真题详细解读及评析.docx
原创力文档


文档评论(0)