软件工程课件:4-第四讲(2).ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件工程课件:4-第四讲(2).ppt》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课件 第四
- 资源描述:
-
1、第四章第四章 OOA A初阶初阶1 14.1 4.1 2 2 对象对象-类层类层: :问题域中概念及实体的问题域中概念及实体的抽抽象象 问题域中对象之间的通信与协调问题域中对象之间的通信与协调 问题域中对象及它们之间的结构关系问题域中对象及它们之间的结构关系 服务层服务层: :对象的服务及对象之间的消息连接对象的服务及对象之间的消息连接 结构层结构层: :问题域中的结构关系问题域中的结构关系( (继承与聚集继承与聚集) ) 主题层主题层: :问题分解,分而治之问题分解,分而治之 属性层属性层: :对象的属性及对象之间的实例连接对象的属性及对象之间的实例连接3 3 建立问题空间中概念及实体的建立
2、问题空间中概念及实体的抽抽象表示象表示对象对象 将对象归并为将对象归并为 类类 或或 抽抽象类象类4.1.1 4.1.1 对象对象-类层类层名称名称( (带对象实例的带对象实例的) )类类抽抽象类象类名称名称4 44.1.2 4.1.2 属性层属性层 表示表示 对象在问题空间中的相关属性对象在问题空间中的相关属性 表示表示 对象之间的实例连接对象之间的实例连接 ( (数量对应关系数量对应关系) )BankBank_Id.CardCard_IdCard_Holder.1*5 54.1.3 4.1.3 服务层服务层 表示表示 对象在问题空间中的相关、外部可见服务对象在问题空间中的相关、外部可见服务
3、 表示表示 对象之间的消息传对象之间的消息传递递BankCard6 64.1.4 4.1.4 结构层结构层 表示表示 继承关系继承关系 表示表示 聚集聚集关系关系文章文章已录用已录用已刊登已刊登电梯电梯马达马达按钮面板按钮面板11117 74.1.5 4.1.5 主题层主题层 将关系比较密切的对象将关系比较密切的对象/ /类划分为某主题词类划分为某主题词 位于不同主题词中的对象位于不同主题词中的对象/ /类之间的关系较为松散类之间的关系较为松散电梯管理电梯管理电梯电梯马达马达电梯内面板电梯内面板到达指示面板到达指示面板目的地按钮面板目的地按钮面板紧急按钮紧急按钮超载传感器超载传感器面板面板电梯
4、控制电梯控制电梯事件电梯事件召唤事件召唤事件目的地要求事件目的地要求事件电梯到达事件电梯到达事件召唤按钮面板召唤按钮面板8 81.1.采用自然语言处理技术标识问题域中的概念采用自然语言处理技术标识问题域中的概念 及其相互关系及其相互关系4.2 4.2 4.2.1 4.2.1 发现和发现和识别对象 采用自然语言分析技术采用自然语言分析技术 获得获得 概念集合概念集合 采用矩阵分析技术采用矩阵分析技术 获得获得 概念之间的相互关联概念之间的相互关联 将上述结果表示成将上述结果表示成OOA工作表格工作表格条条目目(0) (1) (2) (3) (4) (5) 注注解解(0)(0)忽略忽略 (1) (
5、1)可能的对象可能的对象/ /类类 (2) (2)可能的继承关系可能的继承关系 (3)(3)可能的聚集关系可能的聚集关系 (4) (4)可能的对象可能的对象/ /类的属性类的属性(5)(5)可能的对象可能的对象/ /类的外部服务类的外部服务对象在用户需求的正文描述中可能呈以下形式:对象在用户需求的正文描述中可能呈以下形式:( (1)1)与目标系统交互信息的外部实体。例如,物理设备,操作与目标系统交互信息的外部实体。例如,物理设备,操作人员或用户,其他有关的子系统。人员或用户,其他有关的子系统。(2)(2)现实问题信息域中的概念实体。例如信号、报表、显示信现实问题信息域中的概念实体。例如信号、报
6、表、显示信息。息。(3)(3)目标系统运行过程中可能出现并需要系统记忆的事件。例目标系统运行过程中可能出现并需要系统记忆的事件。例如核电站运转时的意外事故。如核电站运转时的意外事故。(4)(4)与目标系统发生交互作用的人员所扮演的各种角色。例如与目标系统发生交互作用的人员所扮演的各种角色。例如管理人员,工程师,销售人员。管理人员,工程师,销售人员。(5)(5)作为系统环境或问题上下文的场所、位置。例如卫星地面作为系统环境或问题上下文的场所、位置。例如卫星地面接收站的安装位置(经度、维度、海拔高度)。接收站的安装位置(经度、维度、海拔高度)。(6)(6)有关的组织机构。例如,单位、小组。有关的组
7、织机构。例如,单位、小组。(7)(7)表示一组成分对象的聚集对象。例如物理设备。表示一组成分对象的聚集对象。例如物理设备。9 910102.2.根据根据DFD,ER和状态转换图进一步标识有用的对象和状态转换图进一步标识有用的对象/ /类类 顶级顶级DFD中:中: 外部实体可构成潜在的对象外部实体可构成潜在的对象 输入输入/ /输出数据流应在输出数据流应在OOA模型得到适当的接收和处理模型得到适当的接收和处理 DFD子图子图中的函数中的函数/ /过程可构成潜在的外部服务过程可构成潜在的外部服务 ER图图中中: : 实体可构成潜在对象实体可构成潜在对象 实体的属性可构成潜在的对象属性实体的属性可构
8、成潜在的对象属性 数量对应关系可构成数量对应关系可构成OOA模型中的实例连接模型中的实例连接 状态转换图状态转换图:系统必须处理的外部事件以及系统在处理这:系统必须处理的外部事件以及系统在处理这些事件时发生的状态变迁些事件时发生的状态变迁 事件的接收、响应过程有助于对象标识事件的接收、响应过程有助于对象标识 状态信息有助于标识对象的属性状态信息有助于标识对象的属性1 11 13.3.对候选对象进一步筛选、鉴别对候选对象进一步筛选、鉴别( (1)1)对象应具有记忆其自身状态的能力。对象应具有记忆其自身状态的能力。(2)(2)对象应具有有意义的操作,以某种方式修改其状态(属性值)。对象应具有有意义
9、的操作,以某种方式修改其状态(属性值)。(3)(3)对象应具有多种有意义的属性。对象应具有多种有意义的属性。(4)(4)为对象定义的有关属性应适应于对象的所有实例。为对象定义的有关属性应适应于对象的所有实例。(5)(5)为对象定义的有关操作应适合于对象的所有实例。为对象定义的有关操作应适合于对象的所有实例。(6)(6)对象应是软件需求模型的必要成分,与设计和实现方法无关。对象应是软件需求模型的必要成分,与设计和实现方法无关。潜在对象潜在对象理由理由鉴别结论鉴别结论用户用户传感器传感器控制面板控制面板系统系统传感器编码传感器编码传感器类型传感器类型密码密码电话号码电话号码传感器事件传感器事件警报
10、器警报器角色或外部实体角色或外部实体外部实体外部实体外部实体外部实体聚集对象聚集对象概念实体概念实体概念实体概念实体概念实体概念实体概念实体概念实体事件事件外部实体外部实体不不符合符合(1)(2)符合符合(1)-(6)符合符合(1)-(6)符合符合(1)-(6)不符合不符合(3)不符合不符合(3)不符合不符合(3)不符合不符合(3)符合符合(1)-(6)符合符合(1)-(6)1 12 21.1.标识继承关系标识继承关系4.2 4.2 4.2.2 4.2.2 标识结构标识结构1.1 1.1 标识已有类之间的继承关系:是否自然?标识已有类之间的继承关系:是否自然?1.2 1.2 从已有类出发寻找子
11、类:从已有类出发寻找子类: 对象的特殊化是否位于问题域中?是否自然?对象的特殊化是否位于问题域中?是否自然? 对象的特殊化可否使用额外的属性或外部服务进行刻画?对象的特殊化可否使用额外的属性或外部服务进行刻画?1.3 1.3 从已有类出发寻找公共父类:从已有类出发寻找公共父类: 是否可以抽象出多个父类的公共属性或外部服务以简是否可以抽象出多个父类的公共属性或外部服务以简化化OOA模型?模型?1 13 32.2.标识部分标识部分整体关系整体关系4.2 4.2 4.2.2 4.2.2 标识结构标识结构2.1 2.1 标识已有类之间的部分标识已有类之间的部分整体关系:是否自然?整体关系:是否自然?2
12、.2 2.2 从已有类出发寻找部件类:从已有类出发寻找部件类: 是否可以提取多个类的公共部件类以简化是否可以提取多个类的公共部件类以简化OOA模型?模型? 提取的部件类提取的部件类是否自然?是否自然?2.3 2.3 从已有类出发寻找从已有类出发寻找整体类整体类: 是否可以将已有类组装成为新的整体类?是否可以将已有类组装成为新的整体类? 新得到的整体类新得到的整体类是是否位于问题域中?否位于问题域中? 是否自然?是否自然?1 14 44.2.2 4.2.2 标识结构标识结构2.4 2.4 标识部分标识部分整体关系中的重复度与参与度整体关系中的重复度与参与度一个整体类的实例,可能含有多个部件类的实
13、例?一个整体类的实例,可能含有多个部件类的实例?一个部件类的实例,可能出现在多个整体类的实例中?一个部件类的实例,可能出现在多个整体类的实例中?一个整体类的实例,是否必须包含某个部件类的实例?一个整体类的实例,是否必须包含某个部件类的实例?一个部件类的实例,是否必须出现在某个整体类的实例中?一个部件类的实例,是否必须出现在某个整体类的实例中?( (是否可以独立出现?是否可以独立出现?) )1 15 51.1.根据问题空间中系统根据问题空间中系统/ /子系统、问题子系统、问题/ /子问题的自然分解子问题的自然分解 关系初步确定主题词关系初步确定主题词4.2.3 4.2.3 标识主题词标识主题词4
14、.4.随分析的不断深入对主题词的内涵和划分进行必要调整随分析的不断深入对主题词的内涵和划分进行必要调整2.2.主题词可以具有层次结构主题词可以具有层次结构3.3.根据主题词将要求分析任务划分至各分析小组根据主题词将要求分析任务划分至各分析小组1 16 61.1.标识属性标识属性4.2.4 4.2.4 标识属性及实例关系标识属性及实例关系1.11.1在在ER图中,实体的属性可能构成图中,实体的属性可能构成OOA模型的属性模型的属性1.3 1.3 属性必须适应于属性必须适应于类类的所有实例,的所有实例, 否则应考虑继承关系的可能性否则应考虑继承关系的可能性1.21.2哪些属性在问题空间中完全刻画了
15、被标识的每个对象?哪些属性在问题空间中完全刻画了被标识的每个对象?规则规则1.1.4 4 导出属性和外部不可见属性应略去导出属性和外部不可见属性应略去1 17 72.2.标识实例关系标识实例关系4.2.4 4.2.4 标识属性及实例关系标识属性及实例关系1.11.1 利用自然语言处理方法自动收集对象之间的关系利用自然语言处理方法自动收集对象之间的关系1.3 1.3 导出关系可以省略导出关系可以省略1.2 1.2 实例关系应反映自然域中的限制或事务规则实例关系应反映自然域中的限制或事务规则1 18 81.1.在自然语言处理过程中,考虑相关的动词可否构成外部服务在自然语言处理过程中,考虑相关的动词
16、可否构成外部服务4.2.5 4.2.5 标识服务和消息:标识服务和消息: 分析对象之间的动态关联分析对象之间的动态关联2.2.考虑对象的生命周期(创建、删除、维护)考虑对象的生命周期(创建、删除、维护)4.4.基于状态基于状态事件事件响应图提取对象之间的消息传递响应图提取对象之间的消息传递3.3.结合结合数据流图考虑对象的计算性行为数据流图考虑对象的计算性行为5.5.通过运行走查细化外部服务的定义通过运行走查细化外部服务的定义1 19 94.2.5 4.2.5 标识服务和消息:标识服务和消息: 分析对象之间的动态关联分析对象之间的动态关联1.1.任一对象的所有外部服务均由传入该对象的消息引发任
17、一对象的所有外部服务均由传入该对象的消息引发3.3.消息连接必须与实例关系相一致消息连接必须与实例关系相一致2.2.属性必须与某外部服务相关联,否则可删去属性必须与某外部服务相关联,否则可删去规则规则2020OOA小结小结1.1 1.1 采用自然语言处理技术标识问题域中的概念及其相互关系采用自然语言处理技术标识问题域中的概念及其相互关系1.1.发现和识别对象发现和识别对象1.2 1.2 根据根据DFDDFD,ERER和状态转换图进一步标识有用的对象和状态转换图进一步标识有用的对象/ /类类1.3 1.3 对候选对象进一步筛选、鉴别对候选对象进一步筛选、鉴别2.1 2.1 标识继承关系标识继承关
18、系2.2.标识结构标识结构3.3.标识主题词标识主题词4.4.标识属性及实例关系标识属性及实例关系5.5.标识服务和消息:分析对象之间的动态关联标识服务和消息:分析对象之间的动态关联2.2 2.2 标识部分标识部分整体关系整体关系2 21 14.3 4.3 电梯控制系统(电梯控制系统(ECS)在在M M层的建筑内安装了层的建筑内安装了N N部电梯。电梯问题是指这些电梯的逻部电梯。电梯问题是指这些电梯的逻辑控制问题:辑控制问题:1. 1. 每个电梯有一些按钮,每个按钮对应一个楼层。当按下按每个电梯有一些按钮,每个按钮对应一个楼层。当按下按钮后,按钮灯亮,并指出电梯开往相应楼层。当电梯到达该钮后,
展开阅读全文