- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第21章面向对象分析82
软 件 工 程 第21章?面向对象分析 21.1 面向对象的分析 21.2 领域分析 21.3 OO分析模型的类属成分 21.4 OOA过程 21.5 对象—关系模型 21.6 对象—行为模型 21.7 小结 传统方法和面向对象方法的比较 传统系统分析方法:面向功能 ,把系统 看成一组功能 OOA方法: 把问题当作一组相互作用 的实体,并确定实体间关系 OOA的意图是定义所有和被求解的问题相关的类 (它们关联的操作和属性、它们之间的关系和展示 的行为),为了达到这个目标,必须完成以下任务: (1)必须在客户和软件工程师之间沟 通了解基本的用户需求; (2)必须标识类(定义属性和方法); (3)必须刻画类层次; (4)表示对象与对象关系(对象连接); (5)对象行为必须被建模; (6)任务(1)到(5)递进反复使用,直至完成模型 流行的几种面向对象方法: Booch方法 Coad-Yourdon方法 Rumbaugh 方法(简称OMT) (Object Modeling Technology) Jacobson 方法(简称OOSE) 由Rumbaugh 、 Booch 、 Jacobson 提出的统一建模语言 (Unify Modeing Language简称UML) 目前流行的OOA方法概述 Coad-Yourdon方法 Coad-Yourdon的OOA过程概述: 使用“寻找什么”标准来标识对象 定义一般/特殊结构 定义整体/部分结构 标识主题(子系统构件的表示) 定义属性 定义服务 目前流行的OOA方法概述 Booch方法 Booch的OOA宏观开发过程概述: 标识类和对象 标识类和对象的语义 标识类和对象间的关系 进行精化 目前流行的OOA方法概述 Rumbaugh方法(简称OMT) Rumbaugh的OOA过程概述: 开发对问题的范围陈述 建造对象模型 开发动态模型 构造系统的功能模型 统一的OOA方法 由Rumbaugh 、 Booch 、Jacobson 提出的统一建模语言 (Unify Modeing Language简称UML) UML的开发历程 21.2 领域分析 领域分析:在中间抽象层次进行的OOA活动。 领域分析过程活动: 定义将被调查的领域 分类从领域中抽取出来的项 收集领域中应用的代表性样本 分析样本中的每个应用 为对象开发分析模型 21.3 OO分析模型的类属成分 静态成分:性质上是结构性的并指明了在应用的整个运行生存期 中保持的特征。动态成分:定义了一个对象如何和其他对象在一 定时间区间内交互。以下模型描述成分被标识: 语义类的静态视图 属性的静态视图 关系的静态视图 行为的静态视图 通信的动态视图 控制和时序的动态视图 21.4 OOA过程 21.4.1 use-case OOA中, use-case被作为分析模型的第一 个元素的基础。使用UML符号体系,可创建 use-case图,它包含参与者和use-case, 参与者是和系统交互的实体,可以是用户 或与该软件有接口的其他机器或系统。 21.4.2 类-责任-协作者建模(CRC) 一个CRC模型实际是一组标准的表示类的索引卡 片。卡片被分为三个部分:在卡片的顶部写下类 的名字,在卡片体的左边列出类的责任,而右边 列出协作者。责任是和该类相关的属性和操作, 协作者是为一个类提供要完成责任所需要的信息 的那些类。 21.4.2.1 类 类的类型如下: 设备类:模拟外部实体 性质类:表示问题环境的某些重要性质 交互类:模拟发生在其他对象间的交互 21.4.2.1 类 对象和类可按下列特征进行分类: 确切性:类表示了确切的事物还是更抽象的信息? 包含性:类是原子的还是聚合的? 顺序性:类是并发的还是顺序的? 永久性:类是短暂的、临时的还是永久的? 完整性:类是易被侵害的还是被保护的? 21.4.2.2 责任 将责任分配到类的5条指导原则: 系统智能应该被平均地分布; 每个责任应尽可能被概括地陈述; 信息和与其相关的行为应驻留在相同类中; 关于一个事物的信息应局部化于单个类中,而不是分布在多个类中; 在适当的时候,在相关类间共享责任。 21.4.2.3 协作 类完成其责任有两种方式: 类使用它自己的操作去操纵它自己的属性; 类可以和其他类协作。 协作标识了类间的关系,当一组类一起协作以完成某需求时,它们可以被组织为子系统。 协作通过确定是否类可以自己完成每个责任来标识, 若不能,则它需和另一个对象交互,产生协作。 21.4.2.3 协作 三种不同的类间的类属关系: 部分(is-part-of
文档评论(0)