项目计划详细说明了所需软件工作及如何实现。它定义了每一个主要任务,并估算其所需时间和资源,同时为管理层的评估和控制提供了一个框架。项目计划也提供了一种很有效的学习途径。如果能合理建档,它便是一个与实际运行效能比较的基准。这种比较可以使计划者看到他们的估算误差,从而提高其估算精确度。
我们着重强调对项目规模和资源的估算,是因为低质量的项目资源估算将不可避免地造成资源短缺,进度延迟和预算超支。又由于项目资源估算是从软件规模估算中直接衍生出来的,所以低质量的规模估算是造成许多软件项目问题的根本原因。
项目计划应在项目开始初期制定出,并随着工程的进展不断地加以精化。起初,由于软件需求通常是模糊而又不完整的,我们的工作重点应在于明确该项目需要哪些领域的知识,并且如何获取这些知识。如果不遵循这一指导原则,程序员们通常会积极地投入到那部分已知的工作中去,而把未知部分留滞到以后。这种工作方式通常会产生很多问题,因为未知部分具有最高的风险系数。软件项目计划的逻辑如下所述 :
由于软件需求在初始阶段是模糊而又不完整的,质量计划只能建立在对客户需求的大致而不确切的理解之上。因此,项目计划应该从找出含糊不确切与准确恰当的软件需求间的映射关系入手。
接着建立一种概念设计。项目初始架构的建立要十分谨慎,因为它通常标定了产品模块的分割线,同时描述了这些模块所实现的功能及所有模块间的关系。这就为项目计划和项目实施提供了组织框架,因此一个低质量的概念设计是不能满足要求的。
在每一次后续的需求精化时,也应同时精化资源映射,项目规模估算和工程进度。
软件项目计划-制订软件项目计划的方法与策略
制订软件项目计划的目的在于建立并维护软件项目各项活动的计划,软件项目计划其实就是一个用来协调软件项目中其它所有计划,指导项目组对项目进行执行和监控的文件。一个好的软件项目计划可为项目的成功实施打下坚实的基础。
软件项目有其特殊性,不确定因素多,工作量估计困难,项目初期难于制定一个科学、合理的项目计划。我曾主持和参与过大大小小的软件项目十余项,下面我将把我制订软件项目计划的经验分享给大家。
1.注重项目计划的层次性
软件项目计划的层次及其关系如下图所示。
高级计划,是项目的早期计划。高级计划应当是粗粒度的,主要是进行项目的阶段划分,确定重大的里程碑,所需相关的资源,包括人力资源、设备资源、资金资源,即所谓的人、财、物三个要素。
大的阶段交替之前,应做好下一阶段的详细计划,我们称之为二级计划。详细计划要确定各项任务的负责人,开始时间,结束时间,任务之间的依赖关系,设备资源,小的事件点(即里程碑)。
如果项目规模相对较大,可以有多级的计划,比如说,一个项目组可能分为几个开发组,二级计划是各开发组制订的适合的自己小组的计划。如果开发组还分了小组,可以有小组的三级计划。
开发人员的个人计划是低级计划,由开发人员根据自己的任务自行制定,要把任务细化到人·日。
一般的,软件项目计划至多有四级就够了,过多的等级将会引发效率的瓶颈。大的项目不见得要有庞大的组织和人员数量来支撑,合理的划分小组,减少组织的层次,有利于项目计划的制订和实施。较小的软件项目由于工期不长,人员较少,有二级计划(高级计划与低级计划)也是可行的。
2.重视与客户的沟通
与客户的沟通是很重要的。不必害怕客户知道我们的开发计划,特别是项目进度情况,应当和客户共享这些信息。
首先,客户会提出一些对项目时间、进度、效果上的要求,这个指标往往经不起推敲,有的还带有较强的政策性。如:在我主持的一个某单位人nnerlink>MIS系统的开发中就发现,客户方对时间上的约束是有成形的文件的,是他们单位领导们开会的决定。客户给出的从项目启动到验收的时间只有三个月,但是,经过我们认真的需求调研,做出项目进度的粗计划和部分的二级计划后,发现三个月的时间是难于实现的。我们把做出的调研文档和项目计划摆出来和和客户讨论,最终使项目的开发时间延长为六个月。站在为了科学地分析和解决问题的立场上来看,项目组和客户的目的是一致的,所以对于合理的项目进度客户是会理解与支持的。
其次,我们有义务要让客户知道项目的计划。这样才能让客户和用户主动、积极参与项目,达到项目的最终目标。项目计划取得双方签字认可是一种好的习惯。客户可能不愿意签正式的文件,那么在文档的封面上签上双方负责人的姓名、联系方式也行,虽然是非正式的,但留下了项目工作的痕迹。有必要想办法让客户清楚签字意味着什么。这就意味说双方有了一个约定,既让用户感觉心里踏实,也让自己的项目组有了责任感,有一种督促和促进的作用。
3.该详细的详细,该简略的就简略
软件项目计划就如同软件项目本身一样有它特殊性,一个三五个人花两三个月就可以完工的小项目,可能项目计划就四五页纸,包括一个WBS(工作分解结构)和一个Gantee图(甘特图)。一个需要五六十个人甚至上百人,要花上半年或更长时间的大型软件项目则会有更多的项目计划内容。我们得按照项目的的特定情况量体裁衣。
如下表表1所示,这是我主持的一个某高校教务办公信息系统项目的风险管理计划表。项目较小,我们只用了两个月的时间就开发完工,通过验收。正因如此,我们在项目计划中大量的采用了这种表格来制订人员计划、培训计划、风险计划、成本估计、文档大小估计、进度计划,一目了然,责任到人,其效果和效益是很明显的。
项目的工作安排一定要责任到人,这点是要详细的。如果是多个人共同完成的任务也要指定一位主要负责人,否则开发人员会操作不便,甚至互相推卸责任。
4.制订的项目计划要现实
软件项目中的项目经理和系统分析员大都是从程序员成长起来的,我亦是如此,担任项目经理之前我写了五年的VB、Java和数据库SQL代码。项目经理和系统分析员做出来的项目计划最终要能够被项目组成员所实现。
制订项目计划仅靠“个人经验”是不够的,不可能面面俱到,不要期希望于“个人经验”。解决的办法有两个方面。
一是充分鼓励、积极接纳项目干系人(包括客户、公司高层领导、项目组成员)来参与项目计划的制定。
可以邀请客户和公司高层领导来共同讨论高级计划的制订。客户会乐意参与的,因为追求项目的成功是大家的共同目标。公司高层领导的支持是项目组的坚强后盾,项目组需要获取必要的资源,需要及时获取对项目特殊要的审批,需要在领导事务上得到适当的指导和帮助,有些事项有时是需要公司高层领导加入才能解决的,如合同款项的按期支付。
制订二级、三级项目计划要与项目组成员互动。当规划由一个人做出而由另一个人实施时,如果项目没有按时完成,会使得他们怀疑项目计划的可行性,也会影响开发人员的士气。与项目组内部人员的沟通亦很重要。软件程序员平时通常表现得内向、清高,作为项目经理应当学会调节工作中的气氛,在轻松的氛围中去融合开发人员的意见。
可以让开发人员对自己职责范围内的事提出建议的时间和资源,再作讨论约定。这样开发人员在主观上会更加投入工作。客观上,开发人员的能力很难用时间及工作量来衡量,一名熟练的Java程序员比一名初学Java的程序员开发效率可能快上四五倍,因而安排的时间周期、任务量当然要不一样。我比较倾向于召开一次专题讨论会,事先写出一个初稿,再各抒已见,最后作出结论。
二是要充分利用一些历史数据。历史数据是宝贵的财富,是可复用的资源。不仅要注意积累这些数据,也要学会从中提炼出可以为我所用的数据。如,项目计划的模板,计划的资源数据等。
5.运用过程化的思想指导开发
软件项目计划是CMM2级的一个KPA。可用软件过程化的思想指导计划的编制与实施。
CMM2共有6个KPA,它们是:需求管理、软件项目计划、项目跟踪和监控、软件转包合同管理、软件质量保证、软件配置管理。一个软件组织如果达到了CMM2的各个过程方面的全部目标,就表明这个组织的软件能力达到了第2级成熟度等级。
这也可以是针对一个项目而言。通常需要根据项目的进展情况对项目计划进行修改,以便应付需求和承诺的变更、不够准确的估计、纠正措施和过程更改等。在策划和重新策划中涉及的活动,都包含在这个过程方面里。
6.利用成熟的项目管理工具
Microsoft Project 2000(或更高的版本)是一款公认的功能强大、操作方便的项目管理工具软件。它自带了一个叫做“软件开发”的模板,可以用它来生成大体的框架,再作细节方面的改动,也可以自己制作一个符合自己公司软件项目运作流程的模板。
Microsoft Project 2000的操作面版中可以安排任务,并设置开始时间、结束时间、前置任务、资源名称等参数,它能自动生成Gantt图、Pert图,找出项目中的关键路径。
7.结束语
软件项目计划分为高级计划、二次计划、三级计划和低级计划,制订软件项目计划应注意及时与客户沟通,该详细的详细,该简略的就简略,制出来的计划要是现实的,可以运用CMM2的思想指导计划的制订,Microsoft Project是倍受推荐的项目计划软件工具。愿我们多做出高质量的软件计划,从而打造软件精品。
较好的项目计划管理软件有什么?
工作计划的内容一般包括工作的目的和要求,工作的项目和指标,实施的步骤和措施等,也就是为什么做、做什么怎么做、做到什么程度。
而工作计划的填写方式一般分为两种,一种是结构化的,一种是非结构化的。结构化的是指按照公司的日志模板或者自己的日志模板长期从固定的维度来写的,非结构化的日志,更像是我们小时候写的日记,想怎么写就怎么写,没有固定格式要求。所以选择一款智能的好用的工作计划记录软件就尤其重要了。
1、刻意执行并预估有意识地安排自己的时间,所以当你罗列出所有今日要做的事情比你已经按照工作属性进行了分类,那么你就要去预估我没一项工作大概完成的时间,才能让我这一天的工作更加高效。
2、运用80%-20%原则(重要优先)人如果利用最高效的时间,只要20%的投入就能产生80%的效率。相对来说,如果使用最低效的时间,80%的时间投入只能产生20%效率。一天头脑最清楚的时候,应该放在最需要专心的工作上。所以,我们要把握一天中20%的最高效时间,将你分类后的事情中,选出最重要的三件事情当天一定要能够做完。在工作和生活中每天都有干不完的事,唯一能够做的就是分清轻重缓急。
3、坚持制定工作计划,不仅可以提高工作效率,还能给自己养成很好的工作习惯,哪些重要的事情需要优先做,优先安排。坚持记录的话我相信不仅提高的是工作效率,更是自身的工作能力和素质。
我们团队现在使用的是日事清,日事清日报的基础模版就是KPTP,四个部分就组成了一份清晰明了的工作记录,这样的记录既能充分体现你当前的工作状态,又能层次分明地向领导传递工作困难与你的工作能力。此外还可以团队分享、插入图片、语音识别,功能也比较强大。
用于项目进度管理的工具有哪些
项目进度管理的工具有:
1、方正飞鸿套件之一FIXPM实现对项目的全过程、全方位的管理,同时通过FIXPM将销售、项目、采购、财务等模块有机的整合在一起。
2、天耀软件是一款主要针对中小企业项目管理需要开发的项目管理软件。该项目管理软件秉承着速达软件简便易学易用的特点,充分考虑了中小企业机构简单、项目多且规模小、管理灵活等特点,浓缩项目计划、项目进度、项目成本、合同管理、项目文档等模块,以项目进度为线索、成本控制为核心,结合多纬度的统计分析,有效提升企业项目管理水平,并将办公自动化贯穿透项目管理全程,C/S、B/S、移动应用相辅相承,是中小企业体验现代化先进管理的最佳工具。
3、Primavera 公司P3、邦永科技PM2等
项目进度管理的简单介绍:
项目进度管理是指在项目实施过程中,对各阶段的进展程度和项目最终完成的期限所进行的管理,是在规定的时间内,拟定出合理且经济的进度计划(包括多级管理的子计划)。在执行该计划的过程中,经常要检查实际进度是否按计划要求进行,若出现偏差,便要及时找出原因,采取必要的补救措施或调整、修改原计划,直至项目完成。其目的是保证项目能在满足其时间约束条件的前提下实现其总体目标。
项目进度管理一般包含项目进度计划的制定和项目进度计划的控制两部分。
项目管理工具软件有哪些?
目前项目管理工具软件有很多的,要根据公司行业,管理重点选择适合的,8Manage PPM项目管理软件的功能:
项目计划与执行合二为一, 能实时且可靠地追踪每一个变更的起因及影响, 因责任分明及有效问责而减少借口及增强履职尽责。
动态项目资源管理, 能计划并追踪资源种类、技能、负荷及时间安排, 并能实时知道资源变更的影响及代替资源的可用性; 支特多部门、多站点、多项目及多资源种类的资源管理。
动态项目产品、物料、BOM、进度、沟通、变更、问题、风险、质量、交付、验收、成本及收入管理
简单项目管理,复杂项目管理、多项目管理、项目办公室管理及项目组合管理
通用项目管理、研发项目管理、工程项目管理、生产项目管理及投资项目管理
项目管理工具软件有哪些啊?
linkwedo-project 具有项目管理方面的灵活性,对企业业务中涉及的“人、事、时间” 都可以 以“项目、任务、事件”方式来管理,同时适合“高层、中层、员工”都全员参与的项目化管理平台。
请大神推荐几款,可以管理计划,管理项目的一些软件和工具
TeamLab
XPlanner+
NavalPlan
Codendi
Streber PM
这是暂时最好用的!! 基本也都有汉化版
转载请注明出处51数据库 » 软件项目计划工具 软件项目计划的计划制定
熙沫女神
