[软件工程]CH03-需求分析.pptx
《[软件工程]CH03-需求分析.pptx》由会员分享,可在线阅读,更多相关《[软件工程]CH03-需求分析.pptx(100页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程软件工程软件工程刘迎春刘迎春软件工程3/11/20221第三章第三章 需求分析需求分析问题定义问题定义可行性研究可行性研究可行否?可行否?否否是是需求分析需求分析终止项目终止项目.计划计划时期时期开发开发时期时期p主要内容主要内容n3.1 需求分析概述需求分析概述n3.2 数据流图数据流图n3.3 数据字典数据字典n3.4 加工逻辑描述工具加工逻辑描述工具n3.5 结构化分析方法结构化分析方法n3.6 需求规格说明书需求规格说明书第5章 需求工程与需求分析3/11/202223.1.1 需求分析的任务需求分析的任务p【可行性研究可行性研究】n粗略了解用户的需求。粗略了解用户的需求。n用
2、较少的成本,在较短的时间内确定是否存在一用较少的成本,在较短的时间内确定是否存在一些可行的解法。些可行的解法。n许多细节被忽略了。许多细节被忽略了。p【需求分析需求分析】n准确地回答准确地回答“系统必须做什么?系统必须做什么?”这个问题。这个问题。3/11/202233.1.1 需求分析的任务需求分析的任务p【依据依据】n可行性研究报告可行性研究报告p【任务任务】n建立建立目标系统的逻辑模型目标系统的逻辑模型p调查分析用户的确切需求,认真搞清、并细化到底调查分析用户的确切需求,认真搞清、并细化到底“系统必须做什么系统必须做什么”? n反复与用户交流;反复与用户交流;n建立原型系统;建立原型系统
3、;p确定目标系统的功能、性能、运行确定目标系统的功能、性能、运行n形成形成软件需求规格说明书软件需求规格说明书pSoftware Requirement Specification3/11/202243.1.2需求需求类型类型1.1.按按内容内容分类分类p软件需求软件需求代表系统的综合要求代表系统的综合要求,包括以下几种类型:,包括以下几种类型: 系统功能需求系统功能需求p系统功能需求指根据系统所能实现的功能要求,对于每系统功能需求指根据系统所能实现的功能要求,对于每一类功能或者有时对于每一个功能,需要弄清一类功能或者有时对于每一个功能,需要弄清输入输入、加加工工和和输出输出等需求。等需求。
4、系统性能需求系统性能需求p按照系统的性能要求分类。例如按照系统的性能要求分类。例如联机系统的响应时间联机系统的响应时间、系统需要的存储容量系统需要的存储容量、后援存储器后援存储器、重新启动、重新启动、安全性安全性和和可靠性可靠性等方面的要求。等方面的要求。3/11/202253.1.2需求类型需求类型(2)(2) 系统运行需求系统运行需求p这类要求集中表现为对系统运行时所处的这类要求集中表现为对系统运行时所处的环境、环境、使用的资源、安全保密和用户界面使用的资源、安全保密和用户界面的要求。如支的要求。如支持系统运行的硬件和软件是什么,采取哪种数据持系统运行的硬件和软件是什么,采取哪种数据库管理
5、系统,需要什么样的外存储器和数据通信库管理系统,需要什么样的外存储器和数据通信接口。接口。 未来可能出现的问题未来可能出现的问题p就是把就是把不属于当前系统开发范围的问题不属于当前系统开发范围的问题都明确地都明确地列出来,因为将来很可能会提出这些问题。这些列出来,因为将来很可能会提出这些问题。这些问题主要是问题主要是为了系统将来的扩充和修改做准备为了系统将来的扩充和修改做准备,当以后需要时就可以很容易地进行扩展和修改了。当以后需要时就可以很容易地进行扩展和修改了。3/11/202263.1.2需求类型需求类型(3)(3)2.2.按按用户的期望用户的期望分类分类 正常需求正常需求p用户陈述用户陈
6、述的针对系统的目标。的针对系统的目标。 期望需求期望需求p隐式的需求,可能由于是非常基础隐式的需求,可能由于是非常基础的而用户没有的而用户没有显示的陈述,如人机交互的容易性、整体的操作显示的陈述,如人机交互的容易性、整体的操作正确性和可靠性,以及软件安装的容易性。正确性和可靠性,以及软件安装的容易性。 兴奋需求兴奋需求p在用户的期望范围之外,如果实现将令人愉快和在用户的期望范围之外,如果实现将令人愉快和出乎意料。出乎意料。3/11/202273.1.2需求类型(4)3.3.按按必要性必要性分类分类 强制的需求强制的需求p是指是指除非软件与这些需求一致除非软件与这些需求一致,则该软件是不可接受,
7、则该软件是不可接受的的 希望的需求希望的需求p是指这些需求将增进软件产品功能,但是如果缺乏的是指这些需求将增进软件产品功能,但是如果缺乏的话也话也不是不可接受不是不可接受 任选的需求任选的需求p是指这个功能是指这个功能可有可无可有可无3/11/202283/11/20229案例分析案例分析:机票订票系统机票订票系统p1. 功能需求功能需求p在计算机网络,数据库和先进的开发平台上,利在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个易扩用现有的软件,配置一定的硬件,开发一个易扩充的、易维护的、具有良好人机交互界面的充的、易维护的、具有良好人机交互界面的机票机票预定系
8、统预定系统,实现航空公司的机票销售的自动化实现航空公司的机票销售的自动化,为企业的决策层提供准确、精细、迅速的机票销为企业的决策层提供准确、精细、迅速的机票销售信息售信息。p根据可行性研究的结果和客户的要求,分析现有根据可行性研究的结果和客户的要求,分析现有情况及问题,采用情况及问题,采用Client/Server结构结构,将机票预,将机票预定系统定系统划分为两个子系统划分为两个子系统:客户端子系统,服务:客户端子系统,服务器端子系统。器端子系统。正常、强制的需求正常、强制的需求3/11/202210案例分析案例分析:机票订票系统机票订票系统p1. 功能需求功能需求p客户端子系统客户端子系统n
9、1旅客信息的输入和统计旅客信息的输入和统计pn2旅客信息的存储旅客信息的存储pn3机票信息的传递及接收机票信息的传递及接收pn4取票通知及帐单的生成和打印取票通知及帐单的生成和打印pn5机票销售情况的核算机票销售情况的核算p正常、强制的需求正常、强制的需求3/11/202211案例分析案例分析:机票订票系统机票订票系统p1. 功能需求功能需求p服务器端子系统服务器端子系统n1接收由旅行社客户端发回的所需机票信息接收由旅行社客户端发回的所需机票信息 pn2生成航班信息生成航班信息pn3传递航班信息到客户端(旅行社)传递航班信息到客户端(旅行社) pn4接收旅行社的反馈信息接收旅行社的反馈信息 p
10、n5印出机票给已经订票的旅客印出机票给已经订票的旅客 pn6销售额的分析和管理销售额的分析和管理p正常、强制的需求正常、强制的需求3/11/202212案例分析案例分析:机票订票系统(机票订票系统(2)p2.为了保证系统能够长期、安全、稳定、可靠、为了保证系统能够长期、安全、稳定、可靠、高效的运行,机票预定系统应该满足以下的高效的运行,机票预定系统应该满足以下的性能性能需求需求:p系统处理的系统处理的及时性和准确性及时性和准确性n在系统设计和开发过程中,要充分考虑系统当前在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的和将来可能承受的工作量,使系统的响应时间响应时间能
11、能够满足企业对信息处理的需求。够满足企业对信息处理的需求。n机票预定系统的查询功能对于整个系统的功能和机票预定系统的查询功能对于整个系统的功能和性能完成举足轻重,性能完成举足轻重,是系统重要的数据来源。机是系统重要的数据来源。机票数量和时间又影响企业的决策活动,票数量和时间又影响企业的决策活动,其准确性其准确性很大程度上决定了机票预定系统的成败。很大程度上决定了机票预定系统的成败。在系统在系统开发过程中,必须采用一定的方法保证系统的开发过程中,必须采用一定的方法保证系统的准准确性确性。 3/11/202213案例分析案例分析:机票订票系统(机票订票系统(3)p系统的系统的开放性开放性和系统的和
12、系统的可扩充性可扩充性n例如订票方式的改变(网上订票),用户查询需例如订票方式的改变(网上订票),用户查询需求的不断完善和更新等。所有这些,都要求系统求的不断完善和更新等。所有这些,都要求系统提供足够的手段进行功能的调整和扩充。提供足够的手段进行功能的调整和扩充。n而要实现这一点,应通过系统的开放性来完成,而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,既系统应是一个开放系统,只要符合一定的规范,只要符合一定的规范,配置系统的硬件配置系统的硬件,通过软件的修补、替换通过软件的修补、替换完成系统完成系统的升级和更新换代。的升级和更新换代。3/11/202214案例分析案例分析:
13、机票订票系统(机票订票系统(4)p系统的系统的易用性和易维护性易用性和易维护性n机票预定系统是直接面对使用人员的,而使用人机票预定系统是直接面对使用人员的,而使用人员往往对计算机并不是非常熟悉。这就要求系统员往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,能够提供良好的用户接口,易用的人机交互界面易用的人机交互界面。要实现这一点,就要求系统应该要实现这一点,就要求系统应该尽量使用用户熟尽量使用用户熟悉的术语和中文信息的界面悉的术语和中文信息的界面;针对用户可能出现;针对用户可能出现的使用问题,要提供足够的的使用问题,要提供足够的在线帮助在线帮助,缩短用户,缩短用户对系统熟悉的过
14、程。对系统熟悉的过程。n机票预定系统中涉及到的数据是航空公司的相当机票预定系统中涉及到的数据是航空公司的相当重要的信息,系统要提供方便的手段供系统维护重要的信息,系统要提供方便的手段供系统维护人员进行人员进行数据的备份,日常的安全管理,系统意数据的备份,日常的安全管理,系统意外崩溃时数据的恢复外崩溃时数据的恢复等工作。等工作。3/11/202215案例分析案例分析:机票订票系统(机票订票系统(5)p系统的系统的标准性标准性p系统在设计开发使用过程中都要涉及到很多计算系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要机硬件、软件。所有这些都要符合主流国际、国符合主流国际、国家和
15、行业标准家和行业标准。如规范的数据库操纵界面、作为。如规范的数据库操纵界面、作为业界标准的业界标准的TCP/IP网络协议及网络协议及ISO9002标准所标准所要求的质量规范等;要求的质量规范等;p同时,在自主开发本系统时,要进行良好的设计同时,在自主开发本系统时,要进行良好的设计工作,工作,制订行之有效的软件工程规范,保证代码制订行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性的易读性、可操作性和可移植性。3/11/202216案例分析案例分析:机票订票系统(机票订票系统(6)p系统的系统的先进性先进性n目前计算系统的技术发展相当快,做为机票预定目前计算系统的技术发展相当快,做为机
16、票预定系统工程,应该保证系统系统工程,应该保证系统在下个在下个10年时间里仍旧年时间里仍旧是先进的是先进的,在系统的生命周期尽量做到系统的先,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。进,充分完成企业信息处理的要求而不至于落后。n这一方面通过系统的开放性和可扩充性,不断改这一方面通过系统的开放性和可扩充性,不断改善系统的功能完成。另一方面,在系统设计和开善系统的功能完成。另一方面,在系统设计和开发的过程中,应在考虑成本的基础上发的过程中,应在考虑成本的基础上尽量采用当尽量采用当前主流并先进且有良好发展前途的产品前主流并先进且有良好发展前途的产品。3/11/20
17、2217案例分析案例分析:机票订票系统(机票订票系统(7)p系统的系统的响应速度响应速度p 机票预定系统系统在机票预定系统系统在日常处理日常处理中的响应速度为中的响应速度为秒秒级级,达到实时要求,以及时反馈信息。,达到实时要求,以及时反馈信息。p在进行在进行统计分析统计分析时,根据所需数据量的不同而从时,根据所需数据量的不同而从秒级秒级到到分钟级分钟级,原则是,原则是保证操作人员不会因为速保证操作人员不会因为速度问题而影响工作效率度问题而影响工作效率。3/11/202218案例分析案例分析:机票订票系统(机票订票系统(2)p3.机票预定系统的机票预定系统的运行需求运行需求:p机票预定系统中的各
18、个子系统的硬件和软件的配机票预定系统中的各个子系统的硬件和软件的配置如下:置如下:p1服务器端子系统的运行要求:服务器端子系统的运行要求:n系统软件:系统软件:n数据库管理系统:数据库管理系统:SQL Server n硬件要求:硬件要求:p2.客户端子系统的运行要求:客户端子系统的运行要求:n系统软件:系统软件:n数据库管理系统:数据库管理系统:SQL Server n硬件要求:硬件要求:3/11/2022197.7.4测试种类测试种类p对以计算机为基础的系统进行充分的测试。对以计算机为基础的系统进行充分的测试。n功能测试功能测试可使用性测试可使用性测试n可靠性测试可靠性测试可支持性测试可支持
19、性测试n强度测试强度测试安装测试安装测试n性能测试性能测试过程测试过程测试n启动停止测试启动停止测试互连测试互连测试n恢复测试恢复测试兼容性测试兼容性测试n配置测试配置测试文档测试文档测试n安全性测试安全性测试3/11/2022203.1.3 3.1.3 需求获取技术需求获取技术 问题域问题域 用户用户 需求分析员需求分析员 交流交流 3/11/202221用户和开发人员用户和开发人员共同组成联合小组共同组成联合小组p加强联系加强联系p促进交流促进交流p增进合作增进合作3/11/202222访谈和会议访谈和会议3/11/202223 观察用户工作流程或者实践观察用户工作流程或者实践3/11/2
20、02224案例分析案例分析:图书馆管理系统图书馆管理系统(1/3)读者管理读者管理书库管理书库管理读者借阅管读者借阅管理理3/11/202225用用户户项项目目负负责责人人需需求求分分析析人人员员设设计计员员案例分析案例分析:图书馆管理系统图书馆管理系统(2/3)1. 建立联合小组建立联合小组n参与者:参与者: 用户、需求分析人员、设计人员。用户、需求分析人员、设计人员。3/11/202226案例分析案例分析:图书馆管理系统图书馆管理系统(3/3)2. 会议讨论会议讨论n明确问题、范围、环境等,逐步了解用户需求明确问题、范围、环境等,逐步了解用户需求n会议应有记录,整理形成文档会议应有记录,整
21、理形成文档3. 分成三小组分成三小组n读者管理、图书管理和读者借阅子系统读者管理、图书管理和读者借阅子系统4. 总结各方成果形成结论性总结各方成果形成结论性的的SRS3/11/202227需求分析工具需求分析工具pRequisite PropClear Quest pTrac3/11/2022283.1.4 3.1.4 需求特性需求特性(1) (1) 正确性正确性p需求规格说明书中的需求规格说明书中的功能、行为、性能功能、行为、性能描述必描述必须与用户对目标软件产品的须与用户对目标软件产品的期望相吻合期望相吻合。(2) (2) 完整性完整性p需求规格说明书需求规格说明书不能遗漏任何用户需求不能
22、遗漏任何用户需求 (3) (3) 可验证性可验证性p需求规格说明书中的每一个需求,均应存在技需求规格说明书中的每一个需求,均应存在技术和经济上可行的手段术和经济上可行的手段进行验证和确认进行验证和确认。3/11/2022293.1.4 3.1.4 需求特性需求特性(2)(2)(4) 无歧义性无歧义性p需求规格说明书中使用需求规格说明书中使用标准化术语标准化术语,p用户、分析人员、设计人员和测试人员对需求规格说用户、分析人员、设计人员和测试人员对需求规格说明书中的任何语法单位明书中的任何语法单位只能有唯一的语义解释只能有唯一的语义解释。(5)(5)一致性一致性p需求规格说明书的各部分之间需求规格
23、说明书的各部分之间不能相互矛盾不能相互矛盾。这些矛。这些矛盾可以表现为盾可以表现为术语术语使用方面的冲突,使用方面的冲突,功能和行为功能和行为方面方面的冲突,以及的冲突,以及时序时序方面的前后不一致。方面的前后不一致。(6) (6) 可理解性可理解性p不宜在说明书中使用太多的专业化词汇不宜在说明书中使用太多的专业化词汇。3/11/2022303.1.4 3.1.4 需求特性需求特性(2)(2)(7) (7) 可追踪性可追踪性p需求规格说明书必须将需求规格说明书必须将分析后获得的每项需求分析后获得的每项需求与用户与用户的的原始需求项清晰地联系起来原始需求项清晰地联系起来,并为后续开发和其他,并为
24、后续开发和其他文档引用这些需求项提供便利。文档引用这些需求项提供便利。(8) (8) 可修改性可修改性p需求规格说明书的格式和组织方式需求规格说明书的格式和组织方式应保证能够比较容应保证能够比较容易地接纳后续的增删和修改易地接纳后续的增删和修改; ;p使修改后的说明书能够较好地保持其他各项属性。使修改后的说明书能够较好地保持其他各项属性。3/11/2022313.1.5 需求描述和分析技术需求描述和分析技术1.问题分解问题分解2.抽象抽象3.建模建模4.多视点多视点分析分析3/11/202232整个问题整个问题子问题子问题1 1子问题子问题3 3子问题子问题2 21.问题分解问题分解p什么是问
25、题分解什么是问题分解?n将大问题分解为小问题,通过小问题解决来实现将大问题分解为小问题,通过小问题解决来实现大问题的解决大问题的解决 p问题分解有助于问题分解有助于降低解决问题的复杂度降低解决问题的复杂度; p获取和分析问题本身所固有的获取和分析问题本身所固有的整体整体-部分关系部分关系;n图书馆系统图书馆系统p读者管理读者管理p图书管理图书管理p借阅管理借阅管理3/11/2022332.问题抽象问题抽象(1/2)p什么是抽象什么是抽象?n抽象有助于控制问题复杂度,抽象有助于控制问题复杂度,抓住问题的本质抓住问题的本质;n获取一般和特殊关系获取一般和特殊关系;3/11/2022342.问题抽象
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 CH03 需求 分析
限制150内