项目管理主要包括编制项目计划、不断更新项目计划、实施跟踪计划、协调各种工作、指导项目组成员完成工作等。项目管理工作量一般占整个项目工作量10-20%,项目不清楚的东西越多,项目组成员水平越差,项目组成员之间的工作磨合度越差,管理工作量越大。项目管理的整个过程需要继续进行。一般来说,前期工作量会比较大,版本发布前后工作量会比较大。如果把握好项目管理的前期工作,后期的工作量会大大降低。
配置管理工作。
配置管理是什么?简单地说,工作产品的管理,包括各种文档、各种记录、代码、数据库、脚本、安装程序、组件等。
工作产品在软件生产过程中可分为中间产品和最终产品两类。
中间产品有:
1)工程:需求文档、设计文档、测试方案、代码、数据库脚本、数据库、测试脚本等。
2)管理:开发计划、测试计划、培训计划、采购计划、实施计划等。
3)记录:会议记录、电子邮件、缺陷等。
最终产品是指最终交付给客户的东西,一般包括:组件、安装程序、数据库、用户手册、管理员手册等。
不同的工作产品应采取不同的有针对性的管理方法,许多公司将制定单独的配置管理计划。
质量保证工作。
严格来说,质量保证取决于所有项目组。这里提到的质量保证是狭义的质量保证,即项目组按照既定的规定、流程和标准工作,并按照既定的格式要求生产相应的工作产品。
对于以上十一点,实际项目估算中经常出现这样的问题:
1.忘记了项目前期工作的工作量。
2.不考虑业务、维护、配置管理、质量保证。
3.估计需求研究、软件设计、编码、测试和实施工作太少。
4.估计项目管理工作量不足。
如何做估算?
这里的估算都是指项目组对项目的估算,目的是指导项目的具体工作。
估算方法有很多种,大致可以分为两类:
1.首先获得软件规模,然后根据公司的实际生产率导出软件规模的工作量。
2.直接获得工作量。
第一种常用方法有:功能点法、代码行法、第二种常用方法Delphi微软从底到上的估算法。
什么是软件规模?让我们先看看搬砖的估计。
假设有1000块砖,它们的大小和重量是一样的,每个工人每天可以搬100块砖,所以我们可以估计需要10天才能搬完。10天意味着1个工人需要10天,10个工人只需要1天。
这1000元代表工作规模,生产率为100元/天,可计算工作量为10人日。建筑工程可以获得代表工作规模的数据,如土方量、混凝土量和钢筋量,因此更容易计算完成这些工作所需的工作量。
软件工程估计也希望达到类似的效果,但软件项目的工作规模是什么呢?功能点和代码线是两种常见的软件规模表示方法。
软件规模与软件的具体生产技术、项目管理方法、项目组人员水平等无关。软件规模只与软件项目本身的性质有关。如果我们能找到合适的统一标准来衡量每个项目的规模,我们就可以在每个软件项目之间进行水平比较。功能点和代码行都希望达到这种效果。
功能点法的基本思路是将复杂的软件分解为独立粒度一致的功能点,并附加一些调整系数,以获得软件规模。
我们的大部分项目都是数据库四轮马车的操作(查询、添加、修改和删除)。功能点法从相对较高的层次抽象这些工作。有一套严格的规则可以将您的需求分解为一个功能点。代码行也有类似的想法,但分解的结果只是代码行。