软件项目计划内容如下:1.范围。对该软件项目的综合描述,定义起所要做的工作以及性能限制,它包括:(1)项目目标。(2)主要功能。(3)性能限制。(4)系统接口。(5)特殊要求。(6)开发概述。2.资源。(1)人员资源。(2)硬件资源。(3)软件资源。(4)其他。3.进度安排。进度安排的好坏往往会影响整个项目的按期完成,因此这一环节是十分重要的。制定软件进度与其他工程没有很大的区别,其方法主要有:(1)工程网络图。(2)Gantt图。(3)任务资源表。(4)成本估算。(5)培训计划。
二、制定软件工程规范
对软件工程管理来说,软件工程规范的制定和实施是不可少的,它与软件项目计划一样重要。软件工程规范可选用现成的各种规范,也可自己制定。目前软件工程规范可分为三级:(1)国家标准与国际标准。(2)行业标准与工业部门标准。(3)企业级标准与开发小组级标准。
三、软件开发成本估算
式中Ck是技术状况有关的常数,它的典型值如下:对于差的开发环境Ck=2500对于好的开发环境Ck=10000对于有的开发环境Ck=12500由上述公式可以得到所需开发工作量的公式:
四、风险分析
风险分析对于软件项目管理是决定性的,然而现在还是有很多姓名不考虑风险就着手进行。
五、软件项目进度安排
软件项目的进度安排与任何一个工程的进度安排没有实质上的不同。首先识别一组项目任务,建立任务间的相互关联,然后估计各个任务的工作量,分配人力和其他资源,指定进度时序。1.软件开发任务的并行性若软件项目有多人参加时,多个开发者的活动将并行进行。2.Gantt图Gantt图常用水平线段来描述把任务分解成子任务,以及每个子任务的进度按排,该图表示方法简单易懂,一目了然,动态反映软件开发进度情况。如下表:
软件质量保证是软件工程管理的重要内容,软件质量保证应作好以下几个方面的工作:(1)采用技术手段和工具。(2)组织正式技术评审。(3)加强软件测试。(4)推行软件工程规范(标准)。(5)对软件的变更进行控制。(6)对软件质量进行度量。
七、如何制定软件项目计划
我们着重强调对项目规模和资源的估算,是因为低质量的项目资源估算将不可避免地造成资源短缺,进度延迟和预算超支。又由于项目资源估算是从软件规模估算中直接衍生出来的,所以低质量的规模估算是造成许多软件项目问题的根本原因。
项目计划应在项目开始初期制定出,并随着工程的进展不断地加以精化。起初,由于软件需求通常是模糊而又不完整的,我们的工作重点应在于明确该项目需要哪些领域的知识,并且如何获取这些知识。如果不遵循这一指导原则,程序员们通常会积极地投入到那部分已知的工作中去,而把未知部分留滞到以后。这种工作方式通常会产生很多问题,因为未知部分具有最高的风险系数。软件项目计划的逻辑如下所述:
由于软件需求在初始阶段是模糊而又不完整的,质量计划只能建立在对客户需求的大致而不确切的理解之上。因此,项目计划应该从找出含糊不确切与准确恰当的软件需求间的映射关系入手。
接着建立一种概念设计。项目初始架构的建立要十分谨慎,因为它通常标定了产品模块的分割线,同时描述了这些模块所实现的功能及所有模块间的关系。这就为项目计划和项目实施提供了组织框架,因此一个低质量的概念设计是不能满足要求的。
在每一次后续的需求精化时,也应同时精化资源映射,项目规模估算和工程进度。
八、制订软件项目计划的方法与策略制订软件项目计划的目的在于建立并维护软件项目各项活动的计划,软件项目计划其实就是一个用来协调软件项目中其它所有计划,指导项目组对项目进行执行和监控的文件。一个好的软件项目计划可为项目的成功实施打下坚实的基础。
1.注重项目计划的层次性
软件项目计划的层次及其关系如下图所示。
如果项目规模相对较大,可以有多级的计划,比如说,一个项目组可能分为几个开发组,二级计划是各开发组制订的适合的自己小组的计划。如果开发组还分了小组,可以有小组的三级计划。
开发人员的个人计划是低级计划,由开发人员根据自己的任务自行制定,要把任务细化到人·日。
一般的,软件项目计划至多有四级就够了,过多的等级将会引发效率的瓶颈。大的项目不见得要有庞大的组织和人员数量来支撑,合理的划分小组,减少组织的层次,有利于项目计划的制订和实施。较小的软件项目由于工期不长,人员较少,有二级计划(高级计划与低级计划)也是可行的。
2.重视与客户的沟通
与客户的沟通是很重要的。不必害怕客户知道我们的开发计划,特别是项目进度情况,应当和客户共享这些信息。
其次,我们有义务要让客户知道项目的计划。这样才能让客户和用户主动、积极参与项目,达到项目的最终目标。项目计划取得双方签字认可是一种好的习惯。客户可能不愿意签正式的文件,那么在文档的封面上签上双方负责人的姓名、联系方式也行,虽然是非正式的,但留下了项目工作的痕迹。有必要想办法让客户清楚签字意味着什么。这就意味说双方有了一个约定,既让用户感觉心里踏实,也让自己的项目组有了责任感,有一种督促和促进的作用。
3.该详细的详细,该简略的就简略
4.制订的项目计划要现实
软件项目中的项目经理和系统分析员大都是从程序员成长起来的,我亦是如此,担任项目经理之前我写了五年的VB、Java和数据库SQL代码。项目经理和系统分析员做出来的项目计划最终要能够被项目组成员所实现。
制订项目计划仅靠“个人经验”是不够的,不可能面面俱到,不要期希望于“个人经验”。解决的办法有两个方面。
一是充分鼓励、积极接纳项目干系人(包括客户、公司高层领导、项目组成员)来参与项目计划的制定。
可以邀请客户和公司高层领导来共同讨论高级计划的制订。客户会乐意参与的,因为追求项目的成功是大家的共同目标。公司高层领导的支持是项目组的坚强后盾,项目组需要获取必要的资源,需要及时获取对项目特殊要的审批,需要在领导事务上得到适当的指导和帮助,有些事项有时是需要公司高层领导加入才能解决的,如合同款项的按期支付。
制订二级、三级项目计划要与项目组成员互动。当规划由一个人做出而由另一个人实施时,如果项目没有按时完成,会使得他们怀疑项目计划的可行性,也会影响开发人员的士气。与项目组内部人员的沟通亦很重要。软件程序员平时通常表现得内向、清高,作为项目经理应当学会调节工作中的气氛,在轻松的氛围中去融合开发人员的意见。
二是要充分利用一些历史数据。历史数据是宝贵的财富,是可复用的资源。不仅要注意积累这些数据,也要学会从中提炼出可以为我所用的数据。如,项目计划的模板,计划的资源数据等。
5.运用过程化的思想指导开发
软件项目计划是CMM2级的一个KPA。可用软件过程化的思想指导计划的编制与实施。
CMM2共有6个KPA,它们是:需求管理、软件项目计划、项目跟踪和监控、软件转包合同管理、软件质量保证、软件配置管理。一个软件组织如果达到了CMM2的各个过程方面的全部目标,就表明这个组织的软件能力达到了第2级成熟度等级。
这也可以是针对一个项目而言。通常需要根据项目的进展情况对项目计划进行修改,以便应付需求和承诺的变更、不够准确的估计、纠正措施和过程更改等。在策划和重新策划中涉及的活动,都包含在这个过程方面里。
6.利用成熟的项目管理工具
7.结束语
软件项目计划分为高级计划、二次计划、三级计划和低级计划,制订软件项目计划应注意及时与客户沟通,该详细的详细,该简略的就简略,制出来的计划要是现实的,可以运用CMM2的思想指导计划的制订,MicrosoftProject是倍受推荐的项目计划软件工具。愿我们多做出高质量的软件计划,从而打造软件精品。
九、软件项目计划编制方针
软件项目计划编制的目的是制定一个合理的实施软件工程及管理软件项目的计划。软件项目计划编制着重于对要实施的工作进行估计,建立必要的承诺并定义工作计划。
包括以下要点:
十、软件项目计划模板
_________项目开发计划
1.概述
1.1编写目的本文档是__________(开发单位名称)根据__________项目的初步需求,并对_______项目的各项需求进行全面分析之后,做出的软件开发计划,可供支持项目组内部及信息技术部内部的研发工作。
1.2项目背景系统名称:[列出系统名称]
英文名称:[列出系统英文名称]
产品代号:[列出系统产品代号]
委托单位:[列出委托单位]
开发单位:[列出开发单位]
1.3定义[列出本文件中用到的专门术语的定义和外文首字母组词的原词组。]
1.4参考资料[逐条列出所参考的文档名称与作者。]
2.项目过程定义
2.1软件开发生命周期模型[列出采用的软件开发生命周期模型,并说明采用的理由。]
2.2开发工具与平台[列出采用的开发工具、操作系统及平台软件。]
3.计划
3.3资源计划[逐项列出项目开发过程中所需的各种资源。]
3.4关键计算机资源估计[逐条列出所需各种计算机资源的类型、配置及数量等内容。]
4.项目管理
4.1人员与角色[逐项列出项目组的角色分配及已可供调配的人员。]
4.3风险管理计划[逐条列出各项风险的影响因素、发生概率、严重性、负责人、预期日期、预防及补救方案等内容。]
4.4培训计划[逐条列出主题(技能、领域、工具、方法)、人数、计划日期、提供者等内容。]
4.5成本估计[逐条列出成本的类型及金额,并计算估计的总本。]