• 《需求工程——软件建模与分析》02


     

    一、需求分类与表述:

    (一)严格意义上的需求分类常见的有以下五种:

    1.功能需求(functional requirement):和系统主要工作相关的需求,即在不考虑物理约束的情况下,用户希望所能够执行的活动。

    2.性能需求(performance requirement):系统整体或者其他部分应该拥有的性能特征。

    3.质量属性(quality attribute)

    4.对外接口(external interface):软、硬件、数据库接口。

    5.约束(constraint):例如编程语言、硬件设施等。

    (二)五种需求的详细说明:

    1.功能需求:

    软件需求中最常见和最重要的需求,同时也是最为复杂的需求。

    2.性能需求常见分类:

    1)速度:系统完成任务所需的时间。

    2)容量(capacity):存储的数据量。

    3)吞吐量(throughput):连续时间内完成的事务数量。

    4)负载(load:承载的并发工作量。

    5)实时性(time-critical)

    3.质量属性:

    为了度量系统的质量,需要选用某些质量要素进行量化处理,建立质量特征。书中介绍了[ISO/IEC 9126-1]、[IEEE 1061-1992,1998]两种质量模型,两者从大致的分类上一致,只是在细化时的子因素所包含的特征略微不同。下面以[IEE 1061-1992,1998]为例进行总结,其主要包含了以下几个要素:

    1)功能性

    系统的完备性、正确性、安全性、兼容性、互操作性。

    2)可靠性

    系统的无缺憾性、容错性、可用性。

    3)易用性

    包含可理解性、易学习性、易操作性、通信性。

    4)效率

    包含时间经济性、资源经济性。

    5)可维护性

    包含可修正性、扩展性、可测试性。

    6)可移植性

    包含软硬件独立性、可安装性、可复用性。

    4.对外接口:

    对系统的软硬件接口需要说明以下内容:

    1)接口的用途

    2)接口的输入输出

    3)格式规范,例如数据、命令格式

    4)异常处理要求

    5.约束:

    常见约束内容:

    1)系统开发及运行环境

    2)问题域的相关标准:包括法律法规、行业协定和企业规模等。

    3)商业规则

    4)社会性因素:例如文化、信仰。

    6.其他需求:

    例如安装需求、培训需求、数据需求等。

    二、优秀需求的特性

    (一)完备性

    不需要做更多的扩展就可以充分说明用户需求的系统功能。在需求开发过程中,对于不清晰的信息可以标记为TBD(To be Determined,待确定),但在开发过程结束之前,所有的TBD都必须解决。

    可通过对不同类型的需求从不同方面来保障需求描述的完备性。

    1.对功能需求需要确保以下内容进行了描述:

    1)行为的触发者(trigger):它使系统执行功能需求的行为,常见触发者包括数据输入、接收的请求、要处理的异常等。

    2)行为的前置条件(pre-condition):系统成功满足功能需求的前提。常见的前置条件包括系统的模式或状态,其他外部系统的状态、任何系统数据的值。

    3)行为:前置条件下接受到触发者时,系统必须执行的行为。

    4)后置条件post-condition):系统成功后执行行为后所处的状态。

    5)不满足前置条件情况下,相应情况的结果。

    (二)正确性

    (三)可行性

    (四)必要性

    (五)无歧义

    (六)可验证

                                                                  发表日期:2018-03-25 14:17

  • 相关阅读:
    纯js实现字符串formate方法
    C#实现json压缩和格式化
    简单的前端校验框架实现
    快速拷贝文件
    0012 移除元素
    0011 删除链表的倒数第N个节点
    0010 最长公共前缀
    0009 合并两个有序链表
    0008 合并K个排序链表
    0007 回文数
  • 原文地址:https://www.cnblogs.com/daisy99lijing/p/11855430.html
Copyright © 2020-2023  润新知