软件项目计划制定中的几个问题
四、开发经验总结不足
对于同样的一个项目,同样的一个功能,在进行多次的复用后,其技术应该已经较为成熟,其功能的实现也应该较为容易,出错率也应该较低,我们进度应该比较有把握,但事实情况并非如此!
那我想,也许是我们对开发的经验总结不够!
1 我们是否可以做一个这样的统计:
在一个我们现有的项目开发过程中,我们进行了多长时间的编码工作,其中没有任何修改操作的时间为多长,因为用户需求的更改而导致的代码修改时间为多长,因为设计的修改而导致的代码修改时间为多长,因为功能实现的错误而进行的代码修改时间为多长。
如下表,进行一些数据的统计。
所有时间的综合
在没有进行修改的情况下项目所花费的时间
引起代码修改的原因
用户需求更改的情况下项目所花费的时间
设计发生修改的情况下项目所花费的时间
功能实现的错误的情况下项目所花费的时间
测试发现错误的情况下项目所花费的时间。
从这样一些统计和总结中,也许我们可以看出,我们进度的延期最主要的因素是什么;除了客户因素之外,我们还可以做那些努力;我们不可忽略的因素是什么。
2 软件过程调整
根据以上的分析,我们可以对软件过程进行适当调整,尤其是针对开发中采用C/A/S结构的系统,从而来改变我们增强需求获取的目的性,而且需求获取也会变得较为明显和容易。
对公司已经经历过的软件过程进行分析从而决定在下一个项目中将要采用的软件过程。例如,对采用B/A/S结构的系统可以采用直接从界面和数据进行概要设计的方式,并以此来计算页面设计时间和数据库设计时间。而对于其中所需要实现的其他的功能,则在每个界面当中进行详细设计,此时对每一个功能实现所需要的时间进行估算,这样就能够计算出整个项目的一个较为可靠的时间,根据用户的需要和需求功能实现的关联就能对项目进度有一个适度的安排。
这样在概要设计中,主要对界面和数据库设计进行评估;而在详细设计中对功能的设计和实现进行评估。
3 市场人员交流的技巧
我并不知道市场人员在交流的时候使用了什么样的技巧,但是市场人员的营销技巧和交流技巧确实对我们在争取项目的主动权上有着至关重要的作用。
如果能够充分掌握开发人员的相关因素和公司现状,那么在前期获得客户沟通、需求获取、和项目的时间把握等上,后期的产品交付、验收等问题上,都可以获得一定的余地!
在这儿要需要说明!
不管你是公司的技术人员,还是市场人员,与用户交流的时候,你就是一个与用户在进行交流的市场人员,同理,不管是懂技术的客户,还是不懂技术的客户,他都是提供用户需求的客户!
市场人员交流是需要一定的技巧的,而掌握这些技巧就需要市场人员掌握相关技能。
对于技能和技巧的掌握,没有人天生就会,只有不停的进行锻炼,并经过相关的培训和实践。