鲁棒图与系统需求分析

鲁棒图(Robustness Diagram)是由Ivar Jacobson于1991年发明的,用以回答“每个用例需要哪些对象”的问题。后来的UML并没有将鲁棒图列入UML标准,而是作为UML版型(Stereotype)进行支持。对于RUP、ICONIX等过程,鲁棒图都是重要的支撑技术。当然,这些过程反过来也促进了鲁棒图技术的传播。
而“鲁棒图(Robustness Diagram)”的作用,除了初步设计之外,就是检查用例规约是否正确和完善了。“鲁棒图”正是因为后者检查的作用,而得其名的——所以“鲁棒图(Robustness Diagram)”严格来讲所指不是“鲁棒性(Robustness)”。

http://blog.sina.com.cn/s/blog_63641501010184cb.html

1、概念
鲁棒图——是需求设计过程中使用的一种方法(鲁棒性分析),通过鲁棒分析法可以让设计人员更清晰、全面了解需求。它通常使用在需求分析后及需求设计前做软件架构分析之用,它主要注重于功能需求的设计分析工作。需求规格说明书为其输入信息,设计模型为其输出信息。它是从功能需求向设计方案过渡的第一步,重点是识别组成软件系统的高级职责模块、规划模块之间的关系。

包含三种图形:边界、控制、实体。
边界——起与外界交互的作用,它只能与控制对象和执行者有关系
控制——对业务控制、流程控制的作用,它能与边界对象和实体对象有关系
实体——业务元素的存储对象,与领域模型中的对象有良好的关系。它只能与控制对象有关系

2、特点
鲁棒图分析方法与具体的技术没有任何关系。它抛开了很多具体的技术细节,使用它分析需求的时候主要抓住概念性设计的本质,规划需求,分析需求,找出需求中关系问题的解决策略。常应用以下场景:

a、与用户讨论、收集需求时一般都使用用例,很少使用鲁棒图,但有时讨论到比较细节、复杂的业务规则,可使用鲁棒图来当场整理清楚业务规则。也方便后继的分析。

b、用户只提供简单需求,无法提供更多内容的时,使用鲁棒图主要是由需求或设计人员为用户整理出用户的业务需求及规则。

c、在需求不明确时,可用鲁棒图代替用例,好处是可同时分析出用例以及可能性预见的流程及逻辑对象。

d、在需求明确但复杂时,用来做系统功能设计分析。可分析出系统功能的流程及逻辑对象。

3、订单流程实例说明
a、需求用例


b、鲁棒分析图
以部门为主时分配审核、执行人员的鲁棒图

以人员为主时分配审核、执行人员的鲁棒图


在画鲁棒图时可粗可细。对需求的理解越不清楚越要画细些,才遗漏需求点,同时也可发现需求中的问题。
通过鲁棒分析法可以把需求中的名词和动词整理出来。名词产生将要使用的对象和对象属性,动词产生界面或其它形式的动作。

鲁棒图(Robustness Diagram)的更多相关文章

  1. 基于2D-RNN的鲁棒行人跟踪

    基于2D-RNN的鲁棒行人跟踪 Recurrent Neural Networks RNN 行人跟踪 读"G.L. Masala, et.al., 2D Recurrent Neural N ...

  2. H∞一般控制问题的鲁棒叙述性说明

    Robust Control System:反馈控制有承受一定类不确定能力的影响,这一直保持在这种不确定的条件(制)稳定.动态特性(灵敏度)和稳态特性(逐步调整)的能力. 非结构不确定性(Unstru ...

  3. 如何编写高质量的 JS 函数(2) -- 命名/注释/鲁棒篇

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/sd2oX0Z_cMY8_GvFg8pO4Q作者:杨昆 上篇<如何编写高质量的 JS 函数 ...

  4. CVPR2020:基于自适应采样的非局部神经网络鲁棒点云处理(PointASNL)

    CVPR2020:基于自适应采样的非局部神经网络鲁棒点云处理(PointASNL) PointASNL: Robust Point Clouds Processing Using Nonlocal N ...

  5. 解读ICDE'22论文:基于鲁棒和可解释自编码器的无监督时间序列离群点检测算法

    摘要:本文提出了两个用于无监督的具备可解释性和鲁棒性时间序列离群点检测的自动编码器框架. 本文分享自华为云社区<解读ICDE'22论文:基于鲁棒和可解释自编码器的无监督时间序列离群点检测算法&g ...

  6. [UML]UML系列——状态机图statechart diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  7. SIFT+HOG+鲁棒统计+RANSAC

    今天的计算机视觉课老师讲了不少内容,不过都是大概讲了下,我先记录下,细讲等以后再补充. SIFT特征: 尺度不变性:用不同参数的高斯函数作用于图像(相当于对图像进行模糊,得到不同尺度的图像),用得到的 ...

  8. ASP.NET中数据棒图,饼图,柱状图的实现

    Web中绘制图形的方法大致有: 1. VML方式:功能强大,但是非常麻烦. 推荐:http://www.elook.net.cn/vml/ 2.使用控件:Dandus, Aspose.chart,Co ...

  9. 状态机图statechart diagram

    [UML]UML系列——状态机图statechart diagram 系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend ...

随机推荐

  1. SpringBoot 整合 ActiveMq

    消息队列,用来处理开发中的高并发问题,通过线程池.多线程高效的处理并发任务. 首先,需要下载一个ActiveMQ的管理端:我本地的版本是 activemq5.15.8,打开activemq5.15.8 ...

  2. Docker搭建tomcat运行环境(修改镜像方式)

    对于java程序员来说,要想使用Docker来部署你的应用,那么在镜像中安装类似于tomcat的容器基本上是必须的(sprintboot项目除外),本篇介绍自己基于对centos镜像的修改,创建自己的 ...

  3. Python开发利器之UliPad

    一.安装Ulipad 因为ulipad编辑器使用的是wxpython编写的gui,所以我们需要第三方库wxpython的支持,先讲一下Ulipad在Windows系统环境下的安装: 1. 确实自己的w ...

  4. 转:JVM系列三:JVM参数设置、分析

    转自:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html 不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断 ...

  5. XmlReader在序列化中的使用

    和XmlDocument最大的不同——XmlReader逐行读取.单独很少使用,一般配合序列化(反序列化)使用,以下给出具体例子: namespace ConsoleApplication1 { pu ...

  6. jstl缺包时的报错

    jsp中:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>  报错: ...

  7. How to push master to QA branch in GIT

    1.  git branch -d QA2.  git branch QA master3.  git checkout QA4.  git push origin QA(if push error, ...

  8. java--集合框架总结1--set总结

    一.集合框架的概述. 基础的数据结构有数组,链表,栈,队列,二叉树等,java中的数据结构,利用了这些基本的数据结构分别实现了很丰富的集合框架类型,下面简单地总结下关于java集合框架的基础内容,在进 ...

  9. javaEE Design Patter(2)详解3个设计模式

    Factory (bean creating) Proxy(Agent)(Aop)书有~ Templete(springMVC Facelets)//此处及以上忽略 工厂模式(Factory) 工厂模 ...

  10. CentOS 6 安装 MySQL 8.0.+

    1.先查询是否安装MySQL 大多数centos 6 自带 MySQL5.1 命令: rpm -qa|grep mysql 执行: [root@lifan ~]# rpm -qa|grep mysql ...