目标管理软件十篇

时间:2023-03-15 04:11:26

目标管理软件

目标管理软件篇1

软件供需双方的代表能在餐桌上谈笑风生,归功于第一线开发人员的辛勤工作。质量与生产率的提高就指望程序员与程序经理。对开发人员而言,如果非得在质量与生产率之间分个主次不可,那么应该是质量第一,生产率第二。这是因为:(1)质量直接体现在软件的每段程序中,高质量自然是开发人员的技术追求,也是职业道德的要求。(2)高质量对所有的用户都有价值,而高生产率只对开发方有意义。(3)如果一开始就追求高生产率,容易使人急功近利,留下隐患。宁可进度慢些,也要保证每个环节的质量,以图长远利益。

软件的质量因素很多,如正确性,性能、可靠性、容错性、易用性、灵活性、可扩充性、可理解性、可维护性等等。有些因素相互重叠,有些则相抵触,真要提高质量可不容易啊!

软件工程的主要环节有:人员管理、项目管理、可行性与需求分析、系统设计、程序设计、测试、维护等,如图1.1所示。

软件工程模型建议用一定的流程将各个环节连接起来,并可用规范的方式操作全过程,如同工厂的生产线。常见的软件工程模型有:线性模型(图1.2),渐增式模型(图1.3),螺旋模型,快速原型模型,形式化描述模型等等[pressmam1999,sommerville1992]。

最早出现的软件工程模型是线性模型(又称瀑布模型)。线性模型太理想化,太单纯,已不再适合现代的软件开发模式,几乎被业界抛弃。偶而被人提起,都属于被贬对象,未被留一丝惋惜。但我们应该认识到,“线性”是人们最容易掌握并能熟练应用的思想方法。当人们碰到一个复杂的“非线性”问题时,总是千方百计地将其分解或转化为一系列简单的线性问题,然后逐个解决。一个软件系统的整体可能是复杂的,而单个子程序总是简单的,可以用线性的方式来实现,否则干活就太累了。线性是一种简洁,简洁就是美。当我们领会了线性的精神,就不要再呆板地套用线性模型的外表,而应该用活它。例如渐增式模型实质就是分段的线性模型,如图1.3所示。螺旋模型则是接连的弯曲了的线性模型。在其它模型中都能够找到线性模型的影子。

目标管理软件篇2

关键词 软件开发;软件过程;过程管理

中图分类号 F301

文献标识码 A

文章编号 (2014)13-0020-01

一、软件过程管理的概述

(一)软件过程的概念

软件过程是指软件生命周期中一系列相关活动按照确定的次序演绎变化的过程。依据GB8566的相关规定,软件过程一般包括获取、供应、管理、开发、运作、维护、支持和裁剪八个部分。由于具体的软件系统是依据实际需要来配置相关过程的,因此它不一定会包含八个过程及其活动。软件过程的质量往往决定了软件产品的质量,科学、合理与高效的软件过程能够提升软件开发团队的合作精神,提高软件的可重复使用性与可维护性,增强团队的软件过程技术与管理技能。

(二)软件过程管理的概念

软件过程管理基于系统工程的基本思想,采取可定义与可度量的工程实践手段对软件全过程进行管理与控制,是对软件的开发与维护实行的标准化、规范化与透明化的全过程管理。它关注的是软件组织进行软件开发时对需求、计划、合同、资源配置、项目跟踪与质量等采取的有效管理方式,不断提升软件生产的效率和软件产品的质量。

(三)软件过程管理的内容

软件过程管理依据PDCA方法包括过程的定义、执行、度量与控制、改进四个流程。其中,软件过程的定义是过程管理的基本任务,指依据软件的实际情况具体的规定过程的输入、输出、限制条件和通过准则等内容;软件过程的执行是过程管理的重要方面,指依据相关模型和规划开展的一些列目标明确的活动;软件过程的度量与控制是过程管理的重点环节,指运用各种技术方法和度量数据分析过程性能,检测实际性能与可接受性能间的误差,分析并采取措施消除引起过程异常的关键因素,保障各项过程性能处于正常的范围之内;软件过程的改进是过程管理的关键环节,指通过分析现有过程的特点和影响因素,论证并实施改变过程的手段以使其更好地满足软件组织的发展需要与战略目标。

(四)软件过程管理的模型

1.软件生产能力成熟度模型

软件生产能力成熟度模型,简称CMM,是SEI提出的适用于软件的组织成熟度测评,它关注如何管理软件的开发过程以及如何提高和合理评估软件工程性能,可具体的划分为初始级、已管理级、已定义级、量化管理级和优化管理级五个级别。

2.ISO9000质量管理体系

国际标准化组织开发的ISO9000标准质量管理体系之一是ISO9001质量体系,该体系从二十个方面具体规定了质量体系的构成要素,是有效保障软件设计、开发、生产、安装与维护质量的参考文件。

3.ISO/IEC12207标准

ISO/IEC12207中“信息技术――软件生存周期过程标准”全面的描述了MIS生存周期的过程,具体可划分为主要过程、支持过程和组织过程三类,其中主要过程是软件生命周期过程的原动力。

4.个体软件过程

个体软件过程简称为PSP,是一种包含软件开发表格、指南和规程来进行控制、管理和改善个人工作方式的自我改进过程,它注重对企业相关软件过程的微观优化。

5.群体软件过程

群体软件过程简称为TSP,它通过有机结合CMM实施的管理与PSP开发人员的技巧进行成本的控制和保证软件的高质量。TSP阐述了如何培养综合素养高和管理能力强的工程小组、如何有效指导工程小组成员以及如何创造良好的工程环境等。

6.软件能力成熟度模型集成模型

软件能力成熟度模型集成模型,简称CMMI,是一套综合多学科的、可扩充的、适用于多种组织成熟度测评的产品集合,它是当前普遍采用的软件过程管理方法。它提供了一种渐进式的软件过程改进手段,为软件开发单位提供了更为成熟和更加规范化的过程框架。

二、新形势下有效实施软件过程管理的对策

当前普遍采用CMMI模型的软件过程管理方法是以过程域(PA)为主体,它不仅阐述了PA要实现的目标及实现该目标进行的实践过程,还分析了实践的效果。然而,企业不能照抄照搬CMMI模型,而应将其转换成与企业目标相匹配的体系。

(一)明确组织的发展目标,构建实施CMMI的组织机构

一方面,知识经济时代,企业要有机融合市场和技术实现以市场强化技术和以技术占领市场的持续发展之路,要建立可量化的业务目标并分阶段进行具体的操作,进而具体规划实施CMMI以有效管理组织内部软件开发过程。另一方面,企业要建立软件开发质量保证机构以强化对软件开发过程的管理与控制,要明确软件开发部门及相关人员的职责、权限与交流方式以提高软件过程管理的有效性。

(二)明确软件项目的开发过程和软件过程管理体系

一般地,软件项目的开发过程包括以下部分:首先,软件开发中心的项目经理依据软件需求计划起草软件开发计划书以明确开发团队的人员及其职责与培训计划、风险的识别与规避方法等内容;其次,邀请人资部、过程改进组与培训组进行项目开发仪式的启动并确定正式版的计划书;再次,项目的质量监察员依据开发软件计划书对项目的进度与质量进行评审,对存在的问题要及时责令项目经理进行整改;最后,项目经理在项目最终完成时要对项目开发过程中遇到的问题和采取的解决方案进行总结分析和经验分享。此外,企业要依据改进的CMMI软件过程标准制定科学、合理的软件开发过程管理体系以进一步规范各项目组执行的开发方法与流程。

(三)进行项目试点以保障体系的适用性,持续推进过程改进工作

企业通过选取覆盖一部分公司主营业务的项目作为试点项目,将制定好的过程文档和模板在试点项目中进行试运行,对试运行中不符合要求的地方进行进一步改进,对改进后的规范性过程管理体系进行认证和推广。

三、结语

软件过程管理是有效提升软件生产率与保障软件质量的重要手段,企业要依据自身的发展愿景与组织目标,制定科学、适宜、有效地软件过程管理体系,实现软件开发的高效率与高质量。

参考文献:

[1]徐赛华.软件需求分析研究[J].吉林师范大学学报(自然科学版).2006(01)

目标管理软件篇3

本文首先介绍了软件项目管理的概念,并从软件项目管理中的配置管理功能,介绍了配置管理以及概念和配置管理任务CMMI(Capability Maturity Model Integration)与配置管理之间的关系,最后给出了配置管理在软件项目中的应用实例。 

软件项目管理 配置管理 计算机 

随着计算机应用的不断发展,对软件项目的要求也越来越复杂,变化也越来越频繁。从整个企业的发展战略出发,在技术变化和人员流动频繁的情况下,如何建立企业的项目库和管理库,将个人知识和经验转化为企业知识和经验,对于提高工作效率、缩短产品周期、增强企业竞争力至关重要。采用科学的配置管理思想,辅以先进的配置管理工具,是管理软件产品不可或缺的方法。目前,我国软件企业的开发和管理相对落后,引入软件配置管理的思想和技术是迫切而重要的。 

软件项目管理 

(1)软件项目管理概念 

软件项目管理是对人员、产品、过程和项目进行分析和管理的活动,使软件项目能够按预定的成本、进度和质量顺利地完成,分析和管理人员、产品、过程和项目的活动。与其他项目管理相比,软件项目管理是非常特殊的。首先,软件是一种纯知识产品,其开发进度和质量难以估算和计量,生产效率难以预测和保证。其次,软件系统的复杂性导致了开发过程中各种风险的不可预知性和控制性。软件项目管理的主要内容包括以下几个方面:人员的组织和管理、软件项目计划、风险管理、软件质量保证、软件过程估计、软件配置管理等。所有这些方面都贯穿在整个软件开发过程。其中,软件配置管理提出了开发过程中人员和工具的配置和使用的管理策略。 

(2)软件项目管理的原则 

在软件项目管理的过程中,包含以下几大原则:即平衡原则、高效原则、分解原则、实时控制原则、分类管理原则、简单有效原则、组织的知识积累原则。 

(3)配置管理在软件项目管理中的作用 

随着软件系统的频繁和用户需求的日益复杂,软件更新、配置管理逐渐成为软件生命周期中的一个重要过程,在软件开发过程中发挥着越来越重要的作用。一个好的配置管理过程可以涵盖软件开发和维护的各个方面,在软件开发过程的宏观管理中,即项目管理中,起着重要的辅助作用。良好的配置管理使软件开发过程能够更好地预测,使软件系统具有可重复性,并使用户和管理部门对软件质量和开发团队有更大的信心。 

配置管理 

(1)配置管理的概念 

就目前来说,配置管理没有一个统一的定义,但是通常都认为配置管理是一种规范软件开发过程的管理工作。软件配置管理简称SCM(Software Configuration Management),是在团队开发中识别、控制和管理软件变更的管理。 

(2)配置管理的任务 

1.定义配置项 

软件配置项目(SCI),即软件配置管理的对象。软件开发过程中产生的所有信息构成软件配置,它们是:代码(源代码、目标代码)以及数据结构(内部数据、外部数据)、文档(技术文档、管理文档、需方文档)、报告,其中每一項称为配置项,软件配置项是配置管理的基本单位。同时,在开发过程中使用的环境,如操作系统、各种支持软件、配置管理工具,也可以纳入软件配置管理的范围。 

2.标识配置项 

识别软件配置项对整个管理活动非常重要,它给软件开发过程中的所有软件项目提供了唯一的标识符,使其易于控制和管理。配置标识符包括文档标识、代码标识和运行文件标识。 

3.定义基线 

基线标志着软件开发过程的一个阶段的结束,当一个个软件配置项形成文档并通过评审,便成为基线。基本功能是对各个阶段的工作进行更清晰的划分,使连续工作在这些点上断开,从而对试验结果进行测试和确认。 

4.定义软件配置库 

软件配置库的内容涵盖了整个开发过程。基线技术将存储库分为3类:即开发库、受控库和产品库。 

(1)开发库:存储开发过程中使用的各种技术文档、源代码、可执行代码和数据,为开发人员的活动提供支持。 

(2)受控库:存储被评审和批准的基准产品,以及批准的软件工作产品和软件产品。 

(3)产品库:项目正式交付的最终产品和最终操作环境。 

5.控制配置 

配置控制的定义是指定配置管理在实现过程中实现的配置规则,包括出入库控制和变更控制。 

6.配置审核 

它包含物理和功能审核。包括以下活动:验证每个软件配置项的正确性、一致性、完整性、有效性和可追溯性;在软件生命周期中,应定期安排审核工作;定期的软件备份应该确保备份介质的安全性和可用性。 

7.配置状态报告 

提供软件开发过程的发展状态记录,包括配置管理的现状以及原因(存储、更改)。配置管理人员应定期或在需要时提交配置状态报告。配置状态报告包含对整个软件生命周期中基线的所有更改的可跟踪性。 

(3)实施配置管理的优点 

1.节约费用:缩短开发周期,降低工程造价。 

2.利于知识库的建立:项目库、管理库 

3.规范管理:量化工作量考核、标准化测试、加强协调与沟通 

配置管理实施的流程 

(1)规划和调整网络开发环境,规划良好的开发环境,是实施配置管理系统的前提。本阶段的配置管理系统规划,主要考虑以下问题:网络带宽、拓扑构造、服务器选择、命名约定、存储位置、开发人员和组的命名规定等。 

(2)设计配置管理库 

根据项目需求,设计开发资源存储模型,有利于减少管理负担,提高配置管理数据库的访问性能,便于访问控制,保护软件资产。 

(3)制定配置管理流程

       配置管理实施的一个重要阶段,主要目的是根据项目开发的需要制定合适的配置管理流程,以更好地支持开发,主要包括以下活动: 

1.定制并行开发策略 

合理的并行发展战略应具备以下特点:协调项目的复杂性和需求,为集成开发过程中的变更创建有效的规范,并反映开发过程中方法和需求的变化。 

2.版本管理 

软件开发过程中的关键活动之一是提取软件的相关版本,以形成软件系统的阶段版本或版本。一个基线代表一个新开发活动的开始,一系列精心定制的活动生成一个新的基线。此功能有效地用于管理和跟踪项目开发过程中版本之间的关联。 

(4)相关人员的培训 

要想让配置管理系统顺利实现,相关人员需要接受系统的培训: 

1.管理员培训:对于配置管理员,主要学习配置管理工具管理相关内容; 

2.开发人员培训:对于开发人员来说,主要学习配置管理工具与开发常用的操作; 

3.管理流程培训:对于所有人员来说,其目的是了解配置管理策略和过程,以及如何将开发管理和项目管理结合起来。 

CMMI与配置管理 

CMMI(能力成熟度集成模型)是由美国卡耐基·梅隆大学的软件工程研究所(SEI)组织开发,并于2002年的一种规范、实用的途径,来管理软件过程的模型,经过指导软件开发人员的活动来改进软件过程,以达到软件过程的可重用性、量化管理和有效控制的目的。软件配置管理是CMMI可重复级别的一个关键过程域,其目的是在项目的软件生命周期中维护软件产品的完整性和可追溯性,其中包括对变更的控制和对可能影响变更的所有软件因素的管理。配置管理作为过程实施和过程优化的一部分,是软件过程的基本保证,也是基于可复用软件开发的管理方法,因此,它成为软件过程管理的核心。CMMI模型清楚地描述了供应链管理,并解释了供应链管理的目的和实现的目标,具体描述了软件过程中一定程度的成熟度应该达到的一组目标和实现这些目标的一组关键实践(Key Practice)。这些关键做法分为5类,即所需的承诺、执行能力、执行的活动、度量分析和验证,以实现该组的目标。从而使企业在实施软件配置管理时,能够准确地知道该做什么,如何评估团队的配置管理状态,以及在哪些方面也可以改进等,对于这类问题可以具体回答。 

配置管理在软件项目管理中的应用 

案例:配置管理在某软件项目开发中的应用,该软件开发以及管理的环境如表1所示。 

开发人员,测试人员,和项目实施者需要在项目间进行有效的沟通,构建统一的项目资源管理平台,满足项目团队的角色,是项目资源需求的关键。该平台的建立为避免项目管理混乱、文档和测试程序的源程序版本之间的文件标准化和统一化,变革的有效控制,提高项目团队的工作效率,并可以保存项目各阶段工作成果。通过SVN的配置管理工具的使用在公司实施配置管理,该平台使得软件项目开发任务,进度,改变可以控制并保存在项目结果的所有阶段,包括各种软件项目的源程序文件的历史版本,形成项目的开发库及受控库,形成了无形而强大的以知识为核心的能力。通过配置管理的实施,减少项目人员之间的摩擦,团队之间的合作更加有效;通过配置管理的实施,增加了用户对软件产品的信心,并给予了良好的评价,使公司领导对项目团队有了更多的信心。 

结语 

配置管理系统直接解决了开发团队的一些难以处理的问题,缩短了开发周期,并通过资源重用建立了知识库,规范了软件开发过程,使软件产品更加可靠。在软件项目管理过程中,配置管理和合理使用极大地提高了项目团队的工作效率,减少了工作失误,降低了项目风险,使整个软件项目管理水平得到了提高。 

[1] 王珍英.配置管理在軟件项目管理中的应用[J].计算机系统应用,2008(10):101-104. 

目标管理软件篇4

论文关键词:软件开发 项目管理 策略

论文摘要:随着我国软件行业的快速发展,软件开发企业之间的竞争也日趋激烈,为了提高软件开发的效率与质量,必须采取行之有效的项目管理策略。与软件行业发达国家相比,我国的软件开发企业普遍缺乏完善的项目管理理念与模式,从而导致各项管理工作难以达到预期的效果,严重影响到软件开发的成本、质量、进度等,本文仅就相关问题进行探讨。

在现代计算机网络技术高速发展的时代背景下,软件开发作为一个新兴行业,其具有创造性、挑战性的特征。我国软件行业的发展时间相对较短,在软件开发项目管理中缺少可以借鉴的成功经验,这是国内软件开发企业现阶段面临的主要管理问题,如果不能及时加以解决,将严重影响到国内软件行业的发展前景。因此,项目管理在软件开发中的必要性是不容忽视的,而且要加强具体管理策略的研究与实践。

一、软件开发项目管理的必要性

所谓的项目管理主要是指:在一定的资源条件约束下,如:资金、人力、时间、设备等,对于一个有既定目标的任务进行计划与控制。项目管理是现代管理学中的重要理论,其涉及到的范围较广,在各行业、各领域中均发挥了重要的作用。由于软件开发项目具有特殊性,在应用项目管理时也有其独特的一面。与其他的项目相比,软件开发项目具有劳动密集型与知识密集型的特点,其开发成果也多是以非物质的形式表现出来,可见性并不明显。所以,在软件开发过程中,加强项目管理是十分必要的,而且需要注意以下几方面的问题:1.了解用户的实际需求,科学确定项目管理的框架与具体内容;2.严格控制软件开发的成本、质量、进度与风险,以保障项目管理的实际效果;3.在软件开发过程中,团队成员对于具体事物的描述与思维方式不同,应尽量加强成员之间的协同性。大量软件开发实例表明,如果不能在软件开发中加强项目管理,随着国内软件行业的不断发展与壮大,国内的软件开发企业将面临严峻的挑战性与风险性。因此,为了确保软件开发的效率与质量,必须认识到强化项目管理的必要性,并且坚持多管齐下的方针,积极采取有效的管理策略。

二、软件开发项目的管理策略

(一)团队的组建。在软件开项目的管理中,团队的组建是十分重要的,只有保证团队的高效性、专业性与协调性,才能保证软件开发项目的顺利开展与进行。从项目管理理论的角度出发,在软件开发团队的组建中,一定要尽量选拔具有较强专业技能和良好工作态度的人员,从而保障团队成员有效的计划、协调与管理各自负责的工作项目。在团队的组建过程中,必须首先提出明确、清晰的团队目标,而只有在所有成员认同这一目标的基础上,才能更好的激发团队成员的工作热情与积极性,这是保障软件开发项目管理效果的先决条件。

(二)成本管理。在软件开发项目的管理中,成本管理的根本目标将项目的开发费用控制在预算内,这是实现软件开发企业经济效益的关键管理项目。从国内外软件行业的发展现状而言,在软件开发项目的管理中,成本管理是一个较为薄弱的环节,特别是对于一些中小软件开发企业,由于成本管理措施不完善,而导致软件产品的造价提高,市场竞争力则明显削弱。软件开发项目的成本管理中,估算是指对于软件开发项目的成本进行全面的预估与计算,并形成完善的成本管理计划,在软件开发过程中,对于各具体开发项目施加控制,以保证开发项目实现预期的经济效益。成本管理计划是软件开发项目中成本管理的基本标准,其是否合理将直接关系到项目的实际开发费用。

(三)质量管理。软件开发项目的质量管理要素一般包括以下特性:1.功能性,即所开发的各类软件必须满足用户的实际需求,对于用户发展相关业务具有一定的推动作用;2.可靠性,即在一定的软件开发条件与规定时间内,软件自身的维持性能水平必须保持在相应的程度,不但要满足用户的正常使用需求,而且要尽量提升软件在发生故障情况下的持续运行程度;3.易使用性,即软件的操作要求应尽量符合用户的个性需求和使用习惯,保证界面友好和操作简单;4.维护性,即在软件发生运行故障或用户需要进行某些功能的更改时,其维护难度应适中。

在软件开发项目的质量管理中,应从以下几方面做起:1.制定严格的软件开发质量管理计划,根据用户的实际要求和相关技术标准完善质量管理措施,以实现软件产品质量的最优化;2.在软件开发过程中,定期对于软件项目的开发质量进行绩效评价,并且完善相关的质量管理标准信息;3.对软件开发项目质量管理的执行结果进行全过程、动态的监控,确保每一开发环节都符合相应的质量标准。

(四)进度管理。在软件开发项目的管理中,由于开发过程中经常需要进行修改与调试,进度管理的难度相对较大。为了进一步加强软件开发项目的进度管理,必须从以下几方面做起:1.根据软件开发项目的规模与性质,合理计算出所需的人员数目、资金和时间等,逐步完善项目的进度管理计划,并且坚持弹性原则,将软件开发中所必需的调试、缓冲时间等计入其中,以防止出现开发时间不足的现象;2.在完成软件系统分析与初步设计完,应根据进度管理计划确定每个程序在开发与测试过程所需要的具体时间,并确定进度管理的基本方针,要突出研发项目的主次;3.在软件开发项目的进度管理中,进度计划应随着软件的具体开发过程,实行“由粗到细”的科学调整,每隔一段时间应组织管理人员比对项目的实际进度和进度计划的差距,对于明显落后于进度计划规定时间的项目,应及时补充开发人员或适当调整项目的开发时间。

三、结束语

综上所述,软件开发是一项技术性、专业性要求较高的项目,也是一个国家科技发展水平的重要展现。在我国现代科技的不断发展中,软件行业已经成为部分地区的重要支柱产业,为了有效提升国内软件行业的实力与竞争力,必须认识到加强项目管理的重要性,必须对于细节问题进行深入的研究与探讨,从而构建一套完善的软件开发项目管理体系。

参考文献:

[1]刘畅.项目管理在软件开发企业中的应用[J].黑龙江科技信息,2010,(04)

目标管理软件篇5

关键词关键词:CMM;软件配置管理;B/S;软件工程

中图分类号:TP303 文献标识码:A 文章编号文章编号:16727800(2013)008002003

0 引言

软件配置管理(SCM,Software Configuration Management)为软件开发提供了一套管理方法和原则[1]。它控制着整个软件系统的演变过程,其目标是对从软件项目启动开始到软件报废为止的全生命周期进行管理的学科。根据IEEE标准中软件配置管理的定义,配置管理系统以版本管理、变更管理、状态统计和配置审核这4种基本功能的具体实现,对软件开发进行标识、控制与管理[2]。

基线和软件配置项是软件配置管理的核心对象。基线(Baseline)即软件生存期中各开发阶段节点,只有通过变更控制过程才能修改它们;软件配置项(Software Configuration Item)即软件配置管理的对象,是软件工程过程中产生的信息项,如需求、测试计划和源代码等。SCM活动的目标就是为了实现对基线和配置项的变更进行标识、控制,确保变更正确实现,并向其他有关人员报告变更。在软件全生存周期内,软件变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。SCM能协调软件开发过程,使得混乱减少到最小,能够有效地提高软件的生产效率。

航天软件一般是嵌入航天控制系统的数据处理机和控制处理机的核心软件。由于航天软件在航天系统中的重要性,要求其具有较高的实时性、可靠性和可修改性。航天控制软件是整个航天系统的控制核心,如果实时性不能满足,将导致各个分系统的运行混乱,无法完成预期任务。航天系统的可靠性要求更高,航天系统原则上不允许出错,然而航天总体对软件需求处于不断变更过程中。因此,在航天软件的开发过程中,实施软件配置管理十分必要,这样才能使整个软件生命周期处于可控状态。

航天软件系统庞大而复杂,成本高,开发周期长,因此,航天软件产品必须具有较好的重用性和可维护性。细化软件配置项、规范化基线和软件配置项标识,实现软件产品横向、纵向可追溯性,是提高软件可重用性的有效方式。为了提高航天软件质量,开发库、受控库和产品库三库独立,应严格控制三库的访问权限,明确三库的备份方式。

1 概述

考虑到航天软件的特点和航天软件研制的现状,航天型号软件研制的基本阶段包括:系统需求、软件需求分析、概要设计、详细设计、软件实现、软件组装测试、软件确认测试、系统联试[3]。考虑到航天型号软件在其生命周期中的变更、重用性和验收交付工作,航天软件研制过程还应包括:软件更新与更改、软件重用和软件验收交付3个阶段。航天软件配置管理系统,对航天软件全生命周期各个阶段产生的文档、实现的代码、参考的标准、产生的数据等软件产品识别成独立的配置项。为了实现航天不同型号的分系统软件配置项的重用性,本系统对各个航天型号软件分系统中共有的模块、结构、设计和规格说明等独立标识成配置项,独立管理,跟踪所有的配置项和它们的版本、记录、评审、批注等,跟踪全部更改申请和问题报告。

2 软件总体设计

航天软件配置管理系统采用较为流行的B/S软件架构体系,包括数据库层、数据访问层、业务逻辑层和表现层4个部分,如图1所示。4个层次之间相对独立,使数据显示、逻辑处理、数据处理和数据存储相对独立,对前台的更改不会直接影响到后台。4个层次又相互联系共同完成从客户端请求到服务应答显示的整个交互过程。

图1 航天型号软件配置管理系统架构

表现层是和用户直接交互的部分,显示在客户端的浏览器上。它将用户的操作转化成可执行的命令,传递给业务逻辑层,经过后台处理后的数据经过表现层转变成用户期望看到的表现形式。航天配置管理系统的主界面下分成库管理、配置项管理、基线管理、配置审计、配置状态报表和权限管理几个功能模块。

业务逻辑层是系统的中枢神经,负责各种业务逻辑转换和流程的传递、控制。它接收客户端的命令对数据库进行操作,将获取的数据传递给表现层。由于航天软件管理的严格性,对配置项和基线的出入库、变更、状态报告以及库和配置的权限设置有严格的控制逻辑。

数据访问层负责读取数据库中的各种实体数据,将数据按照业务逻辑的要求呈现出来。同时,响应业务逻辑层对数据库中各种实体数据的更改。

数据库层是用来存储各种实体数据的数据库。按照航天配置管理系统的要求,需要定期对数据库进行备份。

3 数据库设计

航天配置管理系统的数据库,集中存放着配置信息和数据。数据库设计直接关系到软件的实现和系统性能,是系统整体设计的关键环节。库、项目、配置项和基线的ER模型如图2所示。由于篇幅限制,本文只给出简图。

图2 库、项目、配置项和基线的ER模型

航天软件配置管理系统在库管理方面采用集中存储、分类管理、透明访问的策略,直观体现CMM中对开发库、受控库和产品库三库分离的软件配置管理需求[4]。从ER模型简图中可以看出,在一个配置库中存储着多个项目,每个项目中存储着软件生命周期中各个阶段的配置项。同时,在软件生命周期中有若干条基线,每条基线中有若干个配置项,一个配置项也包含于多条基线中。

4 配置项管理

针对航天软件工程的特点,航天型号软件配置管理系统中配置项管理模块的主要功能项包括:标识配置项、维护配置项、配置项更改控制、配置项历史信息和配置项查询。

4.1 标识配置项

按照CMM的要求,需要标识每一个拟置于配置管理下的工作产品。根据航天软件工程的要求,航天配置管理系统中标识的配置项包括:航天软件研制规程(航天总体签发)、航天软件研制文档和代码等相关标准(航天总体签发)、航天软件开发中使用的工具、航天软件生命周期中各个阶段的文档、航天软件的实现代码。

本系统中配置项标识的命名规则为:航天型号_分系统代号_配置项类型_阶段代号_附加信息_版本号。配置项类型包括标准、规程、工具、文档和代码;阶段代号为航天软件生命周期中的各个阶段的简称;附加信息用于细化和维护配置项;版本号用于版本控制。

4.2 维护配置项

维护配置项提供和维护每个配置项的描述。它表明如下内容:每个配置项的负责人、何时进行配置管理、每个配置项被分解为哪些较低层次的配置部件。

在配置项标识中的附加信息用于细化和维护较低层次的配置项。按照软件工程的思想来说,细化软件配置项必然会增加管理的代价。在航天软件系统中,对配置项进行子配置项的划分,能够实现对关键模块进行更好的继承。将关键子模块进行配置管理,既能够突出重点,独立管理子配置项,又可以通过配置项标识中的附加信息与父配置项加以区分和关联,如图3所示。

图3 配置项(总体)和子配置项(接口)标识

4.3 配置项更改控制

软件配置控制是一个对提出的配置项更改建议进行评价,并对已批注的更改予以协调实施的过程。对一个配置项的软件配置控制工作仅仅在它的配置标识建立并列入基线以后才能出现。软件配置项控制要求定义出修改每一个配置项所需要的权限级别,以及更改某一配置项要求的处理方法。配置项更改控制流程如图4所示。

配置项变更的基本流程为:变更申请人提出变更申请,软件负责人进行影响域评估,项目总师或者项目CCB(Configuration Control Board,配置控制委员会)审批通过后,变更申请人提交出库申请单,然后总师审批通过后,配置管理负责人完成配置项出库,变更实施人实施配置项变更;配置项变更验证人完成对配置项的验证,生成变更报告单;总师审批通过后,变更申请人提交入库申请,总师审批通过后,配置管理员再入库。

图4 配置项控制流程

4.4 配置项历史信息

保持每个配置项的历史,足够详细地对配置项的配置管理进行记录,使得能够恢复以前的版本。

按照项目编号、课题编号、配置项阶段、配置项附加信息等,列出配置的家族关系。

4.5 配置项查询

配置项查询是配置项管理的重要部分,为了实现配置管理的有效性和软件的重用性,对配置管理查询设置操作权限是必须的。航天配置管理系统中支持对配置项的查询条件包括:按照配置项标识查询、按照配置项负责人查询、按照型号标识查询、按照课题代号查询、按照配置项类型查询、按照阶段查询、按照关键字查询等,这样可以实现按照客户要求,定制多种形式的配置项信息显示。

5 应用前景

基于B/S架构的航天软件配置系统,具有界面友好、管理规范、实用性强的优点。使用航天型号软件配置系统对航天型号软件全生命周期的管理,能够给航天软件的开发带来以下好处:

(1)解决多重维护问题[5]。在航天项目开发工作中经常会出现并行开发的需求,采用配置管理,可以支持不同的开发人员并行开发。同时,采用配置管理活动能够系统化地标识版本,并控制版本的变更,采用统一的备份规定,可以避免丢失版本或不知版本。

(2)建立组织知识和过程财富。由于航天项目开发周期较长,而现代社会竞争激烈、人员流动频繁,如果没有必要配置管理流程和工具,个人知识很难转换为组织知识和过程财富。

(3)便于项目成员及时了解项目进展状况。经验表明,在航天型号软件开发中,越早发现缺陷和风险并采取相应解决措施,代价越小。配置管理的重要作用就是提高软件开发过程的可视性,使得问题能够及时被发现。

(4)有效管理和跟踪变更。航天型号软件配置管理系统的核心功能就是能够实现对航天用户不断变更的需求实现记录、监控和管理。

(5)提高软件质量和重用性。航天型号软件配置管理系统能够有效规范航天软件过程开发,提高软件产品质量。对配置项关键模块中的共用功能模块,识别成子配置项,加以独立管理,能够有效提高软件重用性。

参考文献参考文献:

[1] 陈志才.航天软件配置管理[J].现代防御技术,2001(6).

[2] IAN SOMMERVILLE.软件工程[M].第6版.程成,译.北京:机械工业出版社,2003.

[3] 汤铭瑞.航天型号软件研制过程[M].北京:宇航出版社,1994.

目标管理软件篇6

在此次会议上,邦永招募了全国30多个地区的总,宣布于今年11月正式启动市场。虽然邦永的产品价位仅在540万元之间,定位为中低端市场,但同行还是感到了压力。邦永在加紧营销渠道建设的同时,还酝酿着和很多行业主管部门的技术合作,似乎意在打造国内项目管理软件的行业标准。

今年,中国政府拨了3000亿元专款用于各类政策性项目的建设,各省、市地方政府至少有1000亿元的专款项目,全国每年至少有2000个1亿元以上的大项目。如果这些项目都用软件来进行管理的话,这个市场无疑非常可观。据统计,目前项目管理软件高端市场的容量在1亿元以上,35年内将达到6亿元左右。中、低端用户数量更为可观。

事实上,SAP、ORACLE、PEOPLESOFT等国际上知名的管理软件商在项目管理软件市场上已经先行了一步。他们凭借着产品线长的优势,在向国内客户销售ERP系统的同时,也把项目管理软件带进了中国。同时PRIMAVERA等软件公司也在尝试开拓国内项目管理软件市场。据记者了解,目前还有美国和欧洲的几家大型的项目管理软件公司正在中国调查市场,估计不久将挺进中国。国内管理软件厂商也开始觉醒,纷纷迈开了进军项目管理软件的步伐。上海华普加快了向中关村企业项目管理的进军、北京华炎软件推出HotPM企业项目管理软件……

当人们对ERP不再狂热时,庞大的管理软件市场一下子被催熟了。目前,国内软件巨头用友在与瑞典IFS公司成立了北京用友艾福斯软件系统有限公司后,也开始将其业务迅速扩张到项目管理软件市场。国内其他软件公司如邦永(中国)、北京梦龙、新中大等也紧随其后。美国Primavera、OpenPlan、微软等国际性公司也纷纷杀入这一市场。

“对手非常强大,这说明商机很大!”杨铁铃对记者说,“我们认为目前SAP、ORACLE等国外管理软件商的主要精力还是在ERP市场,项目管理只是其产品线的一部分。目前国内还没有一家具规模的同类型软件企业,更谈不上标准。”邦永对称霸这个市场充满信心。

阻碍犹存

提起项目管理软件,杨铁铃侃侃而谈:其实很早人们就开始实施项目管理,如金字塔、长城等伟大的工程之所以成功,都得益于当时对工程项目进行严密的管理。20世纪60年代初,在著名数学家华罗庚的倡导下,将项目管理的概念引入了我国,并在当时的国民经济各个部门进行试点应用,将这种方法命名为“统筹法”。2000年底,联想在“天麒”、“天麟”两款计算机产品的开发过程中,结合业务对项目管理的需求,配合项目管理相关理论和方法编制软件方案,使该项目仅8个月便全部完成,并达到了国际上PC生产技术的最高水平。“只是当时的企业全都将目光放在ERP上。”杨铁铃不无惋惜地说。

杨铁铃认为,“项目管理对大家来说,并不是一个新的概念,一直以来大家都在提它,其在各行各业的应用也比较多。但是一直没有落到实处。”杨铁铃所说的没落到实处是指目前阻碍国内项目管理软件发展的两个因素:

一方面,国内的信息化水平还很低,尤其是工程的管理者对信息化认识不足。目前,我国对项目建设的管理仍然缺乏明确的法规,项目管理者对监管存在抵触情绪;而另一方面,国内高端管理软件市场一直是众多管理软件供应商争夺的焦点。当大多数软件生产商为ERP的高额利润所吸引时,在自身还没有完成ERP改造情况下,就匆匆转身投入了ERP软件市场的争夺,使得项目管理软件成了一块被荒废的良田。

杨铁铃为记者举了一个例子,去年国家统计局在对旧有的网络架构进行改造时,花了50多万引进了惠普的项目管理,而这还是基于美国1969年建立的PMI(国际项目管理协会)标准。“在国外,90%以上的项目建设都采用软件进行管理,而在我国则还不到10%。如果以应用项目管理软件可以节省35%的建设资金来算,这将是一笔惊人的数字,”杨铁铃说,“我国目前有2000万家中小型企业,在企业项目建设上他们大多数都需要进行项目管理。”

标准之蛊

在微软技术教育大会上,微软(中国)总经理唐骏针对中国软件业难以做大的困境指出,正是由于国内众多软件商对项目管理不够重视,软件开发没有一个规范,无法控制项目的可操作性,导致成本增加,直接影响了整个软件业做大。其实这不仅是软件业本身存在的问题,众多重大项目投资也存在同样问题。然而中国目前的项目管理大多受制于领导意志,要做到很好的控制项目成本,做到与国际标准接轨,其难度不言而喻。

专攻项目管理的邦永曾对外宣称,邦永的PM2系列软件不仅是国外软件的汉化版,而且融合了国际标准化项目管理精髓与本土国情的项目管理模式。从事过项目管理的人都知道,通常一个人对项目管理的把握有4个层次,第1个层次是“误以为自己了解”;第2个层次是“知道自己不了解”;第3个层次是“知道自己了解”;第4个层次是“自己不知道自己了解”。国家统计局计算中心网络运行管理部主任张富民在谈到项目管理实施的体会时对记者说,他觉得当时自己还处在第3个层次。这就是说,目前的项目管理还是一种投资人在投资内的把握,是用工具化的手段帮助投资者把握项目中的每一个赢利和去掉不良成本。

目标管理软件篇7

【关键词】软件配置管理 基线 软件配置项 变更控制

随着科学技术的发展,软件开发的规模随之扩大,而软件在开发和使用过程中其版本也在不断的发生着变化。但是在软件开发和变更的过程中仍然面临着一定的问题,例如开发软件的重复利用几率较低,可靠性差等。另外在软件开发过程中缺乏必要的软件开发跟踪和记录备案,这些都给软件后续的维护和升级带来困难,增加软件项目的风险,由此突出了对软件进行管理的重要性。软件管理配置是对软件开发进行管理的一套办法和活动准则。它通过对软件系统进行特定的表示来实现软件配置的系统更改,并在软件的整个生命过程中维护其配置的完整性和跟踪性。

1 软件配置管理的概念

1.1 软件配置管理的内涵和其涉及的内容

软件配置管理是用来标识、组织和控制软件系统的一种技术,其主要目的是降低软件错误,提高其生产效率。软件配置管理是一套科学的管理规范,是对软件进行更改的一个关键支持过程。它贯穿整个软件生命周期,用于控制软件在其生存周期内的改变并减少这种改变对软件造成的影响,最终确保软件产品的质量。软件配置管理所涉及到的内容主要由以下几点:

(1)对系统中的标识项进行标识和定义,同时制定与其相关的基线。

(2)控制软件系统中的配置项,或是对其配置项进行变更。

(3)记录软件系统中软件配置项的运行状态和修改请求进行记录。

1.2 软件配置项(SCI)

软件配置项在软件配置管理中的主要作用是集合软件各个周期内个阶段中产生的不同版本的文档程序、数据和环境。软件配置项通常作为一个软件配置中的一个元素,并作为一个单位来看待软件成分以达到配置管理的目的。

1.3 基线

在软件系统中开发设立基线的主要目的是为了软件的配置管理。基线的设立标志着软件开发过程中一个阶段的结束,在任意软件配置项中,若是形成文档并通过审议时,便形成了基线。基线是软件配置的交付,更是软件配置管理中进行软件测试过程的里程碑。和基线同时建立的有产品库和受控库。利用统计配置管理在被管理的软件中形成各种基线并控制各种基线的进入和输出。通常情况下,在对软件进行测试管理时需要建立以下几种基线:第一,软件测评功能基线,此基线的建立在寄到委托方的相关资料后执行,建立的基线将作为整个软件测评的初始基线;第二,需求基线,此基线的建立根据委托方资料中的要求以及软件测试的需求进行建立。

1.4 版本

在对被指定的软件进行测试的过程中,软件测评中每个受控文档都有其相应的版本号,设置文件版本号的主要目的是为了进行软件配置管理时更加清晰的辨别文档的修订情况。在软件配置管理中,一些配置项文件在变更后被保存并形成新的版本,而此版本与之前的旧版本同时存在,这样的保存管理形式便于文档的查询。

2 软件配置管理的实施

2.1 软件配置管理计划的制定

管理计划是一个软件项目进行配置管理的前提,管理活动正是在此计划的引导下开展的。否则,软件配置管理在实施的工程中将会出现过程混乱,进而影响到软件项目的顺利开展,所以说软件配置管理计划不但能够保证软件配置管理的顺利实施,同时它还是软件配置管理测试的基础。

2.2 创设软件配置管理环境

软件配置管理环境创设的两个必要条件就是管理工具和管理系统。其中软件配置管理系统在构建时需要运用到与该软件相关的数据库技术和文件管理技术,此系统建立时我们采用C/S结构,并充分运用网络这一管理工具来实现。在建立软件管理系统时客户端的功能设置中包含开发库、受控库和产品库,通过这几个数据库的建立来保证软件配置项在不同的测试阶段存放于不同的库中。

2.3 配置标识

配置标识既是软件管理中的基础,又是软件管理的重要组成部分。在对软件项目进行配置项管理时,其操作权利都会受到严格的管理,其管理过程中不同类型的基线都设置有一定的权限,所以测试人员要根据个人权限管理相应的基线。在软件管理中配置标识主要用于标识系统中被测试样品、工具、文档以及记录报告的类型和名称。

2.4 版本控制

软件配置管理活动的核心内容便是版本控制。在对软件进行管理时,软件配置管理系统中的管理对象在测评过程中所产生的内容和数据都会以文档的形式进行保存,保存时系统会对其进行版本标识。而且在此软件当中新旧两个版本同时存在,这样便于文档的查找。而对于配置管理系统中的基线控制项,需要根据基线的保密程度以及其存在的位置设置相应的访问权限,以保证软件使用的安全性。

2.5 变更控制

在对软件进行管理测评时会发生变更现象,产生此现象的原因包含两个方面:第一是被测试件出现问题,此时需要对原有的软件系统进行改进,因此便需要对其进行变更;第二,变更后的软件系统其形成的文档也要随之做出相应的变更管理。

2.6 配置状态报告

软件配置管理中设置有配置状态报告,此配置状态报告的设置主要是用用激励和报告软件配置管理中基线的变化情况,通过对此状态报告的观察为测试人员提供可靠的参考依据,并通过对此报告的分析来加强对软件项目的配置管理。

3 结束语

软件配置管理的有效实施保证了软件的整体质量和软件测评工作的顺利完成。软件配置管理作为软件项目管理中的重要组成部分,因此在实施工程中对操作人员和使用工具都具有严格的要求,并且此项工作贯穿软件管理测试的整个周期,所以采取有效、合理的配置管理对整个测试工作都有着重要的作用。自日后的工作当中要结合软件系统的具体情况逐步完善配置管理工作,提高配置管理工作效率。

参考文献

[1]于宏霞,陈凯,白英彩.基线技术在软件配置管理过程中的应用[J].计算机应用与软件,2006(02).

[2]赵文杰,刘俊萍,南振岐.软件配置管理理论与实践[J].现代计算机(专业版),2010(15).

目标管理软件篇8

关键词:软件开发;项目管理

在现代计算机网络技术高速发展的时代背景下,软件开发作为一个新兴行业,其具有创造性、挑战性的特征。我国软件行业的发展时间相对较短,在软件开发项目管理中缺少可以借鉴的成功经验,这是国内软件开发企业现阶段面临的主要管理问题,如果不能及时加以解决,将严重影响到国内软件行业的发展前景。因此,项目管理在软件开发中的必要性是不容忽视的,而且要加强具体管理策略的研究与实践。

一、软件开发项目管理的必要性

项目管理是指:在一定的资源条件约束下,如:资金、人力、时间、设备等,对于一个有既定目标的任务进行计划与控制。项目管理是现代管理学中的重要理论,其涉及到的范围较广,在各行业、各领域中均发挥了重要的作用。由于软件开发项目具有特殊性,在应用项目管理时也有其独特的一面。与其他的项目相比,软件开发项目具有劳动密集型与知识密集型的特点,其开发成果也多是以非物质的形式表现出来,可见性并不明显。所以,在软件开发过程中,加强项目管理是十分必要的,而且需要注意以下几方面的问题:①了解用户的实际需求,科学确定项目管理的框架与具体内容;②严格控制软件开发的成本、质量、进度与风险,以保障项目管理的实际效果;③在软件开发过程中,团队成员对于具体事物的描述与思维方式不同,应尽量加强成员之间的协同性。大量软件开发实例表明,如果不能在软件开发中加强项目管理,随着国内软件行业的不断发展与壮大,国内的软件开发企业将面临严峻的挑战性与风险性。因此,为了确保软件开发的效率与质量,必须认识到强化项目管理的必要性,并且坚持多管齐下的方针,积极采取有效的管理策略。

二、软件开发项目的管理策略

(一)团队的组建

在软件开项目的管理中,团队的组建是十分重要的,只有保证团队的高效性、专业性与协调性,才能保证软件开发项目的顺利开展与进行。从项目管理理论的角度出发,在软件开发团队的组建中,一定要尽量选拔具有较强专业技能和良好工作态度的人员,从而保障团队成员有效的计划、协调与管理各自负责的工作项目。在团队的组建过程中,必须首先提出明确、清晰的团队目标,而只有在所有成员认同这一目标的基础上,才能更好的激发团队成员的工作热情与积极性,这是保障软件开发项目管理效果的先决条件。

(二)成本管理

在软件开发项目的管理中,成本管理的根本目标将项目的开发费用控制在预算内,这是实现软件开发企业经济效益的关键管理项目。从国内外软件行业的发展现状而言,在软件开发项目的管理中,成本管理是一个较为薄弱的环节,特别是对于一些中小软件开发企业,由于成本管理措施不完善,而导致软件产品的造价提高,市场竞争力则明显削弱。成本管理计划是软件开发项目中成本管理的基本标准,其是否合理将直接关系到项目的实际开发费用。软件开发项目的成本最主要的是人力资源的成本,而人力资源的成本体现为各个项目成员薪资水平乘以他所花费工作日的总合,因此人力资源的成本其重点在于合理地安排使用合适的人力资源。软件开发项目的成本还包括购买必需的软硬件设备的成本;需求调研所花费的交通、协作、通信成本;购买必要的办公用品、参考资料的费用;给用户培训所需要花费的培训资料编写费、资料印刷费、产地费、设备费;如果需要第三方的鉴定或检测,还需要一定的鉴定检测费用,包括准备的费用;如果部分组件需要外包,则应当控制软件外包的成本,包括交付给外包承担方的费用,和进行质量、进度控制的管理成本。

(三)质量管理

软件开发项目的质量管理要素一般包括以下特性:①功能性,即所开发的各类软件必须满足用户的实际需求,对于用户发展相关业务具有一定的推动作用;②可靠性,即在一定的软件开发条件与规定时间内,软件自身的维持性能水平必须保持在相应的程度,不但要满足用户的正常使用需求,而且要尽量提升软件在发生故障情况下的持续运行程度;③易用性,即软件的操作要求应尽量符合用户的个性需求和使用习惯,保证界面友好和操作简单;④维护性,即在软件发生运行故障或用户需要进行某些功能的更改时,其维护难度应适中。

在软件开发项目的质量管理中,应从以下几方面做起:①对软件功能性需求做详细的调研;②制定严格的软件开发质量管理计划;③在软件开发过程中,定期对于软件项目的开发质量进行绩效评价,并且完善相关的质量管理标准信息;④对软件开发项目质量管理的执行结果进行全过程、动态的监控,确保每一开发环节都符合相应的质量标准;⑤建立高效的质量小组或者测试小组。

(四)进度管理

在软件开发项目的管理中,由于开发过程中经常需要进行修改与调试,进度管理的难度相对较大。为了进一步加强软件开发项目的进度管理,必须从以下几方面做起:①根据软件开发项目的规模与性质,合理计算出所需的人员数目、资金和时间等,逐步完善项目的进度管理计划,并且坚持弹性原则,将软件开发中所必需的调试、缓冲时间等计入其中,以防止出现开发时间不足的现象;②在完成软件系统分析与初步设计完,应根据进度管理计划确定每个程序在开发与测试过程所需要的具体时间,并确定进度管理的基本方针,要突出研发项目的主次;③在软件开发项目的进度管理中,进度计划应随着软件的具体开发过程,实行“由粗到细”的科学调整,每隔一段时间应组织管理人员比对项目的实际进度和进度计划的差距,对于明显落后于进度计划规定时间的项目,应及时补充开发人员或适当调整项目的开发时间。

三、结束语

综上所述,软件开发是一项技术性、专业性要求较高的项目,也是一个国家科技发展水平的重要展现。在我国现代科技的不断发展中,软件行业已经成为部分地区的重要支柱产业,为了有效提升国内软件行业的实力与竞争力,必须认识到加强项目管理的重要性,必须对于细节问题进行深入的研究与探讨,从而构建一套完善的软件开发项目管理体系。

参考文献:

[1]刘畅.项目管理在软件开发企业中的应用[J].黑龙江科技信息,2010,(04)

目标管理软件篇9

关键词:项目管理;软件开发

中图分类号:TP311文献标识码: A

引言:

软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。实际上,软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展。个人住坊式的软件开发已经不能适应现代企业对软件工程的需求。因此,怎样对软件项目进行有效的管理是急需研究的课题,国内外专家学者也展开了相关的研究。

张家浩以现代软件工程为核心,系统分析了项目管理领域中软件项目存在的问题,提出在理想和现实之间选择平衡点的建议和方法。林锐编写的《IT企业项目管理:问题、方法和工具》一书为IT企业提供了专业性很强、行之有效的项目管理方法和相应的工具,解决了大多数IT企业的软硬件开发项目管理混乱、质量低下、进度延误、费用超支等问题。哈罗德・科兹纳在《项目管理:计划、进度和控制的系统方法》一书中讨论了时间管理、冲突管理等问题,分析了影响项目成功的因素。石慧运用动态规划的思想和网络计划的方法,利用马尔可夫链模型进行软件项目进度预测,对软件开发项目中的计划和控制应用进行研究,构建了一个并行的IT项目进度马尔可夫链预测模型。

1、软件项目管理的概念

软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,通过计划、组织、控制等一系列活动,合理地配置和使用各种资源,对成本、人员、进度、质量、风险等进行分析和管理,以达到既定目标的过程。项目管理可以让一个项目获得高额的盈利也可以让一个项目损失惨重,而软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,其根本目的是对软件开发的各个阶段进行管理,增强对软件开发的控制能力,提高软件开发质量编码的影响力。企业的软件生产越趋向于成熟,企业越能够稳定发展软件因其复杂性和难以度量,使软件项目管理较之其他项目管理而言有其特殊性。

2、软件开发中的项目管理的必要性

现在的软件开发过程中,存在着诸多的不确定性因素,而为了能消除不确定性,提升软件的稳定性、可靠性,就需要对软件进行项目管理。软件项目管理的对象是软件工程项目。它所涉及的范围覆盖了整个软件工程过程。软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对人员、产品、过程和项目进行分析和管理的活动。软件项目管理的根本目的是为了让软件项目尤其是大型项目的整个软件生命周期都能在管理者的控制之下,以预定成本按期,按质的完成软件交付用户使用。这种管理在技术工作开始之前就应开始,在软件从概念到实现的过程中继续进行,当软件工程过程最后结束时才终止。软件项目管理和其他的项目管理相比有相当的特殊性。首先,软件系统的复杂性也导致了开发过程中各种风险的难以预见和控制。其次,软件是纯知识产品,其开发进度和质量很难估计和度量,生产效率也难以预测和保证。庞大的系统如果没有很好的管理,其软件质量是难以想象的。

3、开发中的项目管理方法

3.1、调查。

(l)调查市场。对一个软件项目经理来说,他的职责主要在于调查同行业同类产品,分析现有技术,以便构建合理而又有充分扩展性的软件结构。同时,项目经理还有义务协助上级主管向公司决策层提交项目市场前景分析报告。

(2)调查自身资源。主要是调查项目组成员的技术实力,工作状态,还有其它相关人员的支持度。一个项目的成功,不仅仅需要一个优秀的项目经理,还需要项目发起人、项目组成员和其它相关人员的共同努力,才能实现项目的预期目标。

(3)调查客户需求。这是最关键也是最重要的环节。任何一个软件项目都是针对一定的使用对象而开发的。作为项目经理,必须充分了解客户的现有资源、工作方式、工作流程以及使用习惯。值得注意的是,很多项目经理往往容易忽视客户的使用习惯,以至于开发出来的产品虽然功能齐全、界面友好,但却无法取得用户的认同。

3.2、严控变更。一个项目在实施过程中,总会遇到很多需要变更的地方。要想有计划地管理好变更,就必须具备健全的变更控制系统。应由项目实施变更小组之类的组织来负责项目变更的可行性论证,进行最终的变更确认,也由它来决定一个项目是否应该终结。

3.3、阶段总结和评审。一般来说至少要进行两次全体评审。第一次评审是由项目负责人完成信息系统计划、信息系统分析、信息系统设计之后,提交出软件模型,再交由项目专业技术组讨论评审。软件模型必须包含主体的功能界面。典型客户在其中扮演着重要的角色,只有他们才是最有发言权的评审成员。待项目结束之后,再由技术小组对其进行终审。

4、影响软件开发中的项目管理因素

4.1、成本。指完成项目需要的所有款项,包括人力成本、原材料、设备租金、分包费用和咨询费用等。软件开发项目中人力成本比例很大,而工作量又难以估计,因而制定预算难度很大。项目的总成本以预算为基础,项目结束时的最终成本应控制在预算内。

4.2、人。指参与项目管理及具体软件开发活动的所有人员。在项目管理中,人是一个非常重要的要素,由人来确定项目目标、推动项目进程、使用项目成果创造价值,而且软件项目中的人力成本也经常占总成本的相当比例,因此人的因素往往决定了项目的成败。

4.3、时间。项目时间相关的因素用进度计划描述,进度计划不仅说明了完成项目工作范围内所有工作需要的时间,也规定了每个活动的具体开始和完成日期。项目中的活动根据工作范围确定,在确定活动的开始和结束时间还要考虑他们之间的依赖关系。

4.4、质量。是指项目满足明确或隐含需求的程度。一般通过定义工作范围中的交付物标准来明确,交付物在项目管理中有重要的地位。定义这些标准包括各种特性及这些特性需要满足的要求,因此,有时还可能对项目的过程有明确要求,比如规定过程应该遵循的规范和标准,并要求提供这些过程得以有效执行的证据。

4.5、范围,也称工作范围,指为了实现项目目标必须完成的所有工作。一般通过定义交付物和交付物标准来定义工作范围。工作范围根据项目目标分解得到,它指出了完成哪些工作就可以达到项目的目标,或者说完成哪些工作项目就可以结束了。

结语

软件项目管理是一件十分繁琐的任务,其直接影响着项目的成败,所以,在实际的项目开发过程中,只有加强对项目的管理才能使整个软件开发顺利完成。在软件项目管理活动中,既要研究技术层面的问题,也要仔细考虑认识层面的问题,成功的软件项目开发一定是两者相辅相成的结晶。软件项目管理是软件开发过程中的一项重要工作,管理水平的高低、管理工作是否规范将对软件开发的质量、效率、成本起着决定性的作用。目前,我国软件项目管理水平参差不齐,一些软件开发单位、软件项目管理者管理水平有限,导致开发出的软件产品质量低下和成本浪费。尽快提高软件项目管理水平、规范软件项目管理工作已成为一些开发单位和管理者的当务之急。当然,随着应用水平的提高,我们可以适当运用项目管理软件来指导、管理项目的实施,并且在管理过程中不断学习先进的软件项目管理方法,提高软件项目管理水平,这样才能开发出真正满足企业、用户需要的实用的软件产品。

参考文献:

[1]崔学文.论软件开发中的项目管理[J].鸡西大学学报 ,2011.06

目标管理软件篇10

摘 要 风险是在软件项目开发过程中所存在的不以人的意志为转移的事件发生与否的不确定性。本论文通过对软件项目所处的风险管理背景的研究,对当前软件项目中存在的风险状况进行分析,列举软件项目管理中的风险种类,并进行来源分析,总结各类风险产生的原因,最后给出软件开发项目在风险管理和控制的建议。

关键词 软件项目 项目管理 风险管理

一、软件项目风险管理背景研究

信息产业的飞速发展创造了巨大的财富,并且从各个方面改变着人们的生活。软件开发技术是信息产业的重要支柱,当前由于软件开发技术的不断更新、软件数量的增多、软件复杂程度不断加大,使客户对产品的要求也在不断的提高,随之而来的是软件项目给软件开发企业和需求企业带来的巨大风险,目前风险管理与控制已成为软件开发项目成败的关键。

IT行业要求在有限的资源条件下,在较短的时间范围内,为客户提供技术创新性强、个性化程度高的信息产品和服务,软件开发项目由于其具有连续性、复杂性、少参照性,无标准规范等特点,其风险管理难度要比传统项目大。软件项目的风险管理是指分析和管理在软件开发过程中所遇到的进度和预算等方面的问题,研究这些问题对软件项目的影响,寻求风险应对的方法,并进一步对风险管理做出计划。

由于我国IT行业起步较晚,软件项目的风险管理方法在IT行业的应用还很不成熟,软件项目风险变成现实,就可能影响整个项目的进度,增加成本,甚至导致软件项目失败。对软件项目来说,过程往往决定结果,为了提高项目成功的几率,应该在软件项目开发的过程当中实施风险管理,同时注重风险分析,就可以最大限度地减少风险的发生,从而使项目顺利完成。

二、软件项目风险分类研究

IT项目与传统项目不同,软件项目往往要求高度的时效性、竞争性,面临高投入、高风险,软件项目风险经常会涉及许多方面,如:缺乏用户的参与,缺少高级管理层的支持,含糊的要求,没有计划和管理等。总体概括下来,软件项目的风险主要体现在:

1.需求风险。很多软件项目在确定需求时都面临着不确定性,这些不确定性会带来风险。如果在项目早期容忍这些不确定性存在,而这些不确定性在项目进展过程中得不到解决,这些不确定性就会威胁项目的成功实施。有时,受软件使用者知识背景、水平的限制,软件系统使用者对系统将要实现的目标是笼统的、模糊的,对具体的需求不能准确描述;软件系统受使用者的个人习惯影响较大,这些需求方面的不确定性都可能导致产生劣质产品。

2.项目组的素质风险。项目组的素质主要由项目组的技术水平和项目成员的经验决定。故而项目组的素质风险包括项目的规模、技术结构以及项目团队的技术能力和经验。软件技术飞速发展,却缺乏经验丰富的员工,意味着项目团队可能会因为项目组的人员素质风险这一原因而影响项目的成功。

3.管理风险。项目经理经常是制定项目风险管理计划的人,他们有先天性的不足――自己检查自己的错误,这是最难的。软件项目团队是一个项目管理团队,如何发挥1+1>2的系统效应,就要求项目经理按照WBS(工作分解结构)的原则,把项目整体目标分解成小组目标和个人目标,从而使目标落实到个人身上,并将个人目标和项目目标有机结合起来。应对管理风险,要使项目组成员树立起目标意识、协作意识、竞争意识、服务意识和危机意识,人人各执其职、秉承同一个项目目标、把最好的软件交到用户手中。

4.安全风险。软件产品本身是属于创造性的产品,产品本身的核心技术保密非常重要。但一直以来,我们在软件这方面的安全意识比较淡薄,对软件产品的开发主要注重技术本身,而忽略了专利的保护。在软件方面关于知识产权的认定目前还没有明确的一个行业规范,这是软件项目潜在的风险。软件行业的技术人员流动是很普遍的现象,随着技术人员的流失、变更,很能会导致产品和新技术的泄密,致使软件产品被它公司窃取,导致项目失败。

5.商业风险。近年来,以网络和计算机为核心的信息技术产业得到迅速的发展,如果开发出来的软件并不是市场所真正需要的,产品没有销售市场,就会发生市场风险。

三、软件项目风险管理的有效措施

项目管理是目标管理,注重结果,但是对具有系统性的软件项目来说,过程往往决定结果。可能结果对了过程不一定对,但是,如果每一个过程都做得到位,一定会得到正确的结果。软件项目的过程性决定了软件项目风险管理贯穿于软件项目生命周期的各个阶段,不是一项孤立的管理活动。有效进行软件项目风险管理的具体措施包括:

1.建立有效的风险控制管理过程。风险管理过程包括风险、培训风险识别、风险分析、风险计划、执行、跟踪计划等活动,有效的风险管理过程应是学习型、持续和不断改进的。软件企业应建立自己的风险管理数据库作为风险管理的基础,并在实施中不断地更新和完善。根据企业和项目的实际情况,进行科学的项目风险控制和管理,对项目的成功研发有着至关重要的意义。在项目开发的过程中,进行必要的项目风险分析,制定符合项目特点的风险评估和监督机制,特别是定期对项目的风险状况进行评估和监管,发现意外风险或者超出预期的风险一定要重点关照。发现问题要立即上报,尽快解决。建立风险监管日志,实行“岗位负责制”,将软件开发项目的风险降到最低。

2.建立有效的项目管理方式在项目管理上,讲求“最好的不一定是合适的,合适的一定是最好的”。选择合适的开发模型,熟悉且统一的开发技术,在满足业务需求的前提下,熟练地进行项目的开发。这样可避免因技术瓶颈导致项目失败,大大降低不确定因素带来的风险。同时,做好代码与文档的归类保管工作。代码与文档是软件的生命,既可以规范开发行为,同时又可以提供依据和可以借鉴的资料、建立测试和缺陷管理机制。采用适当的管理方法,如统一编码、规范版本控制工具等。

3.增强软件项目领导层的风险管理意识。软件项目实施本质上是“一把手”工程,因此领导层是否具有风险管理意识,这对软件项目风险管理的有效性有着决定性影响。软件项目领导层应从战略上重视风险及风险管理,努力提高项目成员对风险的认识、营造风险管理的意识环境,系统地站在战略的高度来把握项目的风险管理,将风险管理纳入项目管理的整体之中,使其贯穿于项目生命周期的各个阶段。应从思想上认识到风险是一把双刃剑,风险管理是威胁管理和机会管理二者的统一体,充分加强项目风险管理,从人力、物理、财力方面给予足够的支持。

4.培养和储备项目风险管理人才人力资源是第一生产力,风险管理人才是软件项目管理亟需的人力资源。可以通过以下途径培养和储备项目风险管理人才:首先,高校在相关专业开设风险管理有关课程,各行业为大学生实习提供实践机会,创造实习条件,从而培育大学生的风险和风险管理意识。其次,重视项目管理人员的在职培训,培养一支职业化的项目管理人才队伍。提高其专业能力的同时提供更多的实践机会,通过实战积累丰富的项目风险管理经验。

四、结论

从某种意义上讲,软件项目管理就是风险管理。我国的IT行业起步较晚,项目风险管理在软件项目中的应用还很不成熟,由于认识的误区,很多企业领导盲目认为软件业师低成本、高回报的产业,丝毫没有考虑风险问题,结果造成软件项目延期、超支,甚至失败。因此,任何一个软件开发项目都应当将风险管理作为软件项目管理的关键内容,只有把IT行业发展特点和风险管理的实施有机的结合起来,寻找到最适合自己的风险管理方法并且应用到风险管理中,才能尽量减少软件项目风险、确保按时完成软件项目、提高软件项目管理的成功率。

参考文献:

[1][美]项目管理协会著,卢有杰,王勇译.项目管理知识体系指南(第三版).北京电子工业出版社.2006(9).

[2]方德英.IT 项目开发风险管理――理论与方法.北京人民邮电出版社.2008.