软件需求说明书详解.ppt

  1. 1、本文档共105页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实用软件工程 (第4版) 课件4;美丽的北师大珠海分校(4) 丽泽湖畔的学生宿舍与食堂----赵池龙摄;;第4章 软 件 需 求 ;本章对读者的要求 ;4.1 需求分析基本概念 ;需求分析分为两个阶段,需求获取阶段和需求规约阶段。需求关心的是系统目标而不是系统实现。 需求可以分为两大类,功能性需求和非功能性需求,前者定义了系统做什么,后者定了系统工作时的特性。 2.需求分析为什么重要 需求分析特别重要。这是因为: ;(1).许多大型应用系统的失败,最后均归结到需求分析:要么获取需求的方法不当,使得需求分析不到位或不彻底,导致开发者反复多次地进行需求分析,致使设计、编码、测试无法顺利进行;要么客户配合不好,导致客户对需求不确认,或客户需求不断变化,同样致使设计、编码、测试无法顺利进行。 (2).用户需求报告既是软件生命周期??的第一个里程碑,又是客户、软件开发人员、软件测试人员和项目管理人员四者共同工作的基线,是项目Alpha测试和Beta测试的准则,是供方交付产品和需方验收产品的依据。 ;(3).需求分析要占用整个软件开发时间或工作量的30%左右。 (4).需求获取中的错误,属于软件开发中的早期错误,将给项目成功带来极大风险,因为这些错误会在后续的设计和实现中进行发散式的传播。 根据以上四项原因,IT企业的高层经理,对需求分析特别重视,常常派经验最丰富的人员去作项目需求。 ;3.需求获取为什么难 (1).用户需求具有动态性,即需求的不稳定性:在整个软件生命周期内,应用软件的需求会随着时间的进展而有所变化。个别用户,甚至是朝三暮四地变化。 (2).用户需求具有模糊性:由于用户的素质不是很高,业务流程不很规范,所以需求表达不很清楚也不够明确。 (3).开发者和用户要对需求达成完全一致的认识,用户要在需求报告上签字。 (4).中国的国有企业正处在变动期(体制改革与企业重组),中国的民营企业正处在成长期(发展壮大与不完全成熟)。 ;4. 用户需求报告与需求分析规格说明书 《用户需求报告》是站在用户的角度、使用他们可以看懂的语言写的,内容是有关系统的运行环境、业务流程、业务功能、业务性能和业务接口等。 它是需求分析阶段产生的第一份重要的文档,表达了用户全面的、系统的、准确的、并且用户确认的需求,它是用户、项目开发者、项目测试者和项目管理者四方共同工作的基础,是用户测试和验收目标的依据,是作为软件开发机构和用户之间一份事实上的技术合同书,是软件生命周期中的第一根基线。 ;《需求分析规格说明书》是站在开发者的角度、使用开发者的语言写的,目的是作为概要设计和详细设计的依据,内容是系统的业务模型、功能模型、数据模型和接口模型的进一步定量描述。它是需求分析阶段产生的第二份重要的文档。 与用户需求报告不同的是,需求分析规格说明书不但以一种一致的、无二义的方式准确的表达用户的需求,而且增加了一些对设计者非常有用的信息(如模型、实体、属性、方法、关系、主键、外键、算法等等),它是项目开发者、项目测试者和项目管理者三方共同工作的技术基础,是项目开发者下一步进行设计和编码的依据。 ;5.需求获取与需求规约 所谓需求获取,就是开发者与用户共同提取并共同确认需求。 在需求获取过程中,人们将“划分、抽象和投影”三要素,作为需求获取的三原则。 (1).划分,就是捕获问题空间的“整体/部分”关系; (2).抽象,就是捕获问题空间的“一般/特殊”或“一般/特例”关系; (3).投影,就是捕获问题空间的多维“视图”。 所谓需求规约,就是对获取并确认的需求进行定义与分析,并且解决需求中存在的二义性和不一致性,最后以一种系统化的文档形式,准确地表达用户的需求,形成所谓的需求分析规格说明书。 ;6. 需求验证 需求验证就是对软件需求分析规格说明书加以验证。需求验证要从以下方面进行:正确性,无二义性,完整性,可验证性,一致性,可量化性,可理解性,可修改性,唯一性,可跟踪性,设计无关性。 无二义性就是要去掉模棱两可的内容。可验证性就是要具有可测试性,即需求是具体的、可测试的。可量化性就是需求的功能与性能要数字化,例如服务器的功能与性能指标、并发用户数目、平均响应时间。唯一性就是每项需求给一个唯一标识,以便于需求跟踪与配置管理。 ;7. 需求是一个迭代过程 由于人们对客观事物的认识不断深化,所以需求过程是一个迭代过程,每次迭代提供更高质量和更详细内容的软件需求。 这种迭代会给项目带来一定的风险,上一次迭代的设计实现可能会因为需求不足而被推翻。但是,软件分析师应根据项目计划,在给定的资源条件下得到尽可能高质量的需求。 ;8. 软件需求的三个层次 软件需求包括三个不同层次:高层领导的战略决策需求、中层管理的查询统计需求、基层人员的实时操作需求。这个上中下三层需求,构成一个

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档