预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共140页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

软件工程方法与实践(机械工业出版社)1.现代软件工程(国家示范性软件学院系列教材) 张家浩/东南大学机械工业出版社2009.1 2.软件工程—理论与实践 许家珆曾翎彭德中编著高等教育出版社2004.7 3.软件工程-实践者的研究方法 (美)RogerS.Pressman著郑人杰等译机械工业出版社2008.6 4.SoftwareEngineering,6thEdition Sommerville.I.(影印版)机械工业出版社2003.4总目录总目录第5章软件需求分析过程在生命周期不同阶段修复缺陷的相对成本需求分析是软件定义时期的第一个阶段,它的基本任务是准确地回答“系统必须做什么?(what)”这个问题。 需求分析的任务还不是确定系统怎样(How)完成它的工作,而仅仅是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。 在需求分析阶段结束之前,系统分析员应该写出软件需求规格说明书(SRS),以书面形式准确地描述软件需求。 在分析软件需求和书写软件需求规格说明书的过程中,分析员和用户都起着关键的、必不可少的作用。 只有用户才真正知道自己需要什么,但他们并不知道怎样用软件实现自己的需求,用户必须把他们对软件的需求尽量准确、具体地描述出来。 分析员知道怎样用软件实现人们的需求,但是在需求分析开始时他们对用户的需求并不十分清楚,必须通过与用户沟通获取用户对软件的需求。 需求分析和规格说明是一项十分艰巨复杂的工作。 必须严格审查验证需求分析的结果。功能需求:描述系统预期提供的功能或服务 系统应提供的服务 如何对输入做出反应 系统在特定条件下的行为 非功能需求:指那些不直接与系统具体功能相关的需求 产品需求:性能、可靠性、可用性 机构需求:过程标准、实现要求、交付需求 外部需求:互操作、道德 领域需求:对已存在的功能预期的约束或一个特别的计算,影响可用性功能需求功能需求描述:出卷系统非功能需求非功能需求举例领域需求E需求分析主要是理解客户需要什么、分析要求、评价可行性、协商合理的方案、无歧义地详细说明方案、确认规格说明、管理需求以至将这些需求转化为可行系统 过程包括: 初步沟通 导出需求 分析和精化 可行性研究 协商与沟通 规格说明 需求验证 变更管理初步沟通导出需求分析和精化可行性研究协商与沟通软件需求规格用户需求描述示例:系统需求:需求规格文档标准(GB856D-1988)需求验证需求变更管理通用跟踪表确定共利益者:直接或间接从正在开发的系统中获益的人 例如,POS机系统中的共利益者有:收银员、售货员、顾客、公司、经理、支付授权服务、帐务系统和库存系统等 识别视点:从不同的视角看待该系统 比如,收银员关心准确、快速生成一次销售,且没有支付错误;售货员关注销售提成 协同工作:共利益者之间的协作 首次提问:集中于客户和其他共利益、整体目标、收益等会谈: 非正式会谈:提出一些可自由回答的问题 正式会谈:提出一些事先准备好的议题 情景分析:需求分析从对场景的评论中得到信息,然后再将其以形式化方式表示出来。 使用调查表 制定调查表 分析 建立原型 界面 执行过程场景分析情景POS机系统中处理销售的场景主成功场景实例分析:出卷系统出卷系统的功能需求实例分析:POS机系统POS机系统主要功能需求实例分析:图书馆系统图书馆系统的主要功能需求实例分析:短信系统实例分析:ATM系统ATM系统主要功能需求小结软件需求分析方法需求分析的任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的“做什么”的问题 通常用数据流图、实体-联系图、状态转换图、数据字典和主要的处理算法描述这个逻辑模型。根据在分析过程中获得的对系统的更深入更具体的了解,可以比较准确地估计系统的成本和进度,修正以前制定的开发计划。•需求获取技术 –用户面谈 –需求专题讨论会 –问卷调查 –现场考察 –原型化方法 –基于用例的方法访谈是最早开始使用的获取用户需求的技术,也是迄今为止仍然广泛使用的需求分析技术。 访谈有两种基本形式,分别是正式的和非正式的访谈。 正式访谈时,系统分析员将提出一些事先准备好的具体问题。 在非正式访谈中,分析员将提出一些用户可以自由回答的开放性问题,以鼓励被访问人员说出自己的想法。当需要调查大量人员的意见时,向被调查人分发调查表是一个十分有效的做法。 分析员仔细阅读收回的调查表,然后再有针对性地访问一些用户,以便向他们询问在分析调查表时发现的新问题。 在访问用户的过程中使用情景分析技术往往非常有效。 所谓情景分析就是对用户将来使用目标系统解决某个具体问题的方法和结果进行分析。情景分析技术的用处主要体现在下述两个方面: (1)它能在某种程度上演示目标系统的行为,从而便于用户理解,而且还可能进一步揭示出一些分析员目前还不知道的需