软件需求第2课 软件需求基础(第1版)ppt课件.ppt
《软件需求第2课 软件需求基础(第1版)ppt课件.ppt》由会员分享,可在线阅读,更多相关《软件需求第2课 软件需求基础(第1版)ppt课件.ppt(73页珍藏版)》请在三一办公上搜索。
1、第 2 章 软件需求基础,本课主要讨论问题,1 软件需求的基础理论与应用实践,2 需求工程解析,本课主要讨论问题,1 软件需求的基础理论与应用实践,2 需求工程解析,软件需求的基础理论与应用实践,需求的层次,需求的种类,良好的软件需求应该具备的特质,1 软件需求的基础理论与应用实践,导言:什么是软件需求,根据调查,许多软件开发人员认为:软件需求就是用户需要实现的功能加上一些非功能方面的需求。上述的理解并不完善。如果对用户所处的业务环境没有建立正确的认识,经常会给我们的工作带来巨大的麻烦。,1 软件需求的基础理论与应用实践,IEEE(美国电气电子工程师学会)软件工程标准词汇表(1997年)将需求
2、定义为:(1)用户解决问题或达到目标所需的条件或能力。(2)系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或能力。(3)一种反映上面(1)或(2)所描述的条件或能力的文档说明。 上述标准的定义说明了三个方面的问题:从用户的角度来看,需求是什么?(1)从软件开发者的角度来来看,需求是什么?(2) 需求最终以 何种形式反映出来?(3) 需求就是以一种清晰、简洁、一致且无二义性的方式对一个待开发系统中各个有意义陈述方面的一个集合。,1 软件需求的基础理论与应用实践,对软件需求的理解 需求定义了系统必须具备的能力,这种能力体现了用户的需要和开发者对用户需要的理解。并且通过文档,以
3、标准的语言标明这些需要的确切含义。将这些系统按照一定的规范记录下来、组织起来、以便跟踪他们的变更。,1 软件需求的基础理论与应用实践,从实践的角度来看,软件需求一般可以定义为:软件需求包含业务知识、问题列表和其他相关因素。,业务知识:业务事件、业务实体、业务规则;问题列表:用户在工作中遇到的困难和障碍 (软件开发时需要解决的问题);其他相关因素:设计约束和非功能方面的需求。,对软件需求的理解,1 软件需求的基础理论与应用实践,在实际工作中,编写需求规格说明书是常常会看到一下几个名词:业务需求、软件需求、用户需求。实际上上述名词反映了需求的三个层次。,需求的层次,1 软件需求的基础理论与应用实践
4、,需求的三个层次及关系,业务需求,业务需求反映企业/组织对软件系统的高层次目标需求,也就是说是软件需求的建设目标。通常这一目标体现在两个方面。 问题:解决企业/组织运作过程中遇到的问题,例如销售下降、物质供应问题、用户投诉、客户流失率居高不下等。 机会:抓住外部环境变化(业务、技术)所带来的机会,以便为企业带来新的发展,例如电子商务,网上银行、协同工作等。,1 软件需求的基础理论与应用实践,系统建立的战略出发点,表现为高层次的目标(Objective),它描述了组织为什么要开发系统 为了满足用户的业务需求,需求工程师需要描述系统高层次的解决方案,定义系统应该具备的特性(Feature)参与各方
5、必须要对高层次的解决方案达成一致,以建立一个共同的前景(Vision) 特性说明了系统为用户提供的各项功能,它限定了系统的范围(Scope),软件需求的三个层次及关系,业务需求理解,1 软件需求的基础理论与应用实践,软件需求的三个层次及关系,业务需求作用意义,业务需求的提出人通常是企业/组织的高层管理人员。业务需求是彻底从业务角度描述的,是指导软件开发的高层需求。明确地定义业务需求,将给整个团队指出努力的方向,这对整个开发活动将有积极的意义,业务需求建立的时间,业务需求往往是在项目立项阶段整理完成 的,通常体现在战略规划报告,或者立项建议报告中。,1 软件需求的基础理论与应用实践,软件的生存周
6、期,问题定义,可行性研究,需求分析,软件设计,编码,测试,维护,计划时期,开发时期,运行时期,业务需求-高层次需求,1 软件需求的基础理论与应用实践,问题与机会,业务需求,实例1-广东地税业务需求,1 软件需求的基础理论与应用实践,实例1-广东地税业务需求,广东地税业务战略要点,1 依法治税2 为纳税人服务3 加强内部监控,促进廉政建设4 增强税收系统的决策支持能力5 降低税收成本,提高税收工作效率,在目前税收环境尚不完善,纳税人的纳税意识有待加强的实际情况下,有必要在依托现代信息系统的基础上加强对税源的监控,为真正的应收尽收、依法征税打下基础,也为稽查工作提供数据来源。值得指出的是,依法治税
7、也意味着稽查工作在相当长一段时间内仍然是税务机关的工作重点。,从税务机关的角度看,纳税人的权益包括透明的税法信息、方便的咨询服务、多渠道纳税服务、多手段纳税信息的查询等。这一切更应该以及时、公开的方式向纳税人公布,并结合各方意见定期更新,除了加强内部监督与廉政教育之外,更重要的是从制度上和管理手段上尽可能地减少税收执法的随意性以及滥用权力现象的发生。采取征、管、查分离的方式。内部监控的加强往往涉及机构与岗位职能、职业操守准则、考核机制、业务流程、信息系统等多方面的因素,只有综合采用多种管理手段,才能收到好的效果。,完整、准确的税收信息对确定税收工作的重点、合理调配资源等决策工作有着非常重要的作
8、用。在反映经济运行状况的各类数据中,税收数据是最为及时、也是相对全面和准确的信息资源,长期以来一直受到政府有关部门的高度重视。税务部门应努力提高税收数据的质量,并深入开展分析和研究工作,为政府宏观经济决策提供更有力的支持。目前全国税务系统在提供准确、及时的税收数据,支持决策方面的能力还很有限。应率先作出有益的积极尝试,让税收信息能够真正为管理和决策提供服务。,纳税成本对政府税收政策的制定有重要影响,因此有必要考虑试行收集有关数据,建立相应系统来核算纳税成本、以便为决策支持提供依据,这同时也是为纳税人服务的另一种体现。针对税收工作的效率,仍有很大潜力可挖。如:通过信息技术手段而实现更智能化的稽查
9、选案、更多的申报和缴纳渠道、更快速准确的税收统计分析等,1 软件需求的基础理论与应用实践,需求的三个层次及关系,用户需求,用户需求是指描述用户使用软件需要完成什么任务,怎么完成的需求。通常是在业务需求定义的基础上通过用户访谈、调查,对用户使用的场景进行整理,从而建立用户角度的需求。用户需求是需求捕获的结果。,1 软件需求的基础理论与应用实践,需求的三个层次及关系,用户需求的理解,执行实际工作的用户对系统所能完成的具体任务的期望,描述了系统能够帮助用户做些什么直接用户间接用户 对所有的用户需求,都应该有充分的问题域知识作为背景支持。,用户需求是从用户角度描述的系统功能需求和非功能需求,通常只涉及
10、系统的外部行为,而不涉及系统的内部特性。用户需求的描述原则:应该易于用户的理解。一般不采用技术性很强的语言,而是采用自然语言和直观图形相结合的方式进行描述。问题:自然语言表达容易含糊和不准确。,1 软件需求的基础理论与应用实践,需求的三个层次及关系,用户需求的理解,实例2:图书馆用户需求用户可以通过Internet 随时查询图书信息和个人借阅情况,并可以快捷地查找和浏览所需要的电子资料。分析:上述需求描述包含了三个不同的需求用户可以通过Internet 随时查询图书信息。用户可以通过Internet 随时查询个人借阅情况。用户可以通过Internet 快捷地查找和浏览所需要的电子资料。问题:“
11、随时”和“快捷”是对系统功能的约束,十分模糊。,1 软件需求的基础理论与应用实践,需求的三个层次及关系,用户需求的理解,1 软件需求的基础理论与应用实践,需求的三个层次及关系,用户需求的特点,1 零散:用户会提出不同角度、不同层次、不同粒度的需求, 并且通常是以一句话的方式提出的。例如,在电信行业,对 资费快要用完的用户,可以根据用户的要求通过短信方式将 欠费和即将欠费的信息发送给相关用户。2 存在矛盾:由于用户往往处于企业/组织的不同层面,所以难免 会出现盲人摸象的情况,从而导致需求的片面性,甚至在不同用户之间会持有不同的观点。,需要对用户需求进行分析、整理,从而获得比较准确的需求说明,1
12、软件需求的基础理论与应用实践,需求的三个层次及关系,软件需求(系统需求),用户对软件系统行为的期望,一系列的行为联系在一起可以帮助用户完成任务,满足业务需求 软件需求可以直接映射为系统行为,定义了系统中需要实现的功能,描述了开发人员需要实现什么 将用户需求转化为软件需求的过程是一个复杂的过程首先需要分析问题领域及其特性,从中发现问题域和计算机系统的共享知识,建立系统的知识模型;然后将用户需求部署到系统模型当中,即定义系列的系统行为,让它们联合起来实现用户需求,每一个系统行为即为一个系统需求。该过程就是需求工程当中最为重要的需求分析活动,又称建模与分析活动。,1 软件需求的基础理论与应用实践,软
13、件需求(系统需求),需求的三个层次及关系,如前所描述,业务需求具有高层次,比较抽象。用户需求具有零散、存在矛盾的情况。 需求分析人员需要按照业务需求的基本要求和指导原则,对用户需求进行分析、整理、提炼等工作,从而生成指导开发的、更精确的软件需求。 软件需求是需求分析和建模的产物。,1 软件需求的基础理论与应用实践,需求的三个层次及关系,业务需求是需求定义的产物;用户需求是需求捕获的结果;软件需求是需求分析和建模的综合。,1 软件需求的基础理论与应用实践,需求的三个层次及关系,关系,1 软件需求的基础理论与应用实践,软件需求的三种类型,软件需求可以分为:功能需求、 非功能需求 设计约束,1 软件
14、需求的基础理论与应用实践,软件需求的三种类型,功能需求,功能需求描述系统应该提供的功能或服务,通常涉及用户或外部系统与该系统之间的交互,一般不考虑系统的实现细节。实例3:图书馆系统功能需求用户可从图书资料库中查询或选择其中的一个子集。系统可提供适当的浏览器供用户阅读电子文献。用户每次借阅图书应该对应一个唯一的标识号,它被记录到用户的帐户上。,1 软件需求的基础理论与应用实践,软件需求的三种类型,功能需求理解,对于功能需求而言,最为关键的是任何对其进行组织,否则一句话、一句话地描述就会显得十分零散,而且难以保证开发人员逐一满足这些需求。 传统的需求开发方法中,通常会以软件系统-子系统-模块-子模
15、块的层次结构来组织。其问题是采用该方法更多地是从程序的结构来梳理需求,问题是可能将用户的使用场景割裂开来。 现代需求理论更强调需求分析人员从用户的角度,将系统理解为一个黑盒子,从使用角度来整理需求,不管是RUP或者是XP 方法都是如此。当然也不是说这样的方式就不存在问题,比如可能存在组织混乱的情况。,功能需求的要点在于如何组织,1 软件需求的基础理论与应用实践,软件需求的三种类型,非功能需求,非功能需求从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求,例如响应时间、数据精度、可靠性、开发过程的标准等。实例4:图书馆系统非功能需求系统应在20 秒之内响应所有的请求。系统每周
16、7 天、每天24 小时都可以使用。对于一个没有经验的用户而言,经过两个小时的培训就可以使用系统的所有功能。,1 软件需求的基础理论与应用实践,软件需求的三种类型,非功能需求,非功能需求可以考虑的组织方式,1 软件需求的基础理论与应用实践,软件需求的三种类型,非功能需求理解,非功能需求常见的问题主要有:信息传递的无效性;忽略了非功能需求的局部性。 信息传递的无效性:许多需求规格说明书中,会通过一个名为设计原则的章节来说明非功能需求,列出诸如高性能、高可靠性、高可用性、高可扩展性等要求。实际应用中,多数开发人员根本就不去考虑这些问题。因为对这样的非功能描述没有判定标准,由此这类传递的信息是无效的。
17、 忽略了非功能需求的局部性:通常可以看到的非功能需求,比如“系统响应时间小于5秒”的描述,但当用户查询的是年度统计数据时,这样的要求根本无法实现。由此开发人员仍然不会将这类问题加以仔细考虑,最终将这些要求变成摆设。,非功能需求一定要注意保证信息的有效传递和注意其局部性,1 软件需求的基础理论与应用实践,软件需求的三种类型,非功能需求理解,一般在软件开发过程中可以将非功能需求划分为: 性能需求,质量属性,对外接口等,1 软件需求的基础理论与应用实践,软件需求的三种类型,非功能需求理解,速度(Speed),系统的响应时间,例如PR2.3.3-1。PR2.3.3-1:所有的用户查询都必须在10秒内完
18、成。容量(Capacity),系统所能存储的数据量,例如PR2.3.3-2。PR2.3.3-2:系统应该能够存储至少10万条销售记录。吞吐量(Throughput),系统在连续的时间内完成的事务数量,例如PR2.3.3-3。PR2.3.3-3:解释器每分钟应该至少解析5000条没有错误的语句。负载(Load),系统可以承载的并发工作量,例如PR2.3.3-4。PR2.3.3-4:系统应该允许200个用户同时进行正常的工作。实时性(Time-Critical),严格的实时要求,例如PR2.3.3-5。PR2.3.3-5:监测到病人异常后,监控器必须在0.5秒内发出警报。,性能需求,1 软件需求的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件需求第2课 软件需求基础第1版ppt课件 软件 需求 基础 ppt 课件
链接地址:https://www.31ppt.com/p-1422621.html