时间:2018年12月04日 分类:经济论文 次数:
如今软件开发管理领域不断出现了新的技术和思想,而传统的软件开发规程也随着时代的发展出现了升级、融合的特征。传统式企业级开发市场也不断地面向互联网,软件产品面向多样的需求,同时存在需求不明、变化快的特点。为避免产品开发完落伍或被淘汰,需要周期短、响应快的项目管理模式,相应地,项目开发管理也有了新的特征,于是就产生了敏捷管理方式,这种方式逐渐融入了传统流程中,下面文章就主要从核心价值观、团队协作、风险管控等方面介绍敏捷管理在企业级项目实施的应用效果。
关键词:互联网化;企业级项目管理;敏捷管理;瀑布式流程;软件开发管理
自2016年起,上海宝信软件股份有限公司承建了广东韶钢集团公司的能源精细化管控项目。该项目是钢铁企业能源管理系统建设第一次从能源部级建设走向公司级建设的尝试。项目要求在一年内完成上线投运。建设过程中,在项目的范围、时间、需求细化包括实施推广方面都遇到了一些问题,为了更有效地组织项目工作,确保项目节点,我们引入了敏捷管理方式。随着项目逐步的交付,我们看到敏捷管理和项目工作的结合产生了积极的效果。
1研究背景
精细化能源管理其总体原则为系统通过能源的动态-有序管理、协同-连续运行和耗散-优化的配置,实现能量流与物质流的高度耦合,落实为钢铁企业能源流与制造流的动态衔接、高效均衡。由于项目范围比较广,管理程度比较深,开发人员对需求的熟悉度比较低,项目工期相对比较紧。项目在进入开发阶段后,一度出现了一定程度的混乱,主要遇到的问题有:
(1)需求细化出现问题,开发人员难以介入,项目开发工作初始阶段进展缓慢。由于一些历史性问题,需求人员和开发人员的对接出现了问题:精细化管控需求范围广,业务复杂度高,流程性强,相对早前的业务,复杂度太高,感觉无从下手;需求人员也出现了人员变动,自身对新功能的把控有限,在需求细化等方面难以把控;项目使用了新的开发平台,开发人员在适应开发平台上花费了大量精力,不愿花太多时间在业务学习上;项目设计细化程度有限,需求人员在设计时不能准确把控技术特征,无法将流程性、特征性的功能转换为技术语言,沟通低效。
(2)项目时间比较紧,开发团队不够成熟且部分开发人员水平不足。项目团队中引入了大量新人,对业务熟悉程度低,开发经验也不足。在项目早期,他们需求大量的时间来培训和学习。
(3)项目时间比较紧急,根据项目节点,有大量的用户交流和沟通会议需求参加。这些工作在一定程度上分散了项目团队的资源,导致开发工作启动缓慢。经过一定时间的讨论,为了尽快地启动开发工作,并使得所有项目成员都能明确职责,尽快地完成需求交接和人员培训,我们采用了敏捷式管理来完成项目的开发阶段。
2敏捷管理核心价值观
敏捷开发(AD:AgileDevelopment)是一种以人为核心、迭代、循序渐进的开发方法[1]。在敏捷开发中,核心思想主要是迭代式开发,将整个项目分解为多个短期的迭代周期(Sprint通常2周左右,不超过一个月),强调每个迭代的成果交付,成果经过测试,具备可视、可集成和可运行使用的特征,快速响应需求进行増量开发。传统的瀑布开发是计划驱动的,在项目启动后,项目组制定详细的项目计划并且遵循计划执行,项目组通过文档来定义需求和传递信息。
而敏捷管理是价值驱动的,在项目启动后,通过自组织团队和与客户紧密合作,根据需求的价值评估项目组一起制定短期迭代周期计划,共同保证向客户持续交付可用的迭代产品[2],并且不断收集有价值的反馈和变化,直到最终完成客户满意的产品。
3解决方案
3.1改变项目团队组织方式和角色按照传统式开发,由一名开发Leader领导若干名开发人员[3],然后对接需求人员。根据项目特点,经过讨论,出于以下考虑,我们修改了项目的组织方式:
(1)项目存在部分需求特别是精细化管控需求待细化的特点。我们首先让需求人员一方面继续挖掘和澄清需求,另一方面转型为产品经理,负责各自模块的业务流程分析、用户场景分析等工作,同时使用Axure等原型工具将业务功能转换为图形化界面。在设计过程中,需求人员也能再次的理解和深耕业务,对于需求和后续开发都是重要的推进。还有两个重要的优势,首先让需求人员从无处下手到快速找到系统切入点。其次,还有助于需求人员快速的厘清需求中的确定和待确定需求,以便排出有效的开发计划。
(2)项目需求不明确,新人较多,新的开发平台导致工作量无法准确预估。在需求人员转换为产品经理角色后,我们先整理了系统中已明确的需求,并估算了未明确需求并排出计划。在此基础上,我们制定了敏捷的迭代周期。按照4周一个迭代的原则逐步推进。对于新人部分,我们一方面通过结对、培训等方式快速导入,也利用敏捷管理的透明性原则,通过每日迭代、鼓励交流等方式高效地掌握新人的进展,协助解决他们的问题,促使他们快速融入团队。
(3)错开节奏,让项目组先动起来。从4月底起,我们设定第一个迭代为迭代〇。这是项目的奠基期,我们首先进行了敏捷相关的培训,明确项目的开发模式的转变。接下来,产品经理利用此时间段组织下一个迭代的产品原型设计,开发人员则组织新平台的使用、技术和业务培训、基础框架搭建,架构师和业务专家则根据下一阶段的需求特征进行基础的系统和数据库架构设计。接下来的各迭代都依据此原则,产品团队在迭代中负责下一迭代的需求跟进、分析和原型设计,验收和验证上一迭代的交付。开发团队则根据原型图进行日常的敏捷开发[1]。
(4)面向可用的产品原型,项目的交付时刻可见。项目团队从迭代1开始就可以稳定的交付递增且可用的最小化产品原型。在与甲方的交流、汇报中可以直接利用项目的当前成果。由于产品经理设计过程的交流和敏捷开发特征性的可见性特征,项目的返工等情况大为减少,且没有出现大规模变更积压到项目后期的情况。
3.2改变团队的交流方式和氛围建立敏捷团队和制度后,整个团队包括项目经理、需求团队、开发团队采用了集中开发的方式[4]。在这个过程中,敏捷的应用也给团队带来了很大的不同:
(1)注重当面和及时的沟通和交流。所有人的任务通过白板和JIRA可见。敏捷的Refine-ment、Planning和Review会议可以使得相关人员能积极、尽早地参与到设计、开发工作的学习、评审过程中,避免延迟的沟通造成误解,最终导致时间浪费。而每日展会则可以尽快解决项目成员遇到的问题,方便ScrumMastei?协调资源,扫清项目障碍。最后回顾会议,则可以通过沟通,解决项目中存在的长期问题,持续改进[4]。
(2)敏捷式鼓励能够给团队成员带来更大的成就感、责任感和参与感。为了更好地激励团队,我们引入了一系列奖励机制。首先,每日会采用轮流主持的方式,让一些新人或平时不太擅长表现的开发人员得到了锻炼机会,使得他们更加积极地参与到敏捷建设中;其次,项目组会在回顾会议上选出一到两名在此迭代中表现最佳的团队成员(积极参与团队活动、分享或帮助他们或工作交付成果优秀,或者用于承担关键性人物),并给予鼓励性的物质奖励。另外Review会议上,团队集体审查迭代成果时,大家的意见交流也很重要。这也是一次重要的分享和沟通的环节,有助于团队的整体提高[1]。
(3)强调自我管理的结果是团队看得见的成长。在迭代过程中,可以明显地看到新人的成长,也可以明显看到项目开发进度、质量上的提高。所有的开发人员在Planning阶段即可参与到系统的设计过程,而非传统的“填鸭式”作业方式[5]。沟通和交流使得大家不会重复地犯同样的错误,不会出现工作内容冲突。对于经验较少的成员来说,减少了摸索和犯错误的机会,使得他们可以快速成长。
3.3风险管控敏捷开发与传统瀑布式开发不同,各有优势,敏捷强调的是灵活,强调小迭代与交付;传统瀑布式开发将软件生命周期分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了他们自上而下、相互衔接的固定次序,在项目总体时间把控中比较严谨。由于项目有固定的交付时间节点,所以我们在推行敏捷管理的过程中,也制定了后墙不倒的关键节点及交付内容,确保了过程的可控。
4效果分析
2018年1月1日,我们完成了系统的部分上线工作。在上线过程中,我们无缝实现了新老系统的切换,同时由于早期参与,用户很平滑地实现了系统过渡。并且整个过程中,没有出现大规模的需求变更。截止4月底,系统的核心功能全部交付上线,并得到用户的支持和好评。敏捷开发对于整个项目来说,带来了以下的回报:
(1)提高了资源利用率,更利于节奏的把控;避免项目出现等待和停滞。
(2)及早动手,分清主次,增量交付。及早沟通,减少误解,减少变更相当于直接减少了工作。
(3)项目团队成员积极性高,提升了效率;也提升了团队成员的技术、自我管理等能力,最终也会对项目的交付质量等产生积极影响。同时,也应当看到一部分因素也影响着此次实践的成败:
(1)作为公司重点项目,我们在资源占用特别是人员占用方面有极高的优先级。相应的需求设计人员、开发人员都能够保持重点投入状态,极大地降低了项目风险;
(2)需求团队在转换过程中做出了很多的工作,同时他们丰富的项目经验极大地帮助了团队;
(3)团队的ScrumMastei?有较好的把控能力,在引导团队方面做出了积极贡献。
5结语
在不断强化创新的时代,试图完全采用螺旋或瀑布式项目管理模式来满足客户需求的做法已经存在极大的风险。所有的项目都必须进一步强调沟通和面对变化。而对于承建方来说,项目团队必须更好地理解敏捷,这不仅有助于项目的交付,还是团队管理的一个重要的补充。软件开发企业必须重视敏捷管理的应用和实践。
参考文献:
[1]钟耕深.敏捷管理的思想及启示[J].中国石油企业,2011(12):111,
[2]杨帆,徐俊刚.一种改进的Scram敏捷软件开发方法[J].电子技术,2011,38(9):22.
[3]戚安邦.项目管理学[M].天津:南开大学出版社,2003.
[4](美)项目管理协会.项目管理知识体系指南[M].3版.北京:电子工出版社,2007.
[5]程瑞芳,田中辉,程宁远.信息网络时代企业档案创新服务[J].现代经济信息,2009(8):206.
电子类期刊推荐:《山西电子技术》以反映电子信息技术领域的研究成果、技术动态,促进学术交流,推动科技成果向社会生产力转化为宗旨,主要刊登电子信息领域具有创新性的研究、技术应用论文及技术研究进展的综述。主要读者对象是从事与电子信息技术研究、应用有关的广大科技工作者和高等院校师生。