一。编写用例文档

     1.用例的内容:   用例编号   用例名  执行者  前置条件  后置条件  基本路径  扩展路径  字段列表  业务规则
                               非功能需求  设计约束
                      前置条件必须是系统能够检测到的   必须是系统在用例开始前就能检测到的。
                      基本路径注意点:  1. 不要有太多专业术语
                                                   2.使用主动语句    3.句子以系统或者执行者作为主语
                                                   4.每一句要向目标迈进(比如:用户输入个人信息,个人信息参见字段列表)
                                                   5.分支和循环   (使用扩展路径)  6.不要涉及界面细节
                      

               检查用例模型
               用例跟踪矩阵

   用例1 用例2  用例3  用例4 
 需求1        
 需求2        
 需求3        
 需求4        

如果一个用例没有对应得需求:  1.隐型需求

                                                              2.客户没有想到的需求
             如果一个需求没有对应的用例: 1.非功能性需求    2.漏掉了
  二。状态图
             状态图: 1.一个特定的对象的可能状态
                           2.状态之间的转化
                           3.不同状态下有着不同的行为
            有且只有一个初始状态。实心原点
             可以有多个终止状态   实心原外面加圈
           从一个状态到另一个状态:转移线
一。状态图的高级技巧
     补充: 从一个状态到另一个状态称为转移(transition),   transition上的event 对应state 的 action。
                transition 可带有标注, 事件名[条件]/动作
           1.复合状态 
               状态有Atomic state (原子状态)和 Decomposed state (复合状态)
           2.同步条  
               只有当上面两个状态都完成才能进入下一个状态
           3.实例演练
               某信用卡系统账户具有使用状态和冻结状态,其中使用状态又包括正常状态和透支状态两种子状态。如果账户余额小于零则进入透支状态,透支状态时既可以存款又可以取款,但是透支金额不能超过5000元;如果余额大于零则进入正常状态,正常状态时既可以存款又可以取款;如果连续透支100天,则进入冻结状态,冻结状态下既不能存款又不能取款,必须要求银行工作人员解冻。用户可以在使用状态或冻结状态下请求注销账户。根据上述要求,绘制账户类的状态图。
      

二 。活动图

      活动图是UML中的程序流程图,描述事件流的一种方式。
      作用:   描述业务流程(用的最多)
                   描述用例路径
                  描述方法执行路径(程序流程图)
     组成元素:   Start Activity   End Activity Activity(用圆角矩形表示) Transition Condition 同步条(分支和合并),泳道(划分负责活动的对象)
                         Decision(判定  用菱形表示)
                        可以将与活动设计的对象(矩形)放在活动图中,用依赖将其连接到相应的活动中
    实例分析:


三。顺序图

      1.概述:顺序图是UML图中使用频率第三的图。  有两大功能: 1.描述用例的路径   2. 描述代码里对象之间的交互(可以生成代码 )
      2.组成元素。
         生命线 (纵向虚线)
         对 象 表示为一个矩形,对象名称标有下划线。 使用者使用执行者的符号
         激活 激活部分替换生命线,使用长条的矩形表示。
         消息是对象之间的通信。 在用于实现的顺序图中,消息就是方法。
                                               在用于需求的顺序图中,消息是步骤。
     3.消息的分类    
         调用消息(call message):   将激活一个对象
         发送消息(send message): 不会引发其他对象的活动,只是一个步骤
         返回消息(return message): 
         自身消息   创建消息    销毁消息   同步消息  异步消息
     4.高级顺序图
         交互片段: 一个复杂的顺序图可以划分为几个小块,称为交互片段  
         交互片段的种类: loop   循环      optional  :  可选择的   相当于if
                                     alternative     :   可替换的    相当于  if   else
5 顺序图实例分析
绘制图书管理系统“借书”用例的顺序图(业务模型)。
Ø图书管理员打开借书界面,输入借书信息并提交借书请求;系统验证借书卡状态,如果借书卡未借书则记录借书信息且修改图书状态和借书卡状态,并提示借书成功;否则提示借书失败。

 

UML-状态图,顺序图,活动图的更多相关文章

  1. UML学习笔记:活动图

    UML学习笔记:活动图 活动图 活动图是UML中描述系统动态行为的图之一,用于展现参与行为的类的活动或动作.在UML里,活动图很类似于流程图,但是有一些区别: 活动图着重表现系统行为,描述对象活动的顺 ...

  2. Thinking in UML 学习笔记(四)——UML核心视图之活动图

    在UML中活动图的本质就是流程图,它描述了为了完成某一个目标需要做的活动以及这些互动的执行顺序.UML中有两个层面的活动图,一种用于描述用例场景,另一种用于描述对象交互. 活动图只是我们用来描述业务目 ...

  3. (转)UML实践----用例图、类图、对象图、顺序图、协作图、状态图、活动图、组件图、配置图

    面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language™),这篇课程的目的是展示出UML ...

  4. UML状态图和活动图

    UML状态图和活动图 统一建模语言UML(Unified Modeling Language)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对 ...

  5. UML用法及状态图,活动图介绍

    统一建模语言UML(Unified Modeling Language)是非专利的第三代建模和规约语言.UML是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对象的.软件密集系统的制 ...

  6. uml活动图

    uml是程序员需要掌握一个重要工具,特别在研究hadoop(http://www.iigrowing.cn/hadoop)系统中,有很多相关的uml图形需要绘制,为了方便大家了解uml,在网络上找了些 ...

  7. <十五>UML核心视图动态视图之活动图

    一:动态视图 --->动态视图是描述事物动态行为的. --->需要注意的是:动态视图不能够独立存在,它必需特指一个静态视图活uml元素,说明在静态视图规定的事物结构下它们的动态行为. -- ...

  8. UML活动图(Activity Diagram)

    目录: 1.什么是活动图 2.活动图的构成 (1)起点 (2)重点 (3)活动名称 (4)判断条件 (5)同步条 (6)接收信号 (7)发送信号 (8)泳道 (9)转移 3.活动图实例--订单处理 4 ...

  9. UML: 活动图

    摘自http://www.umlonline.org/school/thread-36-1-1.html 活动图和流程图很类似,我们看看一个流程图的例子: 活动图是用来描述流程的一种图,它与流程图的不 ...

随机推荐

  1. 回文数猜想(hd1282)

    回文数猜想 Problem Description 一个正整数,如果从左向右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数.任取一个正整数,如果不是回文数,将该数与他的倒序 ...

  2. Spring中的DataBinding(一)

    DataBinding在Spring中应用. 第一点:使用ModelAttribute指定带绑定的数据内容 很重要的属性:@ModelAttribute([value=""])可以 ...

  3. 使用Hashtable和List结合拼json数据

    在做项目的时候,有时候需要向页面返回一个特定的json类型的数据,一般情况下会有下面的方法进行拼接: public String chongzhiList() throws Exception { L ...

  4. Python学习 常识+基础基础

    特点: 优雅,明确,简单 领域: web网站   网络服务   系统工具和脚本 跨平台 对缩进要求严格 注释:# 动态语言:变量本身类型不固定 raw字符串与 多行字符串 raw字符串: 不需要转义字 ...

  5. python学习day10

    目录 Twisted Redis RabbitMQ   Twisted   事件驱动 事件驱动分为两个部分:第一,注册事件:第二,触发事件. 自定义事件启动框架,命名为:"弑君者" ...

  6. Oracle EBS-SQL (INV-9):检查搬运单分配异常.sql

    select h.request_number,         l.line_number,         msib.segment1 item_code,         t.transacti ...

  7. Delphi在Webbrowser上绘制图像

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  8. QT多重继承的时候,要把QObject放在最前面,否则报错——C++认为人性本恶,默认都是私有的,这点和Delphi的世界观不一样

    在买来的控件(没有源码)的基础上,想加入QObject的一些特性,不得不多继承: class MyProgress : public CProgress, public QObject 但总是报错: ...

  9. Python中metaclass解释

    Classes as objects 首先,在认识metaclass之前,你需要认识下python中的class.python中class的奇怪特性借鉴了smalltalk语言.大多数语言中,clas ...

  10. android安卓开发问题集 XMPP篇

    1.消息推送查了下资料,后面还是使用了androidpn (1)java.security.KeyStoreException: KeyStore jks implementation not fou ...