第1页,共28页,星期日,2025年,2月5日思考、涉及的几个问题如何定义系统需求?如何识别、获取需求?你能够采取何种手段与用户进行交流沟通?何为需求建模?你如何理解模型与建模?第2页,共28页,星期日,2025年,2月5日软件需求分析的几个阶段问题分析问题评估和方案综合建模规约复审系统分析员的主要焦点是“做什么(what)”,不是“怎样做(how)”第3页,共28页,星期日,2025年,2月5日§3.2需求获取3.2.1需求获取的目的清楚地理解所要解决的问题完整地获取用户需求第4页,共28页,星期日,2025年,2月5日需求获取面临的挑战:(1)问题空间理解(2)人与人之间的通信(3)需求的不断变化第5页,共28页,星期日,2025年,2月5日某出版社系统调查表编号提出问题1您在哪个部门工作?2出版业务流程是什么?3您每日都处理那些文件、数据、报表?4工作中手工处理特别麻烦的事情是什么?5工作中手工处理什么问题解决不了?影响效率的问题有哪些?6您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?第6页,共28页,星期日,2025年,2月5日某出版社系统调查表编号提出问题7您的部门需要成本核算和统计的内容有哪些?8您的部门采用计算机管理工作情况如何?9如何改进业务流程使之更合理?10哪些问题是目前传统手工方法根本无法解决的?11出版社计算机管理信息系统需要解决什么问题?第7页,共28页,星期日,2025年,2月5日3.2.2需求获取的内容1.用户需求分类(1)功能性需求:定义了系统做什么(描述系统必须支持的功能和过程)(2)非功能性需求(技术需求):定义了系统工作时的特性(描述操作环境和性能目标)第8页,共28页,星期日,2025年,2月5日2.两类需求包括的内容(1)功能(2)性能(3)环境(4)界面(5)用户或人的因素(6)文档(7)数据(8)资源(9)安全保密(10)软件成本消耗与开发进度(11)质量保证第9页,共28页,星期日,2025年,2月5日(1)功能需求系统做什么?系统何时做什么?系统何时及如何修改或升级?第10页,共28页,星期日,2025年,2月5日(2)性能需求软件开发的技术性指标例如:存储容量限制执行速度、相应时间吞吐量第11页,共28页,星期日,2025年,2月5日(3)环境需求硬件设备:机型、外设、接口、地点、分布、温度、湿度、磁场干扰等软件:操作系统网络数据库第12页,共28页,星期日,2025年,2月5日(4)界面需求有来自其它系统的输入吗?到自其它系统的输出吗?对数据格式有规定吗?对数据存储介质有规定吗?第13页,共28页,星期日,2025年,2月5日(5)用户或人的因素用户类型?各种用户熟练程度?需受何种训练?用户理解、使用系统的难度?用户错误操作系统的可能性?第14页,共28页,星期日,2025年,2月5日(6)文档需求需哪些文档?文档针对哪些读者?第15页,共28页,星期日,2025年,2月5日(7)数据需求输入、输出数据的格式?接收、发送数据的频率?数据的准确性和精度?数据流量?数据需保持的时间?第16页,共28页,星期日,2025年,2月5日(8)资源需求软件运行时所需的数据、软件。内存空间等资源。软件开发、维护所需的人力、支撑软件、开发设备等。第17页,共28页,星期日,2025年,2月5日(9)安全保密要求需对访问系统或系统信息加以控制吗?如何隔离用户之间的数据?用户程序如何与其它程序和操作系统隔离?系统备份要求?第18页,共28页,星期日,2025年,2月5日(10)软件成本消耗
与开发进度需求开发有规定的时间表吗?软硬件投资有无限制?第19页,共28页,星期日,2025年,2月5日(11)质量保证系统的可靠性要求?系统必须监测和隔离错误吗?规定系统平均出错时间?出错后,重启系统允许的时间?系统变化如何反映到设计中?维护是否包括对系统的改进?系统的可移植性?第20页,共28页,星期日,2025年,2月