互联网科技Java成长之路Java架构技术进阶

软件项目管理的流程控制分析

2019-09-28  本文已影响0人  程序员北游

欢迎关注专栏:Java架构技术进阶。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。

前言

软件项目管理是指在软件项目研发过程中,对软件项目进行高效率的计划、组织、指导和控制,将研发任务与公司有关部门和相关人员紧密关联起来,使部门和工作人员目标明确、业绩清晰。项目管理更强调项目负责人的作用和团队的协作精神,其组织形式灵活,更加关注人的因素,关注客户和服务客户,着重于提高软件项目研发的效率和质量,体现为一种工作流程管理。

一、项目启动阶段

项目启动阶段的任务是识别客户需求内容,对客户提出的需求内容进行可行性分析、评估和立项。

1. 项目识别

科技部门接到业务部门提出的业务需求后,对业务需求内容进行确认,对业务需求做可行性研究分析,通过与业务部门进行交流沟通、分析评估后,对需求的可实现内容和不能实现的内容达成一致意见,科技部门对于确认的需求内容纳人公司整体项目管理体系中管理,并配合与业务部门撰写出详细的项目需求说明书。

2. 项目立项

软件项目通过评审后就可以进行立项,编制需求开发任务书。软件公司接到项目任务后,首先由公司项目管理办公室按照公司IT项目管理流程,为新项目建立信息档案,编制项目代码,启动项目开发工作。

二、项目规划阶段

项目规划阶段的任务是为拟研发的软件项目制定一个详细的解决方案,为各种可交付成果准备工作计划。

1. 项目范围规划

2. 编制项目工作计划

项目工作计划编制要依据合同对工期的约定和要求、里程碑计划、WBS,参照公司类似项目的历史信息和项目内外部条件,各种资源状况等内容,编制项目工作计划,常用的技术方法是PERT 网络技术、甘特图法。

3. 设计项目实现方案

4.确定信息沟通与披露渠道

5.项目信息管理

建立项目管理信息档案,可实现对众多的软件项目进行管理。通过专用的项目管理软件为每一个项目编号建立信息档案,详细记载项目生命周期中每一个阶段产生的项目信息资料,要求项目组随时提交项目信息,逐步建成一个项目信息管理知识库。

三、项目执行阶段

项目执行阶段就是具体实施项目规划中制定的各项工作内容,是项目生命周期中工作内容最多、占有时间最长和消耗资源最多的一个过程。

1.明确团队组成形式

对于商业银行来讲,如果是自行研发软件项目,则适合选用强矩阵组织结构模式,特别是对于研发一个大型软件项目,由于项目涉及会计、信贷、储蓄、银行卡、外汇等多个业务部门和应用子系统,还涉及与外部公司系统的连接等多方面工作,需要公司业务和技术各个团队的密切配合才能完成,因此采用强矩阵式的管理模式,更能充分调动公司各部门的资源,完成该项目。如果软件研发项目是外包,则需要采用项目管理方式更合适,设置项目经理专门负责每一个软件项目研发的全过程。

2.建立项目开发团队

依据业务需求开发任务书中,对项目完成时间、费用的要求,确认项目开发团队人员数量,明确项目经理,建立以项目经理为项目负责人的开发团队。团队组建完成后,项目经理组织团队人员进行交流学习和互相熟悉,说明项目任务、目标、规模、人员组成、规章制度和行为准则,个人岗位和责任,建立团队与外界的初步联系及相互关系,确立团队的权限,建立团队的绩效管理机制,争取公司各方面支持,根据团员特点分配职责,收集有关项目信息。

3.实施项目开发测试

依据公司软件项目设计开发制度要求和软件项目管理规范,按照需求实现方案为项目具体开发做好准备。

4.实施项目采购

项目经理及项目成员按照公司采购制度和流程控制要求,了解软件产品供应商市场,咨询市场询价,采购招投标及与中标供应商签订合同。参与系统供应商招投标会议,了解熟悉供应商情况,当确定供应商后,项目经理与团队成员一起与供应商进行详细的需求功能沟通交流,向供应商讲解自身应用系统的结构及该项目与其他应用系统的关联,项目计划实现的时间安排,技术问题的交流方式等,同时听取系统供应商对提供系统功能的详细介绍及有关技术要求。通过两者之间的交流让供应商熟悉掌握需求内容和项目进度安排,在预定的时间内提供相应的软件项目开发文档资料,同时银行本身做好采购系统设备及应用技术环境的建设。

5.项目信息入档管理

在项目的研发过程中,会产生很多的来自不同层次和客户的项目管理所需信息和文档资料,及时、正确地搜集好这些项目信息并纳人项目信息管理档案中统一管理,为跟踪项目进程、提高项目控制能力及项目后评价、项目绩效考核打好基础。

四、项目控制阶段

项目控制阶段任务是定期监测与度量项目执行情况阶段各项工作进展情况,识别是否有偏离计划之处,对于项目执行过程中出现的问题,及时发现并采取纠正措施,以确保项目目标实现。

1.项目控制流程

软件项目控制流程图示如图2所示。


图2 项目流程控制

2.项目进度与费用控制

3.项目资源的控制

项目的资源包括人力资源、开发环境资源、测试环境资源、设备资源等,在项目开发过程中,项目经理要根据项目开发进度情况,优化资源分配,合理安排项目使用的开发和测试环境,调整开发人员和测试人员数量和工作内容,通过项目资源优化,确保项目开发进度和质量。

4.采购过程及合同控制

监督和控制软件项目采购过程中,要确保供应商招投标及中标是否按流程工作,供应商的资质是否符合要求,要求提供的文档资料是否齐全。对于中标的供应商要做好合同管理,确保卖方符合要求,买方要根据项目进度情况,做好项目阶段付款、合同内容变更管理。

5.需求变更管理

在软件项目的研发过程中,对于需求内容变化请求都要求做出快速的响应,这需要制定相应的变更管理工作流程,控制来自各方面的变更,同时更新项目计划内容,并及时把更新项目信息资料存入项目信息管理档案。

6.项目风险控制

根据项目规划阶段对项目开发过程中不同风险的识别及应对策略,实行项目“实时监控、实时询问、及时披露”制度。在项目开发过程中,对于出现的风险要及时向上级领导、客户反映,同时要采取措施把风险减少到最低程度。对于外包商,项目经理需要密切监控项目的实施情况。

7.项目质量控制

按照质量保证计划,由质量控制员全程跟踪项目研发过程中质量控制点,提醒项目经理提交项目管理需要的质量信息资料,对于发现的问题要及时通知项目经理改正。

五、项目收尾阶段

项目收尾阶段是项目生命周期的最后阶段,这个阶段的主要工作包括如下几方面。

1.项目验收

2.项目交接

对于外包开发的软件项目,在完成验收后依据合同要求,接收外包开发商提供的有关项目资料。对于自行研发的项目按照公司项目管理要求,项目组要提供项目相关技术文档。

3.费用清算

根据合同规定和实际项目验收情况,与项目外包软件开发商进行资金清算。

4.项目后评价

上一篇下一篇

猜你喜欢

热点阅读