您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
   
 
     
   
 订阅
  捐助
UML 图解:用例图( Use case diagram )
 
俎涛 ,火龙果软件工程技术中心
   次浏览      
 2020-2-10
 

UML是软件行业的建模规范,可以对软件项目建立需求模型、设计模型、实现模型、测试模型,因为UML有精确的建模语义,各个模型之间还能有效集成,所以可以基于模型进行仿真验证,使得设计具有完整的前瞻能力。

UML当前最新的规范是2.5,有13种图,分为2大类:静态结构图和动态行为图。UML因为讲求建模的精确性,所以比较专业,学起来比较抽象,这里专门以贪吃蛇游戏为例,讲解UML的13种图,如下图所示:

UML 图解1:用例图( Use case diagram )


为什么需要用例图建模

用例图其实来自于电影领域的场景描述,是导演向演员讲述电影剧本的有效方式。

后来被UML建立者Ivar参考,作为描述用户需求的图。

用例图从用户的角度描述一个系统具有哪些功能。

用户采用actor元素表示,

用户对系统的使用场景采用usecase描述,

用例图描述需求有什么好处呢?

这样描述功能需求符合用户的视角,用户易于理解,易于参与。

用例图有什么

任何UML图都有语义、元素、关系和用途,下面对用例图做个列表描述:

语义 描述用户使用系统的场景
元素 参与者(actor):可以是操作员、外部系统、外部设备 、时间。
用例 (use case) :参与者和系统交互的场景描述。
关系 角色之间:泛化关系( generalization)
用例之间:包含(dependency),扩展(extend),泛化( generalization)
用途 通过用户使用系统的场景描述功能需求

 

图例:用例图

为了让读者看的更形象,这里采用图例的方式介绍用例图的用法,下面是贪吃蛇游戏的用例图。

用例图说明:

下面是贪吃蛇游戏的用例图说明

用户《player》的 usecase 有 《set game》 和《play game》

  • 《set game》有两种方式有 《set rate》和 《set size》
  • 《play game》包含 《eat food》,也可以 《save game》
  • 应该对每个用例进行详细描述,如下是 《play game》用例的详细描述

    用例名称 play game
    前置条件 Game启动,初始化完毕
    基本流 1.Player启动game,
    2.game初始化 map,
    3.map上面出现 food,
    4.一个 snake 爬进 map,
    5.snake 如果遇到food ,吃掉,加十分,
    6.如果遇到wall,死掉,game over。
    后置条件 显示结束游戏时候的积分
    备选流 在基本流3-6,如果player要 退出 game,
         系统询问是否保存game,
         如果 player选择保存,则game被保存,下次启动游戏的时候可以继续
    后置条件 Game当前进度被保存,下次可以继续。
    异常流 在基本流2,game会记录日志,用于事后分析。
    在基本流3-6,如果game异常退出,会记录日志,用于事后分析。
    后置条件 Game当前进度被保存,下次可以继续。
    非功能需求 性能需求:
  • 蛇每秒钟爬动一步,
  • 每秒钟更新计时,
  • 吃掉食物后理解更新积分。
  • 可靠性需求:游戏应该保证基本的运行能力,不会出现卡死或者异常退出。
    扩展需求:
  • 界面:支持改变地图背景,蛇的颜色。
  • 数据:可以设置地图的宽度,蛇的宽度。
  • 运行环境:应该支持多种操作系统,包括:windows,Android,ios
  •  

    说明:本文的模型采用建模工具EA建模。

     


    UML图解系列:

    1.UML概览
    2.用例图
    3.活动图
    4.类图
    5.对象图
    6.顺序图
    7.类图和代码的映射关系解读( C++ )

     

    后记

    希望您读了此文后有所受益。

    如果您有经验乐于分享,欢迎投稿给我们

    如果您对我们的培训、咨询和工具感兴趣:

  • 课程:基于UML和EA进行分析设计  
  • 课程:MBSE(基于模型的系统工程)  
  • 课程:基于模型的需求管理)方法与实践
  • 课程:基于SysML和EA进行系统设计与建模  
  • 课程:企业架构建模
  • 课程:系统架构建模方法与案例
  • 课程:领域驱动的建模与设计
  • 课程:基于模型的设计
  • 课程:业务建模与业务分析
  • 建模工具EA
  • 基于模型的需求管理工具:iSpace
  • 咨询方案:MBSE(基于模型的系统工程)
  • 咨询方案:基于UML的模型驱动的开发
  • 欢迎联系我们: 俎涛Zutao@uml.net.cn

       
    次浏览       
     
    相关文章

    UML概览
    UML图解:用例图(Use case diagram )
    UML图解:活动图(activity diagram )
    UML图解:类图(class diagram )
    UML图解:对象图(object diagram)
    UML图解:顺序图( sequence diagram )
     
    相关文档

    模型跟踪:跟踪图、矩阵、关系(建模工具EA)
    自定义表格(Custom Table)在EA中的使用
    元素的详情浏览控制
    UAF 1.2规范解读(DMM 和 UAFML )
    EA中支持的各种图表
    EA中的界面原型建模
     
    相关课程

    UML与面向对象分析设计
    UML + 嵌入式系统分析设计
    业务建模与业务分析
    基于SysML和EA进行系统设计与建模
    基于模型的需求管理
    业务建模 & 领域驱动设计