软件开发项目管理五项原则

软件开发项目管理五项原则
软件开发项目管理五项原则

软件开发项目管理五项原则

目前,我国软件企业尽管在国际竞争中存在技术、人才等方面的不足,但管理能力,特别是项目管理能力的不足是我国软件企业面临的典型性成长障碍。对于软件企业来说,大多数附加价值的产生是由项目产生的,没有足够的项目管理能力,企业的新产品研发、承揽海外软件开发业务、扩大软件企业规模等均缺乏基础保证。

我国软件从业人员有50多万人,在6000多家软件企业中有60%是50人以下的小企业,1000人以上的企业仅10余家,软件出口额不到印度的10%。在印度的优秀软件企业如Wipro、Infosys、Tata中,软件开发项目的按时完成率高达95%以上,可以说是项目管理能力促进了印度软件企业承揽外包业务和规模化的发展。据统计,目前我国软件企业项目的按时完成率平均为20%左右。可见,我国软件企业在项目管理能力方面与印度软件企业相比还存在很大差距。

要提高我国软件企业项目管理的能力,需要坚持以下5项原则,即:面向利益相关者的项目策划、基于统计数据的项目计划、基于专业分工的项目资源动态调度、基于可视化工具的项目监控、着眼于提高企业项目管理整体能力的知识管理。

一、面向利益相关者的项目策划

软件项目策划的目的主要在于明晰定义项目的价值和项目目标,它是软件项目正式启动的基础是明确项目需求的基础,也是控制项目范围的基础。据统计,超过50%的软件项目都遭受过不充分的需求管理的问题,平均有25%的软件项目需求会发生变化。对有缺陷的需求、设计、代码进行返工的花费占整个项目费用的40%—50%。项目策划的要点包含以下四个方面。

1.识别和定义项目的利益相关者

现代项目管理的核心理念是项目必须让其利益相关者满意,要理解和定义项目的价值,进而在此基础上定义项目的目标,必须从识别项目的利益相关者入手。然而,实践表明,识别清楚软件项目的利益相关者并不是一件容易的事。有时一个项目进行了很长时间,但项目组未必知道项目的真正客户是谁,最常犯的错误是仅将项目成果的使用者作为客户。例如,电子政务系统的真正用户是该机关的决策层,而不是具体负责这个电子政务项目的某个部门。如果需求仅仅来自负责这个项目的某个部门,那么即使这个系统建好了,也极有可能没有真正达到目的。但是由于各种原因,决策层人员往往没有足够的精力来关心这件事,这时如果项目组不去想方设法解决这个问题的话,那么,这个项目从一开始就埋下了“陷入泥潭”的阴影。此外,必须识别出具体的项目发起人并充分发挥其作用。实践过程中易犯的错误是误将一个部门、一个机构作为项目的发起人,这样的结果是决策时有很多人,但真正需要项目发起人提供资源、予以协调时却找不到人。

2.促成利益相关者的参与

不仅是在策划活动中,在整个软件项目的生命周期内都必须强调项目利益相关者的参与,必须要与利益相关者一起启动项目。由于软件项目的成果将改变人们的生活或工作方式。因此,客户必须在项目策划阶段就了解项目成果对其生活或工作方式的影响,他们必须开发相应的政策、流程等以准备接受项目成果。目前众多的ERP项目之所以失败,重要的一个原因是人们误认为ERP项目仅是一个信息系统项目,该项目带来的仅仅是一个信息产品。其实,ERP项目带来的是一新的运营方式,如果企业在没有做相应调整的情况下强行引入ERP,将会使企业运行的混乱速度加快而不是更好。事实表明,促使软件项目成功的最重要的要素莫过于利益相关者的全过程参与。

3.培育/运用行业专家

软件项目的价值是为了实现某些商业目的,它们一般是由行业专家而不是由软件开发人员挖掘出来的。许多软件企业被投标价格所困扰,其原因有来自市场竞争方面的,更多的则是软件企业没有能够挖掘项目的价值所致。目前,许多软件企业的弱点在于缺乏行业专家,它们没有意识到行业专家也是专业人员,而只

是将软件开发人员作为专业人员对待。在项目定义活动中,软件开发人员常犯的错误有三点:需求镀金、需求过滤和需求包办。所谓镀金,是指软件开发人员不顾客户的实际需求,片面强调和夸大技术先进性;所谓需求过滤,是指软件开发人员根据自己的技术偏好对客户的需求进行了主观筛选;所谓需求包办,是指客户将需求分析委托给“专业的”软件开发人员,而他们也乐得如此。实践证明,缺乏行业专家的项目策划所产生出来的东西一般是能力过剩的、不适用的,甚至是完全不能用的。如果软件企业没有自己的行业专家,必须善于利用外部的行业专家。

4.不可忽视项目的验收标准

对项目目标一致性重视程度不够,是项目启动过程中普遍存在的一个问题。很多项目管理者低估了达成项目目标一致性的难度,在这方面投入的精力不够,往往简单地认为目标已经达成一致。很多项目其实是在目标没有定义清楚的情况下匆忙启动的。因此,软件项目策划的结果必须使利益相关者对项目目标的理解达成一致。要做到这一点,最有效的办法是设定项目的验收标准。可以以项目的客户为例说明这一点。客户的需求包含多个方面,其中既有对项目成果特性的要求,又有客户在感情等方面的需求。简单说来,客户的需求可以分为三类:

第一类是“Musts”,即如果缺少了就不能实现项目基本目的的成果特性;

第二类是“Wants”,即客户希望得到的能够丰富项目成果的东西。

第三类是“Nice-to-haves”,即对客户和项目而言多多益善的东西。从对客户的重要性而言,这三类需求是递减的。然而,在项目的运行过程中,客户向项目承担方表达的频率却常常是递增的。这是导致项目管理范围蔓延最终失控而使项目失败的重要原因。

二、基于统计数据的项目计划

软件项目计划过程面临的最大挑战就是计划的准确性差。据统计,在对软件项目进度与成本估算时,开发者的估算比现实要乐观,大约低20%到30%;大多数项目实际完成时间超过估算进度的25%到100%,少数的进度估算精确度达到了10%,能控制在5%之内的项目十分罕见。要提高软件项目计划的准确性,需要把握以下三点:

1.加强基础数据的统计与分析

软件项目都是具有独特性的,不能照搬其他项目的经验作为制定本项目计划的依据。因此,在企业范围内加强对项目基础数据的统计分析以得出规律是十分必要的。项目管理既是科学又是艺术,由于文化的差异,西方发达国家强调的是管理中的科学性,而我国的绝大多数企业强调的是管理中的艺术性。由于不重视基础数据的收集和统计,软件项目的计划常常是凭经验或“拍脑袋”而定的,企业并没有足够的统计数据来支持计划的制定。科学管理尽管是在上个世纪初,对制造业和体力工人提出的,但其中提出的“不能度量就不能控制”的理念依然值得软件企业在管理项目时采纳。

2.以面向学习和改善系统的评价原则促进数据统计

评价方式将决定人们的行为,要想改变人们的习惯,仅靠讲道理是难以见效的,还必须辅之以相应的评价体系。软件企业在项目管理评价进程的一个误区是将评价的重点放在人的方面,而忽视了很多项目问题在于管理系统本身这个事实。据统计,人员的敬业精神和能力不够只占项目失败原因的10%左右,在大约90%的原因来自于项目管理系统的架构与流程等方面。

3.谨防里程碑陷阱

众所周知,里程碑是项目计划与控制中的一个极为重要的概念,也正因为如此,人们也易于过于依赖里程碑,反而使项目计划落空。里程碑陷阱表现在以下几个方面:首先,人们在软件项目的里程碑被设定以后,认为“目标管理是只问结果,不计过程”,从而忽视对过程的监控而导致项目里程碑不能按期达到。大多数软件企业的从业人员属于知识工作者,他们对授权的要求较强烈,这方面的误区更易发生。第二,对里

程碑控制不严。因为大部分里程碑毕竟只是一些项目的中间结果,在项目过程中人们易于放松对里程碑变更的控制,易于出现里程碑大多按期完成而项目却难以按期完成的现象。项目活动彼此是有关联的,一个里程碑的延迟会导致连锁反应,甚至可能导致项目工期的失控。第三,里程碑的设置仅仅由项目组根据项目本身的特点而定,忽视了与利益相关者的沟通并得到他们的承诺。

三、基于专业分工的项目资源动态调度

在软件项目失败的原因中,项目组织和人员的问题占到40%以上。因此,对项目资源的有效组织和调度是十分重要的。对于软件企业来说,最重要的资源莫过于人力资源,要在项目中充分组织和调度人力资源,需要做好以下两点:

1. 实现人力资源的“分类分级”管理

由于没有对人力资源做到专业分工基础上的动态调度,大量企业的人力成本难以降低,项目组织运行的效果也难以保证。由于软件行业竞争的加剧,降低项目成本成了当务之急,而降低项目所占用的人力资源成本更是重中之重。目前,许多软件企业对项目人力资源的使用可以用“5个人干3个人的活,拿5个人的钱”来概括。要想改变这一点,做到“3个人干5个人的活,拿4个人的钱”这种理想状态,有效的办法是实现人力资源的“分类分级”管理。中创软件采取的“分类分级”是指将企业员工划分为需求分析员、系统分析员、设计人员、编码人员、测试人员和QA等,并界定其不同的等级,能够做到可以测量出不同类型、不同层次的人员的小时价格。这种价格是制定项目人力资源预算和成本控制的基础。目前,很多企业强调“复合型人才”,这容易产生一个误区。在许多软件企业的项目中,有相当多的人既做设计又做编码还做测试,这不仅使项目的运行效率低、出错率高,也使项目的人力成本提高、人员还不满意。合理的方式是在专业分工、“分类分级”的基础上,通过有效的项目团队组织机制将各类人员集成起来。

2.实现人力资源的动态调度

众所周知,有多种项目的组织方式。只有既能聚集于项目目标的实现,又能充分、有效调度企业资源的项目组织方式才是合理的。项目组织是一种临时性的、动态的组织,由于它不应该有冗余人员,因此,资源调度的有效性基于资源调度的动态性,理想的状态是“需要的时候,需要的人能来;不需要的时候,不需要的人能走”。企业能做到这一点,必须要有两个条件:人员已经“分类分级”,以及企业的各职能部门成为“资源库”。实践表明,“分类分级”和动态调度将能使软件企业在项目实施过程中提高效率、降低人力资源的结构性成本和提高员工的整体满意度。

四、基于可视化工具的项目监控

项目管理的指导思想在于不仅关注项目的成果,还要关注项目的过程。调查表明,在75%的软件企业处于开发流程的混乱状态,超过50%的软件企业需要改进其配置管理,大约有60%的软件企业遭受着不同程度的质量保障体系的困扰。对项目过程控制的忽视,将导致项目范围的蔓延等项目风险的增加。要做好对项目过程的有效监控,需要做好以下两点:

1.项目过程的监控要做到可视化

项目管理是一种典型的系统管理,也是一种典型的变化管理。项目过程控制的目标在于对项目成果(包括中间成果)的可预见、项目资源的可调度、项目问题的可追溯、项目组绩效的可评价等几个方面。在一个软件项目中,有成百上千的相互关联的活动,一个活动在工期、资源和预算等方面的变化将对整个项目产生连锁反应。项目管理的定律之一是“魔鬼藏在细节中”,项目经理和高层管理人员必须在对项目各种活动的变动全面了解的基础上,才能确定工作的焦点。同样,由于项目组成员存在不同的分工,要使他们都能够明了各自的工作对项目的目标起到什么作用和影响,不能仅靠鼓励他们提高对项目的整体责任感,也不能仅靠评价机制来驱动他们共同承担项目的责任,还必须使他们能够直观地看到他们的工作与项目目标之间的动态关系。即便是一个经验丰富的项目团队,如果不能完全理解项目的每一个组成部分,不能形象、直观地了解项目的各部分之间的关联关系,也容易犯“一叶障目,不见泰山”的错误。只有将项目的运行做到可视化才能够帮助他们解决这些问题。

2.要形成企业范围的数字神经系统

要做到项目过程控制的可视化,必须借助于项目管理的工具。有很多项目管理的方法和工具,如WBS、网络图、甘特图等方法以及Microsoft Project等工具有助于可视化。然而,这些方法和工具大多为单个项目服务的,要在整个企业范围内做到这一点,需要开发专门的可视化项目管理数据平台。

五、着眼于提高企业项目管理整体能力的知识管理

与国际先进的软件企业相比,我国软件企业普遍不重视对知识的管理,企业项目的成功度过多地依赖于项目经理,项目管理的水准是项目经理的水准,而不是企业的水准。软件企业属于知识型企业,其无形资产能够占到总资产的70%以上,管理无形资产的能力将成为软件企业的重要竞争力。企业的无形资产包括两大部分:一部分是企业形象,另一部分是企业能力。软件企业形象的树立靠的是成功的案例(项目),而企业能力包括属于企业的知识和属于员工的才干两方面。对于企业能力的管理是要尽可能将员工的才干转化为企业的知识,并提高这种知识水平。只有这样才能提高软件企业的项目管理成熟度。要管理好企业的项目管理整体能力需要做好以下两点:

1.建立和管理好项目事件库

由于信息技术的飞速发展,能否按期完工成了判断软件项目是否成功的极为重要的指标。控制项目工期有很多方法,其中最常用的是关键路线法(CPM)。然而,决定软件项目工期能否近期完成的因素大多是那些事件(issue),即需要被解决的障碍性问题。事件常常不是项目组成员能够独自解决的,它们需要依靠整个企业的力量,甚至需要利用外部的专业资源。为了做到这一点,中创软件着力于软件项目事件库的建设。项目尽量有其独特性,但借鉴一个企业内部,从同类型的项目之间的经验教训提炼出来的知识是十分有价值的。中创软件事件库管理的主要职能是把公司项目管理中的各种成功、失败的案例放在数字神经系统中,

相关人员遇到问题时,可随时在数字神经系统根据“关键字”进行查询,参考以前类似问题是如何处理,从而提供帮助。

2.做好项目收尾的经验总结

与项目启动前的项目策划一样,项目的正式收尾是十分重要的。收尾的作用不仅对项目的利益相关者有一个正式的交代,还有一个重要职能是对项目整个过程中的经验教训予以提炼,形成企业的知识财富。知识管理的目的是为了管理变化,没有足够的知识,企业就难以知道该如何应对项目中的变化。知识管理包括知识的挖掘、整理和使用等内容。把知识挖掘出来,是一件非常艰苦的工件。企业的知识往往是隐含、散落在员工群体中,有时不是大家不想表达出来,而是可能并没有意识到。因此,需要将员工的隐性知识转化为公司的显性知识。为了管理好知识,建立项目管理办公室,专门负责对项目管理相关文档进行分类、整理和统计,负责适合本企业的项目管理工具、模板和方法的开发、研究及对员工运用的培训。

要提高软件企业项目管理的成熟度,企业需要付出艰苦的努力,在某种程度上要重塑企业文化。项目管理机制的推行必须从高层开始就坚定信念、全力以赴、勇于实践,还必须要有足够的耐心才能获得理想的成效。项目管理是一个实践课题,有时候虽然说起来非常简单,但真正实施起来有大量具体问题要做。如果企业不愿意真正地去投入、去认真地做的话,那么期望得到理想的项目管理成果只能是一句空话,是不可能成功的。

浅谈敏捷项目管理在软件开发中的应用

浅谈敏捷项目管理在软件开发中的应用 摘要:本文先介绍了使用传统项目管理技术管理软件开发项目的方法,然后介绍了使用敏捷项目管理的初步实践,通过两者比较,提出了使用敏捷项目管理进行软件开发的方法。 一、使用传统项目管理技术管理软件开发项目的方法 按照《人月神话》的说法,软件开发是个焦油坑,书店里关于软件开发管理的书籍林良满目,各个软件开发组织也在尝试和应用不同的软件开发管理办法,希望寻找到“软件开发的银弹”。 在软件开发管理中,引入项目管理的办法,已经得到广大软件开发管理人员的一致认同,但对于具体实施何种项目管理办法,各个软件开发组织都有不同的答案,更多的迷茫,因为引入的项目管理办法不能从根本上解决软件开发项目面临的进度拖后、费用超支等问题,软件开发的银弹到底在哪里? 以下是笔者对国内软件开发组织不同项目管理成熟度的归纳和总结,大概可以分如下几类;1)小作坊、混沌形的,这样的组织还处在接单求生存的阶段,管理者还根本没有项目的意识,以满足客户需求、定制开发和回款为第一要务;2)尝试按照项目管理的思路与方法管理软件开发项目,但发现推

行困难,不得要领,目前很多中小型的软件开发组织都处于这个阶段;3)大型的软件企业,已经通过CMM|ISO认证、有足够的资源做保障,实行规范的项目管理做法,如一些软件外包工厂。 本文主要讲述处于第二个层次的软件开发组织的项目管理问题。软件开发项目管理涉及非常多的内容,从软件开发本身的业务出发,有需求管理、变更控制、配置管理、测试管理、系统分析与设计等;从项目管理的知识领域角度,有范围管理、时间管理、沟通管理、人力资源管理等内容。 按照传统的经典项目管理方法,通过一定的项目管理模板与IT工具,总结多个项目的经验,笔者总结有如下经典步骤来完成项目管理的计划编制与进度控制过程: 计划编制的经典步骤: ①建立企业和项目资源库:这个是进行项目管理的基础工作。 ②设置项目日历、资源日历。 ③设置项目的主要里程碑点。 ④在WBS(工作包)下列出工作清单(Task,Activity)。工作分解结构(WBS)和作业是进行项目范围管理的途径。 ⑤对每个Task估计工期。 ⑥连接每个Task间的逻辑关系(SS,FS,FS,FF,延时)。

软件开发项目管理中的常见问题和解决方案(精)

软件项目管理常见问题及解决方案资料来源:互联网整理人:class4117 软件行业是一个极具挑战性和创造性的行业, 软件开发是一项复杂的系统工程, 牵涉到各方面的因素, 在实际工作中, 经常会出现各种各样的问题, 甚至面临失败。如何总结、分析失败的原因,得出有益的教训,对一个公司来说,是在今后的项目中取得成功的关键。 1 .项目管理在软件开发中的应用的成因 目前我国大部分软件公司,无论是产品型公司还是项目型公司,都没有形成完全适合自己公司特点的软件开发管理模式, 虽然有些公司根据软件工程理论建立了一些软件开发管理规范,但并没有从根本上解决软件开发的质量控制问题。这样导致软件产品质量不稳定, 软件后期的维护、升级出现麻烦, 同时最终也会损害用户的利益。 2. 软件项目管理常见问题及解决方案 (1缺乏项目管理系统培训 在软件企业中, 以前几乎没有专门招收项目管理专业的人员来担任项目经理, 被任命的项目经理主要是因为他们能够在技术上独当一面, 而管理方面特别是项目管理方面的知识比较缺乏。 解决方案:项目经理接受系统的项目管理知识培训是非常必要的, 有了专业领 域的知识与实践, 再加上项目管理知识与实践和一般管理的知识和经验的有机结合,必能大大提高项目经理的项目管理水平。 (2项目计划意识问题 项目经理对总体计划、阶段计划的作用认识不足, 因此制定总体计划时比较随意, 不少事情没有仔细考虑; 阶段计划因工作忙等理由经常拖延, 造成计划与控制管理脱节,无法进行有效的进度控制管理。

解决方案:计划的制定需要在一定条件的限制和假设之下采用渐近明细的方式进行不断完善。提高项目经理的计划意识, 采用项目计划制定相关知识、技术、 工具,加强对开发计划、阶段计划的有效性进行事前事后的评估。 (3管理意识问题 部分项目经理不能从总体上把握整个项目, 而是埋头于具体的技术工作, 造成 项目组成员之间忙的忙、闲的闲,计划不周、任务不均、资源浪费。有些项目经理没有很好的管理方法,不好安排的工作只好自己做,使项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。 解决方案:加强项目管理方面的培训,并通过对考核指标的合理设定和宣传引导项目经理更好地做好项目管理工作。技术骨干在担任项目经理之前, 最好能经过系统的项目管理知识,特别是其中的人力资源管理、沟通管理的学习, 并且在实际工作中不断提高自己的管理素质, 丰富项目管理经验, 提高项目管理意识。 (4沟通意识问题 在项目中一些重要信息没有进行充分和有效的沟通。在制定计划、意见反馈、情况通报、技术问题或成果等方面与相关人员的沟通不足, 造成各做各事、 重复 劳动,甚至造成不必要的损失 ; 有些人没有每天定时收邮件的习惯,以至于无法 及时接收最新的信息。 解决方案:制定有效的沟通制度和沟通机制, 提高沟通意识 ; 采取多种沟通方式, 提高沟通的有效性。通过制度规定对由于未及时收取邮件而造成损失的责任归属 ; 对于特别重要的内容要采用多种方式进行有效沟通以确保传达到位, 例如:除发送 邮件外还要电话提醒、回执等, 重要的内容还要通过举行各种会议进行传达。 (5风险管理意识问题

软件开发项目管理分析

软件开发项目管理分析 对于软件产品,软件开发的方法以及相关技术的提高,可以促进软件产品的质量以及使用效率。在提高软件产品质量以及功能的同时,不断地缩短软件开发的周期,降低软件开发成本,是软件市场的根本。使用现代化的信息技术,对软件开发工作进行项目的管理与创新,对于相关企业具有重要意义。 1软件开发的问题以及信息化的软件开发项目优势 1.1软件开发的现状及问题 大部分企业软件开发的实际情况,是在需求活动完成之前就进行实际的开发工作,大多数团队都未能做到按照规定执行瀑布开发工作。软件的开发与硬件的开发之间最大的区别是,随着开发程度的不断加深,软件开发常常会出现变更,这就要求软件要及时的做好更新与升级。目前大多数的软件开发团队并不具备有效的开发与管理工具,使得相关管理工作效率低下,很难做到及时的对软件进行更新与管理。并且对于相关需求从设计到编码,再到对软件的实际测试,缺乏一体化的管理以及监控机制。 1.2信息化的软件开发项目优势 信息化的软件开发项目优势的第一方面就是,由传统的手工向自动化进行转变。传统软件开发项目当中,对于工时、评审、缺陷等数据的记录,要进行人工书写,并且相关的审批工作都是采取纸质的形式完成。在这一过程需要花费大量的人力和物力。而信息化技术,可以使得数据信息的产生、评估、汇总等工作做到自动化,解放大量工作人员,提高软件开发工作效率;第二方面优势是可以有效的保证信息记录的及时性以及准确性。信息化手段可以做到对相关信息的及时性以及准确性进行保证。并且在实际的项目执行过程当中,信息系统会对操作记录、工时、软件缺陷等信息进行保存,确保在这一过程信息的实时性以及有效性;第三方面优势是使得信息具有可追溯性。传统的人工记录大多使用纸质对相关信息进行保存,纸质的信息会出现模糊丢失现象的发生,而利用信息化进行保存与管理可以为相关信息提供完整的追溯性。 2基于信息化的软件开发项目管理的实施方法 2.1专业工具的部署 实现软件信息化管理,首先要部署各个阶段需要的专业工具,具体如下:(1)需求开发活动,对软件管理信息化部署专业需求管理工具,将过去计划为主的方式变为以需求为主,驱动任务开展,建议全生命周期全维度管理模式,实现对软件的全过程跟踪管理,以需求作为信息化管理的主线,从需求到设计,再到编码与测试进行跟踪,自动识别变更影响域,收集各阶段需求信息;(2)设计活动,将线下设计工作逐渐转为线上设计,在设计工具的应用下,人们能够以需求框架作为参考,开展设计工作,按照要素输出情况进行文档设计,满足需求覆盖了与标准符合率;(3)编码活动,以往的电子或纸质配置流程方式逐渐被信息化手段取代,基于SVN服务器建立起专业的管理工具,开发库、受控库与产品库之间相辅相成,帮助工作人员完成编码工作与测试工作;(4)测试活动,专业的自动化测试工具可以对单元

软件项目开发管理系统规章制度

软件项目开发管理制度

第一节总则 第一条为规范自有软件研发以及外包软件的管理工作,特制定本制度。本制度适用于股份公司软件研发与管理,分公司参 照执行。 第二条本制度中软件开发指新系统开发和现有系统重大改造。第三条本制度中自行开发是指主要依赖公司自身的管理、业务和技术力量进行系统设计、软件开发、集成和相关的技术支 持工作,一般仅向外购置有关的硬件设备和支撑软件平 台;合作开发是公司与专业IT公司(合作商)共同协作 完成IT应用的项目实施和技术支持工作,一般形式是公 司负责提供业务框架,合作商提供技术框架,双方组成开 发团队进行项目实施,IT系统的日常支持由信息中心和 合作商共同承担,信息中心负责内部(一级)支持,合作 商负责外部(二级)支持;外包开发是指将IT应用项目 的设计、开发、集成、培训等任务承包给某家专业公司(可 以是专业的IT公司或咨询公司等),由该公司(承包商) 负责应用项目的实施。 第四条软件开发遵循项目管理和软件工程的基本原则。项目管理涉及立项管理、项目计划和监控、配置管理、合作开发管 理和结项管理。软件工程涉及需求管理、系统设计、系统

实现、系统测试、用户接受测试、试运行、系统验收、系 统上线和数据迁移。 第五条除特别指定,本制度中项目组包括业务组(或需求提出组)、IT组(可能包括网络管理员和合作开发商)。 第二节立项管理 第六条提出开发需求的信息技术部门参与公司层面立项,进行立项的技术可行性分析,编写《立项分析报告》开展前期筹 备工作。《立项分析报告》应明确项目的范围和边界。 第七条应用系统主要使用部门将《立项分析报告》上交公司总裁室进行立项审批,以保证系统项目与公司整体策略相一 致。 第八条《立项分析报告》得到批准后,成立项目组(如果是外包开发,则成立外包商项目组;如果是合作开发,则与外包 商共同成立合作开发项目组,以下统称“项目组”),项目 组应包括业务组(由公司相关业务部门组成)和IT组(自 行开发为信息中心研发人员;外包开发为外包商成员;合 作开发为信息中心研发人员和外包商成员)。项目组人员 的选择应满足项目对业务及技术要求,项目组人员应有足 够的业务和IT技术方面的专业知识来胜任项目各方面的 工作。

稿:软件项目管理制度

**科技股份有限公司软件项目管理制度 目录

项目开发计划 编制项目开发计划的目的是用文件的形式,把对于在开发过程中各项工作的负责人员、开发进度、所需经费预算、所需软、硬件条件等问题作出的安排记载下来,以便根据本计划开展和检查本项目的开发工作。编制内容要求如下: 1引言 1.1编写目的 说明编写这份项目开发计划的目的,并指出预期的读者。 1.2背景 说明: a.待开发的软件系统的名称; b.本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络; C.该软件系统同其他系统或其他机构的基本的相互来往关系。 1.3定义 列出本文件中用到的专门术语的定义和外文首字母组词的原词组。 1.4参考资料 列出用得着的参考资料,如: a.本项目的经核准的计划任务书或合同、上级机关的批文; b.属于本项目的其他已发表的文件; C.本文件中各处引用的文件、资料,包括所要用到的软件开发标准。列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。 2项目概述 2.1 工作内容 简要地说明在本项目的开发中须进行的各项主要工作。 2.2主要参加人员 扼要说明参加本项目开发工作的主要人员的情况,包括他们的技术水平。 2.3产品 2.3.1程序 列出需移交给用户的程序的名称、所用的编程语言及存储程序的媒体形式,并通过引用有关文件,逐项说明其功能和能力。 2.3.2文件 列出需移交给用户的每种文件的名称及内容要点。 2.3.3服务 列出需向用户提供的各项服务,如培训安装、维护和运行支持等,应逐项规定开始日期、所提供支持的级别和服务的期限。 2.3.4非移交的产品 说明开发集体应向本单位交出但不必向用户移交的产品(文件甚至某些程序)。 2.4验收标准 对于上述这些应交出的产品和服务,逐项说明或引用资料说明验收标准。 2.5完成项目的员迟用限

软件开发与项目管理课后练习(参考答案)

软件开发与项目管理参考答案 第一章(软件开发模型和开发方法) (一)知识回顾与思考 1、软件产品的特性是什么? ①软件是一种逻辑产品,具有无形性; ②软件产品的生产主要是研制;主要是脑力劳动; ③软件不存在磨损和老化问题,但存在退化问题; ④软件产品的成本非常昂贵,其开发方式目前尚未完全摆脱手工生产方式; ⑤软件具有“复杂性”,其开发和运行常受到计算机系统的限制。 2、软件生产有几个阶段?各有何特征? ①程序设计时代:这个阶段生产方式是个体劳动,使用的生产工具是机器语言,汇编语言。 ②程序系统时代:这个阶段生产方式是小集团合作生产,使用的生产工具是高级语言,开发方法仍依靠个人技巧,但开始提出结构化方法。 ③软件工程时代:这个阶段生产方式是工程化的生产,使用数据库﹑开发工具﹑开发环境﹑网络﹑分布式﹑面向对象技术来开发软件。 3、什么是软件危机?产生的原因是什么? 软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。主要是指如何开发软件,怎样满足对软件日益增长的需求,如何维护数量不断膨胀的先有软件。 原因:一是软件产品的固有特性(软件的不可预见性、软件的规模大且逻辑较复杂),二是软件专业人员自身的缺陷。 4、什么是软件工程?它的目标和容是什么? 软件工程:是用科学的知识程和技术原理来定义,开发,维护软件的一门学科。 目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。 容:研究容包括开发技术和开发管理两个方面。开发技术主要研究:软件开发方法,开发过程,开发工具和环境。开发管理主要研究:软件管理学,软件经济学,软件心。 5、软件工程面临的问题是什么? ①软件重用性差 ②软件可维护性差 ③开发出的软件不能满足用户需要 6、什么是软件生命周期?它有哪几个活动? 软件生命周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。 活动:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,维护。

IT项目管理-公司人力资源管理系统开发项目

. 仲恺农业工程学院 课程设计公司人力资源管理系统开发项目 姓名 院(系) 专业年级 学号 指导教师 仲恺农业工程学院教务处制

公司人力资源管理系统开发项目 目录 一.需求分析 (2) 1.背景 (2) 2.功能需求 (2) 3.基本定义 (2) 二.项目范围分析WBS (3) 1.项目工作分解结构 (3) 2.软件生命周期模型 (3) 三.项目进度安排 (5) 1.项目范围 (5) 2.项目过程软件描述 (6) 3.里程碑 (8) 4.角色与职责 (8) 四.项目估计 (9) 1 估计的方法 (9) 2.成本预算 (10) 五.风险计划 (10) 1.风险识别,评估与风险规划 (10) 2.风险分析表 (11) 3.风险应对措施 (13)

一.需求分析 1.背景 信息技术推动者社会的进步,已经给人们的生活带来革命性的变化。随着现代科学技术的迅猛发展,计算机技术已经渗透到各个领域,其强大的功能已经被人们深刻认识,它已经进入了人类社会的各个领域并发挥着越来越重要的作用,特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中越发显示出其独特的优势。 我国多家公司已经建立起公司人力资源管理系统,以适应高节奏,现代化,高效率的人力资源管理。 2.功能需求 公司人力资源管理系统主要用于公司的人力信息管理,总体任务是实现人力资源信息关系的系统化、科学化、规范化和自动化,其主要任务是用计算机对公司人力资源的各种信息进行日常管理。推行公司人力资源管理系统的应用是进一步推进公司人力资源管理规范化、电子化的重要举措。 3.基本定义 HRMS(Human Resource Management System) 公司人力资源管理信息系统 DBMS(DataBase Management System) 数据库管理系

软件开发项目管理

软件开发项目管理 ?启动阶段 这个阶段的工作目的是决定一个项目是否需要启动。为了达到这个目的,首先要明确项目的总体战略目标,对项目的需要建立认同。即确定到底需要做什么、开发什么产品或提供什么服务,以及需要解决什么样的问题和需要满足客户或市场的什么要求等,同时还要总结项目工作的范围、所需资源、大约开支、各种风险,以及该项目不执行的其他替代选择等。这些代表了对整个项目目标从战略角度和宏观层次所进行的分析,通过项目的意向书总结出来,由此确证客户或项目发起人和赞助者的要求与期望,并帮助他们判定项目是否上马。项目意向总结书的通过及项目被批准上马形成了这个项目的起始点。 ?计划阶段 这个阶段的工作是为整个项目做计划。项目开始后,首先要确定项目的具体范围,明确定出项目到底要做什么,总结、归纳并定出产品的功能。然后进一步制定项目的计划,列出每项具体工作,并建立所有工作任务的重要性及顺序;确定每项工作的执行人和所需资源;根据人员的配置和能力设定各项工作和整个项目的完成时间表。 ?执行阶段 这个阶段的工作是通过执行项目的计划来完成项目的任务。它包括落实一切所需资源,如:人员、设备、费用、技术、信息,由管理者领导全体项目参与者开展各项工作。同时跟踪各项具体工作和整个项目的进度,定期向全体项目人员及项目的发起人报告项目状态。 ?控制阶段 这个阶段的工作是确证项目工作的结果符合项目的计划。它通过对项目结果的衡量和审核,与项目计划所期望的结果进行比较,找出实际结果与计划的差别,并制定处理措施。这个阶段的工作还包括对项目进程中出现的任何更改要求进行审核和批准。同时调解项目进程中出现的各种问题,如:对缺乏的资源的补偿调节;对项目的进度表及各项具体工作的优先级或顺序的修订。 ?结束阶段 这个阶段的工作是确保项目的最终结果或提交物达到计划的要求,并对完成的结果作可接受的确认。还包括在项目完成之后的收尾工作,对整个项目的经历进行总结,修订项目文档,用户培训等。

软件项目管理试题与答案

16.2.1 填空题 1.在软项目管理中,控制包括,,和。 2.软件项目计划是由和共同经过阶段后制定的。 3.能协调软件开发,使得混乱减少到最小的方法是使用。 4.在软件的生产过程中,总是有大量各种信息要记录,因此,在产品的开发过程中起着重要的作用。 5.成本估算是在软件项目开发之前,估算项目开发所需的,和。6.软件工程管理不同于其他过程管理,它对保证高质量的产品更具有极为重要的意义。7.成本估算方法中,有自顶向下估算方法,自底向上估算方法和方法。 的制度突出了主程序员的领导,责任集中到少数人身上,有利于提高软件质量。 9.基线的作用是把各阶段的开发工作划分得更加明确,便于检查与确认阶段成果。因此,基线可以作为项目的一个。 10.在一个大系统的开发过程中,由于失误造成的后果要比程序错误造成的后果更为严重。 11.软件工程包含和两大部分内容。 12.在软件开发和维护过程中一个软件往往有许多版本,版本控制工具用来存储,更新,恢复和管理一个软件的。 13.参照以前完成的项目所耗费的总成本,来推算将要开发的软件的总成本,然后把它们按阶段,步骤和工作单元进行分配,这种方法称为方法。 14.软件工程管理的具体内容包括对开发人员,组织机构,用户,等方面的管理。15.差别估算的缺点是不容易明确“差别”的界限,但它的优点是可以提高。16.在一个软件项目的开发过程中要自始至终得到的密切合作与支持。 17.风险分析是实际上就是贯穿在软件工程中的一系列风险管理步骤,其中包括,,,和。 18.软件开发项目生存期详细实际阶段应包括的文档。 19.软件项目计划的第一项活动是确定() 20.行业标准是由行业机构学术团体或国防机构制定的适合某个行业的标准。指(),指();指()。 21.工程网络图是一种()图,该图中用()表示事件,有向弧或箭头表示子任务的进行,箭头上的数字称为(),箭头下面的括号中的数字表示该任务的()。 22.软件配置管理。简称,它用于整个软件工程过程。其主要目标是(),(),()和()。是一组管理整个软件生存期各阶段中()的活动。 23.软件配置项()是软件工程中产生的(),它是配置管理的()。 24.国家标准由政府或国家级的机构制定或批准,适合于全国范围的标准。中华人民共和国国家集注监督局是中国的最高标准化机构,它所公布实施的标准简称为(),用()标识;是指(),是指(),是指(),是指()。 25.软件项目计划包括()与()两个任务。 26.软件工程过程中某一阶段的变更,均要引起()的变更,这种变更必须严格加以控制和管理,保持(),并把精确,清晰的信息传递到软件工程过程的()。 27.变更控制包括建立()和建立()。 28.软件配置管理,简称()。软件配置项简称()。 29.根据软件工程标准制定的机构与适用范围,它分为(),(),(),()和()五个等级。 30.工程网络只有一个开始点和一个终止点,开始点没有流入箭头称为()为零。终止点

软件项目管理常见问题及解决方案

软件项目管理常见问题及解决方案 摘要:Web技术的网上学习系统提供了实施研究性学习的环境与技术手段。基于研究性学习 模式理念,探讨在网上学习系统中如何实现研究性学习。给出研究性学习模式形式,以及网上研究性学习系统的设计方案。 关键词:Web;研究性学习;教学网站 软件行业是一个极具挑战性和创造性的行业,软件开发是一项复杂的系统工程,牵涉到各方面的因素,在实际工作中,经常会出现各种各样的问题,甚至面临失败。如何总结、分析失败的原因,得出有益的教训,对一个公司来说,是在今后的项目中取得成功的关键。 1.项目管理在软件开发中的应用的成因 目前我国大部分软件公司,无论是产品型公司还是项目型公司,都没有形成完全适合自己公司特点的软件开发管理模式,虽然有些公司根据软件工程理论建立了一些软件开发管理规范,但并没有从根本上解决软件开发的质量控制问题。这样导致软件产品质量不稳定,软件后期的 维护、升级出现麻烦,同时最终也会损害用户的利益。 随着软件开发的深入、各种技术的不断创新以及软件产业的形成,人们越来越意识到软件过 程管理的重要性,管理学的思想逐渐融入软件开发过程中,应用开发的项目管理日益受到重视。 2.软件项目管理常见问题及解决方案 (1)缺乏项目管理系统培训 在软件企业中,以前几乎没有专门招收项目管理专业的人员来担任项目经理,被任命的项目经理主要是因为他们能够在技术上独当一面,而管理方面特别是项目管理方面的知识比较缺乏。解决方案:项目经理接受系统的项目管理知识培训是非常必要的,有了专业领域的知识与实践,再加上项目管理知识与实践和一般管理的知识和经验的有机结合,必能大大提高项目经理的 项目管理水平。 (2)项目计划意识问题 项目经理对总体计划、阶段计划的作用认识不足,因此制定总体计划时比较随意,不少事情没有仔细考虑;阶段计划因工作忙等理由经常拖延,造成计划与控制管理脱节,无法进行有效的 进度控制管理。 解决方案:计划的制定需要在一定条件的限制和假设之下采用渐近明细的方式进行不断完善。提高项目经理的计划意识,采用项目计划制定相关知识、技术、工具,加强对开发计划、阶段计划的有效性进行事前事后的评估。 (3)管理意识问题 部分项目经理不能从总体上把握整个项目,而是埋头于具体的技术工作,造成项目组成员之间忙的忙、闲的闲,计划不周、任务不均、资源浪费。有些项目经理没有很好的管理方法,不好安排的工作只好自己做,使项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。 解决方案:加强项目管理方面的培训,并通过对考核指标的合理设定和宣传引导项目经理更好地做好项目管理工作。技术骨干在担任项目经理之前,最好能经过系统的项目管理知识,特别是其中的人力资源管理、沟通管理的学习,并且在实际工作中不断提高自己的管理素质,丰富 项目管理经验,提高项目管理意识。

软件开发项目管理实施方案

项目管理实施方案 作为一个项目管理者,如何要成功的做好项目管理;首先必须先要明白的是在特定的领域中赋予这个角色所要实现的目标、承担的职责、以及项目管理者的具体工作内容是什么? 从我个人的浅见和角度以及我们所从事的IT领域来分析回答以上三个问题。 第一:目标 作为一个项目的管理者,必须要明确的知道自己的工作目标;我个人认为项目管理者的目标无非就是以下两点: 1、就是清晰明确地了解项目利害关系者的需求和期望,努力做到满足项目利害关系者的不同需求;项目利害关系者包括:项目团队成员和项目团队外成员(比如各部门的部门负责人和市场人员,客户等)。 2、就是保证开发项目按需按时保质的完成。 第二:职责 作为项目的管理者,首先要端正态度,要明确知道自己的工作职责,认识到这份工作职责的本质。项目管理者不是来管人的,而是来支持人的,是来协调资源的,是来营造一个适合团队成员比较认同的工作环境和氛围的,是来为一个共同的目标和大家一起战斗共同成长的。可以大概概括成以下几点: 1、建立有效的工作流程保证项目的顺利进行。 2、制定详细周密的项目计划。 3、跟踪,推动项目按计划进行。 4、积极解决项目过程中出现的问题和冲突。 5、调动开发团队的积极性,创造力,推动团队成员在项目过程中不断成长。 6、项目风险识别、风险评估、风险解决和风险管理策略以及做好突发风险的应急预案。 7、实现目标 第三:项目管理者的具体工作内容 最后一个是项目管理者的具体工作内容,作为项目管理者必须清晰的知道自己的工作范围和所要做的工作内容以及工作重心,分为以下六点: 1、项目前期阶段 对项目进行技术可行性分析、技术评估、成本评估以及风险评估。与需求提出方的代表进行需求讨论,明确项目的目标、价值;确定项目范围、功能及优先级。组建项目团队,特别要搞清楚项目的key person(对产品有决定权的人)。项目启动会议,相关的

软件开发项目管理

管理目标 1、所有关系人清晰明确地了解项目的需求和期望,努力做到满足项目所有关系人的不同需求;项目关系人包括:项目团队成员和项目团队外(内部/外部客户,内部/外部合作伙伴,经销商/客户等)。 2、项目管理三要素平衡(时间/成本/质量),即开发项目按需按时按质的完成。 3、目标:功能满足需求,设计支持变化,开发快速迭代,成果持续交付。 执行概述 1、建立有效的工作流程保证项目的顺利进行,初期使用传统RUP过程,引入部分敏捷方法, 团队磨合完成后逐步实现敏捷开发全流程管理。 2、明确项目目标,制定具有可行性的项目计划,有效明确的分解项目需求。 3、跟踪设计/开发/测试/回归/发布全流程,推动项目按预定计划执行。 4、解决项目过程中出现的问题和冲突,一般集中在需求不明/工作量或时长/开发难度/跨 部门协调等几个方面。 5、调动开发团队的积极性,创造力,推动团队成员在项目过程中的学习成长。 6、风险识别、风险控制以及风险的预案。 项目管理 1、需求阶段 对项目进行技术可行性分析、技术评估、成本评估以及风险评估。 与需求提出方的代表进行需求讨论,明确项目的目标、价值。 确定项目范围、功能及优先级。 组建项目团队,特别要搞清楚项目的关键人。 项目启动会议,相关的关系人都必须参加。 2、设计阶段 根据确认后的软件需求规格说明书,制定项目进度计划,工作任务分解(WBS);资源申请,项目涉及到的开发资源、测试资源、设计资源(包括人员和软硬件资源);数据库设计;系统设计;文档(包括系统用例、Demo、测试用例等);评审会议。 设计阶段结果交付一般为系统用例/系统原型/系统设计文档(概要设计和详细设计)/数据库设计文档等。 该阶段交付成果需要进行评审。 3、执行阶段(开发和测试) 准备开发环境、测试环境。 跟踪,推动项目按计划进行。 项目成员以日报/项目负责人以周报的形式通报各关系人当前项目的进展情况。 按里程碑对阶段成果进行评估,以确保该阶段完成的质量。 代码审核,包括CS审核、SQL审核、WEB审核等。 对需求变更进行控制管理。 测试阶段BUG响应及改进、收集反馈意见。 对项目风险进行管理。 4、发布阶段 包括制定项目发布计划,用户培训,发布上线。 5、试运行阶段 数据监控(日志、服务器状态),根据监控出现的问题,及时进行处理,改进性能问题,特定情况执行补丁升级。

软件开发项目管理制度44952

软件开发项目管理制度 一、 总则 为保障公司软件开发项目的工作能有效、有序的执行,保证项目的开发质量,维护公司及开发人员的利益特制订本制度。 二、 组织 软件开发项目的实施以软件开发项目组的形式进行,项目组中设有项目责任人(即项目经理)、项目开发工程师、测试工程师、辅助人员等。一般情况下,一个项目组负责一个软件项目的开发工作。对于特大型的项目可以组织多个项目组分块进行实施。项目组人员各负其责,在项目经理的统一领导组织下共同完成项目实施工作。 三、 责任 项目经理: 全面负责项目的开发组织工作,包括需求分析、系统设计、人员分工、进度安排等。项目经理负责组织完成项目系统分析报告、系统总体设计报告、开发进度计划表、系统测试大纲等技术文档编写工作。负责开发进行中的进度检查,联合调试、技术资料文件收集等工作。 开发工程师: 按照项目经理的分工安排完成软件开发项目中自己所承担 的开发工作。负责完成模块设计报告的编写工作。协助完成 软件开发部 项目组 项目组 项目组 项目经理 开发工程师 测试工程师 辅助人员 项目经理 开发工程师 测试工程师 辅助人员

软件的安装调试及售后服务工作。 测试工程师: 按照项目经理的分工安排完成对开发软件的测试工作。负责 完成测试方案设计、测试报告的编写工作。负责完成软件使用手册、培训教材等的编写工作。完成软件的安装调试及售后服务工作。 辅助人员: 按照项目经理的分工安排完成项目开发中的辅助工作,包括文档录入、资料整理等。 四、 流程 软件开发项目应按照以下流程进行 整个软件开发项目可分为四个阶段: A 段: 设计阶段。完成系统分析、总体设计、进度计划等工作。以提交系统分 析报告、系统设计报告及开发计划进度表为完成标志。 立项 建立软件开发项目组 调研用户需求 编写项目系统分析报告 讨论确定系统设计方案 编写项目系统设计报告 制定开发计划 确定人员分工进度安排 分工进行模块设计 编写模块设计报告 软件编程、调试 软件组装、测试 完成测试报告 安装、试运行、培训 验收、售后服务 编写软件用户手册 工作总结 结束 A B C D

软件公司研发项目管理制度()

软件公司研发项目管理制度 第一节总则 第一条为规范自有软件研发以及外包软件的管理工作,特制定本制度。本制度适用 于公司软件研发与管理。 第二条本制度中软件开发指新系统开发和现有系统维护或改造,此类工作均需要以项 目制管理。 第三条本制度中自行开发是指主要依赖公司自身的管理、业务和技术力量进行系统 设计、软件开发、集成和相关的技术支持工作,一般仅向外购置有关的硬件设备和支撑软件平台;合作开发是公司与专业IT公司(合作商)共同协作完成IT应用的项目实施和技术支持工作,一般形式是公司负责提供业务框架,合作商提供技术框架,双方组成开发团队进行项目实施,IT系统的日常支持由技术研发部承担;外包开发是指将IT应用项目的设计、开发、集成、培训等任务承包给某家专业公司(可以是专业的IT公司或咨询公司等),由该公司(承包商)负责应用项目的实施。? 第四条 ?软件开发遵循项目管理和软件工程的基本原则。项目管理涉及立项管理、项目计划和监控、配置管理、合作开发管理和结项管理。软件工程涉及需求管理、系统设计、系统实现、系统测试、用户接受测试、试运行、系统验收、系统上线和数据迁移。 第五条 除特别指定,本制度中项目组包括业务组(或需求提出组)、开发组(可能包括网络管理员和合作开发商)。 第二节立项管理 第六条 提出项目需求的部门参与公司层面立项,进行立项的技术可行性分析,编写《立项分析报告》,开展前期筹备工作。《立项分析报告》应明确项目的范围和边界。 第七条 需求提出部门将立项分析报告》交相关部门会签后,上交公司高层进行立项审批,以保证系统项目与公司整体策略相一致。 第八条 《立项分析报告》得到批准后,成立项目组(如果是外包开发,则成立外包商项目组; 如果是合作开发,则与外包商共同成立合作开发项目组,以下统称“项目组”),项目组应包括业务组(由公司技术研发部需求管理组和相关业务部门组成)和开发组(自行开发为技术研发部开发组、网络管理员;外包开发为技术研发部指定的开发组长、网络管理员和外包商成员;合作开发为技术研发部开发组指定人员、网络管理员和外包商成员)。公司技术研发部委派一名项目经理负责监督项目的进度,进行项目管理工作,确保开发能及时完成并能满足业务需要。项目组人员的选择应满足项目对业务及技术要求,项目组人员应有足够的业务和IT技术方面的专业知识来胜任项目各方面的工作。 第三节需求分析

项目管理软件项目开发计划.docx

《文档名称》 软件项目开发计划 编号: Q/RKS-YYXXX-SPP-SNO 版本号: 1.0 作者: 时间:年月日 山东浪潮齐鲁软件产业股份有限公司

文档修订 版本日期更改人描述(注明修改的条款或页) 批准人签字 职务姓名日期客户经理 软件项目经理 SQA 经理 SCM 经理 研发经理 SCCB SCCB SCCB 抄送人:项目经理、技术管理部、客户经理、客户代表、研发经理、 SQA 经理、SCM 经理、项目组成员、 SCCB

目录 1 概述 (4) 1.1 目的 (4) 1.2 项目背景 (4) 1.3 范围 (4) 1.4 术语定义 (4) 2 项目总览 (4) 2.1 基本信息 (4) 2.2 项目主要联系人 (4) 2.3 项目组织结构和职责 (5) 2.3.1 组织(根据项目情况制定,从任务书中拷贝) (5) 2.3.2 职责 (6) 2.4 开发人员经历 (7) 2.5 假设和约束 (7) 2.6 选择生命周期模型 (7) 2.7 里程碑、提交产品和评审时间及方式 (7) 3 项目策划 (8) 3.1 项目开发过程 (8) 3.2 需求变更过程 (8) 3.3 项目估算(参见《项目估算表》) (8) 3.3.1 软件规模 (8) 3.3.2 工作量估算 (9) 3.3.3 进度估算 (9) 3.3.4 成本估算 (9) 3.4 关键计算机资源 (10) 3.5 风险评估和控制 (10) 3.6 培训计划 (10) 4 项目跟踪 (11) 4.1 任务跟踪 (11) 4.2 问题跟踪 (11) 4.3 客户反馈 (11) 4.4 项目进展报告 (11) 4.5 项目里程碑报告 (11) 5 参考资料 (11)

【项目管理知识】软件项目管理的研究及在项目开发中的应用

软件项目管理的研究及在项目开发中的应用 针对软件项目开发的特点和软件开发包项目高失败率的善通过对软件项目管理方法的研究提出了软件项目开发过程的一种管理流程和相应的子流程,实现了对软件项目控制和管理。前言 软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。实际上, 软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定、持续地发展。 软件项目管理的特殊性表现在:①软件产品是无形的。软件项目管理者不能像其他项目管理者那样,能够从被开发的产品上看到进度、已经完工的部分 是否与设计相符等,他们只能从其他人所提交的文档中来掌握相关的情况。② 没有标准的软件过程。对软件过程的理解虽然已经取得了长足的进步,但是软 件管理者还是不能确切地预见某一软件过程何时有可能出现问题。③大型软件 项目常常是一次性的”。由于软件项目与一个国家、地区的经济政策相联系, 与用户的发展战略、经济实力、管理水平相适应,软件项目的开发过程中所采用的技术和管理方式与当时的计算机和通信技术有关,因此大型软件项目一般都不同于早先的项目,管理者纵使有在计划中降低不确定性的经验,也很难较准确地预见问题的出现,以前的经验教训也较难在新项目中发挥大的作用。 从目前国内外的软件企业来看,软件危机”的阴影仍然存在,软件行业的项目实施情况一直很不乐观。研究表明,软件项目失败的原因主要有两个: 是应用项目的复杂性;二是缺乏合格的软件项目管理人才。实践证明,缺乏有效的项目管理是导致软件项目失控的直接原因。

软件开发项目管理中的常见问题和解决方案

软件项目管理常见问题及解决方案 资料来源:互联网整理人:class4117 软件行业是一个极具挑战性和创造性的行业,软件开发是一项复杂的系统工程,牵涉到各方面的因素,在实际工作中,经常会出现各种各样的问题,甚至面临失败。如何总结、分析失败的原因,得出有益的教训,对一个公司来说,是在今后的项目中取得成功的关键。 1 .项目管理在软件开发中的应用的成因 目前我国大部分软件公司,无论是产品型公司还是项目型公司,都没有形成完全适合自己公司特点的软件开发管理模式,虽然有些公司根据软件工程理论建立了一些软件开发管理规范,但并没有从根本上解决软件开发的质量控制问题。这样导致软件产品质量不稳定,软件后期的维护、升级出现麻烦,同时最终也会损害用户的利益。 2.软件项目管理常见问题及解决方案 (1)缺乏项目管理系统培训 在软件企业中,以前几乎没有专门招收项目管理专业的人员来担任项目经理,被任命的项目经理主要是因为他们能够在技术上独当一面,而管理方面特别是项目管理方面的知识比较缺乏。 解决方案:项目经理接受系统的项目管理知识培训是非常必要的,有了专业领域的知识与实践,再加上项目管理知识与实践和一般管理的知识和经验的有机结合,必能大大提高项目经理的项目管理水平。 (2)项目计划意识问题 项目经理对总体计划、阶段计划的作用认识不足,因此制定总体计划时比较随意,不少事情没有仔细考虑;阶段计划因工作忙等理由经常拖延,造成计划与控制管理脱节,无法进行有效的进度控制管理。 解决方案:计划的制定需要在一定条件的限制和假设之下采用渐近明细的方式进行不断完善。提高项目经理的计划意识,采用项目计划制定相关知识、技术、工具,加强对开发计划、阶段计划的有效性进行事前事后的评估。 (3)管理意识问题 部分项目经理不能从总体上把握整个项目,而是埋头于具体的技术工作,造成项目组成员之间忙的忙、闲的闲,计划不周、任务不均、资源浪费。有些项目经理没有很好的管理方法,不好安排的工作只好自己做,使项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。 解决方案:加强项目管理方面的培训,并通过对考核指标的合理设定和宣传引导项目经理更好地做好项目管理工作。技术骨干在担任项目经理之前,最好能经过系统的项目管理知识,特别是其中的人力资源管理、沟通管理的学习,并且在实际工作中不断提高自己的管理素质,丰富项目管理经验,提高项目管理意识。 (4)沟通意识问题 在项目中一些重要信息没有进行充分和有效的沟通。在制定计划、意见反馈、情况通报、技术问题或成果等方面与相关人员的沟通不足,造成各做各事、重复

软件与项目管理

一、选择题 1、项目计划的制订是反复的过程,在实施的过程中,要求调整项目计划来协调成本、目标和进度,因此()。 A.在每个项目的阶段点上,都要求对项目计划进行变更 B.成本、目标和进度都要求体现在项目计划中 C.修改后的项目计划应该首先保证项目的进度符合要求 D.在大多数情况下,质量目标用来换取成本和进度 2、在软件开发过程中,通常会牵涉到机构、体制和管理方式的问题,这些问题的解决对于成功的软件项目管理很重要,有效地管理组织结构、质量政策、运行体制是()的责任。 A.项目经理B.职能经理C.高层管理者D.客户 3、下列不应该包含在项目计划中的是()。 A.范围的说明B.成本的分配和预算 C.实际的进度偏差D.需要达到的质量标准 4、()时,组织通常会外购产品或服务。 A.为了稳定现有人力资源B.需要保密 C.需要加强对产品质量的控制D.技术能力匮乏 5、小王负责一个管理信息系统项目,最近在与客户共同进行的质量审查中发现一个程序模块不符合客户的需求,进行追溯时,发现有相应的变更请求。最终小王被迫对这一模块进行再设计并重新编程。造成此项返工的原因可能是()。 A.未进行需求管理B.未进行范围确认 C.未进行变更管理D.质量管理过严 6、某正在进行中的项目,当前的BCWS=2200元、EV=2000元、ACWP=2500元,当前项目的SV和项目状态是()。 A.-300元;项目提前完成B.+200元;项目提前完成 C.+8000元;项目按时完成D.-200元;项目比原计划滞后 7、在关键路径上增加资源不一定会缩短项目的工期,这是因为()。 A.关键路径上的活动是不依赖于时间和资源的 B.关键活动所配置的资源数量是充足的 C.关键活动的历时是固定不变的 D.增加资源有可能导致产生额外的问题并且降低效率 8、某正在进行中的项目,当前的BCWS=2200元、EV=2000元、ACWP=2500元,该项目的CPI和成本绩效是()。 A.0.20;实际成本与计划的一致B.0.80;实际成本比计划成本要低 C.0.80;实际成本超出了计划成本D.1.25;实际成本超出了计划成本 9、编码阶段质量保证的措施不包括()。 A.程序员个性化的风格。B.严格遵守编程规范。 C.进行代码静态分析和代码审查。D.进行完善的单元测试。 10、关于项目团队成员的个人能力和对项目的影响,下列那些描述是正确的()。 A.对于按照工程化协作进行大的项目,个人能力对项目没有影响 B.项目无论大小,个人能力都会对项目的目标产生影响 C.从事项目对个人能力的提高没有影响 D.对于小项目,项目的最后成功与否,完全取决于个人能力 11、软件项目的工作量或者成本的估算,通常可以按照功能点或者单元数来进行估算,此时的估算是以()为依据的。

软件项目开发流程管控V2.0

一、目的 1.明确项目团队的管理和沟通流程,改善团队耦合性能。 2.部门内全面实施团队式管理机制,发挥广大员工各自的潜能,激励员工共同参与团队建设与发展。 3.使项目管理实现质量、资源、时间等要素的可控化。 4.规范项目开发管理,提高项目开发质量,提高工作效率,降低软件开发风险。 5.建立一套适合公司实际情况且又实用的有机管理体系。 6.为公司发展做好基层管理基础,为员工的发展提供有利的软环境保障。 二、原则 1.体现项目团队理念。 2.实用性。 3.有机性。 4.共同发展。 三、组织结构 1.约束条件 1)该项目管理和控制机制仅仅是用于全过程型和功能增加型软件开发。 2)该项目管理和控制机制必须与公司当前的发展状况、资源状况相匹配。 2.假定环境 1)公司具有一定的多项目同时开发的实力。 2)公司拥有几个能够带领项目开发的人员。 3)公司有能力组织测试和完备的文档管理。 4)公司有能力组织软件质量测评和监管。 5)公司软件部门管理为项目软件主管、项目团队式,且项目软件主管对各项目团队具有监控权 和工作质量跟踪权。 6)部门内有明确的岗位责任分工基础。 7)公司内有一批具有一定项目管理基础,能够带领人员完成项目开发的人才。

3. 组织结构 1) 说明:该结构为行政式结构,对于系统分析人员和软件工程师、开发人员都在项目团队或无项目员工的队列中。专职维护暂为预留组织。 2) 项目组内实行团队式组织结构 a) 每个项目组都是一个项目团队,具体称谓:angel 项目团队。 b) 一个项目团队要由以下几个基础机构组成: 项目经理; 软件总体设计工程师; 开发人员; 注:如果项目较小时可以进行机构合并,如项目主管、系统分析可以合并为一人来做。 如果项目运做前期需要时,还可以一人担负整个项目,但仍可以依据流程和控制机制来开展工作。 总体设计工程师和系统分析员在项目运做前期可能同时负责多个项目,即一个项目的系统分析员或总体设计工程师完成其所担负的任务后(交付所有文档和完成对开发人员培训后)可能转做另一个项目。 c) 机构内部领导模式为:民主式领导模式(项目经理与软件系统分析员、总体设计工程 师以及程序编码人员之间的关系是一种民主式方式,是同一个团队的不同成员,仅存在职能、职责的分工不同,没有高低贵贱之分,严禁摆资格和论权利等级。)。 项目组 项目组 项目组 项目经理 项目经理助理 项目总工程师 测试组 项目组 维护组

相关文档
最新文档