项目经理制定项目时间表的时候,需要估算每个任务所需的时间,其中开发任务中模块的分配和时间估算是其中最主要的部分。本篇专门就这部分作一个阐述。
一、在分配模块和估算开发时间时,我们需要把握的原则和目标:
1、保证项目整体的进度。
2、有助于确保开发编码的质量。
3、有助于提高开发编码的速度。
二、每个公司都拥有自己的技术框架,开发人员主要的工作通常投入在具体的商业逻辑上。
通常每个模块所需的开发时间取决于以下三个因素:
1、该模块的商业逻辑的复杂程度。
2、开发人员的技术水平和对项目所在应用的熟悉程度(包括对框架和应用的熟悉程度)。
3、该模块技术实现上是否有技术难点。这里我把技术难点定义为:在现有系统中还未实现的有一定技术难点的问题。对于这样的难题,开发者没有相关的代码可以参考,需要投入一些时间研究解决。
三、模块分配和开发时间估算的步骤:
1、作为项目经理划分好模块后,我会自己先估算一下每个模块所需要的开发时间。
2、召集所有开发人员,讨论模块分配和开发时间估算。
项目经理将划分好的模块,让开发人员从中挑选他们感兴趣的模块。这样做可以提高开发人员的主动性和参与性。
项目经理在分配模块的时候还需从以下几方面考虑,以确保开发的速度和质量。
(1)相同类似的模块由同一人负责开发,比如文章的增删改由同一开发者负责。这样做的好处就是开发者对相关逻辑会更加熟悉,同时接口的定义也会比较明确,沟通的成本比较低。
(2)技术难度比较大的模块由技术水平比较高的人负责。
(3)业务逻辑比较复杂的由对这块逻辑比较了解的人负责。
3、模块分配完后,开发人员评估自己负责开发的模块所需要的时间。在此过程中我们会比较详细的讨论每个模块的技术实现,以便使时间的估算更加准确。
4、项目经理对开发人员估算的时间进行确认。
在确认过程中作为项目经理我会参考以上提到的三个因素,同时将自己估算的时间和开发人员估算的时间进行比较。这其中的差异当然会存在的。对于那些差异比较大的,我会和技术人员探讨其中的缘由。
对于时间周期比较长的任务,我通常会再细分一下,争取每个任务的最长时间不超过3天。时间周期越长的任务,不确定性越高,风险也越高,越有可能成为项目的瓶颈。
建议:
1、项目总结的时候,对项目中的一些数据做好统计比如单位UC所花的开发时间、测试时间等,这些数据统计可以作为以后开发的参考。
2、对技术难点,在项目开始前做好技术准备,提前安排人员研究。这样会节省以后项目时间,降低技术风险。
分享到:
相关推荐
JIRA 是一个项目管理和问题跟踪工具,广泛应用于软件开发、项目管理等领域。下面是 JIRA 操作手册的详细知识点。 安装和配置 1. 安装 ORACLE 9I 到服务器 2. 创建数据库 jiradb,注意数据库名必须是 jiradb,否则...
综上所述,软件项目立项申请书应当清晰阐述项目目标、市场潜力、研发计划、风险分析、成本估算以及人力资源和硬件需求,确保项目的顺利启动和执行。这个实例提供了一个全面的模板,可作为其他类似项目参考。
11. **项目管理**:除了特定的软件外,项目经理还需要掌握如项目范围定义、风险管理、成本估算和时间管理等技能。 12. **文档管理**:使用Markdown或其他格式编写项目文档,如需求规格书、设计文档、用户手册等,...
测试管理与QualityCenter培训手册 1、测试流程管理、测试度量方法 按照尽早进行测试的原则,测试人员应该在需求阶段就介入,并贯穿软件开发的全过程。就测试过程本身而言,应该包含以s下几个阶段。 -测试需求的...
本文将详细解析一份名为"某物流系统提案.pptx"的文档,该提案涵盖了物流系统的硬件配置、软件架构、安全措施、开发流程、时间表、交付文档、系统支持、应用实例以及成本估算等多个方面。物流系统作为企业运作的核心...
《软件工程[信息系统]解决方案模板》不仅是一份详细的系统建设指南,更是软件工程师、项目经理、系统分析师等专业人员必备的实战手册,通过全面、系统、专业的知识体系,助力信息系统建设项目顺利推进,实现信息化...
6. **Web开发框架**:如Spring Boot、Django或React,实习生可能需要学习如何使用这些框架构建前后端应用,理解其工作原理和最佳实践。 7. **敏捷开发和Scrum**:现代软件开发通常采用敏捷方法,如Scrum,强调迭代...
在IT行业中,"系统估计"是一项至关重要的任务,它涉及到对软件开发项目的时间、成本、资源和工作量的预测。这个过程通常发生在项目规划阶段,目的是为了制定合理的项目计划,确保项目的顺利进行,并为决策者提供可靠...