- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 面向对象方法学引论(new)
* * * * * * 用例中的每个用例都是通过若干对象相互合作实现的。对象的行为模型指明一个系统对外部事件的激励所作出的响应。为创建该模型,应该完成以下工作: ? 评估所有use-case以完全理解系统中的交互顺序。 ? 标识驱动交互序列的事件并理解这些事件如何和特定的对象相关联。 ? 为每个use-case创建交互图。 ? 为具有主要动态特征的类建立状态转换图。 ? 为描述对象的工作流同时便于识别并发活动建立相应的活动图。 ? 评价行为模型以验证精确性和一致性。 * * * * * * * * * * * * * * 把数据和代码作为分离的实体,反映了计算机的观点,因为在计算机内部数据和程序是分开存放的。但是,这样做的时候总存在使用错误的数据调用正确的程序模块,或使用正确的数据调用错误的程序模块的危险。使数据和操作保持一致,是程序员的一个沉重负担,在多人分工合作开发一个大型软件系统的过程中,如果负责设计数据结构的人中途改变了某个数据的结构而又没有及时通知所有人员,则会发生许多不该发生的错误。 * * 面向对象方法学比较自然地模拟了人类认识客观世界的思维方式,它所追求的目标和遵循的基本原则,就是使描述问题的问题空间和在计算机中解决问题的解空间,在结构上尽可能一致。 * * * * * * 曾对面向对象方法学的发展做出过重要贡献的Booch,Rumbaugh和Jacobson经过合作研究,于1996年6月设计出统一建模语言UML 0.9。截止到1996年10月,在美国已有700多家公司表示支持采用UML作为建模语言,在1996年年底,UML已经稳定地占领了面向对象技术市场的85%,成为事实上的工业标准。1997年11月,国际对象管理组织OMG批准把UML 1.1作为基于面向对象技术的标准建模语言。 通常,使用UML提供的类图来建立对象模型。在UML中术语“类”的实际含义是,“一个类及属于该类的对象”。下面简要地介绍UML的类图。 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 9.6.1 用例图 4. 用例之间的关系 UML用例之间主要有扩展和使用两种关系,它们是泛化关系的两种不同形式。 (1) 扩展关系 向一个用例中添加一些动作后构成了另一个用例,这两个用例之间的关系就是扩展关系,后者继承前者的一些行为。 例如,在自动售货机系统中,“售货”是一个基本的用例,如果顾客购买罐装饮料,售货功能完成得很顺利,但是,如果顾客要购买用纸杯装的散装饮料,则不能执行该用例提供的常规动作,而要做些改动。 9.6.1 用例图 我们可以修改售货用例,使之既能提供售罐装饮料的常规动作又能提供售散装饮料的非常规动作。 图9.17中把常规动作放在“售货”用例中,而把非常规动作放置于“售散装饮料”用例中,这两个用例之间的关系就是扩展关系。 在用例图中,用例之间的扩展关系图示为《扩展》的泛化关系。 9.6.1 用例图 9.6.1 用例图 (2) 使用关系 当一个用例使用另一个用例时,这两个用例之间就构成了使用关系。 如果在若干个用例中有某些相同的动作,则可以把这些相同的动作提取出来单独构成一个用例(称为抽象用例)。 这样,当某个用例使用该抽象用例时,就好像这个用例包含了抽象用例中的所有动作。在用例图中,用例之间的使用关系用《使用》的泛化关系表示,如图9.17所示。 9.6.1 用例图 请注意扩展与使用之间的异同: 这两种关系都意味着从几个用例中抽取那些公共的行为并放入一个单独的用例中。 而这个用例被其他用例使用或扩展,但是,使用和扩展的目的是不同的。 通常在描述一般行为的变化时采用扩展关系; 在两个或多个用例中出现重复描述又想避免这种重复时,可以采用使用关系。 9.6.2 用例建模 获取用例是需求分析阶段的主要工作之一,而且是首先要做的工作。 大部分用例将在项目的需求分析阶段产生,并且随着开发工作的深入还会发现更多用例,这些新发现的用例都应及时补充进已有的用例集中。 用例集中的每个用例都是对系统的一个潜在的需求。 9.6.2 用例建模 一个用例模型由若干幅用例图组成。创建用例模型的工作包括: 定义系统,寻找行为者和用例,描述用例,定义用例之间的关系,确认模型。其中,寻找行为者和用例是关键。 1. 寻找行为者 为获取用例首先要找出系统的行为者,可以通过请系统的用户回答一些问题的办法来发现行为者。下述问题有助于发现行为者: 谁将使用系统的主要功能(主行为者)? 谁需要借助系统的支持来完
文档评论(0)