`
fangang
  • 浏览: 881249 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
311c4c32-b171-3767-b974-d26acf661fb2
谈谈用例模型的那些事儿
浏览量:38910
767c50c5-189c-3525-a93f-5884d146ee78
一次迭代式开发的研究
浏览量:68922
03a3e133-6080-3bc8-a960-9d915ed9eabc
我们应当怎样做需求分析
浏览量:410832
753f3c56-c831-3add-ba41-b3b70d6d913f
重构,是这样干的
浏览量:93437
社区版块
存档分类
最新评论

我们应当怎样做需求分析:用例说明

阅读更多
当我们进行业务流程分析时,只空对空而不落到纸面上是不可以的。过去,在面向过程的时代,我们绘制DFD图、流程图,以及编写流程说明来描绘这一部分分析;而现在,在面向对象的时代,我们则是绘制行动图、状态图,以及编写用例说明来完成这部分工作。

在这部分工作中,编写用例说明应当是最主要的工作,之后在一些关键部分辅之以行动图、状态图。现在我们来看看用例说明应当怎样编写。

毫不疑问,做用例分析首先是要绘制出用例图(前面已经说过了)。图形的最大优势是能够形象生动地描述我们的分析,但它最大的缺点是会遗失许多的细节信息,因此我们必须要对它进行进一步的文字描述。




由于不同的人对用例的理解不同,格式也不尽相同,但一些基本的元素是一样的。以上表格是我采用的用例说明格式,其中用例名称、用例描述、参与者、前置条件、事件流、后置条件是公认的、用例说明的基本元素。

用例标识:就是用例的编号,一般采用“项目编号-子系统编号-模块编号-序号”来编号。

用例名称:没啥可说的,就是用例图中该用例的名称。注意用例的命名规则:用例名称通常是一个动词短语或短句,而不是一个名词短语。它可以是一个动词(如:自动考核),一个动宾短语(如:提取存款),一个被动句(如:发票填报),或者一个主谓句(如:用户提款,这个不推荐,因为主语就是参与者,显得有些多余)。

用例类型:在我看来,不同类型的用例,其用例说明的格式是不一样的。以上给出的是“业务操作”类用例的格式,它更加着重地在描述业务操作的流程。而“查询报表”类用例则没有什么流程,它更加着重地在描述报表格式及显示内容(后面再给出)。还有用例类型还包括“子用例”、“扩展用例”。

用例描述:对该用例的功能定义、要实现的业务需求,以及谁(参与者)应该如何使用进行描述。同时,这部分还可以整体概述实现业务需求的主要流程,以及与其它用例、其它外部系统的关系。通过用例描述,阅读者可以对该用例有一个整体的认识。

参与者:用例图中该用例的参与者,通常是业务操作的触发者和施与对象(如外部系统)。

触发事件:谁干了什么,触发了这个用例。

前置条件:在触发该用例相关操作前必须达到的条件。

事件流:这是用例说明中最重要的部分,它详细描述了该用例可能出现的所有流程。
1. 基本流程:另一个名称更能表达它的意义:最佳流程(The Best Flow)。它描述的是该用例以最佳的、最正常的方式流转,没有出现任何异常,并且最终成功完成操作的流程。基本流程在编写时,应当通过数字对流程中的每一步进行编号。
2. 扩展流程:或者叫“分支流程”,它描述的是基本流程在流转过程中可能出现的所有分支。扩展流程最大的特点就是,它应当是在基本流程的某一步骤发生的分支,因此它的编号规则是“基本流程号+序号”。基本流程号就是发生分支的那一个基本流程的编号。在同一个基本流程上发生多个分支时,它们的序号从1依次开始编号。
另一种情况是,某个扩展流程本身拥有多个步骤,这时应当在“基本流程号+自身序号”的基础上再添加序号,如“2.1.1”。
扩展流程在描述时,应当首先描述进入这个分支的条件,即“如果××则××”、“当××时××”。
3. 异常流程:就是发生异常情况时的处理流程。注意,用例说明是站在用例角度进行的说明,因此这里并不是我们通常一样的发生程序异常的处理流程,而是用户在处理业务操作时发生的异常情况,如:如果顾客不能提供身份证,则••••••

后置条件:又称为“成功保证”,就是执行基本流程获得成功以后所达到的状态(条件)。后置条件往往体现的是执行该用例的最终目的。如:完成用户档案的填写并提交。

非功能需求:简称为“URPS+”,即可用性(Usability)、可靠性(Reliability)、性能(Performance)、可支持性(Supportability)以及其它(+)。这一部分的需求分析相当重要而又最容易被忽略,后面我们再详细讨论。

假设与约束:就是隐藏于业务功能中的各项规则与条件,如各种逻辑条件、计算公式、环境限制等等。

优先级:没啥可说的,最关键的是怎么去评定。这里我卖一个官子,在需求评审阶段,我会给大家一个比较准确而又可操作的评定方法。

除此之外,我还往往在每一个用例说明的后面与该用例相关的需求列表,便于需求跟踪。用例分析实质是需求人员的一份设计。既然是设计就可能出现偏差,最终偏离原始的需求(这种情况特别容易出现在日后的升级维护中)。因此,将需求列表附在用例后面,便于日后的需求评审与确认。当每次需要升级时,则添加上新的需求,或对以往的需求进行更新。

我们应当怎样做需求分析
我们应当怎样做需求调研:初识
我们应当怎样做需求调研:拜访
我们应当怎样做需求调研:研讨会
我们应当怎样做需求调研:需求研讨
我们应当怎样做需求调研:迭代
我们应当怎样做需求调研:需求捕获(上)
我们应当怎样做需求调研:需求捕获(下)
我们应当怎样做需求分析:功能角色分析与用例图
我们应当怎样做需求分析:业务流程分析(上)
我们应当怎样做需求分析:业务流程分析(下)
我们应当怎样做需求分析:用例说明
我们应当怎样做需求分析:查询报表分析
我们应当怎样做需求分析:子用例与扩展用例
我们应当怎样做需求分析:行动图和状态图
我们应当怎样做需求分析:业务领域分析
我们应当怎样做需求分析:原文分析法
我们应当怎样做需求分析:领域驱动设计
我们应当怎样做需求分析:非功能需求
我们应当怎样做需求确认:需求列表
我们应当怎样做需求确认:一个需求列表的实例
我们应当怎样做需求确认:快速原型法
我们应当怎样做需求确认:需求规格说明书
我们应当怎样做需求确认:评审与签字确认会

(续)
分享到:
评论
2 楼 fangang 2015-01-06  
抱歉,最近比较忙没有及时回复

用例的继承关系表现为:父用例表述某个共性的过程,而子用例重载并细化父用例中的某些步骤,如:
父用例:查看通知:1.进入该功能,2.罗列该用户的通知列表,3.选择某通知,详细展示该通知内容。
子用例:
1.系统通知:2.罗列该用户的所有系统通知。
2.用户通知:2.罗列该用户的所有用户通知。
1 楼 459464757 2014-12-18  
想像您请教两个问题:1.用例中如何抽象出父用例:如有一个查看通知,但是此时的具体通知不一样通知的展现形式和操作方法也不一样,如查看的有系统通知,有查看用户通知而这两者在查看的操作过程中是不一样的,这样如何能够达到复用的效果。

相关推荐

    我们应当怎样做需求分析

    我们应当怎样做需求分析:用例说明 21 我们应当怎样做需求分析:查询报表分析 24 我们应当怎样做需求分析:子用例与扩展用例 27 我们应当怎样做需求分析:行动图和状态图 28 我们应当怎样做需求分析:业务领域分析 ...

    实用的需求用例表模板,用于编写需求分析文档参考。

    在企业管理信息系统项目中进行业务分析是至关重要的一步,而需求用例表模板则是辅助编写需求分析文档不可或缺的工具。需求用例表模板为分析人员提供了一个标准化、结构化的格式,用于详细描述系统的功能需求,帮助...

    用例文档示例 需求分析

    ### IT知识点解析:需求分析与用例文档撰写 在软件工程和项目管理中,需求分析是确定项目目标、用户需求及系统功能的关键阶段。用例文档作为需求分析的一部分,是描述系统行为、用户交互和预期结果的重要工具。下面...

    我们应当怎样做需求确认:需求规格说明书定义.pdf

    - **用例说明**:对每个用例进行详细的文字描述,包括其业务场景、参与者、流程和预期结果。 - **领域模型**:构建领域模型,解释实体、属性和行为,若实体关系复杂,可以借助对象图辅助说明。 4. **非功能需求**...

    详细介绍了基于用例的软件需求分析管理相关方法

    ### 基于用例的软件需求分析管理相关方法 #### 一、需求管理简介 在软件开发过程中,需求管理是一项至关重要的任务。它不仅帮助开发者理解用户的需求,还确保了项目的顺利进行。需求(Requirement)指的是系统必须...

    基于用例的需求管理

    用例建模是一种重要的需求分析工具,它通过定义系统的行为来帮助理解和捕获需求。用例模型由一系列元素组成,包括角色(Actors)和用例(Use Cases)。 - **角色**:指与系统交互的人或物,例如用户、外部系统等。 ...

    测试用例说明

    ### 测试用例说明 #### 如何编写测试用例 测试用例是软件测试过程中的重要组成部分,它定义了测试的具体步骤、预期结果以及实际结果,用于验证软件系统的功能是否符合设计需求。良好的测试用例可以帮助团队高效地...

    测试用例——测试用例模版

    测试用例是软件质量保证的重要组成部分,它是对一个特定...同时,测试用例模版的设计应当灵活,可根据项目的具体需求进行调整。在实际应用中,测试团队还可能引入优先级、依赖关系、复杂度等其他要素,以优化测试管理。

    图书馆系统需求分析用例规约.doc

    图书馆系统需求分析用例规约文档是开发一款现代化图书馆管理系统的蓝图,涵盖了从图书管理到用户交互的方方面面。通过对用例规约的深入分析,我们可以明确开发目标,确保最终交付的软件系统能够满足用户的实际需求。...

    测试用例设计指南 测试用例

    5. **独立性**:各个测试用例之间应当相互独立,不互相依赖。 #### 三、测试用例的设计步骤 1. **理解需求**:在编写测试用例之前,首先需要深入理解产品需求文档,确保对被测系统的功能有全面的认识。 2. **分析...

    测试用例设计步骤

    测试需求分析包括提取功能需求,确保每个需求都能在测试用例中得到体现。测试需求应该具体、明确且可度量,以便后续设计测试用例。此外,测试需求应当根据实际需求进行分类、细化,形成一个测试需求矩阵,便于追踪和...

    如何有效进行用例评审

    在编写测试用例之前,需要明确项目的进度及计划,以便知道应当在何时进行测试用例的编写,何时完成测试用例的编写。这可以保证在测试执行时,至少已经有了第一版本的测试用例。同时也可以避免因时间仓促而草草编写的...

    软件工程文档-测试用例

    从给定的文件信息中,我们可以提炼出一系列关于软件工程文档——测试用例的重要知识点,以下将对此进行详细解析。 ### 测试用例在软件工程中的核心地位 测试用例是软件开发过程中不可或缺的一部分,其主要目的是...

    测试用例编写

    - **全面性**:测试用例应当覆盖所有重要的功能点和边界条件。 #### 测试用例的分类 测试用例可以根据测试类型分为白盒测试用例和黑盒测试用例。 - **白盒测试用例**:基于对程序内部逻辑的理解来设计测试用例。 ...

    一个经典的测试用例(黑盒子测试用例)

    在实际操作中,测试用例的设计应当包含三个部分:**测试设计说明**(描述测试目标和策略)、**测试用例说明**(详述输入、预期输出、测试步骤和判定标准)和**测试程序说明**(记录测试执行的详细过程和结果)。...

Global site tag (gtag.js) - Google Analytics