软件开发和需求管理概述.pptx
《软件开发和需求管理概述.pptx》由会员分享,可在线阅读,更多相关《软件开发和需求管理概述.pptx(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件需求与需求管理软件需求与需求管理2002-4-4 内内 容容 软件发展的三个时期 软件生存期过程 软件开发 软件需求 需求工程 需求变更及其控制 CMM2级需求管理关键过程域一、软件发展的三个时期 表一 时期年代阶段涉及注重主要使用语言标准模型初期50-60程序设计点编程技巧ALGOLFORTRANCOBOLBASIC 中期70-80软件开发线结构化模块化PASCALGB8566软件开发规范瀑布原型现代90-软件过程面过程能力C,C+JAVAVB、VCISO/IEC12207软件生存期过程ISO9000螺旋CMM二、软件生存期过程 ISO/IEC12207 信息技术软件生存期过程 基本过程
2、支持过程组织过程软件生存期过程图1-1供应过程开发过程运行过程基本过程获取过程维护过程图1-2质量保证过程验证过程确认过程支持过程配置管理过程联合评审过程审核过程文档编制过程问题解决过程图1-3基础设施过程改进过程培训过程组织过程管理过程图1-4 三、软件开发 1.计算机系统 人员硬件软件数据传输机构执行机构(剧作家、导演)(舞台剧本演员道具)图2 计算机系统2.软件开发过程: 活动任务 系统需求分析系统结构设计 软件需求分析建立软件需求评价软件需求联合评审软件结构设计软件详细设计软件编码和测试 软件集成 软件鉴定测试系统集成系统鉴定测试软件安装软件验收支持 软件开发面临的实际问题软件开发面临
3、的实际问题软件开发面临的实际问题3当前软件开发项目的特点 规模大: LOC1万几十万 HP激光打印驱动软件 4万110万 复杂 质量要求高满足客户需求和期望 客户满意度统计 开发和维护成本缺陷后期发现 返工成本 延误交付期四、软件需求 1. 系统需求分析 软件系统需求(1)系统需求分配软件工程组硬件系统需求(2)其它成分系统需求(n)软件需求客户最终用户系统工程组图3 系统需求分配2.软件需求 定义(IEEE-STD-610) 用户为解决某个问题、或为实现某一目标, 要求软件必须满足的条件或能力。 软件需求的三个层次 业务需求 用户需求 功能需求和非功能需求 非功能需求 过程需求:交付需求,实
4、现需求,遵循的标准性能需求:速度,容量,可靠性外部需求:互操作性,伦理性, 机密性,安全性,使用要求 业务需求业务说明使用实例用户需求功能需求约束条件非功能需求软 件 需 求 规 格 说 明图 4 软件需求的层次质量功能展开(QFDQuality Function Development) 客户需求 常规需求:客户明确提出 期望需求:并未明确提出的潜在需求, 不 言而喻的需求 兴奋需求:客户未想到,若实现客户 感到意外分配需求的实例 系 统 需 求ACCS应能使汽车保持在预期车速的2KMH范围内行驶分配给硬件的需求硬件应能使车速在规定的精确度1.5KMH范围内分配给软件的需求软件应能在车速超出
5、预期车速0.5KMH时给硬件加/减速命令软 件 需 求软件应能:读入当前车速值计算当前车速与预期车速之差若差值0.5KMH给出加/减速命令图5 汽车限速系统ACCS的需求分配3CMM 2级 关键过程域需求管理(KPA RM)中对软件需求的解释: 分配需求(allocated requirements): 分配给软件的系统需求 (1)分配需求包括: 影响和确定软件项目活动的非技术性需求 (在合同条款中规定),如:要交付的产品交付日期里程碑 软件的技术需求,如:最终用户、操作人员、支持或集成的功能性能需求设计约束条件编程语言界面需求 用于确认软件产品满足分配需求的验收准则(2)分配需求应当是:以软
6、件来实现是可行的,而且是适合的;已得到清晰而正确的阐述;相互之间是一致的;可以测试的。 同时,分配需求应当:被管理和控制(如必要可纳入软件配置管理)是制定软件开发计划SDP的基础是制定软件需求的基础 (3)与分配需求相关的组:软件评估组系统工程组系统测试组软件质量保证组SQA合同管理组文档支持组 五、需求工程 1需求工程需求开发需求管理 获取需求分析需求定义需求验证需求需求变更控制需求跟踪需求状态跟踪需求文档版本控制需求开发需求管理需求工程图6 需求工程的构成用户/系统市场管理者初始需求变更的需求获取,分析,定义,验证需求控制需求变更需求规格说明项目环境需求开发需求管理图7 需求开发与需求管理
7、2需求开发 (1)获取需求确定目标用户、服务对象明确用户代表用户培训了解实际业务和业务需求(2)分析需求分清功能需求、性能需求、使用需求必要性可行性(3)定义需求编写软件需求规格说明(SRS)作用要求:完整、正确、可行、无歧意、可验证形式:图、表、文字(4)验证需求联合评审 六、需求变更1 、难于完全避免 初始需求变更的需求对问题的初始理解对问题的新理解时间图8 需求的变更2、需求变更原因分析1) 单纯的用户因素 2) 市场形势变化 3) 系统因素 4) 工作环境和要求变化 5) 需求开发的缺陷 需求分析、定义和评审不充分 与用户沟通不畅 3、需求变更对软件开发的影响 使变更前开发工作和成果失
8、效 返工成为被迫采取的对策 工作量及资源投入的增加使开发成本提高 项目完成时间后延 4、需求变更失控可能导致的后果 未受控的需求 变更引起需求 和实现不一致 需求文档V1系统实现V1系统实现V2需求变更 受控的需求 变更使需求和实现一致 图7 未受控及受控的需求变更 需求文档V1需求文档V2系统实现V1系统实现V2需求变更5.降低需求变更风险的策略 与用户充分沟通与用户共同明确确定的需求的意义 项目开发工作项目开发组织用户* 产品后续开发工作的基础* 产品维护工作的重要参考* 对用户的承诺* 关系到项目开发工作的投入、交付期和产品质量* 关系到能否如期获得所需的产品* 作为合同的附件,关系到双
9、方的权益* 是产品验收的依据向用户说明需求不确切或频繁变更对开发工作的冲击使用户理解过多变更最终对用户不利 与用户共同确定需求,作为合同附件, 签字生效 合同中含有对需求变更的条款 采用原型方法开发,或螺旋模型开发 项目计划中适当留有余地(时间进度、人力投入、 费用等) 严格实施变更控制 七、需求变更控制要求 1变更控制的策略(1)所有需求变更必须遵循需求变更控制规程实施变更。(2)需求变更提出后是否被接受,应由专门的组织变 更控制委员会(CCBChange Control Board)审查决定。(3)不得以任何理由删除和修改需求变更的原始文件。(4)应将已接受的需求变更通知到所有相关人员。(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 开发 需求 管理 概述
限制150内