欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    用例建模与分析.pptx

    • 资源ID:88338567       资源大小:301.83KB        全文页数:58页
    • 资源格式: PPTX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    用例建模与分析.pptx

    会计学1用例建模与分析用例建模与分析 用例必须从用户的角度描述所期望的系统行为,完整的用例集合确定了用例必须从用户的角度描述所期望的系统行为,完整的用例集合确定了用例必须从用户的角度描述所期望的系统行为,完整的用例集合确定了用例必须从用户的角度描述所期望的系统行为,完整的用例集合确定了系统的范围,包含了系统的所有行为。系统的范围,包含了系统的所有行为。系统的范围,包含了系统的所有行为。系统的范围,包含了系统的所有行为。用例应作为需求定义单元或仅仅作用例应作为需求定义单元或仅仅作用例应作为需求定义单元或仅仅作用例应作为需求定义单元或仅仅作为一个用户目标。为一个用户目标。为一个用户目标。为一个用户目标。3.4 3.4 3.4 3.4 用例建模技术用例建模技术用例建模技术用例建模技术 用例建模是一个从外部视角来描述目标系统行为的过程。用例建模是一个从外部视角来描述目标系统行为的过程。用例建模是一个从外部视角来描述目标系统行为的过程。用例建模是一个从外部视角来描述目标系统行为的过程。用于描述系统用于描述系统用于描述系统用于描述系统将要做什么,而不是如何做,将要做什么,而不是如何做,将要做什么,而不是如何做,将要做什么,而不是如何做,主要帮助设计师关注系统需求主要帮助设计师关注系统需求主要帮助设计师关注系统需求主要帮助设计师关注系统需求,而不是系统,而不是系统,而不是系统,而不是系统实现。实现。实现。实现。用例图能够使系统设计师从用户的视角发现目标系统需求,是设计用例图能够使系统设计师从用户的视角发现目标系统需求,是设计用例图能够使系统设计师从用户的视角发现目标系统需求,是设计用例图能够使系统设计师从用户的视角发现目标系统需求,是设计师与用户进行沟通的有效工具。师与用户进行沟通的有效工具。师与用户进行沟通的有效工具。师与用户进行沟通的有效工具。用例模型(用例模型(用例模型(用例模型(Use Case ModelUse Case ModelUse Case ModelUse Case Model)是一幅图或一组图,还可能包含额外的)是一幅图或一组图,还可能包含额外的)是一幅图或一组图,还可能包含额外的)是一幅图或一组图,还可能包含额外的资料,用于表达所提交的软件系统要完成的工作。资料,用于表达所提交的软件系统要完成的工作。资料,用于表达所提交的软件系统要完成的工作。资料,用于表达所提交的软件系统要完成的工作。用例图由用例图由用例图由用例图由3 3 3 3部分组成:部分组成:部分组成:部分组成:参与者参与者参与者参与者 用例以及用例之间的通信用例以及用例之间的通信用例以及用例之间的通信用例以及用例之间的通信 额外文档额外文档额外文档额外文档 另外,用例图还包含系统边界。另外,用例图还包含系统边界。另外,用例图还包含系统边界。另外,用例图还包含系统边界。1.1.1.1.参与者参与者参与者参与者 参与者是需要与系统交互信息的一切外部实体。参与者是需要与系统交互信息的一切外部实体。参与者是需要与系统交互信息的一切外部实体。参与者是需要与系统交互信息的一切外部实体。主要包括以下几类:主要包括以下几类:主要包括以下几类:主要包括以下几类:3 GIS软件工程软件工程用例建模与分析用例建模与分析第1页/共58页人;人;人;人;计算机硬件或设备;计算机硬件或设备;计算机硬件或设备;计算机硬件或设备;外部系统。外部系统。外部系统。外部系统。参与者代表了用户可以扮演的角色,不是某个特定的用户,而是可以参与者代表了用户可以扮演的角色,不是某个特定的用户,而是可以参与者代表了用户可以扮演的角色,不是某个特定的用户,而是可以参与者代表了用户可以扮演的角色,不是某个特定的用户,而是可以扮演某个角色的一组用户。扮演某个角色的一组用户。扮演某个角色的一组用户。扮演某个角色的一组用户。一个人可能是某个参与者的实例,多个人也一个人可能是某个参与者的实例,多个人也一个人可能是某个参与者的实例,多个人也一个人可能是某个参与者的实例,多个人也可能扮演某个参与者的同一角色。可能扮演某个参与者的同一角色。可能扮演某个参与者的同一角色。可能扮演某个参与者的同一角色。识别用例的通用方法是与将要直接操作该系统的用户交谈,该过程有识别用例的通用方法是与将要直接操作该系统的用户交谈,该过程有识别用例的通用方法是与将要直接操作该系统的用户交谈,该过程有识别用例的通用方法是与将要直接操作该系统的用户交谈,该过程有助于设计满足用户需求的系统。助于设计满足用户需求的系统。助于设计满足用户需求的系统。助于设计满足用户需求的系统。而系统的其它涉众可能在关键的开发阶而系统的其它涉众可能在关键的开发阶而系统的其它涉众可能在关键的开发阶而系统的其它涉众可能在关键的开发阶段漏掉,导致系统可能不满足所有涉众需求。段漏掉,导致系统可能不满足所有涉众需求。段漏掉,导致系统可能不满足所有涉众需求。段漏掉,导致系统可能不满足所有涉众需求。在同一个软件系统中,不在同一个软件系统中,不在同一个软件系统中,不在同一个软件系统中,不同涉众的需求可能存在冲突,开发小组的通行做法是召集所有涉众,以同涉众的需求可能存在冲突,开发小组的通行做法是召集所有涉众,以同涉众的需求可能存在冲突,开发小组的通行做法是召集所有涉众,以同涉众的需求可能存在冲突,开发小组的通行做法是召集所有涉众,以确定所有需求,同时解决存在矛盾的需求。确定所有需求,同时解决存在矛盾的需求。确定所有需求,同时解决存在矛盾的需求。确定所有需求,同时解决存在矛盾的需求。2.2.2.2.表示参与者表示参与者表示参与者表示参与者 参与者一般用人形简笔画来表示,即便参与者不是人类时,仍然使用参与者一般用人形简笔画来表示,即便参与者不是人类时,仍然使用参与者一般用人形简笔画来表示,即便参与者不是人类时,仍然使用参与者一般用人形简笔画来表示,即便参与者不是人类时,仍然使用这种表示法。这种表示法。这种表示法。这种表示法。在在在在UMLUMLUMLUML中,可以用带有构造形的类图来表示参与者,将构中,可以用带有构造形的类图来表示参与者,将构中,可以用带有构造形的类图来表示参与者,将构中,可以用带有构造形的类图来表示参与者,将构造形放在位于图标上半部分类名的上方,如下图所示。造形放在位于图标上半部分类名的上方,如下图所示。造形放在位于图标上半部分类名的上方,如下图所示。造形放在位于图标上半部分类名的上方,如下图所示。3 GIS软件工程软件工程用例建模与分析用例建模与分析第2页/共58页3.3.3.3.参与者类型参与者类型参与者类型参与者类型 参与者可以分为主要参与者和次要参与者。参与者可以分为主要参与者和次要参与者。参与者可以分为主要参与者和次要参与者。参与者可以分为主要参与者和次要参与者。所谓主要参与者是指主要用户或系所谓主要参与者是指主要用户或系所谓主要参与者是指主要用户或系所谓主要参与者是指主要用户或系统设计时主要面向的实体。主要参与者应具备的关键特征包括:统设计时主要面向的实体。主要参与者应具备的关键特征包括:统设计时主要面向的实体。主要参与者应具备的关键特征包括:统设计时主要面向的实体。主要参与者应具备的关键特征包括:完全位于系统外部,并驱动系统需求;完全位于系统外部,并驱动系统需求;完全位于系统外部,并驱动系统需求;完全位于系统外部,并驱动系统需求;使用系统,以实现某个可观测的用户目标。使用系统,以实现某个可观测的用户目标。使用系统,以实现某个可观测的用户目标。使用系统,以实现某个可观测的用户目标。次要参与者是监督、操作和管理该系统的用户或者实体。次要参与者是监督、操作和管理该系统的用户或者实体。次要参与者是监督、操作和管理该系统的用户或者实体。次要参与者是监督、操作和管理该系统的用户或者实体。扮演支撑角色,以帮扮演支撑角色,以帮扮演支撑角色,以帮扮演支撑角色,以帮助主要参与者实现他们的目标,次要参与者特征包括:助主要参与者实现他们的目标,次要参与者特征包括:助主要参与者实现他们的目标,次要参与者特征包括:助主要参与者实现他们的目标,次要参与者特征包括:次要参与者经常更多地出现在系统的内部而不是外部;次要参与者经常更多地出现在系统的内部而不是外部;次要参与者经常更多地出现在系统的内部而不是外部;次要参与者经常更多地出现在系统的内部而不是外部;次要参与者经常指定很多系统需求,这些需求不能直接从需求陈述中得到。如次要参与者经常指定很多系统需求,这些需求不能直接从需求陈述中得到。如次要参与者经常指定很多系统需求,这些需求不能直接从需求陈述中得到。如次要参与者经常指定很多系统需求,这些需求不能直接从需求陈述中得到。如下面的例子所示。下面的例子所示。下面的例子所示。下面的例子所示。ActorCustomer3 GIS软件工程软件工程用例建模与分析用例建模与分析第3页/共58页报税表可以由纳税人(直接参与者)直接提交,也可以通过报税表可以由纳税人(直接参与者)直接提交,也可以通过报税表可以由纳税人(直接参与者)直接提交,也可以通过报税表可以由纳税人(直接参与者)直接提交,也可以通过InternetInternetInternetInternet或邮寄进行,或邮寄进行,或邮寄进行,或邮寄进行,若是后面一种情况,就需要数据录入员将报税表单中的数据录入系统,若是后面一种情况,就需要数据录入员将报税表单中的数据录入系统,若是后面一种情况,就需要数据录入员将报税表单中的数据录入系统,若是后面一种情况,就需要数据录入员将报税表单中的数据录入系统,数据录入员数据录入员数据录入员数据录入员可视为次要参与者可视为次要参与者可视为次要参与者可视为次要参与者,因为他们帮助报税人处理报税表单。,因为他们帮助报税人处理报税表单。,因为他们帮助报税人处理报税表单。,因为他们帮助报税人处理报税表单。4.4.4.4.参与者与角色参与者与角色参与者与角色参与者与角色 在用例建模中,参与者的精确含义应该是一组角色在用例建模中,参与者的精确含义应该是一组角色在用例建模中,参与者的精确含义应该是一组角色在用例建模中,参与者的精确含义应该是一组角色,个人或其它外部系统都能扮,个人或其它外部系统都能扮,个人或其它外部系统都能扮,个人或其它外部系统都能扮演这些角色。同一个人可以在不同的时间扮演不同的角色,具有相同职务头衔的职演这些角色。同一个人可以在不同的时间扮演不同的角色,具有相同职务头衔的职演这些角色。同一个人可以在不同的时间扮演不同的角色,具有相同职务头衔的职演这些角色。同一个人可以在不同的时间扮演不同的角色,具有相同职务头衔的职员,可以扮演不同的角色以适应业务需求的需要。员,可以扮演不同的角色以适应业务需求的需要。员,可以扮演不同的角色以适应业务需求的需要。员,可以扮演不同的角色以适应业务需求的需要。5.5.5.5.用例用例用例用例 用例描述一系列动作,系统执行这些动作,以产生某个特定参与者能够观察到的用例描述一系列动作,系统执行这些动作,以产生某个特定参与者能够观察到的用例描述一系列动作,系统执行这些动作,以产生某个特定参与者能够观察到的用例描述一系列动作,系统执行这些动作,以产生某个特定参与者能够观察到的结果。结果。结果。结果。即用例是参与者与系统之间对话的抽象,描述可能的交互,而不深入某个场即用例是参与者与系统之间对话的抽象,描述可能的交互,而不深入某个场即用例是参与者与系统之间对话的抽象,描述可能的交互,而不深入某个场即用例是参与者与系统之间对话的抽象,描述可能的交互,而不深入某个场景的详细细节。景的详细细节。景的详细细节。景的详细细节。在在在在UMLUMLUMLUML中,使用带有描述参与者目标标签的椭圆形表示用例中,使用带有描述参与者目标标签的椭圆形表示用例中,使用带有描述参与者目标标签的椭圆形表示用例中,使用带有描述参与者目标标签的椭圆形表示用例。使用直线表示通。使用直线表示通。使用直线表示通。使用直线表示通信链接,将用例连接到一个或多个参与者。如在与信链接,将用例连接到一个或多个参与者。如在与信链接,将用例连接到一个或多个参与者。如在与信链接,将用例连接到一个或多个参与者。如在与ATMATMATMATM系统的交互过程中,客户目系统的交互过程中,客户目系统的交互过程中,客户目系统的交互过程中,客户目标之一是从账户中取款,其用例可表示如下。标之一是从账户中取款,其用例可表示如下。标之一是从账户中取款,其用例可表示如下。标之一是从账户中取款,其用例可表示如下。3 GIS软件工程软件工程用例建模与分析用例建模与分析第4页/共58页好的用例应该满足的条件:好的用例应该满足的条件:好的用例应该满足的条件:好的用例应该满足的条件:描述系统执行的一系列事务,这些被执行的事务可为特定参与者产生可描述系统执行的一系列事务,这些被执行的事务可为特定参与者产生可描述系统执行的一系列事务,这些被执行的事务可为特定参与者产生可描述系统执行的一系列事务,这些被执行的事务可为特定参与者产生可度量的结果。度量的结果。度量的结果。度量的结果。从用户角度描述期望的系统行为。从用户角度描述期望的系统行为。从用户角度描述期望的系统行为。从用户角度描述期望的系统行为。使得系统分析使能够从高层次业务观点来理解系统,并为之建模。使得系统分析使能够从高层次业务观点来理解系统,并为之建模。使得系统分析使能够从高层次业务观点来理解系统,并为之建模。使得系统分析使能够从高层次业务观点来理解系统,并为之建模。表示系统提供给外部实体的接口,以及参与者与系统之间的相互关系。表示系统提供给外部实体的接口,以及参与者与系统之间的相互关系。表示系统提供给外部实体的接口,以及参与者与系统之间的相互关系。表示系统提供给外部实体的接口,以及参与者与系统之间的相互关系。6.6.6.6.系统边界系统边界系统边界系统边界 定义了开发中的系统范围,在定义了开发中的系统范围,在定义了开发中的系统范围,在定义了开发中的系统范围,在UMLUMLUMLUML中用矩形表示边界,所有用例都必中用矩形表示边界,所有用例都必中用矩形表示边界,所有用例都必中用矩形表示边界,所有用例都必须放在边界以内。参与者放在系统边界以外,所有用例共同组成了系统的须放在边界以内。参与者放在系统边界以外,所有用例共同组成了系统的须放在边界以内。参与者放在系统边界以外,所有用例共同组成了系统的须放在边界以内。参与者放在系统边界以外,所有用例共同组成了系统的总需求。总需求。总需求。总需求。取款参与者、用例和通信链接参与者、用例和通信链接3 GIS软件工程软件工程用例建模与分析用例建模与分析第5页/共58页3.5 3.5 3.5 3.5 用例建模示例用例建模示例用例建模示例用例建模示例 1.ATM1.ATM1.ATM1.ATM系统系统系统系统 ATMATMATMATM通过计算机化银行网络进行账户交易,银行网络包含一台中通过计算机化银行网络进行账户交易,银行网络包含一台中通过计算机化银行网络进行账户交易,银行网络包含一台中通过计算机化银行网络进行账户交易,银行网络包含一台中心计算机,它连接着所有的心计算机,它连接着所有的心计算机,它连接着所有的心计算机,它连接着所有的ATMATMATMATM机和单个银行拥有的银行计算机,机和单个银行拥有的银行计算机,机和单个银行拥有的银行计算机,机和单个银行拥有的银行计算机,每台银行计算机用来处理由其客户请求的交易。每台银行计算机用来处理由其客户请求的交易。每台银行计算机用来处理由其客户请求的交易。每台银行计算机用来处理由其客户请求的交易。在这个例子中,客户在这个例子中,客户在这个例子中,客户在这个例子中,客户CustomerCustomerCustomerCustomer是是是是ATMATMATMATM系统的一组参与者。他们系统的一组参与者。他们系统的一组参与者。他们系统的一组参与者。他们操作操作操作操作ATMATMATMATM存款、取款或者检查账户余额等。可以将这些可观察的服存款、取款或者检查账户余额等。可以将这些可观察的服存款、取款或者检查账户余额等。可以将这些可观察的服存款、取款或者检查账户余额等。可以将这些可观察的服务作为用来。务作为用来。务作为用来。务作为用来。3 GIS软件工程软件工程用例建模与分析用例建模与分析第6页/共58页ATM Banking System取款存款查询余额客户系统名称用例系统边界联系ATM系统用例模型3 GIS软件工程软件工程用例建模与分析用例建模与分析第7页/共58页2.2.2.2.酒店信息系统酒店信息系统酒店信息系统酒店信息系统 考虑简单的酒店信息系统,有两类客户,即团客和散客。考虑简单的酒店信息系统,有两类客户,即团客和散客。考虑简单的酒店信息系统,有两类客户,即团客和散客。考虑简单的酒店信息系统,有两类客户,即团客和散客。前者是旅游承办商提前预定,后者是旅客直接与酒店进行预定。前者是旅游承办商提前预定,后者是旅客直接与酒店进行预定。前者是旅游承办商提前预定,后者是旅客直接与酒店进行预定。前者是旅游承办商提前预定,后者是旅客直接与酒店进行预定。两类客户都可以利用两类客户都可以利用两类客户都可以利用两类客户都可以利用InternetInternetInternetInternet或电话预定、取消、检入和检出或电话预定、取消、检入和检出或电话预定、取消、检入和检出或电话预定、取消、检入和检出房间。房间。房间。房间。基于这些需求,共有基于这些需求,共有基于这些需求,共有基于这些需求,共有4 4 4 4个可观测到的服务可作为用例:预定、个可观测到的服务可作为用例:预定、个可观测到的服务可作为用例:预定、个可观测到的服务可作为用例:预定、取消预定、检入和检出。其用例模型如下图所示。取消预定、检入和检出。其用例模型如下图所示。取消预定、检入和检出。其用例模型如下图所示。取消预定、检入和检出。其用例模型如下图所示。3 GIS软件工程软件工程用例建模与分析用例建模与分析第8页/共58页Hotel Information System预定房间取消预定检入房间检出房间客户团客散客处理房间预定的职员接待职员3 GIS软件工程软件工程用例建模与分析用例建模与分析第9页/共58页3.6 3.6 3.6 3.6 用例分析技术用例分析技术用例分析技术用例分析技术3.6.1 3.6.1 3.6.1 3.6.1 进行用例分析进行用例分析进行用例分析进行用例分析 在用例分析过程中,通常可以访问客户和系统的典型用户。描述在用例分析过程中,通常可以访问客户和系统的典型用户。描述在用例分析过程中,通常可以访问客户和系统的典型用户。描述在用例分析过程中,通常可以访问客户和系统的典型用户。描述系统的用例是一个实用且非常重要的练习,它有助于识别冗余或不系统的用例是一个实用且非常重要的练习,它有助于识别冗余或不系统的用例是一个实用且非常重要的练习,它有助于识别冗余或不系统的用例是一个实用且非常重要的练习,它有助于识别冗余或不清晰的功能,用例分析有助于解决一些潜在的沟通问题。清晰的功能,用例分析有助于解决一些潜在的沟通问题。清晰的功能,用例分析有助于解决一些潜在的沟通问题。清晰的功能,用例分析有助于解决一些潜在的沟通问题。在以下领域中需要使用用例分析:在以下领域中需要使用用例分析:在以下领域中需要使用用例分析:在以下领域中需要使用用例分析:发现新功能(需求)。在分析系统和深化设计的过程中,新的用例发现新功能(需求)。在分析系统和深化设计的过程中,新的用例发现新功能(需求)。在分析系统和深化设计的过程中,新的用例发现新功能(需求)。在分析系统和深化设计的过程中,新的用例常常可以帮助产生新的需求。常常可以帮助产生新的需求。常常可以帮助产生新的需求。常常可以帮助产生新的需求。与客户沟通。与客户沟通。与客户沟通。与客户沟通。产生测试案例。用例的场景结合还可以提供一个测试套件,并作为产生测试案例。用例的场景结合还可以提供一个测试套件,并作为产生测试案例。用例的场景结合还可以提供一个测试套件,并作为产生测试案例。用例的场景结合还可以提供一个测试套件,并作为形成用户界面的起点。形成用户界面的起点。形成用户界面的起点。形成用户界面的起点。场景是捕获某个用例的某此特定执行场景是捕获某个用例的某此特定执行场景是捕获某个用例的某此特定执行场景是捕获某个用例的某此特定执行。即用。即用。即用。即用例是泛化描述或者是一系列事务的模板,而场景是用例的一个具体例是泛化描述或者是一系列事务的模板,而场景是用例的一个具体例是泛化描述或者是一系列事务的模板,而场景是用例的一个具体例是泛化描述或者是一系列事务的模板,而场景是用例的一个具体实例。实例。实例。实例。3 GIS软件工程软件工程用例建模与分析用例建模与分析第10页/共58页3.6.2 3.6.2 用例建模的用例建模的UMLUML表示法小结表示法小结 现将用例建模的现将用例建模的UMLUML表示法小结如下:表示法小结如下:用例:系统执行的一系列事务,用例:系统执行的一系列事务,通过这些事务,系统产生某个通过这些事务,系统产生某个特定用户可度量的结果。特定用户可度量的结果。用例名参与者:用户在与这些用户交参与者:用户在与这些用户交互时所扮演的一组角色。互时所扮演的一组角色。参与者名称参与者名称系统边界:物理系统与该物理系统进系统边界:物理系统与该物理系统进行交互的参与者之间的边界行交互的参与者之间的边界系统名称系统名称3 GIS软件工程软件工程用例建模与分析用例建模与分析第11页/共58页关联:参与者在某个用例中的关联:参与者在某个用例中的关联:参与者在某个用例中的关联:参与者在某个用例中的参与,如参与者的某个实例与参与,如参与者的某个实例与参与,如参与者的某个实例与参与,如参与者的某个实例与用例的某个实例进行通信用例的某个实例进行通信用例的某个实例进行通信用例的某个实例进行通信泛化:一般用例与较特定用例泛化:一般用例与较特定用例之间的分类关系,箭头指向一之间的分类关系,箭头指向一般用例。般用例。扩展:扩展用例与其基本用例扩展:扩展用例与其基本用例之间的关系,指定如何将扩展之间的关系,指定如何将扩展用例的行为插入到基本用例所用例的行为插入到基本用例所定义的行为中去,箭头指向基定义的行为中去,箭头指向基本用例。本用例。extend包含:基本用例和包含用例之包含:基本用例和包含用例之间的关系,指定为包含用例定间的关系,指定为包含用例定义的行为如何插入到基本用例义的行为如何插入到基本用例的行为中去。箭头指向包含用的行为中去。箭头指向包含用例。例。include3 GIS软件工程软件工程用例建模与分析用例建模与分析第12页/共58页3.6.3 3.6.3 使用关系组织用例使用关系组织用例 在开发用例模型的过程中,在开发用例模型的过程中,可能会发现有些用例之间包含相同的行可能会发现有些用例之间包含相同的行为为。在有些情况下,除了一些额外的行为之外,有些用例很相似在有些情况下,除了一些额外的行为之外,有些用例很相似。在。在上面讲过的上面讲过的ATM系统中,取款、存款和查询余额都要先进行账户登录,系统中,取款、存款和查询余额都要先进行账户登录,因此可以将用户登录作为单独的用例,其它用例可以共享这个用例。因此可以将用户登录作为单独的用例,其它用例可以共享这个用例。在在UML中,账户登录与取款和存款这两个用例之间的关系可以用中,账户登录与取款和存款这两个用例之间的关系可以用include来表示。来表示。取款存款账户登录includeinclude3 GIS软件工程软件工程用例建模与分析用例建模与分析第13页/共58页 在在在在UMLUMLUMLUML中,支持中,支持中,支持中,支持3 3 3 3种用于用例的关系类型:种用于用例的关系类型:种用于用例的关系类型:种用于用例的关系类型:includeincludeincludeinclude、extendextendextendextend和和和和泛化。泛化。泛化。泛化。UMLUMLUMLUML构造型是书写在书名号(构造型是书写在书名号(构造型是书写在书名号(构造型是书写在书名号()中的标签,表示某些超出)中的标签,表示某些超出)中的标签,表示某些超出)中的标签,表示某些超出UMLUMLUMLUML基本定义的语义概念。使用基本定义的语义概念。使用基本定义的语义概念。使用基本定义的语义概念。使用UMLUMLUMLUML构造型,可扩展构造型,可扩展构造型,可扩展构造型,可扩展UMLUMLUMLUML语义,以便支语义,以便支语义,以便支语义,以便支持特定的设计方法或设计师需求。持特定的设计方法或设计师需求。持特定的设计方法或设计师需求。持特定的设计方法或设计师需求。1.1.1.1.includeincludeincludeinclude关系关系关系关系 includeincludeincludeinclude关系用于两个或多个用例中,以共享事件流中某些公共部关系用于两个或多个用例中,以共享事件流中某些公共部关系用于两个或多个用例中,以共享事件流中某些公共部关系用于两个或多个用例中,以共享事件流中某些公共部分。然后将该公共部分分组并提取出来,形成一个包含用例,在两个或多分。然后将该公共部分分组并提取出来,形成一个包含用例,在两个或多分。然后将该公共部分分组并提取出来,形成一个包含用例,在两个或多分。然后将该公共部分分组并提取出来,形成一个包含用例,在两个或多个用例中共享。个用例中共享。个用例中共享。个用例中共享。2.2.2.2.extendextendextendextend关系关系关系关系 如果两个用例相似,但一个用例比另一个用例所做的事稍多一些,则可如果两个用例相似,但一个用例比另一个用例所做的事稍多一些,则可如果两个用例相似,但一个用例比另一个用例所做的事稍多一些,则可如果两个用例相似,但一个用例比另一个用例所做的事稍多一些,则可以使用以使用以使用以使用extendextendextendextend关系。例如,可以使用一个用例来捕获典型情况(基本关系。例如,可以使用一个用例来捕获典型情况(基本关系。例如,可以使用一个用例来捕获典型情况(基本关系。例如,可以使用一个用例来捕获典型情况(基本用例),然后使用扩展来描述各种变化,使基本用例可以有条件地调用某用例),然后使用扩展来描述各种变化,使基本用例可以有条件地调用某用例),然后使用扩展来描述各种变化,使基本用例可以有条件地调用某用例),然后使用扩展来描述各种变化,使基本用例可以有条件地调用某个用例。即扩展用例向基本用例中添加了一些额外的行为。如取款有一个个用例。即扩展用例向基本用例中添加了一些额外的行为。如取款有一个个用例。即扩展用例向基本用例中添加了一些额外的行为。如取款有一个个用例。即扩展用例向基本用例中添加了一些额外的行为。如取款有一个可能的行为,就是需要处理超额取款。可能的行为,就是需要处理超额取款。可能的行为,就是需要处理超额取款。可能的行为,就是需要处理超额取款。3 GIS软件工程软件工程用例建模与分析用例建模与分析第14页/共58页取款超额取款extend3.3.泛化关系泛化关系 子用例可以继承父用例中的行为、关系和通信连接。即可以将子用例子用例可以继承父用例中的行为、关系和通信连接。即可以将子用例放置在父用例出现的地方,子用例与父用例之间的关系是泛化关系。例放置在父用例出现的地方,子用例与父用例之间的关系是泛化关系。例如,假设如,假设ATMATM可以用于支付账单,则它有两个子用例。一为可以用于支付账单,则它有两个子用例。一为Pay Credit Pay Credit BillBill,其一为,其一为Pay Utility BillPay Utility Bill。3 GIS软件工程软件工程用例建模与分析用例建模与分析第15页/共58页4.4.4.4.基本用例与抽象用例基本用例与抽象用例基本用例与抽象用例基本用例与抽象用例 一旦识别出系统的一组用例,一旦识别出系统的一组用例,一旦识别出系统的一组用例,一旦识别出系统的一组用例,就可以找到公共行为,通过提取这些用例的公共就可以找到公共行为,通过提取这些用例的公共就可以找到公共行为,通过提取这些用例的公共就可以找到公共行为,通过提取这些用例的公共行为,就可以形成一个基本用例(具体用例)和抽象用例。行为,就可以形成一个基本用例(具体用例)和抽象用例。行为,就可以形成一个基本用例(具体用例)和抽象用例。行为,就可以形成一个基本用例(具体用例)和抽象用例。前者基本上就是主用例,前者基本上就是主用例,前者基本上就是主用例,前者基本上就是主用例,它可以直接由某个参与者实例化。它本身可实现可观测的用户目标。后则只能由基它可以直接由某个参与者实例化。它本身可实现可观测的用户目标。后则只能由基它可以直接由某个参与者实例化。它本身可实现可观测的用户目标。后则只能由基它可以直接由某个参与者实例化。它本身可实现可观测的用户目标。后则只能由基本用例实例化,因为它只包含在两个或多个用例之间共享部分的公共行为,即从用本用例实例化,因为它只包含在两个或多个用例之间共享部分的公共行为,即从用本用例实例化,因为它只包含在两个或多个用例之间共享部分的公共行为,即从用本用例实例化,因为它只包含在两个或多个用例之间共享部分的公共行为,即从用户角度看,户角度看,户角度看,户角度看,它不是一个完整的用户目标。它不是一个完整的用户目标。它不是一个完整的用户目标。它不是一个完整的用户目标。如前面讲过的账号登录用例,就是一个抽如前面讲过的账号登录用例,就是一个抽如前面讲过的账号登录用例,就是一个抽如前面讲过的账号登录用例,就是一个抽象用例,它不能完成一个完整的用户目标。象用例,它不能完成一个完整的用户目标。象用例,它不能完成一个完整的用户目标。象用例,它不能完成一个完整的用户目标。PayBillCredit Card BillUtility Bill泛化关系泛化关系3 GIS软件工程软件工程用例建模与分析用例建模与分析第16页/共58页 用例可能还展现多个场景,普通场景以及可能的几个其他场景。用例可能还展现多个场景,普通场景以及可能的几个其他场景。用例可能还展现多个场景,普通场景以及可能的几个其他场景。用例可能还展现多个场景,普通场景以及可能的几个其他场景。基本用例可以用基本用例可以用基本用例可以用基本用例可以用来表示普通场景来表示普通场景来表示普通场景来表示普通场景,而抽象用例则可以用来描述其他场景。,而抽象用例则可以用来描述其他场景。,而抽象用例则可以用来描述其他场景。,而抽象用例则可以用来描述其他场景。下图给出了一个下图给出了一个下图给出了一个下图给出了一个ATMATMATMATM系统的用例模型,取款是一个基本用例,是用户成功登录系系统的用例模型,取款是一个基本用例,是用户成功登录系系统的用例模型,取款是一个基本用例,是用户成功登录系系统的用例模型,取款是一个基本用例,是用户成功登录系统的普通场景,指定交易类型,并输入取款的有效金额。统的普通场景,指定交易类型,并输入取款的有效金额。统的普通场景,指定交易类型,并输入取款的有效金额。统的普通场景,指定交易类型,并输入取款的有效金额。而处理超额属于抽象用例而处理超额属于抽象用例而处理超额属于抽象用例而处理超额属于抽象用例,因为用户的银行账户中可能有足够的钱供其取出。因为用户的银行账户中可能有足够的钱供其取出。因为用户的银行账户中可能有足够的钱供其取出。因为用户的银行账户中可能有足够的钱供其取出。取款超额取款基本用例中的扩展点基本用例中的扩展点 参与者可能直接调用基本用例,参与者可能直接调用基本用例,而抽象用例只能由基本用例实例化而抽象用例只能由基本用例实例化。抽象用例的实例化必须返回到调用用例(基本用例),返回位置就是进抽象用例的实例化必须返回到调用用例(基本用例),返回位置就是进行调用的那个地方行调用的那个地方。抽象用例由从其他用例中提取出来的部分组成,。抽象用例由从其他用例中提取出来的部分组成,抽抽象用例类似于子程序调用,而基本用例就像是主程序。象用例类似于子程序调用,而基本用例就像是主程序。基本用例用于实基本用例用于实现某个用户目标的全部行为,现某个用户目标的全部行为,抽象用例实现基本用例的部分行为。抽象用例实现基本用例的部分行为。3 GIS软件工程软件工程用例建模与分析用例建模与分析第17页/共58页ATM System存款超额取款取款查询余额账户登录extend includeincludeinclude显示显示extend和和include关系的用例图关系的用例图 只有在定义了所有用例之后,才能识别和提取不同用例中相似的行为,以形成抽象用例。设计师要比用户更加关注抽象用例的提取。只有在定义了所有用例之后,才能识别和提取不同用例中相似的行为,以形成抽象用例。设计师要比用户更加关注抽象用例的提取。用例的组织和流图或数据流图的开发并不相似,用例的组织关注的是用户目标,数据流图关注的是数据的输入与转换。用例的组织和流图或数据流图的开发并不相似,用例的组织关注的是用户目标,数据流图关注的是数据的输入与转换。3 GIS软件工程软件工程用例建模与分析用例建模与分析第18页/共58页3.6.4 3.6.4 3.6.4 3.6.4 编写用例文档编写用例文档编写用例文档编写用例文档 用例关注系统的外部方面,用例关注系统的外部方面,用例关注系统的外部方面,用例关注系统的外部方面,捕获帮助用户执行任务所需的系统功能和捕获帮助用户执行任务所需的系统功能和捕获帮助用户执行任务所需的系统功能和捕获帮助用户执行任务所需的系统功能和行为。但用例并不能描述系统如何执行功能需求或行为需求。行为。但用例并不能描述系统如何执行功能需求或行为需求。行为。但用例并不能描述系统如何执行功能需求或行为需求。行为。但用例并不能描述系统如何执行功能需求或行为需求。即它用于描即它用于描即它用于描即它用于描述系统用来做什么及谁将使用它,但不描述系统如何执行其功能的详细细述系统用来做什么及谁将使用它,但不描述系统如何执行其功能的详细细述系统用来做什么及谁将使用它,但不描述系统如何执行其功能的详细细述系统用来做什么及谁将使用它,但不描述系统如何执行其功能的详细细节。节。节。节。用例描述了一组动作序列,系统通过这些动作可以产生参与者能够观用例描述了一组动作序列,系统通过这些动作可以产生参与者能够观用例描述了一组动作序列,系统通过这些动作可以产生参与者能够观用例描述了一组动作序列,系统通过这些动作可以产生参与者能够观测得到的结果。测得到的结果。测得到的结果。测得到的结果。用例实例只是用例的一个特定示例(特定系统服务),用用例实例只是用例的一个特定示例(特定系统服务),用用例实例只是用例的一个特定示例(特定系统服务),用用例实例只是用例的一个特定示例(特定系统服务),用例不仅仅有普通场景组成,还可以包括变种场景。这种情况下需要使用例不仅仅有普通场景组成,还可以包括变种场景。这种情况下需要使用例不仅仅有普通场景组成,还可以包括变种场景。这种情况下需要使用例不仅仅有普通场景组成,还可以包括变种场景。这种情况下需要使用extendextendextendextend用例表示这种变种场景。用例表示这种变种场景。用例表示这种变种场景。用例表示这种变种场景。1.1.1.1.开发用例描述:开发用例描述:开发用例描述:开发用例描述:用例图是软件设计师和最终用户之间进行沟通的辅助工具用例图是软件设计师和最终用户之间进行沟通的辅助工具用例图是软件设计师和最终用户之间进行沟通的辅助工具用例图是软件设计师和最终用户之间进行沟通的辅助工具。因此不要。因此不要。因此不要。因此不要在描述中使用计算机行话和用户不熟悉的语言,在描述中使用计算机行话和用户不熟悉的语言,在描述中使用计算机行话和用户不熟悉的语言,在描述中使用计算机行话和用户不熟悉的语言,应该使用用户能够适应和应该使用用户能够适应和应该使用用户能够适应和应该使用用户能够适应和理解的清晰简洁语言理解的清晰简洁语言理解的清晰简洁语言理解的清晰简洁语言,设计师在构造用例时应该关注用户和

    注意事项

    本文(用例建模与分析.pptx)为本站会员(莉***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开