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

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

阅读更多
当我们进行业务流程分析时,只空对空而不落到纸面上是不可以的。过去,在面向过程的时代,我们绘制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)。 - **角色**:指与系统交互的人或物,例如用户、外部系统等。 ...

    测试用例说明

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

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

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

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

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

    测试用例设计步骤

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

    如何有效进行用例评审

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

    软件工程文档-测试用例

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

    测试用例编写

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

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

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

Global site tag (gtag.js) - Google Analytics