- 7
- 0
- 约3.69千字
- 约 29页
- 2017-01-20 发布于湖北
- 举报
软件工程课件10详解
软件工程第十章 构件级设计建模 10.1 什么是构件 10.2 设计基于类的构件 10.3 实施构件级设计 10.4 对象约束语言 10.5 设计传统构件 10.1 什么是构件 OMG UML规范:系统中某一定型化的、可配置的和可替换的部件,该部件封装实现并暴露一系列接口。 面向对象的观点:一个互相协作的类的集合。 什么是构件 传统观点:程序的功能要素,程序由处理逻辑、实现处理逻辑所需的内部数据结构、能够保证构件被调用和实现数据传递的接口构成。 承担的重要角色: 控制构件 问题域构件 基础设施构件 什么是构件 过程相关的观点:强调使用已有的构件来构造系统,复用的思想。 10.2 设计基于类的构件基本设计原则 开关原则:构件应该对外延具有开放性,对修改具有封闭性。 基本设计原则 Liskov替换原则:子类可以替换它们的基类; 依赖倒置原则:依赖于抽象,而非具体实现; 接口分离原则:多个用户专用接口比一个通用接口要好; 基本设计原则 打包原则(构件如何打包): 发布复用等价性原则:复用的粒度就是发布的粒度; 共同封装原则:一同变更的类应该合在一起; 共同复用原则:不能一起复用的类不能被分到一组; 10.3 实施构件级设计 步骤1:标识出所有和问题域相对应的设计类; 步骤2:确定所有与基础设施域相对应的设计类; 步骤3:细化所有不能作为复用构件的设计类; 步骤4:说明持久数据源(数据库和文件)并确定管理数据源所需要的类; 步骤5:开发并且细化构件的行为表示。 步骤6:细化部署图以提供额外的实现细节; 步骤7:考虑每一个构件级设计表示,并且时刻考虑其他选择。 10.4 对象约束语言(OCL) 对象约束语言的组成部分: (1)语境:定义哪些情况语句是正确的; (2)特性:描述语境的一些特征; (3)操作:用来操纵和限定一个特性; (4)关键字:用于说明条件表达式。 OCL实例 从computingJobCost状态到formingJob状态有个条件:用户认证。 用OCL表示: customer self.authorizationAuthority=‘yes’ OCL实例 10.5 设计传统构件 也是一种逐步求精的过程 设计传统构件 逻辑构成的元素是传统构件设计的基础,这些逻辑构成元素包括有: 顺序:实现了任何算法规约中的核心处理步骤; 条件:允许根据逻辑情况选择处理的方式; 重复:提供了循环。 图形化设计表示 流程图中,方框表示处理步骤,菱形表示逻辑条件,箭头表示控制流。 顺序由两个表示处理的方框以及连接两者的控制线表示 条件也称if-then-else结构,菱形表示; 重复 结构化的构成元素可以相互嵌套 图形化设计表示 图形化设计表示 表格设计符号? 开发决策表的步骤: 1.列出与特定过程(或模块)相关的动作 2.列出执行该过程时的所有条件(或决策) 3.将特定的条件组合与特定的动作相关联,消除不可能的条件组合;或者找出所有可能的条件排列。 4.定义规则,指出一组条件应对应哪个或哪些动作 反映程序逻辑的决策表 程序设计语言(伪代码) 程序设计语言(PDL)也称为结构化的英语或伪码,是“一种混合语言,采用一种语言的词汇(即英语)和另一种语言的语法(即一种结构化编程语言)” 可随便修改不必担心语法错误,不能编译 程序设计语言 基本的PDL语法: 子程序定义 接口描述 数据声明 针对块构成元素、条件构成元素、重复构成元素和I/O构成元素的技术 PDL实例 以前面提到的SafeHome安全系统的构件设计为例: SafeHome系统监控火、烟、盗贼、水(洪水)和温度(比如冬天房主外出时炉子熄火)等;产生报警信号;调用监控服务,发出合成的语音信息。 PDL实例 PROCEDURE security.monitor; INTERFACE RETURNS system.status; TYPE signal IS STRUCTURE DEFINED Name IS STRING LENGTH VAR; address IS HEX device location; bound.value IS upper bound SCALAR; message IS STRING LENGTH VAR; END signal TYPE; TYPE system.statusISBIT(4); TYPE alarm.type DEFINED smoke.alarm ISINSTANCEOFsignal; fire.alarm IS INSTANCE OF signal; water.alarm IS INSTANCE OF signal; temp.alarm ISINSTANCE
您可能关注的文档
- 江西初中一年级第4单元第4课_中秋咏月诗词三首分解.ppt
- 轨道电路工作原理课件详解.doc
- 轨道交通概论-项目8详解.ppt
- 轨道电路2详解.ppt
- 轨道车理论学习题1详解.doc
- 建筑安全资料讲座(安培学校)分解.ppt
- 轨道交通车辆段风水电机电安装、综合管沟、轨道及装修工程施工详解.doc
- 轨道交通(云管端)V1.2详解.doc
- 轨道板铺设作业指导书(修改稿)详解.doc
- 转基因动物(Transgenicanimals)详解.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- 六年级语文下册第一单元【教材解读】.pptx VIP
- 初中英语不规则动词变化.doc VIP
- 2025年江苏财经职业技术学院单招(语文)测试试卷.docx VIP
- 自考00009政治经济学(财经类)密训高频考点重点汇总.docx VIP
- catalix 100 liquid product sheet用于皮革水份调节基于脂肪酸衍生物弱阳离子.pdf VIP
- 《“互联网+护理服务”紧急事件应急处置规范》.pdf VIP
- dermalix wwl paste product sheet基于混合脂肪酸衍生物柔软和分散加脂剂.pdf VIP
- 《化工安全生产概况》课件.ppt VIP
- 2025贺州教育局事业单位考试真题及答案汇总.docx VIP
- 人教版2026-2027学年七年级英语下册教学计划(及进度表).docx
原创力文档

文档评论(0)