目标管理软件(精选5篇)

  • 目标管理软件(精选5篇)已关闭评论
  • A+
所属分类:文学
摘要

软件项目的完成是很复杂的一个工程,可能会有很多的项目小组,大型项目尤其如此,这儿其中包含的人员、内容很多,对项目的操作就会很复杂,这就对管理者的统筹兼顾的能力要求很高,需要管理者动态、全面掌控项目的运行。 3当前阶段我国软件工程的投标中存在…

目标管理软件(精选5篇)

目标管理软件范文第1篇

软件工程的成果是一个逻辑体而并非是物理实体,因此也就具有一定的抽象性。首先,软件具有的智能性和无形性使得软件工程很难快速准确的被人员所认识和理解,这就是软件工程的抽象性的具体表现;而后,在软件的开发途中,需要对软件的中间产品进行很多的调试过程,也需要为软件制定严格的逻辑设计和组织,这其中会用到很多的抽象的逻辑思维能力,这也是软件工程的抽象性的具体表现;最后,软件在运营阶段的信息表达也会用到很多抽象的外在形式,很多内容不容易被发现,这也是软件工程的抽象性的具体表现。软件的抽象性特点也使得人们开发和理解软件的难度大大提高。

2项目具有系统性

软件项目的完成是很复杂的一个工程,可能会有很多的项目小组,大型项目尤其如此,这儿其中包含的人员、内容很多,对项目的操作就会很复杂,这就对管理者的统筹兼顾的能力要求很高,需要管理者动态、全面掌控项目的运行。

3当前阶段我国软件工程的投标中存在的问题

中国在加入WTO的这十年之中,机遇和挑战是并重的,随着市场对外越来越开放,中国软件公司也正承受着市场竞争所带来的强大压力。我国现在大型的软件工程实行的都是公开的招标投标的制度,这也就需要软件工程公司较好的参与到招投标的过程之中,如果企业在市场竞争的洪流之中,避免考虑招投标中的风险,也就会造成以下许多问题。

1)投标时对客户的信誉缺乏考虑

软件项目投标之前必须要对客户有一个适当的背景了解,这个背景包括了解招标人的付款方式、现有资金到位情况、项目运作经验以及资金状况这些方面。有些软件工程,招标人对软件工程的资金还没有落实好,或者是需要投入的资金和软件工程实际需要不成比例,这就自然导致了项目的风险加大。

2)维护服务能力考虑不周

软件工程开发之中的风险因素很多,由于软件工程的很难控制,软件开发之中,导致出现维护、开发、服务等周期延长的变更可能随时出现,这就需要软件公司在投标前期就要做深入的考察,以防止在软件工程的开发之中给项目带来较大的风险。

3)项目需求的人力资源得不到满足

软件行业人员流动率一直都很高,至少有百分之二十到三十,因此要保证项目的成功必须要保证人力资源的充足。因为软件项目是一个周期性较长的过程,加上人员流动频繁,在项目投标前投标人应衡量一下人力状况是否满足能项目的需求,人员在技术上能否满足项目需求,开发人员的流动能否保证工作的延续性等问题。如果在投标时不能考虑项目自身对人力状况需求的分析,盲目进行投标,即使中标后也会出现人力状况不能满足项目需求等情况,可能会出现拆东墙补西墙的局面,从而导致连锁反应,导致项目的失败。

4)投标方案无法完全满足顾客需求

投标方案的编制一般都是根据招标文件而来,如果对客户的实际需求理解不到位,在技术和设计方案上不能满足需求,在竞争比较激烈的项目中,有些投标公司往往会为了取得项目而对客户提出的很多超过范围的要求一一应允,这也就让客户有很大的期望,最后无法取得预期的效果会给双方带来损失。因此要求投标公司对招标文件理解准确、深入,并且编制既满足用户需要同时投标方案也切实可行,做到这点项目风险才会有效减少。

5)没有深入接触客户,盲目参与投标

较大型的软件项目从项目开始到招标一般半年到一年或更久的运作时间,在项目的运作之中,用户也会对软件公司和项目本身做深入调查。软件公司如果在公告之后还不对用户作深入的了解,中标机会就会变低,这样会是公司丧失这个项目,丢掉公司发展机会。

6)以投标价低获取中标机会

软件开发项目投标的合理投标是很重要的,软件公司如何报价是一个重要抉择。过高的报价会导致预算超支从而不会被客户接受。同样的,报价过低虽然会一定程度增加中标概率,但却会为项目的后续开展留下隐患,会出现工软件的质量不达标、进度跟不上、费用成本超支等诸多问题,严重的话会造成项目失败最后丧失客户信任。因此,在投标时不仅要能够满足顾客需求同时也要保证公司能够盈利,只有这样方能够尽量减少投标风险。

4如何完善软件工程项目投标

软件工程的项目投标的风险程度很高,在投标每个阶段都或多或少存在着风险。所以必须要运用一些积极的风险管理对策,采用规避风险、风险转移或风险缓解等方法来消除风险过后的不好影响。

1)建立风险管理体系提高风险管理能力

现在是市场竞争的时代,给企业造成风险的因素很多,所以企业必须重视对风险的管理,健全相关的管理制度使之成为长效机制,以期达到减少风险损失,促使企业能够长效发展的目的。

2)投标风险意识要时刻保持

很多企业只有才出现了问题之后才会意识到投标中风险管理的重要性,这样会造成软件企业很被动的局面。投标环节对企业而言很重要,投标风险也是确实存在的,如果没有主动进行风险管理的意识,投标以及软件的后续具体实施之中就会有很多麻烦。因此,企业一定要时刻保持投标风险管理的意识,并且视之为工作重点,提前做好风险预防和治理措施。

3)风险管理人才要注重培养

目标管理软件范文第2篇

在进行水利信息化项目建设中,相关软件的开发项目涉及方面广,影响因素多。在传统的水利信息化管理工作中,只注重项目建设,对项目质量管理重视程度不够,项目开发直接由设计单位进行设计,经过设计评审后实施开发,在开发过程中由于各方面的沟通和协调等原因影响,使得软件开发项目频繁出现需求变更,并最终影响整体项目的实施质量和实施效率。此外,没有一个系统的质量管理体系和规范的质量管理方法使得软件开发过程中管理混乱,极易出现质量事故。因为水利信息化项目主要应用于水库、河道、堤防等关系到社会和广大人民群众安全的水利工程,一旦出现事故,将会威胁到人民群众的生命财产安全,所以必须加强对水利信息化工程尤其是相关软件开发的质量管理。水利行业的软件开发管理措施和方法都不够全面、规范,如何根据现有的知识,对水利行业的软件开发进行研究,最大限度地提升软件的管理水平,是研究重点。

2研究目的和意义

质量,通常指产品的质量,对软件行业来说,软件质量会导致整个软件的成败,一个小小的质量问题可能会导致非常致命的结果。做好软件的质量管理不但能促进项目决策的合理化、科学化,还能在项目实施过程中实现高效化、准确化,保障项目目标的最终实现,切实提高项目成功率。目前,国际上逐渐开始重视软件工程的项目管理,一系列理论和方法的出台提高了软件开发的效率和客户的满意度,为软件开发企业带来了非常客观的经济效益和社会效益。为此,以国际上的先进经验为参考,制定适合我国的软件开发的项目管理是十分必要的。分析水利信息化项目中软件开发质量的影响因素,通过对企业组织结构的优化和软件项目过程的改进,获得项目实施质量的提升,从而减少软件开发中产生的问题对开发部门造成的损失,降低开发成本,提升整体开发水平。

3影响软件开发质量的因素

就软件质量而言,影响软件项目质量包括以下两大方面因素。

3.1人的因素

软件项目的管理要以用户的想法为根本目标。产品生产就是为了满足用户的需求。一个能够满足用户需求的软件,就是一个优质的软件。客户的需求会随着开发的进行而不断调整。只有在开发的各个阶段都能满足用户的需要,达到用户的要求,这个软件的质量才能得到保证,而在软件开发过程中树立质量第一的思想就是体现在更好地为用户服务的行动上。

3.2开发流程

软件开发流程是在软件开发模式框架的指导下实施软件开发的全过程描述和定义,包括软件开发生命周期各阶段的定义、开始前提条件、参与者描述、产出物描述、完成条件等。一个合理定义的软件流程能够将软件开发模型的优点充分发挥出来,同时减少软件开发过程中产生的负面影响。

4应用分析

4.1项目开发质量目标

首先,项目总负责人向项目组成员指出水文测报软件在整体水文监测项目中的重要性,并强调质量是最优先考虑的。其次,各成员从自己的角度提出几个目标,如质量经理的目标是保证合格率、开发人员的目标是保证测试通过率等。再次,团队在一起讨论制定的目标的可行性,是否能够实现以及需要的条件。其中,每百段程序BUG数按照模块统计,本次制定的目标为每百段程序BUG数小于10处;单元测试分模块进行,本次目标为每个模块的单元测试通过率大于90%;集成测试、系统测试、验收测试为模块的集合体测试,按照百分制原则分别制定质量目标为得分80分以上及75分以上;本次软件开发项目计划工期45d,本次制定目标为在计划工期内完工;本项目概算总投资100万元,取利润10%,故目标经费使用为90万元;客户满意度按照优良中差四级评定,本次质量目标为取得客户满意度优。

4.2软件开发质量管理影响关键因素分析

4.2.1质量计划对软件开发项目质量的影响

软件的开发一般分为4个过程,即定义需求过程、预开发过程、开发过程和维护过程,通过资金使用的情况反映质量计划的影响。参考以往软件编制过程中4个阶段开发的使用情况和对开发结果影响力进行统计分析,影响力按照百分制计算,由参与软件开发的各方进行评分取平均数,100分为影响最大,0分为最小。软件开发阶段,资金在早期使用的效率最高,可以对项目结果起到比较大的影响,而软件开发计划的编制能够在软件开发的定义阶段即对软件开发的目标、组织、资金安排进行较详细的定义和计划,能够在早期按照合适的比例安排软件开发的资金,从而对结果产生比较大的影响。

4.2.2质量控制对软件开发项目质量的影响

软件开发中,发生编制错误的次数直接影响软件开发的质量。影响软件开发项目质量的因素很多,这里选取质量控制中的5个关键因素即控制点的选取、组织领导的责任、测试的规范性、环境因素以及质量计划。在此基础上,调查统计由于关键因素的原因导致软件开发发生编制错误的次数,并绘制直方图。,质量控制能够对软件开发质量产生直接的影响,集中体现在编制发生错误次数方面。

4.2.3质量保证对软件开发项目质量的影响

软件开发质量保证主要体现在软件开发的模型选择和应用上。原始的软件开发使用的是传统的瀑布模型,将软件开发项目作为一个整体进行设计,方式如图2所示。采用质量保证措施后开发模型转化为图3的形式,由图3可以看出,使用质量保证措施将每个开发阶段再次细化,可以对各个环节的变化情况加深认识,做到每个开发阶段出现的问题能够在本阶段解决,不拖入下一阶段,这对软件开发质量起到了保证作用。

4.3保证软件开发质量的措施

根据软件开发中曾经发生过的问题和预计会发生的问题,结合项目质量管理理论,使用质量管理工具,在质量计划、质量控制、质量保证3个方面对本次软件开发进行质量管理。

4.3.1软件开发项目的质量计划

(1)制作因果分析图。在进行质量计划时,首先明确质量计划的目标,即开发质量合格、便于使用、用户满意的软件,根据水文自动测报预警软件开发项目的产品说明和水务信息化建设相关规范要求,运用头脑风暴法对软件开发中可能会导致质量不合格的情况进行整理并绘制因果分析。(3)成果输出。①将总结形成的计划管理成果汇总,形成各个阶段的人员、组织、资金、资源、权限等管理计划,指导质量管理的进行;②通过一系列质量计划的管理,最终以质量计划检查表的形式输出质量计划成果。(2)编制软件开发工作流程图。本次项目开发时,分别从质量计划、质量控制、质量保证3个方面进行质量管理,在软件的可靠性、硬件的可靠性以及软件硬件结合后的可靠性方面都做了大量的工作。一方面,在项目前期阶段,通过对规划计划的质量管理,在项目初期树立正确的开发方向,从而在项目前期工作进行质量管理。另一方面,在软件的开发阶段,通过对人员和开发流程等方面的管理,实现对项目开发阶段的质量管理。最后,在项目的实施阶段中,执行项目计划,严格进行项目测试,通过演练、试运行等方式对整体项目进行质量管理。3个阶段中,每个阶段的质量管理都非常重要。软件开发质量管理流程。

4.3.2软件开发项目的质量控制

(1)质量控制点设置与管理。质量控制点是实施质量控制的重要组成部分,软件开发的质量控制点是项目质量控制的重点对象。质量控制点应选择那些技术要求高、开发难度大、对工程质量影响大或是发生质量问题时危害大的对象进行设置。依照质量控制点的要求和特点,选择了本次软件开发中相应的质量控制点。设定了质量控制点,质量控制的目标和工作重点就更加明确。在软件开发中,首先要做好项目质量控制点的事前质量预控工作,包括明确质量控制的目标与控制参数、编制开发指导书和质量控制措施、确定质量检查方法及抽样的数量和方法、明确检查结果的判断标准及质量记录与信息反馈要求等。其次,还要做好软件开发质量控制点的动态设置,随着软件开发条件的变化,随时或定期进行控制点的调整和更新。应用动态控制原理,落实专人负责跟踪和记录控制点质量控制的状态和效果,并及时向项目负责人反馈质量控制信息,保持质量控制点的受控状态。

4.3.3软件开发项目的质量保证

运用PDCA循环法进行软件开发的质量保证,在预开发阶段、开发阶段、维护阶段3个阶段进行。预开发阶段指开发团队针对开发项目招标情况对软件开发项目做出的提前处理,工作体现在下列PDCA循环中:计划,提出软件开发的整体流程;实施,开发自己的技术提案,阐明将使用的技术及所拥有的技术工艺;检查,提出检查软件质量、纠正产品中缺陷的方法;总结,根据检查结果,提出改善质量控制的计划。开发阶段是指从软件产品开发开始,到移交产品且客户对软件性能予以肯定为止。这一阶段的PDCA循环活动有:计划,开发者根据需求和风险,提出详细的开发过程、要求使用的资源以及要得到的产品;实施,由开发组织执行开发计划;检查,开发组织和客户共同检查计划与预期得到的结果的一致性;总结,开发组织根据检查结果,审查并重新认识风险,作为下一个循环的基础。维护阶段是修复软件缺陷、提高软件性能的阶段。这一阶段的PDCA循环活动有:计划,制定处理缺陷的计划;实施,处理缺陷或根据需求变化提高软件性能;检查,判断开发维护目标是否已经达到;总结,根据检查结果审查并总结。

4.4成果数据分析

通过对本次水文自动测报预警软件开发项目的质量管理,大大提升了软件开发的质量,结合软件开发前期中制定的质量目标,与以往软件开发项目进行比对,分析进行软件开发质量管理对结果产生的影响。

4.4.1百段程序BUG数分析

根据质量控制点确定的各个模块统计各模块软件开发中每百段程序的BUG数量,结合以往类似软件开发中的统计数据进行比对。

4.4.2客户满意度比对

各模块软件开发完成后,分别对客户进行满意度调查,按照优良中差进行评价,经过与类似软件开发客户满意度比对。以往软件开发项目没有进行过模块化划分,整体项目一起进行开发,开发完成后统一进行评价,无法对内部存在的不足进行查找和梳理。本次划分了模块,根据各模块的用户满意度调查,可以在以后的软件开发中有针对性地进行改进,保证项目质量的良性发展。

5结语

目标管理软件范文第3篇

关键词:软件企业;预算管理;策略

软件企业预算管理特征分析为有效明晰软件企业预算管理特征,需分析软件企业自身经营特点。整体看,软件企业特点如下:(1)高知识密集及高技术人才密集,产业技术含量高且产品附加值高;(2)产品更新换代快且市场竞争激烈,企业技术路径选择不确定性高,经营风险大;(3)为适应激烈竞争,软件企业需不断投入资金进行研发,以维持领先优势。

基于以上特点,软件企业预算管理

具有以下特征:(1)软件企业为维持竞争优势和抢占市场,费用多投入科研领域及销售领域,其成本构成多为高期间费用及低制造成本,预算管理的侧重点相应为研发环节及销售环节;(2)软件企业资金耗费大,资金筹措对企业生存发展尤为重要,预算工作应做好资金筹措管理,以防范现金流断裂风险。软件企业实施预算管理的必要性分析预算管理,即将各项目标如经营目标、财务目标、资源分配目标具体化,并设置具体的预算指标以落实至责任部门,并通过各项动态管理以确保预算目标的有效执行,以有效指导经营活动。整体看,软件企业实施预算管理工作的必要性体现在如下方面:

1.预算管理有利于资源优化配置企业是资源的输入输出系统,资源的稀缺性也催生了企业合理优化资源配置的需求。对于软件企业而言,因其价值链的构成特点及市场需求变化快等特性,资源优化配置的需求更为迫切,体现在以下两点:(1)软件企业价值链包含产品研发、开发设计、销售等环节,并辅助以售后服务等相关联经济环节,各环节发挥作用不一,同时衔接性需求极强,因此企业需强化预算管理,以实现统筹全局并优先将资源倾斜至重要环节的管理目标;(2)软件企业所面临的外部市场需求呈现变化快且日益多元化特征,导致企业技术升级路线选择具有较强不确定性,为降低技术路径错误所带来的经营风险,往往需同时进行多个研发项目,因此需对项目进行精细化管理,以降低企业资源损耗。

2.预算管理有利于强化内部监督管控对软件企业而言,其内部监督管理存在如下难题:(1)项目监管困难,软件企业一般为多项目并行,且项目进度难以把控,导致项目存在失控且质量低下的可能;(2)因不同项目研发难度难以量化,故难以匹配合理工时实现标准化管理,导致人力资源存在严重浪费的可能;(3)跨部门协作困难,项目文档缺乏统一管理且过程记录不完整,降低了不同部门间的沟通效率;(4)决策缺乏数据支撑,难以获取持续、可对比的数据进行深入研究,无法有效指导决策。因此,解决上述难题,有必要强化和实施预算管理,如设置项目执行指标并进行动态管理,积累预算执行数据以合理分配项目工时,进一步为决策提供合理指导。

3.预算管理有利于绩效考核评价软件企业绩效管理通常存在如下问题:(1)项目多样性导致了不同项目组工作内容存在差异,需为不同项目组定制相适应的绩效考核方式;(2)软件企业从业人员多属于知识型员工,该类型人员在工作中多采取分析、设计、判断等难以量化的工作形式,如面对开发过程,这一低可视性且高失败性的环节,软件人员的工作量和工作质量则更难以量化;(3)绩效考核缺乏应有的激励作用,软件企业工作多以团队工作的形式完成,难以区分团队中个人工作价值,通常以项目组为绩效考察对象的激励方案,难以对员工个人产生应有的激励作用。因此,解决上述难题,有必要强化和实施合理有效的预算管理工作,如为加强激励,可为不同项目组设置不同预算指标体系,并根据预算实际执行情况,结合项目经理考核制及项目组人员打分制,强化预算管理的激励作用。

软件企业预算管理具体问题分析

1.软件企业产品庞杂,预算管理难度加大整体看,软件企业可为市场提供的产品大致分为四大类:(1)操作系统类软件,如微软所提供的WINDOWS系列软件;(2)软件开发工具,如IBM所提供的企业端开发工具MyEclipse;(3)应用软件,如微软所提供的办公软件MicrosoftOffice以及腾讯所提供的通信软件WeChat等;(4)软件服务,该类型则多以方案咨询、定制及外包等工作方式呈现。软件企业可能同时存在以上四大类产品,且每大类产品下也存在数个研发内容全然不同、市场受众也不一致的小类产品。而软件企业产品庞杂的特点,也进一步加剧了预算工作的难度。以税务管理领域为例,因软件企业产品安装、调试周期长,其回款周期也较长,销售确认时点与销售收入回款时点的差异,进一步给企业带来了增值税垫付的风险;若软件企业产品众多,则将明显提升销售统计的难度,从而导致税务管理预测工作的困难,并进一步加剧相应的税务管理风险。

2.项目复杂且研发具有高度不确定性,预算指标制定的准确度有待进一步加强因外部市场需求变化迅速、内部技术升级风险大等客观因素存在,软件企业在项目管理上,呈现出项目复杂且研发具有高度不确定等特征,进一步降低了预算指标制定的确定性:(1)项目复杂且不同项目工作内容不一,为有效指导项目实施,需制定不同预算指标体系,若软件企业研发新领域项目,则缺乏经验数据而导致预算指标的设置缺乏可靠的参考依据;(2)项目缺乏持续性,项目研发成功后,若产品缺乏受众市场,软件企业将会终止该项目技术升级,从而导致了项目研发缺乏持续性,难以获取该类型项目的长期追踪数据,从而降低了长期预算指标数据制定的准确性;(3)预算指标编制与项目不适配,传统预算编制方法通过增量预算或固定成本预算,较难应对软件项目研发的不确定性,导致了预算指标编制与项目适配度低,进而降低了预算指标制定的准确度。

3.预算执行缺乏有效的控制措施软件企业在预算执行上,缺乏有效的控制措施,主要体现在:(1)产品预算执行管控上,因预算工作信息化建设落后,导致了一定监管困难,如销售预算的执行,需跨部门提取销售预算执行数据,以确认销售预算指标执行进度;若软件企业开发销售系统,并对接ERP系统及财务信息系统,可实现数据共享传导,则能解决因产品众多而带来的统计难题,否则财务部门难以及时获取准确的产品销售数据,并将实际销售数据与预算数据进行对比,严重弱化了对销售预算执行的把控;(2)项目预算执行管控上,因软件企业项目杂、多特性,财务部门较难实时、统筹监管所有项目预算进度,另外项目研发进度难以量化,非专业人员较难对项目执行进度进行准确判断,易导致项目预算执行管控流于形式。

软件企业预算管理的控制措施

1.制定预算指标框架模型,通过激励措施优化产品预算管理为解决产品种类繁多带来的预算管理难题,软件企业可从以下几个领域入手:(1)研究多类产品的管理特征,进行高度概括并提取变量,制定与管理特征相适配的预算指标框架模型,如针对相对成熟的应用软件,预算应关注销售指标及运营成本指标把控,而针对咨询、设计类产品,预算应重点关注人力资源成本消耗;同时根据以往项目数据深入研究销售、运营及人力消耗领域的预算管理特点,制定相适应的预算指标框架模型,以简化因产品众多而导致的管理难题;(2)通过激励措施强化预算管理,首先梳理产品预算管理框架,将代表不同内涵的预算管理指标授予相对应部门负责,并制定绩效方案,设置奖惩以提高人员达成预算目标的积极性。

目标管理软件范文第4篇

论文关键词:软件项目;软件过程;cmm;kpa

1.引言

项目管理(pm,projectmanagement)是指利用现有的知识、方法和技术手段,有效地计划、调度、控制和跟踪项目的开始、执行、直止终止的过程,是项目顺利实现的有效手段。软件项目管理则是在项目管理的基础上,结合软件产品的实际,利用工程的概念和方法来开发与维护软件,对成本、风险、时间、质量、过程、配置等进行分析、管理、控制,最终目的是为了让软件项目的整个生命周期都在管理者的控制范围内,以预定成本按期、按质完成软件的开发并交付用户使用。目前,软件产品已广泛应用于各个领域,但是很多软件项目的成功率并不高.虽然有些公司根据软件工程理论建立了一些软件开发管理规范.但并没有从根本上提高软件项目管理问题,这就导致软件产品质量不稳定甚至是项目的失败,同时也损害了用户的利益。本文结合我国软件项目管理的特点并经实践应用.以提高软件质量、降低成本、加强软件项目的可控性为目标,通过对cmm的研究和改进,给出了一个基于cmm加强软件项目管理的实践模式,在这个模式中对目前cmm中的kpa做适当的裁减,定义了6个关键过程域和3个工作组。

2.软件项目管理中目前存在的问题

影响软件项目成功率的因素主要是软件质量问题,而在整个软件项目的实施过程中需求不明确、跟踪和监督不力、缺乏客观的软件评审和软件配置以及风险管理意识不足等都阻碍着软件质量的提高。

2.1需求不明确

需求管理是软件项目管理中非常关键的一个步骤.需求分析的完整与否可以降低软件质量、延长项目周期、加大成本。由于用户对 计算 机系统认识的不足,对于系统的需求往往比较模糊,遗漏甚至是错误的问题经常出现(包括管理流程、业务流程、数据或报表的分析处理等),但这些问题往往没有暴露给开发人员,而是随着项目的进展才逐渐明确。对于开发人员来说,需求的变更意味着软件产品的部分内容必须重新开发,而对于整个软件项目管理而言,势必要重新分配资源、调整计划、估算成本等等,导致软件产品质量下降。

2.2跟踪和监督不力

跟踪和监督主要针对过程而言,也是项目管理中最容易被忽视的环节。软件项目过程由多个任务构成,大部分任务都有前置任务和后置任务,这就要求项目管理者要严格跟踪和监督每一个任务。任务的完成主要从时间进度和质量两方面来衡量,还要充分考虑因客户方引起的一些客观因素(更改需求分析等)。项目管理者虽然制定了具体的项目进度内容,但如果缺乏有效的跟踪和监督机制,对于每一个阶段所要完成的任务疏于评价,就会影响下阶段软件产品的质量,有时甚至是软件产品的重新开发,最终影响整个软件项目。

2.3缺乏客观的软件评审

客观的软件评审是软件产品质量的直接保障,软件评审一直贯穿于整个软件项目的过程中,对软件产品的评审应有客户使用人员和软件业中的同行来进行。客户使用人员对软件产品做阶段性的评审可以及时发现软件产品功能方面的不足,同行评审可以从软件业的规范及标准去发现问题.软件评审可以降低软件开发的成本提高软件产品的质量。大多情况下项目管理者没有做任何阶段性的评审,通常只是在软件产品开发基本完成之后来组织评审,果发现了很多问题,但要修改已经非常困难.要花费很长的时间甚至从头再来。

2.4软件配置混乱

软件配置是指软件产品在各个阶段各种版本的文档、程序及数据的集合,贯穿于整个软件项目的始终。随着软件产品开发的进行,由于各种客观原因,其中的预算、设计方案、进度等内容都有可能需要大大小小的更改(这些改动可能是合理的),整个改变的过程对软件项目的参与人员来说必须是可视的,以便提高软件的可靠性和质量,而这一切都应该有正确的软件配置来控制如果失去正确的软件配置管理,那么针对软件产品发生的任何更改或者是维护都会给软件项目带来混乱甚至是失败。

2.5风险管理意识不足

风险管理是软件项目中防止失败的一种重要手段,软件项目不同的阶段存在着不同的风险,并且风险会随着项目的进展而变化,目前国内的软件 企业 大都不注意软件项目的风险管理。除了社会环境风险、商业风险等这些客观风险之外.可控的软件项目风险主要指技术风险。技术风险主要是指与软件项目本身相关的的技术因素变化带来的风险,如果在一定的条件下达不到技术条件能够实现的目标,不但延缓项目的进度而且会增加项目的成本.继而使整个项目受到影响。

3.通过过程管理加强软件项目管理的实践模式

利用cmm fcapabilitymaturitymodeforsoftware)的核心思想把软件项目管理看作一个软件过程,并根据这一原则对整个软件项目的开发和管理进行过程监控,监督发现过程中影响项目的关键问题并予以解决。软件过程是指软件开发人员开发和维护软件及相关产品的一套行为、方法、实践及变换过程,包括软件开发过程和软件管理过程。cmm把软件开发机构按照不同开发水平划分为5个级别。每个等级被分解为几个kpa(关键过程域),kpa是指在某个成熟度等级应重点关注的区域,也是达到此成熟度等级必须解决的关键点。①初始级,无过程意义。软件过程是无序的、随机的、缺乏总计划,无预见性,大多数活动是应付危机,经常超期超支,成功取决于个人。②可重复级,具备基本的项目管理。kpa分别是:需求管理、软件项目计划、软件跟踪与监督、软件子合同管理、软件质量保证、软件配置管理;③已定义级,已定义软件过程。已将软件管理和软件工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。kpa分别是:组织过程焦点、组织过程定义、培训大纲、集成软件管理、软件产品工程、组间协调、同行评审;④可管理级,过程可度量。已收集了软件过程和产品质量的详细度量方法,软件过程和产品均可被定量地理解和控制。kpa分别是:定量过程管理、软件质量管理;⑤优化级,过程控制。通过过程的量化反馈以及新技术、新方法促使过程不断改进。kpa分别是:缺陷预防、技术更新预防、过程更改管理。

cmm只是一个过程改进的框架.并没有给出具体实施的办法。在该模式中对目前cmm中的kpa做适当裁减.定义了6个关键过程域:软件项目计划(spp)、需求管理(rm)、软件项目跟踪和监督(spto)、软件质量保证(sqa)、软件配置(scm)、同行评审(pr),设置了三个工作组:软件项目过程组(sppg)、软件工程组(seg)、软件质量保证组(sqag)。通过工作组对关键过程域的操作来加强软件项目的管理。

3.1定义kpa

 3.1.1软件项目计划(spp)

软件项目计划是为要实施的软件项目编制软件过程活动的安排,包括进度控制、成本控制、质量控制、风险控制等,也是实施cmm2的核心此阶段在安排过程活动的同时开展项目设计的前期工作,设计和界定在整个项目中各阶段所需的开发、质量、跟踪、评审、风险、成本等工作。项目计划是指导项目过程的具体措施,要在有软件项目实施经验的人员领导下投人大量的时间和人力资源来完成。制定项目计划应注意7个问题。①在 科学 论证的基础上制定过程,充分调动人员积极性合理地确定项目组的参加人员;②对软件项目各程中的任务进行分解,明确项目的里程碑和检查点;③正确估计软件项目中的软件资源、硬件资源、人力资源及其它费用;④正确估计各方面因素带来的风险并制定应对措施;⑤制定项目实施过程中的跟踪和监督措施;⑥确定软件的评审和测试方法;⑦详细的文档资料。

3.1.2需求管理(rm)

需求分析主要包括面向用户的用户需求和面向开发人员的系统需求.是整个软件工程的第一步.也是非常关键的一个环节。需求分析主要针对用户的业务流程、系统功能、性能、数据分析进行严格的定义.是设计一个软件应用系统的起点与基本依据,通过它来评判软件产品是否能够解决用户问题,也是项目成功与否的标准。就目前国内现状来讲,一般签定软件项目合同的用户是主管信息技术的负责人,它所关心的可能是整个系统的目标需求,用户方中层管理人员关心的是业务流程需求.终端操作人员则注重软件本身的易操作性和功能特性,因此.面向用户的需求一定要和用户多方人员多沟通、交流.最终通过双方有关部门人员的论证以文档资料的形式确定下来。任何一个需求分析因客观原因可能存在着需求更改的现象,对于这种情况一定要注意需求更改的可控性.要建立需求的基准版本和更改版本控制文档资料.使受需求变化影响的产品与需求变更一致。但要注意在更改需求的同时要衡量需求的稳定性,如果一个需求的变更比较频繁,意味着本项目并没有真正了解用户想要解决的实际问题。可以说需求分析的完整性和变更可控性直接影响到软件过程的改进,它可以降低软件质量、加大软件开发的成本、甚至是导致项目的失败。软件工程组(seg)中要明确定义一个需求管理员。

3.1.3软件项目跟踪和监督(spto)

软件项目的跟踪和监督始终贯穿于整个软件项目的过程中,是项目得以控制的前提和条件、是软件质量的根本保障,其目的是增加软件过程中进度、成本、工作量、质量、风险等内容的可视性,也是实施cmm2的核心。除去市场、 法律 等不可控制因素外,根据项目计划对项目进展的有关情况及影响项目实施的相关因素进行及时、客观、准确的信息采集,将采集到的需求、成本、进度、风险等内容形成文档并建立一个项目跟踪信息平台。项目负责人定期召集软件过程人员、开发人员、质量保证人员、用户方有关人员召开开放式的例会,例会的主要内容是检查项目进展、数据的分析、认识的偏差、资源的搭配、相关的风险等问题并讨论确切的解决办法,通过跟踪和监督使项目始终处于可视化的受控状态。

3.1.4软件质量保证(sqa)

软件质量保证是与软件产品满足规定的和隐含的需要能力有关的特征或特性的组合。对用户来讲主要体现在软件产品的有效性、一致性、完整性、可靠性和可操作性等方面,对于软件产品本身来讲体现在软件产品的可移植性、易维护性、健壮性、可重用性等方面。具体实践中.软件质量保证应在软件项目计划、需求分析、跟踪和监督、软件配置和软件评审的相互配合下完成.软件质量保证要做到以事先预防和跟踪为主,事后纠偏为辅。

3.1.5软件配置(scm)

软件配置是针对软件产品的跟踪和控制活动.贯穿于整个软件项目的过程中.目的是建立和维护在整个生命周期内软件产品的完整性和一致性,使整个软件产品的演进过程处于可控的状态,继而提高软件的可靠性和质量。在实践应用中主要做到五个子项的配置①配置项的标识。标识做到唯一性。便于跟踪和管理。②版本管理。对整个软件过程中的文件和目录提供有效的跟踪手段。③变更控制。保持并传递修改信息。④配置审计。确定整个项目生产周期中产品在技术和管理上的完整性。⑤系统整合。把系统的不同部分集成后完成一组特定的功能。

3.1.6同行评审(pr)

同行评审是根据预定的规范和标准对软件产品进行评审。评审的结果是衡量软件产品质量的依据。在整个软件过程中对详细设计和软件综合测试作为两个关键评审点来进行评审,评审的过程中注意要结合本软件项目的具体要求和标准。 

3.2组的定义

在具体的实践应用中设置了三个组,在降低了人员成本的同时提高了软件过程改进能力和软件质量。

软件项目过程组(sppg)组织具体的项目实施活动,管理并协调整个软件项目的过程,主要完成spp和spto。

软件工程组(seg)负责软件工程的需求分析、概要设计、详细设计、编码、测试、维护工作。

软件质量保证组(sqag)主要完成spto、scm、pr、sqa等工作。

4.实践模式效率评估

4.1开发时间

软件开发由需求分析、概要设计、详细设计、编码、软件测试、项目维护和软件集成几部分内容组成,在需求分析和设计阶段采用cmm框架实施过程管理所花费的时间要多于没有实施过程管理花费的时间。首先对项目做大量分析,论证项目的可行性。然后在和用户做良好沟通、反复论证的基础上做需求分析,形成文档资料。这种模式下花费在需求分析和设计上的时间大约占项目总开发时间的40%,但这两个阶段完成了数据流程、算法描述、详细的规格说明等内容,为代码编写、软件测试、软件维护等后续内容的工作节省了时间,软件项目的开发周期大大缩短。经过评估,采用该实践模式实施软件过程管理的软件项目开发周期比没有实施软件过程管理的软件项目开发周期缩短20%。

4.2开发质量

采用cmm标准通过软件过程管理加强软件项目管理的实践模式使软件质量明显提高、需求分析周密、代码错误率明显降低、软件产品完整性好、功能齐全、维护量下降,软件项目最终得以顺利实现。

目标管理软件范文第5篇

关键词 软件配置管理;软件生命周期;KCFlow

DOI DOI: 10.11907/rjdk.162381

中图分类号: TP301

文献标识码: A 文章编号 文章编号: 16727800(2017)002002603

0 引言

随着软件规模的日益增大,软件复杂度逐步提高,软件产品处于不断更新变化中,为了确保整个软件项目生命周期内产品的完整性、一致性和可追踪性,必须对软件进行配置管理。

软件配置管理(SCM,Software Configuration Management)指标识和确定软件系统配置项的过程,在软件系统的整个生命周期内控制这些项的投放和更改,记录并报告配置的状态和更改要求,验证配置项的完整性和正确性[1],通常包括配置标识、配置控制、配置状态记录、配置审核等活动。软件配置管理是整个软件开发生命周期中一个非常核心的管理过程,贯穿了从需求分析、架构设计、项目管理、开发、集成及测试的全过程,可以有效管理配置项版本,记录配置项开发过程,保证软件质量,提高软件重用率。

在软件开发这个庞大而复杂的过程中,涉及到各方面人员,产生许许多多产品。由于规程过于繁琐,手工方法实施软件配置管理是难以想象也是不可能的,因此,有效的软件配置管理需要结合工具来实现。使用软件配置管理工具,可以确保软件项目中基线和配置项随时保持条理清晰,迅速找到工作产品,保证工作产品的版本、内容不会出错,提高管理水平。

1 工具介绍

软件配置管理工具KCFlow采用C/S架构,以软件配置管理项的版本管理为核心,具有软件配置策划管理、变更控制、产品一致性管理、软件问题追踪管理、软件配置审计管理等功能,实现了对配置管理工作的全流程、全方位支持。

KCFlow具有以下特点:C/S软件架构使项目中的各类人员可以在工具提供的平台上分布式工作,确保各项工作有序、规范地实施;具有策划配置项标识功能;支持独立的配置项,单独策划入库、出库和更动审批,能够自动按照策划结果实施入库、出库和更动控制;支持基线的多版本管理功能;支持用户自定义软件问题类别、问题级别、更动类别等,以适应不同的使用需求;支持多个软件开发人员在线提交软件入库申请、出库申请、更动申请等。

2 软件配置管理

软件配置管理是CMM重要的过程域,本文结合配置管理工具给出配置管理实施方法。

项目启动后,配置管理组根据项目情况策划配置管理活动并建立配置管理系统。首先制定配置管理计划,根据计划建立配置管理系统,通过版本控制、变更控制、基线管理和配置审核等方法,对配置管理系统中的工作产品实施控制和监督。软件配置管理流程如图1所示。

图1 软件配置管理流程

2.1 配置管理计划

经过批准的软件配置管理计划是实施软件配置管理活动的依据[2]。在进行配置管理前应根据项目的具体情况制定软件配置管理计划,内容包括:

(1)确定配置管理机构和人员职责,审批流程。组织机构主要有软件配置控制委员会、软件配置管理组。软件配置控制委员会负责出入库控制、变更及基线的建立和;软件配置管理组负责相关制度的建立和维护、工具的推广、培训和技术支持、配置管理审核等。

(2)描述具体配置管理活动,包括标识要纳入配置管理的配置项,规定提交时间、确定项目研制各阶段的基线、基线建立的时机和配置管理项等。配置项根据控制力度分为基线配置项和非基线配置项两类。基线配置项一般包括软件研制任务书、软件需求规格说明、设计说明、设计文档、测试文档、代码、用户手册等;非基线配置项包括计划类文档、开发环境、会议纪要等。标识配置项为每个软件配置项赋予唯一的标识符。在软件开发生存周期中,软件配置项标识应包括文档标识、程序标识和数据标识等[3]。

(3)确定更动申请流程及更动申请方法。

(4)描述配置管理报告内容、报告时机、报告人和通告对象等。

(5)制定配置审核时机、审核内容及审核问题的解决方法,软件配置管理所使用的工具、技术和方法。

使用KCFlow配置管理平台,制定配置管理计划,并依据配置管理计划实时自动化约束配置管理活动,客观记录配置管理活动。KCFlow可对配置管理计划中的机构组织、基线、基线下包含的配置管理项、工作产品标识、问题类型、问题来源、更动流程、修改类别、项目基本信息等进行配置策划。一般基线策划有3条:功能基线、分配基线和产品基线。配置项标识应按照相关的配置项标识规范进行,一般文档、程序标识采用以下格式表示:文件名称英文缩写 V主版本号.次版本号;问题类型可分为程序、文档、数据库等;问题来源有计划、方案、设计、编码、数据库、测试、使用和维护等。

2.2 配置管理系统

配置管理计划经过评审后,由配置管理员依照配置管理计划建立开发库、受控库和产品库,对库结构进行策划,明确基线内容,定期备份配置管理库,为相关人员分配权限并发送用户帐号信息单给相关人员。

开发库、受控库和产品库应独立管理。开发库存放开发过程中需保留的各种信息;受控库存放已通过评审且作为阶段性产品的软件配置项;产品库存放已定型(鉴定)供交付生产、检验验收的软件配置项。在KCFlow中创建受控库一般包括功能基线、分配基线、产品基线及非基线配置项。功能基线包含软件研制任务书等文档;分配基线包含软件需求规格说明、接口需求规格说明等文档;产品基线包含软件设计说明、接口设计说明、软件测试说明、软件测试报告、固件保障手册、源代码、目标码、软件版本说明、软件研制总结报告、软件配置管理报告、软件质量保证报告等;非基线配置项主要包含计划类工作产品。

2.3 配置控制

配置控制是配置管理的组成部分,包含评估、协调、批准/拒绝、配置项的变更[4]。配置库建好后,配置管理员按照配置管理计划进行日常的配置管理活动,主要包括版本控制、变更控制、基线管理等。

2.3.1 基线管理

基线是软件生命周期中各开发阶段的一个特定点,它的作用是把开发各阶段工作明确划分,使本来连续的工作在这些点上断开,以便于检查和肯定阶段成果[5],是进一步开发的基础。

在软件生命周期中主要有3种基线:功能基线、分配基线和产品基线。功能基线是开展软件研制工作的依据,一般是在软件研制任务书评审并纳入受控管理后建立;分配基线在软件需求规格说明评审并纳入受控管理后建立;产品基线在产品后建立。

基线包含的配置项全部入库后才可建立基线,配置管理员提交《基线建立和申请单》,通过软件配置控制委员会审批通过授权后,方可建立和基线。基线后,配置管理员要把基线的结果通告给相关人员,通告内容包括基线名称和标识、所包含的配置项及配置项版本等信息。

对基线的变更需要通过正式的变更流程来完成。首先提出变更请求,然后进行变更评估,变更批准后再进行变更。变更评估包括:软件变更分类、技术影响分析、接口影响分析、进度及预算影响分析。

2.3.2 变更控制

对已进入受控库和产品库的任一软件配置管理项的更改,要履行规定的申请和审批手续。配置管理工具KCFlow提供了两种更动流程供选择,一般采用的更动流程是:填写问题报告、提出更动申请、更动出库、实施和验证更动和更动入库,具体更动流程如图2所示。

(1)发现问题,并填写《问题报告单》。变更人发现问题后首先填写问题报告单,在问题报告单中详细描述问题,说明问题来源并对问题进行分析,确定问题类型。

(2)提出更动申请,填写《更动申请单》。《更动申请单》要详细填写问题来源、问题类别、问题级别、更动类型和修改类别等,描述更动方案、影响域分析及验证办法,待更动申请批准后方可进行更动。

(3)更动出库。更动申请通过审批后,更改实施人填写《更动出库单》,审批通过后,检出待更改的配置项准备实施更动。待更改配置项出库后,处于待更动状态,禁止其他人使用。

图2 更动流程

(4)实施和验证更动。更动出库后可由变更实施人对待更动配置项实施更改,并请同行专家验证变更结果。验证结果合格后将变更后的配置项更动入库,如果验证没通过,则重新实施更改。

(5)更动入库。更动完成并通过验证后,变更实施人填写《更动入库申请单》。审批通过后,将更动后的配置项更动入库。

2.3.3 版本控制

版本控制是全面实施软件配置管理的基A,其目的是按照一定的规则保存配置项的所有版本,避免发生版本丢失或混淆等现象,保证产品的可追溯性[6]。对配置项在初次完成时确定初始版本,在每次更改后确定新的版本。版本号由主版本号和次版本号组成,当发生更改时,若变动较大,次版本号加0.1,若变动较小,次版本号加0.01。

2.4 配置管理记录和报告

配置状态记录和报告通常称为配置状态纪实。配置状态记录主要对配置管理活动进行记录和报告,一般包括以下内容:配置项纪录(名称、标识和版本)、变更纪录、基线纪录、出入库纪录、审核纪录、备份记录和测量信息等。

配置管理工具KCFlow可以根据配置库中的内容生成配置状态报告,确保配置管理报告和配置管理库的客观一致性。在项目每个阶段结束时,配置管理员从KCFlow导出该阶段的配置状态报告,总结该阶段的配置管理活动,统计配置管理相关数据,并将配置状态报告发送给相关人员。

2.5 配置审核

配置审核是一种软件验证方法,其目的是检查软件产品和过程是否符合标准和规程,是变更控制的补充。配置审核包括功能配置审核、物理配置审核和管理配置审核。

功能配置审核一般由项目经理审核配置项的实际功能特征是否达到功能基线文档中所规定的要求。物理配置审核是通过对配置项的检测,鉴定文、图、物的一致性,保证软件更改的完整性。配置管理组定期(每季度)进行配置管理审核。配置管理审核主要是对配置管理过程进行审核,确认配置管理记录和配置项是否完整、一致和准确。审核过程中,相关人员按照审核内容形成《配置审核检查单》,对不符合项进行记录和处理。

KCFlow具有灵活的配置审核功能,能够策划适合本单位的软件配置管理审核准则。每次入库时,相关人员进行物理审核,在基线建立及变更时进行功能审核。

图3 配置审核策划

3 结语

软件配置管理贯穿整个软件生命周期,在软件开发过程中采用有效的工具进行配置管理,能够弥补人工管理出现的纰漏,规范开发流程,保证软件产品质量,减少软件缺陷,缩短软件开发周期,降低软件维护成本。本文结合配置管理工具,对软件配置管理流程及实施方法进行了研究。为提高软件开发的效率与质量,今后的工作中应结合项目实际情况及本单位的配置管理相关规定,对配置管理工具的适应性进行研究,以满足各种软件开发要求。

参考文献:

[1] 石柱.软件工程标准手册[M].北京:中国标准出版社,2007.

[2] 何新贵,石柱,王纬,等.GJB5000军用软件能力成熟度模型实施指南[M].北京:国防工业出版社,2004.

[3] 王忠贵,刘姝.航天型号软件工程方法与技术[M].北京:中国宇航出版社,2015.

[4] 董越.未雨绸缪理解软件配置管理[M].北京:电子工业出版社,2012.