软件过程管理习题.pdf_第1页
软件过程管理习题.pdf_第2页
软件过程管理习题.pdf_第3页
软件过程管理习题.pdf_第4页
软件过程管理习题.pdf_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.阅读全部的CMM内容,选择出你认为最有价值的十条关键实践,并说 明理由。 (1)项目软件负责人,设计/编程/测试人员、软件版本管理员均已得 到相应的培训,具备了完成其职责所需要的知识和技能。 理由:通过培训,工作人员具有了一定的知识储备,遇到困难能够 很快找到相应的解决措施,就可以很快上手,不至于在一个问题上耽误 太多时间。因此,为了达到统一的科学技术规范、标准化作业,通过目 标规划设定、知识和信息传递、技能熟练而进行培训是十分必要的,这 样能减少所需工作时间,提高成员的开发能力和创新能力,从而降低人 力成本;减少浪费,从而降低了开发成本。因此,参加培训是十分必须 的。 (2)根据项目要求,建立软件有关组(例如工程组、软件测试组 等)。 理由:通过建立相关组,各组可以各施其职,同步工作,提高工作 效率。因为软件开发时不可能一个人兼顾所有的方面,应该分成几个模 块,只做好自己的然后和其他组协调就可以。如专人负责技术方案设 计,专人负责数据,专人做技术层面的指导等。这样权责分明,遇到问 题能够很快找到相应的负责组,解决问题的时间也将大大减少。 (3)确定设计、编程、测试人员,并实施三分离。 理由:实现了三分离可以更加开阔人员的思维,防止由于思路固定 而不能及时发现问题,更有助于激发员工的创新思维,使软件更先进, 更经得起考验。 (4)根据项目软件的质量需要确定本项目所采用的软件开发方法。 理由:确定好软件开发所采用的开发方法,就能尽早的做下步计 划,不至于到最后为选择开发方法而浪费太多时间。目前已形成了八类 软件开发方法,开发时是选择面向数据结构的开发方法还是面向对象的 开发方法,直接会影响到小组的开发进度。要根据成员的擅长情况制定 方法。 (5)软件版本管理员,以及设计、编程、测试人员的职责明确。 理由: 权责分明,遇到问题追究到人,会使项目开发更有计划。完 善制度,将责任明确到人,这样才能明确目标,将工作细化,使成员做 好自己的工作,认识到重要性,使开发过程能高效的进行。 (6)制定正式评审规程、建立相应的评审机构。 理由:项目评审工作就是对项目计划执行情况以及未来计划的新情 况做一个评审,同时对项目的财务状况及其它情况做一个总结。另 外,它可以为项目团队在处理项目风险时提供机会,以获得管理层的 支持,同时也为项目团队继续开展项目工作提供在高层管理方面的认 可。 (7)根据项目实际情况,选定本项目应遵循的软件过程标准、规范。 理由:如果一个团队中有了统一的过程,那么,大家的行为就会符 合规范,从而提高团队的整体能力。如果一个团队缺乏执行规范化过程 的活动,就会导致整个组织的混乱。为了消除软件过程所常见的问题, 建立软件过程规范是必要的。软件过程规范可以确保过程活动的一致 性、有效性和持续性。 (8)任命项目负责人。 理由:项目负责人除了调配好小组成员,运用专业知识做整体质量 的导向,控制项目的进度以外,还要与用户协调,利用周边人力资源做 项目规划的流程安排,项目负责人要及时的发现程序开发中的困难和障 碍,并且努力的及早的解决。一个项目从开始运作到最后完成,不论是 合同的签定、还是人员的调配、还是执行的安排,处处隐藏着不可预见 的漏洞,因此需要项目负责人全局的掌控思维和能力。 (9)具有各阶段活动所需要的软/硬件环境、支持工具,并提供足够的 经费。 理由:只有硬件基础具备了,才能形成一个好的开发环境,同时经 费也是基础,要合理的制定经费计划,保证开发过程顺利进行。要做好 软件开发成本估算,这样才能合理的开发。 (10)项目软件负责的职责明确。 理由:责任是管理的基础,明确了职责,才能使成员更加认真的做 好自己的本职工作,同时将责任细分,在出问题后也可以责任到人。 2.软件配置管理主要包括哪些?请详细说明。 (1)配置管理过程 软件配置管理(SCM)简单而言就是管理软件的变化。它属于软件 工程过程,通常由相应的工具、过程和方法学组成。在整个过程管理的 活动中占有很重要的位置。 IEEE“软件配置管理计划标准”关于SCM论述如下。 软件配置管理由适用于所有软件开发项目的最佳工程实践组成,无 论是采用分阶段开发,还是采用快速原型进行开发,甚至包括对现有软 件产品进行维护。SCM通过以下手段来提高软件的可靠性和质量。 1)在整个软件的生命周期中提供标识和控制文档、源代码、接口 定义和数据库等工件的机制。 2)提供满足需求、符合标准、适合项目管理及其他组织策略的软 件开发和维护的方法学。 3)为管理和产品发布提供支持信息,如基线的状态、变更控制、 测试、发布和审计等。 软件配置管理贯穿于项目的整个软件过程中,与项目过程行为密不 可分。一方面,对于在软件过程中所产生的工作产品或变更请求通过配 置管理活动进行管理,将有效的信息存储在配置管理库中。另一方面, 项目人员可依赖配置管理活动获取配置项的有效版本和历史信息。 软件配置控制是软件配置管理的核心工作。软件配置控制主要包括 对软件的存取控制、版本控制、变更控制和产品发布等4个方面。 (2)基线控制 在软件开发过程中,由于各种原因,可能需要变动需求、预算、进 度和设计方案等,尽管这些变动请求中绝大部分是合理的,但在不同的 时机做不同的变动,其难易程度和造成影响差别比较大,为了有效的控 制变动,软件配置管理引入基线的概念。 简单地说,基线就是项目存储库中每个工件版本在特定时期的一 个“快照”,它提供一个正式标志,随后的工作基于这个标志进行,并且 只有经过授权后才能变更这个标志。建立一个初始基线后,以后每次对 它进行的变更都将记录一个差值,直到建成下一个基线。 基线是软件生命期各阶段末尾的特定点,也称为里程碑。在这些特 定点上,阶段工作已结束,并且已经取得了正式的阶段性产品。 建立基线的概念是为了把各个阶段的工作划分的更加明确,使得本 来连续开展的软件工作在这些点上被割开,从而更加有利于检验和肯定 阶段性的成果。同时也有利于变更控制。有了基线的规定后,就可以禁 止跨越里程碑去修改另一阶段“已冻结”的工作成果。 就各种不同类型的基线而言,有一条较为特殊的基线,它是软件过 程中的第一条基线。它包含通过评审的软件需求,因此称之为“需求基 线”。通过建立这样一个基线,受控的系统需求成为进一步软件开发的 出发点,对需求基线的变更请求将受到慎重的评估和严格的控制。受控 的需求还是对软件进行功能评审的基础。需求基线是整个软件生命周期 的起点和终结点。 (3)版本控制 版本控制是对系统不同版本进行标识和跟踪的过程,是实行软件配 置管理的基础,也是所有配置管理系统的核心功能。配置管理系统的其 他功能大都建立在版本控制功能之上。 版本控制主要分为版本的访问与同步控制、版本的分支和合并。 1)版本的访问和同步:一般来说,不同的工作空间是由不同的目 录来表示的,而对工作空间的访问是由文件系统提供的文件访问权限来 加以控制的。 版本的访问控制:工作区域中的源文件是从库中恢复得到的一个副 本,该副本可以是“可写”的,也可以是“可读”的。对于“可写”的副本来 说,它就是真正的工作文件。而对于“可读”的副本,它可以被视为软件 库中源文件的一个缓冲副本,此时一般有两种工作模式。 在工作区域一旦有“读”请求,则作一次恢复操作,获得一个副本。 当“读”操作结束后,该副本被删除。这样就形成一种重复恢复,从而可 以保证工作区域中的文件内容被更新为与软件库中的内容一致。 针对上一种模式中重复恢复引起的较大时间代价,不是每次“读”操 作都要求与软件库中发生交互,而是将重点放在工作区域上,仅当软件 库中的内容发生更改时,才发生交互。 版本同步控制:同步控制实际上是版本的检入检出控制。 2)版本的分支和合并:版本分支的人工方法就是从主版本-称为 主干上复制的一份,并做上标记。在实行了版本控制之后,版本的分支 也是一份复制,这时的复制过程和标记动作由版本控制系统自动完成。 对于合并,在没有版本控制的时候,一般是通过文件的比较来进行 合并。在实行了版本控制之后,还是要通过文件的比较来进行合并,但 是这时的比较工作可以由版本比较工具自动进行合并,自动合并后的结 果需要人工检查,才有很高的可靠性。 (4)变更控制 在软件过程中要产生许多变更,比如配置项、配置、基线、构建的 版本和发布版本等。对于所有的变更,都要有一个控制机制,以保证所 有变更都是可控的、可跟踪的和可重现的。 为了有效地进行变更控制,需要规范相应的变更控制流程,变更控 制流程主要分为7个阶段,变更请求提交、接受、评估、决策、实现、 验证和完成。 3.如何综合运用过程管理的工具? 在软件过程活动中,要经历不同的阶段和涉及很多的过程域,为了 有效的执行这些软件过程活动,需要在整个软件开发过程中引入相关工 具。一般来说,实施软件过程活动所需要的工具主要有下面几种。 需求管理工具 面向对象的分析设计工具 配置管理、变更管理工具 软件测试管理、缺陷跟踪工具 (1)需求管理工具 一个优秀的需求管理工具,可以有效地管理需求,提高需求管理工 作流程的自动化程度,在项目实施中完整的、一致的管理好需求。 IBM-Rational AnalystStudio:IBM-Rational AnalystStudio可以帮助更 好地分析问题,更好地定义并交流问题的解决方案,用于可视化建模、 需求和用例管理以及缺陷和变更请求跟踪等。 Telelogic DOORS:Telelogic DOORS-Enterprise Requirements Suite(DOORS/ERS)是基于整个软件组织的需求管理系统,用来捕 捉、链接、跟踪、分析及管理信息,以确保项目与特定的需求及标准保 持一致。DOORS/ERS提供多种工具与方法对需求进行管理,可以灵活 地融合到组织的软件过程管理中。 Borland Caliber:Borland Caliber是一个基于Web和用于协作的需求 定义和管理工具,可以帮助分布式的开发团队平滑协作,从而加速交付 应用系统。Caliber辅助团队成员沟通,有助于更好地理解和控制项目, 较少错误和提升项目质量。 (2)面向对象的分析设计工具 IBM-Rational Rose是面向对象技术分析设计工具的代表,是可视化 的建模工具。它采用“统一建模语言(UML)”的表示方法,在同一个模 型中实现业务建模、对象建模和数据建模,使所有参与项目的成员都可 以在统一的语言环境中工作于同一个模型之上,有利于改善成员之间的 沟通。其次,IBM-Rational Rose支持多种语言的代码生成及双向工程, 可实现代码和模型的互相转换,并且可以将遗留代码引入模型中。最 后,IBM-Rational Rose带有对设计元素进行测试的模块工具,可以尽早 发现设计中的问题,真正实现“质量从头抓起”。 (3)配置管理和变更管理工具 在CMM标准中,明确规定了软件配置管理以及变更请求管理的相 关工作,主要包括以下两方面。 1)配置管理的主要工作包括通过创建软件配置管理库、定义配置 项以及建立和维护软件的基线。 2)变更请求管理的主要工作包括控制和记录配置项内容的变更, 建立和维护一个系统并使其追踪和管理变更请求及问题报告。 常用的软件配置管理工具有国内青鸟软件的JBCM、IBM-Rational 的ClearCase和开源工具CVS。 4.通过一个案例,说明一下如何运用IPD提高产品集成的质量。 华为是国内第一家引进和实施IPD的公司,也是受益最大的国内企 业。华为的IPD可以分为两个大的阶段,这两个阶段的效果有明显差 别;在IBM为华为提供IPD咨询后,华为的IPD取得了巨大成功。 (1)实施背景 实施IPD之前,华为每年将销售额的10%投入产品开发,但是研发 费用浪费比例和产品开发周期仍然是业界最佳水平的两倍以上。华为销 售额虽然连年增长,但产品的毛利率却逐年下降,人均效益只有思科、 IBM等企业的1/3-1/6。 产品开发流程处于企业价值链最上游,这里出现 的问题通过生产制造、销售、交付、售后服务等下游环节会产生若干倍 的放大。在分析采购业务系统时,华为就发现很多问题的根本出在产品 开发过程中。因此,从产品开发入手,解决产品开发这一源头上的问 题,是提高产品投资收益和解决公司系统性问题的治本之举。华为花巨 资引进IPD,就是希望通过变革产品开发模式,缩短产品上市时间,降 低费用,提升产品质量,最终能够提高产品的盈利能力。 IBM的专家认为,华为在产品研发方面的主要问题是概念与计划阶 段合并在一起,研发活动缺乏计划性和严格的评审。以前,华为经常是 基本上没有业务计划,甚至在高层指示下就直接开始了开发。这导致产 品与技术的开发重合,最后导致实用产品迟迟推不出来。华为以前的评 审往往是技术型而不是业务型,主要依靠主观判断来分析市场需求。由 于评审和决策仅仅是出于主观判断,没有符合市场需求的标准,结果造 成产品不断修改。 (2)实施过程 华为的IPD经过了两个阶段。第一阶段从1998年初开始。当时华为 开始自己摸索实施IPD,组织了项目组(主要由一批MBA构成),拿出了 一套基于IPD的研发体系变革方案,并进行了推广实施。但这次IPD变 革效果并不像人们预期的那样,基本上是一次失败的尝试。后来华为经 过分析决定请IBM作为咨询方来帮助解决问题。华为在IBM的帮助下实 施IPD是从1998年开始起步的。当年,由IBM为华为实施IPD提供咨询, 打破了华为以部门为管理结构的模式,转向以业务流程和生产线为核心 的管理模式。仅此一项华为付给IBM的咨询费达到了数千万美元。 根据IBM咨询的方法论,华为IPD项目划分为关注、发明和推行三 个阶段。在关注阶段,进行了大量的“松土”工作,即在调研诊断的基础 上,进行反复的培训、研讨和沟通,使相关部门和人员真正理解IPD的 思想和方法。发明阶段的主要任务是方案的设计和选取三个试点PDT, 按IPD进行运作。推广阶段是逐步推进的,先在50%的项目中推广,然 后扩大到80%的项目,最后推广到所有项目。 华为的IPD在刚开始起步时,各个产品的研发在组织架构上已经基 本形成了PDT的雏形,各种计划、文档、研发活动也是按IPD的模式进 行。但在这个时期,只有华为与IBM配合成立的IPD项目组里的人对IPD 有较为明确的理解。当时研发流程用的是所谓IPD1.0,IPD的实际效用 没有完全发挥出来。公司内部只是在研发活动的称谓以及重要文档的输 出上模仿PDT1.0流程的规定。IPD的核心组决策,IPMT的决策评审等关 键措施并没有施行,只是在两个产品线上作试点。这个过程持续到了 2001年,从2001年开始,华为规定,公司内30%的产品线必须严格按照 IPD2.0流程运作,其他产品线继续按照IPD1.0流程运行。 2002年华为规定,到年底所有产品线必须完全按照PDT2.0的流程运 作。此时,支撑PDT流程的相关人事制度,财务制度,以及绩效考核制 度等都已建立起来。同时,华为公司从高层领导到基层产品研发管理者 都对PDT的思想和流程有了比较清晰深入的认识,因此已经具备全面推 行PDT的客观条件。至2003年,华为的IPD已经从1.0版本升级到了3.0版 本。 (3)华为IPD构成 华为的IPD主要由以下几个部分组成: 1)固化的结构化研发流程 2)支持流程实施的跨部门团队 以前华为的产品开发完全是研发部门的事情,技术方向由关键人物 来选择。在IPD模式下,各部门都要有人参与到规划和实施的过程里, 组成跨部门的团队IPMT与PDT(IPT)。跨部门的团队基本上要在产品 开发之前做出相关联的规划,并且在产品开发的过程中相互协调,以保 证这个产品从始至终都是技术领先、成本合理并且符合市场需求。 华为共有约一百多个产品线,类似的产品线再一起组成一个大的产 品线。每个大的研发产品线都有一个IPMT,他们是由总监级(现在改为 产品线总裁)或者资深的产品专家组成,负责对旗下各个产品线的研发 活动作关键环节(立项评估,计划决策,实验局评估等)的监控和评估。 监控和评估的主要依据就是看这个产品研发成本投入和未来市场效益的 比较,以及技术、资金、人力等方面的可行性。 决策评审点:决策评审点实际上是一种喇叭口的结构。也就是通过 仔细的调查、研究和分析之后筛选出最有潜力的项目,并且在“动手”之 前尽可能地进行“瞄准”和计算“提前量”。使得最后进入开发阶段的项目 都是最健康和最明确的。应该说这种研发管道管理,是华为在以前最欠 缺的。 异步开发模式:IPD在开发过程中为华为第一次引进了“异步开 发”的概念。这种流程实际上很好地使用了并行工程的思想,它比华为 原来串行研发流程的效率要高很多。 (4)实施成效 华为IPD的实践表明,IPD能够加快产品开发速度,缩短产品上市 时间,减少产品开发的投资失败从而减少浪费,降低产品开发成本,增 加收入,给客户提供价廉物美的产品。 总的来说,IPD实施几年来,华 为逐渐建立起世界级的研发管理体系,形成了世界级的研发能力,优化 了公司的整体运行,取得了明显成效。 5.针对一个过程管理模型(RUP,MSF,XP或者是面向构

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论