第讲需求分析.ppt
《第讲需求分析.ppt》由会员分享,可在线阅读,更多相关《第讲需求分析.ppt(51页珍藏版)》请在三一文库上搜索。
1、1,第四讲 需求分析,2,提纲 需求工程概述 需求获取 需求分析、协商与建模 需求规约与验证 需求管理,3,需求工程概述 什么是软件需求? 用户对目标系统在功能、行为、性能等方面的要求 软件需求的本质是什么? 明确软件到底“做什么”,以及应具备的性能 什么是需求分析? 对软件需求的理解、分析与表达,4,功能需求与非功能需求 功能需求应明确软件的行为 非功能需求主要是约定软件的质量标准 用户需求与领域需求 用户需求:只针对某个特定用户 领域需求:针对某个行业的普遍规律 什么是需求工程? 教材P47 运用相关技术与方法进行需求分析的过程。细分为:需求获取、需求分析与协商、系统建模、需求规约、需求验
2、证以及需求管理6个阶段。,5,需求工程的六个阶段,需求获取,需求分析与协商,系统建模,需求规约,需求验证,需求管理,6,I. 需求获取 通过与用户的交流,了解业务现状以及对待开发系统的期望 需求获取收集的“原始材料”为进行需求分析提供了基础 II. 需求分析与协商 对需求进行分类组织,分析需求之间的关系 检查需求的一致性、重叠和遗漏的情况 根据用户的需要对需求进行排序。 在需求获取阶段,经常出现以下问题: 提出的要求超出软件系统可以实现的范围或实现能力 不同的用户提出了相互冲突的需求,教材P4748,7,III. 系统建模 借助建模技术对获取的需求信息进行分析和表达,排除错误和弥补不足,确保需
3、求文档正确反映用户真实意图 常用的分析和建模方法 IV. 需求规约(Specification) (编写文档) 通过建立完整的信息描述、详细的功能和行为描述、性能需求和设计约束的说明、合适的验收标准,给出对目标软件的各种需求 软件需求规约是分析任务的最终产物 需求规约作为用户和开发者之间的一个协议,在之后的软件工程各个阶段发挥重要作用,8,V. 需求验证 (评审) 需求开发阶段工作的复查手段 对功能的正确性、完整性和清晰性,以及其它需求给予评价 为保证软件需求定义的质量,评审应以专门指定的人员负责(应该是需求分析人员之外的其他人员),并按规程严格进行 VI. 需求管理 (维护一致性) 一种获取
4、、组织并记录系统需求的系统化方案:对所有需求工程相关活动的规划和总体控制 需求变更管理:一个使用户与项目团队对不断变更的系统需求达成并保持一致的过程(变更的记录、分析、变更过程管理、追踪等),9,需求确认与需求分析 都需要对系统需求中的遗漏和冲突进行识别和分析 区别 需求分析处理的是未整理的原始需求,此时发现的问题是客户的问题 需求确认的对象是经分析后形成的需求规格说明,此时发现的问题是需求分析人员的问题,此外还需要考虑需求文档是否满足相应的质量标准,10,在实际的开发中,这些需求开发活动不会是线性地、顺序地完成。实际上,这些活动是交叉的、递增的和反复的。,11,需求获取,具体的每一种需求 需
5、求获取方法,12,具体每一种需求 功能需求: 功能 (1)系统将做什么? (2)系统什么时候做? (3)有多种操作模式吗? (4)必须执行什么种类的计算或数据转换? (5)对可能发生的激励事件的反应是什么? 数据 (1)输入、输出数据的格式应该是什么? (2)在任何时间都必须保留任何数据吗?,13,过程约束 资源 (1)构造系统需要哪些材料、人员或其他资源? (2)开发人员应该具有怎样的技能? 文档 (1)需要多少文档? (2)文档是联机的,还是印刷的,还是两种都要? (3)每种文档针对哪些读者? 标准 国家标准、军用标准,14,设计约束 物理环境 (1)设备安放在哪里? (2)在一个地方还是
6、多个地方? (3)是否有任何环境的限制,例如温度、湿度或者电磁干扰? (4)是否对系统的规模有所限制? (5)是否在电源、供热或空调上有所限制? (6)是否会因为现有的软件构件而对编程语言所有限制?,15,接口 (1)输入是来自一个还是多个其他系统? (2)输出是否传送到一个或多个其他系统? (3)输入/输出数据的格式是否是预先规定的? (4)数据是否必须使用规定的介质? 用户 (1)谁将使用系统? (2)将会有几种类型的用户? (3)每类用户的技术水平如何?,16,质量需求 性能 (1)有没有执行速度、响应时间或吞吐量的约束? (2)使用什么效率测量方法测量资源使用和响应时间? (3)多少数
7、据将流经系统? (4)数据接收和发送的时间间隔是多少? 可用性和人的因素 (1)每类用户需要什么类型的培训? (2)用户理解并使用系统的难易程度如何? (3)就一个系统而言,在多大程度上防止用户误用系统?,17,安全性 (1)必须控制对系统或信息的访问吗? (2)应该将每个用户的数据和其他用户的数据隔离吗? (3)应该将用户的程序和其他程序以及操作系统隔离开吗? (4)要采取预防措施以防止盗窃或蓄意破坏吗? 可靠性和可用性 (1)系统需要检测并隔离故障吗? (2)规定的平均失效间隔时间是多少? (3)失效后重新启动系统允许的最大时间是多少? (4)系统多久备份一次?,18,获取需求的方法 与用
8、户建立畅通的工作机制 按照业务流程获取与分析用户需求 观察、倾听、提问 对同类型软件与同类型单位进行调研 对所获取的需求进行分析,并与用户协商 与用户组成联合小组,通过“用例”进行分析,19,开发人员眼里的用户 用户不知道他们想要什么 用户不能清楚的表明他们想要什么 用户不能够提供可用的需求陈述 用户提出含有太多政治动因的需求 用户立刻就想要一切 用户不能保持进度 用户不能对需求划分优先级 用户不愿意妥协 用户拒绝为系统负责任 用户未对开发项目全力以赴,20,用户眼里的开发人员 开发人员并不理解操作需求 开发人员不能将清晰陈述的需求转变为成功的系统 开发人员对需求定义设置不现实的标准 开发人员
9、过于强调技术 开发人员总是迟到 开发人员不能对合法变化的需求做出及时响应 开发人员总是超出预算 开发人员总是说“不” 开发人员试图告诉我们如何做我们的本职工作 开发人员要求用户付出时间和工作量,甚至损害到用户的主要职责,21,建立顺畅的通信途径 建立分析所需要的通信途径,以保证能顺利地对问题进行分析。,22,访谈与调查 在具体的实践中,通常采用折衷的方法,即适当地计划好面谈,但不要过于详细,允许有一定的灵活性。一般按照如下原则进行准备: 所提问的问题应该循序渐进,从整体的方面开始提问,接下来的问题应有助于对前面的问题更好的理解和细化; 不要限制用户对问题的回答,这有可能会引出原先没有注意的问题
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 需求 分析
链接地址:https://www.31doc.com/p-3124697.html