zoukankan      html  css  js  c++  java
  • UML学习——用例图(二)

    1.什么是用例?

      用例模型主要应用在工程开发的初期进行系统需求分析阶段,描述了系统具备什么功能,也就是说从用户的角度观察系统应该支持哪些功能,同时帮助系统分析员对系统功能有个全面的认识,从宏观上描述系统的行为。

      用例模型包括的基本元素有:用例,角色,系统。

    2用例的作用

      一个系统中可以包含多个用例,引入用例可以给我们带来以下几点好处。

      (1)确定系统有哪些功能,这些功能是否可以满足需求,使用户和开发者之间达成共识。

      (2)使用统一的描述,为后续工作打下基础。

      (3)方便验收测试。

    3.用例图的基本模型元素

      用例图就是用例的图形符号表示。

      用例图的基本模型元素:参与者(角色),用例,系统边界,通信关联。

        (1)参与者(角色):指存在于被定义系统外部与该系统发生交互的人、其他系统或者设备。

        (2)用例:用来描述系统提供的服务。

        (3)系统边界:表示用例所处的系统范围。

        (4)通信关联:表示角色和用例之间的对应关系。表示哪些用例被哪些参与者使用。

    4.用例图的绘制

      参与者表示法:简体笔画的人物,参与者可以是人也可以是其他系统或者设备。

      用例表示法:用椭圆表示。

      系统边界:用矩形方框表示。

      通信关联:使用带箭头实线或者不带箭头实线表示。

      

    5.用例图建立过程

      一般来说建立用例图的步骤分为三步:发现参与者,发现用例,用例规约。

      (1)发现参与者

      发现参与者就是让我们定义系统的参与者有哪些。可以从以下几个方面去讨论。

        系统使用者——哪些人会使用系统?

        访问外部接口——系统需要从哪些人或者系统获取数据?

        对外提供接口——系统会为哪些人或者系统提供数据?

        系统关联——系统会与其他哪些系统关联?

        系统维护人员——系统由谁来维护?

        硬件设备——系统控制的硬件有哪些?

      发现参与者检验标准

        是否已经对多有参与者进行建模说明?

        每个参与者是否涉及至少一个用例?

        是否列出至少两名可以作为特定参与者的用户。

        是否有参与者担任与系统相似的特定参与者?如果有则将他们合并在一起。

      (2)发现用例

        用例可以根据参与者需要系统提供什么服务来确定。

          参与者为什么使用系统?

          参与者是否在系统中增加、删除、修改数据?如果有是如何完成的呢?

          参与者是否会将外部的某些事件通知给该系统?

          系统是否将内部某些信息通知给参与者?

          系统需要的输入/输出是那些信息?这些信息从哪里来?到哪里去?

        发现用例检验标准

          用例模型是否清晰的描述了系统的所有需求功能?

            所有功能需求是否都映射到至少一个用例?

          用例是否包含多余行为?是否可以验证某个功能需求?

      (3)编写用例规约

        用例规约的一些说明

          简要说明

          事件流

          用例场景

          特殊需求

                    前置条件

          后置条件

        用例约束可以使用文字描述,但是为了直观方便,可以使用活动图,序列图,状态图等完成其功能。

  • 相关阅读:
    linux下实现在程序运行时的函数替换(热补丁)【转】
    进程的切换和系统的一般执行过程【转】
    linux 系统函数之 (dirname, basename)【转】
    PHP的ob_start()函数用法
    JavaScript闭包(Closure)学习笔记
    利用PHP的register_shutdown_function来记录PHP的输出日志,模拟析构函数
    PHP get_class_methods函数用法
    PHP中的魔术方法:__construct, __destruct , __call, __callStatic,__get, __set, __isset, __unset , __sleep, __wakeup, __toString, __set_state, __clone and __autoload
    PHP get_class 返回对象的类名
    利用session_set_save_handler()函数将session保存到MySQL数据库中
  • 原文地址:https://www.cnblogs.com/wwyx-xi/p/7573407.html
Copyright © 2011-2022 走看看