第二章需求分析

一、 需求分析

1,需求分析的概念与意义

  • 需求 是指用户对软件的功能和性能的要求,就是用户希望软件能做什么事情,完成什么样的功能,达到什么样的性能
  • 需求分析 是在计算机系统的软件功能分配和软件设计之间起重要桥梁作用的一项软件工程活动。
    描述待开发的系统所要完成的功能。
  • 需求分析使系统工程师能够刻画出软件的功能和性能,指明软件和系统其他元素的接口,并建立软件必须满足的约束。
  • 目标:深入描述软件的功能和性能,确定软件设计的约束和软件同其他系统元素的接口细节,定义软件的其他有效性需求

2,需求分析因产品的特性而困难重重

  • 软件功能复杂
  • 需求可变性
  • 软件产品的不可见性

通常,一个计算机应用系统的需求分析工作是在系统分析人员与用户不断交互的过程中完成的

3,需求获取方法

  • 面谈(用户访谈): 系统分析员与用户方的专家和业务员进行知识交流、与他们会谈,获得需求。
    • 准备访谈(确定对象)
    • 计划和安排访谈日程
    • 访谈开始和结束
    • 引导访谈
    • 访谈整理工作
  • 实地观察: 实地观察用户的操作过程。对比现有的系统,思考如何采取更高效的方式。
    • 现场观察法
    • 询问法:直接访问、堵截访问、电话访问、邮寄访问
  • 问卷调查: 若需要访谈的个体太多,且需要回答易确定的细节问题。
    • 适合使用情况:需访谈个体太多、需要问答容易确定的细节问题、希望有详细的结果
    • 注意事项: 使用问卷表尽可能的简短、估计回答问题需要的时间,并在问卷开头标注时间、制定问题前,先确定你需要的答案
  • 查阅资料: 收集和查阅相关文献资料,如组织机构图、规章制度、相关文档、图表及报告等。
收集用户以下材料:
- 书面需求文档
- 现在的业务操作流程及其改进意见文档
- 现在使用的数据表和文件及其格式,并确定数据来源

4,需求分析的过程

  • 1,标识问题: 需求分析的第一步,通过对问题和标示获得的所有求解问题及其运行环境的理解。
  • 2,建立需求模型: 目前在信息系统的需求分析中可使用结构化分析模型或面向对象分析模型。
  • 3,描述需求: 需求、功能、信息、性能、环境、其他需求
  • 4,确认需求: 需求确认及评审,审核功能需求、数据需求、性能、 数据管理及其他需求。

需求分析方法

目前在信息系统的需求分析中使用方法:
- 结构化分析与建模方法(SAD): 如 DFD建模(数据流图,是对功能进行建模的)、IDEF建模
- 面向对象分析与建模方法(OOAD)(第五章有讲): 如 UML用例建模

  • 结构化分析方法提出的背景:
    • 20世纪70年代中期,Stevens、Myers与Constantine等人在结构化程序设计的基础上,倡导结构化设计(Structured Design, SD)技术
    • 70年代后期,Yourdon等人倡导了与SD配套的结构化分析(Structured Analysis, SA)技术,合称为结构化分析与设计方法

结构分析与设计方法是瀑布模型的首次实践。

结构化分析任务
- 建立分析模型。SA模型是描述软件需求的一组模型,主要包括 功能模型、数据模型、行为模型。
- 编写需求规格说明书。 SRS是分析阶段编写的以文字为主的文档,主要内容包括:引言、信息描述、功能描述、行为描述、质量保证、接口描述以及其他需求等。
- 抽象与分解是结构化分析的主要指导思想。

1,DFD需求建模方法

数据流图:

(Data Flow Diagram,DFD)
DfD建模方法的核心是数据流,从应用系统的数据流着手以图形方法刻画和表示一个拘提业务系统的数据处理过程和数据流。
在这里插入图片描述

  • 数据流:数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。(如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成)
    由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。
  • 数据源(终点):代表系统之外的实体,可以是人、物或其他软件系统。
  • 对数据的加工(处理):加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。
  • 数据存储(磁盘上永久存储的数据):表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。

2,DFD建模过程(DFD对功能进行建模,体现的是业务流程)

  • 具体建模过程及步骤:
    • 1),明确目标,确定系统范围。 将用户对目标系统的功能需求完整、准确、一致地描述出来。
    • 2),建立顶层DFD图(对整个软件系统一个大的概括)。 说明系统边界,即输入和输出数据流,顶层DFD只有一张。
    • 3)构建第一层DFD分解图(对顶层DFD进行细化)。中间层DFD,描述了某个过程的分解,而它的组成部分又要进一步分解。
    • 4)开发DFD层次结构图(原则:保持均匀的模型深度,按困难程度选择)。
    • 5)检查确认DFD图。5条规则
  • 检查确认DFD图的5条规则:
    • 父图中描述过的数据流必须在相应子图出现。
    • 一个处理至少有一个输入流和输出流。
    • 一个存储必定有流入的数据流和流出的数据流。
    • 一个数据流至少有一端是处理框。
    • 表达描述的信息是全面、完整、正确和一致的

3,IDEFO需求建模方法(了解即可)

属于结构化建模方法

  • IDEF方法:ICAM DEFinition Method,由美国空军发明,从IDEF0到IDEF14(包括IDEF1X在内)共有16套方法,每套方法都是通过建模程序来获取某个特定类型的信息。
  • 最常使用的是IDEF0~IDEF4:
    • IDEF0:描述系统功能及其相互关系;
    • IDEF1: 系统信息及其数据之间联系;
    • IDEF2: 系统模拟,动态建模;
    • IDEF3: 过程描述及获取方法;
    • IDEF4:面向对象设计;

4,UML用例建模方法

UML方法采用面向对象思想建模,使用用例图来描述系统功能需求。用例图由系统、角色、用例三种模型元素及其之间的关系构成。(详见第5章)

三、结构化分析案例-教材购销系统

实例:教材购销系统
从用户调查中了解到,某高校向学生销售教材的手续是:
先由院办公室的张秘书开一购书证明;
学生凭证明找教材科的王会计开购书发票;
向李出纳交付书款;
然后到书库找赵保管领书。
将上述手工操作流程改为计算机处理流程,开发一个“教材购销系统”。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值