C++面向对象的概念与UML概要1.ppt

C面向对象的概念与UML概要1

* 23 * 24 * 25 * 26 * 27 * 28 * 31 * 32 * 32 * 32 * 37 * 38 * 39 * 40 * 41 软件工程 * 按订单供货 接订单 开发票 结清订单 快速交付 正常交付 收款 [紧急订单] [非紧急订单] 分叉 起点 变迁 结束 汇合 合并 活动 分支 软件工程 * 活动图的两种使用方式 对工作流建模 对操作建模 实现 与系统进行协作的参与者所观察到的活动 把活动图作为流程图使用,对一个计算的细节部分建模 适用性 对工作流的建模 对分支、分叉和汇合状态的建模 内容 用于可视化、详述、构造和文档化开发系统所涉及的业务过程 操作的参数和它的局部对象 软件工程 * 泳道(swimlanes) 活动图描述发生了什么,但没有说明该活动由谁来完成。泳道描述了这种关系。 泳道用矩形框表示,属于某个泳道的活动放在该矩形框内,将对象名放在矩形框的顶部,表示泳道中的活动由该对象负责。 两个泳道中活动的各自由不同的对象负责,活动之间控制权的转移表明对象之间的协作关系。 所以泳道可以将活动图的逻辑描述与顺序图、写作图的责任描述结合起来。 软件工程 * 乘客 电梯 按下按钮 电梯移到当前楼层 [电梯在当前楼层] [否则] 电梯开门 进入电梯 电梯关门 按下目标楼层按钮 开往目标楼层 电梯开门 离开电梯 电梯关门 软件工程 * 借阅者 图书馆 在书架上找书 [返还] [借阅] 排队等待 创建借阅记录 准备下次行动 [返还] [借阅] 书放回书架 删除借书记录 [多个] [不多于一个] 软件工程 * 构件图( Component diagram) 构件图展现了一组构件之间的组织和依赖。 构件图专注于系统的静态实现视图。它与类图相关,通常把构件映射为一个或多个类、接口或协作。 一个构件可能是: 部署构件:如动态链接库(DLL)、二进制可执行构件、ActiveX控件、JavaBeans等,是形成可执行文件的基础。 工作产品构件:如数据文件或源代码。是部署构件的来源。 执行构件:可运行的构件 软件工程 * 构件图的事例 Course Course Offering Student Professor Course.dll People.dll Course User Register.exe Billing.exe Billing System 软件工程 * 接口(interface) 接口是一个类或构件提供给其他类或构件的一组操作。类的变体,其变体关键字是interface。 每个接口要指定一个名字,以区分不同的接口。接口的名字就是类的名字,用字符串表示。 构件的接口有两种类型: 导入接口(import interface):访问服务的构件使用导入接口; 导出接口(export interface):由提供操作的构件提供。 软件工程 * 部署图(Deployment Diagram) 部署图展现了在软件过程中存在的运行处理节点以及其中的构件的配置。 部署图给出了体系结构的静态实施视图。它描述系统硬件的物理拓扑结构(包括网络布局和构件在网络上的位置),以及在此结构上执行的软件(即运行时软构件在节点中的分布情况)。 它与构件图相关,通常一个节点包含一个或多个构件。 软件工程 * 部署图的事例 Registration Database Dorm Library Main Building 主排课 数据库 宿舍 图书馆 注册 软件工程 * UML的规则 命名 (names) 为事物、关系和图起名。如:“student”、“PersonInfo::student” 作用域 (scope) 把施于类而不是施于实例的操作和属性说明为类作用域。相当于C++静态变量。 订单 getNumber getNewNumber 实例作用域 类作用域 加下划线者 软件工程 * 可见性 (visibility) 对类中任一属性或操作定义存取权限。 加前缀:+ (公用)、- (私用)、# (保护) 完整性 (integrity) 保持事物之间联系的正确性和一致性。 单个模型是不充分的,应建立互补的连锁的模型,从整体描述软件的蓝图。 保持模型与现实的一致性。 执行 (execution) 通过运行或模拟动态模型,才能真正理解和领会程序代码的含义是什么。 软件工程 * UML的公共机制 规格说明 (specifications) UML的图形表示用来对系统进行可视化,UML的规格说明用来描述系统的细节。

文档评论(0)

1亿VIP精品文档

相关文档