worldstargao@163.com1第三章软件需求分析第三章软件需求分析worldstargao@163.com2系统工程系统工程软件需求分析软件需求分析软件设计软件设计需求分析在系统工程和软件设计间的桥梁作用需求分析的作用worldstargao@163.com3§3.1需求分析的任务准确地定义未来系统的目标,确定为了满足用准确地定义未来系统的目标,确定为了满足用户的需求系统必须做什么。用户的需求系统必须做什么。用<<需求规格说明需求规格说明书书>>规范的形式准确地表达用户的需求。规范的形式准确地表达用户的需求。worldstargao@163.com4思考、涉及的几个问题如何定义系统需求?如何识别、获取需求?你能够采取何种手段与用户进行交流沟通?何为需求建模?你如何理解模型与建模?worldstargao@163.com5软件需求分析的几个阶段•问题分析•问题评估和方案综合•建模•规约•复审系统分析员的主要焦点是“做什么(what)”,不是“怎样做(how)”worldstargao@163.com6§3.2需求获取3.2.1需求获取的目的•清楚地理解所要解决的问题•完整地获取用户需求worldstargao@163.com7需求获取面临的挑战:(1)问题空间理解(2)人与人之间的通信(3)需求的不断变化worldstargao@163.com8某出版社系统调查表编号提出问题1您在哪个部门工作?2出版业务流程是什么?3您每日都处理那些文件、数据、报表?4工作中手工处理特别麻烦的事情是什么?5工作中手工处理什么问题解决不了?影响效率的问题有哪些?6您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?worldstargao@163.com9编号提出问题7您的部门需要成本核算和统计的内容有哪些?8您的部门采用计算机管理工作情况如何?9如何改进业务流程使之更合理?10哪些问题是目前传统手工方法根本无法解决的?11出版社计算机管理信息系统需要解决什么问题?某出版社系统调查表worldstargao@163.com103.2.2需求获取的内容1.用户需求分类(1)功能性需求:定义了系统做什么(描述系统必须支持的功能和过程)(2)非功能性需求(技术需求):定义了系统工作时的特性(描述操作环境和性能目标)worldstargao@163.com112.两类需求包括的内容(1)功能(2)性能(3)环境(4)界面(5)用户或人的因素(6)文档(7)数据(8)资源(9)安全保密(10)软件成本消耗与开发进度(11)质量保证worldstargao@163.com12(1)功能需求•系统做什么?•系统何时做什么?•系统何时及如何修改或升级?worldstargao@163.com13(2)性能需求软件开发的技术性指标例如:•执行速度•吞...