你好,欢迎您来到福建信息主管(CIO)网! 设为首页|加入收藏|会员中心
您现在的位置:>> 新闻资讯 >>
CIO应对敏捷软件项目管理挑战的5项建议
作者:CIO.com 福建CIO网 来源:CIO.com 福建CIO网 发布时间:2023年02月13日 点击数:

随着对数字化服务需求的加速增长,敏捷软件项目必须高效且以价值为导向。采用敏捷(且正确的方式)只是一个开始。


图片来源:Thinkstock


随着企业引入越来越多的数字化服务并添加自动化功能以增强服务用户的业务流程,对高效软件开发的需求变得越来越重要。管理软件项目可能还不是首席信息官的首要任务,但这是IT领导者必须掌握的事情。


在管理软件项目时会涉及许多挑战,学习如何解决这些障碍的 IT 主管可以帮助他们的组织构建出更好的应用程序,从而推动业务增长并增强客户体验。


以下是 IT 领导者和团队在软件项目中可能面临的一些挑战,以及他们是如何解决这些问题的。


一、按时、按预算交付软件项目


及时完成软件项目并保持在预算内是软件开发的长期挑战。任何事情都可能导致延误并推高成本。

一种可能的解决方案是采用软件开发的敏捷开发方法(注:敏捷开发方法是一个概念性的框架,以用户需求进化为核心、迭代、循序渐进的开发方法,目的是提高软件质量以及对客户、业务、市场需求变化的敏捷性)敏捷开发方法需要跨职能部门团队和最终用户之间的协作,并促进适应性规划、渐进式开发、持续改进、响应需求变化的灵活性和产品的早期交付。


“敏捷软件开发项目迭代计划,执行,检查,调整的循环——最终用户或代表支持的‘项目’是所有这些阶段的关键,”全球技术研究和咨询公司ISG的合伙人奥拉·乔宁(Ola Chowning)说。


乔宁(Chowning)说,收集所有需求,设计整个软件功能以满足所有需求,构建所有必需的功能以及审查和获得最终用户支持的瀑布式开发(注:瀑布式开发的基本流程是需求→设计→开发→测试,是一个更倾向于严格控制的管理模式。要求有明确的需求,大家按照需求一步步做好规划,每一阶段工作的完成是下一阶段工作开始的前提,每一阶段都要进行严格的评审,保证各阶段的工作做得足够好时才允许进入下一阶段。这种模式一般适用于需求比较明确、to B端的项目。)今天已经很少使用。“顺便说一下,这种旧方法是最繁重的按时、按预算挑战,因为当软件团队不得不估算大量工作并预设最终用户能够接受或返工的程度时,一场猜谜游戏就开始了。”她说。


敏捷开发方法使软件团队和最终用户能够“共同学习如何更好地计划、更好地工作和更快地调整,并且随着团队的工作方式变得默契,结果变得更加可预测,”乔宁(Chowning)说。“根据用户和开发人员的期望,按时和按预算进行判断要容易得多。”


二、创建和维护敏捷文化


虽然在许多企业中采用敏捷开发方法对于软件开发是有意义的,但它也可能会带来障碍。许多IT领导者认为他们的企业已经建立了敏捷实践,但他们不明白他们的团队正在做的事情实际上并不敏捷。


“敏捷软件开发实践和'传统'项目管理的交集对许多企业来说仍然是一个挑战,”乔宁(Chowning)说。“到现在为止,你可能会认为我们已经破解这个难题,但它似乎仍然阻碍着我们的许多客户。


乔宁(Chowning)说,虽然软件开发是以严格的敏捷软件开发工作方式进行的——重复的冲刺、应用场景假设和以迭代方式构建最终软件产品的多个版本——但许多组织在试图以瀑布式方式管理项目时仍在苦苦挣扎。


这通常始于软件项目的预算方案与融资方式,我们通常会被要求估算在传统的瀑布式分阶段的需求、设计、构建、测试和部署框架中报告的总支出”乔宁(Chowning)说。


乔宁(Chowning)说,更成熟的企业正在转向项目管理方法,以一种更为稳定的方法来确定总成本与总价值之间的关系。“那些使用这种敏捷项目管理方法的人能够获得敏捷软件开发的那些真正的关键好处,但这可能需要对投资决策甚至项目支出方面的财务(成本)管理方式进行一些调整。


IT部门面临的巨大挑战是在企业层面推动敏捷模型,技术咨询和服务公司埃森哲(Accenture)的董事总经理克里斯蒂安·凯利(Christian Kelly)说。“团队层面的敏捷现在很普遍,但最近的数据表明,它在企业层面并不顺利,因为大多数组织都在努力将战略与团队正在做的工作联系起来”他说。


凯利(Kelly)说,这限制了组织确定项目组合优先级、容量计划、管理相互关系以及将目标与结果联系起来的能力,“为了实现敏捷的承诺,组织需要实施敏捷文化、系统和一流的工具,从而更好地将战略与结果联系起来,”他说。


三、使项目与组织战略目标保持一致


“IT项目不能在泡沫中完成,”分析平台供应商Amplitude的首席数字和信息官切特娜·马哈詹(Chetna Mahajan)说。“如果你的计划与业务优先事项不一致,那么你从一开始就没有做好成功的准备,你将始终逆水行舟。


为了确保业务一致性和认可度,所有软件项目都应该有一个执行发起人,马哈詹(Mahajan)说。当她的前公司实施配置、价格、报价 (CPQ) 软件时,执行发起人包括马哈詹(Mahajan)和首席营收官(chief revenue office,CRO)。


“我们的业务和技术决策以及可交付成果提供了一个汇报渠道,”马哈詹(Mahajan)说。“它不再被视为一项技术(软件项目)倡议,它在整个公司获得了所需的知名度和关注度。我们不仅在预算范围内按时完成,还能将自动化提高 30%,并将销售周期缩短好几周。”


马哈詹(Mahajan)说,大多数技术项目之所以失败,是因为它们缺乏具体的关键绩效指标(KPI)。“我主要将项目指标分为两个类别,一类是监控项目执行情况,另一类是衡量业务结果,”她说,“无法衡量的东西,则无法改善。虽然在预算、范围和时间表上保持一致很重要,但我们必须密切关注业务 KPI。


一个项目的KPI应该是具体的,并与公司的目标挂钩。马哈詹(Mahajan)说:“这不仅有助于创建一种问责制的文化,而且还允许企业验证其商业价值,为未来的投资决策提供信息。”


四、争取利益相关者和赞助商的支持


乔宁(Chowning)说,在以敏捷的方式管理软件项目的能力中,文化差异往往是一个关键的挑战,因为项目的赞助商和关键利益相关者倾向舒适地且自愿地以最适合敏捷的方式工作。


“许多人可能仍然希望尝试以更传统的方式工作——构建所有需求,设计整个最终状态,然后才构建和部署整个最终状态,”乔宁(Chowning)说,“因为软件开发实践和项目管理实践试图以两种完全不同且不相连的方法进行,这可能会带来困难。”


用敏捷的项目管理方法引导赞助商和关键利益相关者的需求,并帮助他们调整行为,是以最有效和高效的方式进行管理期望和使软件开发的关键,乔宁(Chowning)认为。


乔宁(Chowning)说,无论使用何种方法,在软件开发的整个迭代过程中,都必须提前让用户参与,并在软件开发的迭代中不断让用户参与,这一点至关重要。


乔宁(Chowning)说:“在项目结束之前,只需与用户进行沟通,然后由神秘用户接受测试,之后再也不用与他们接触的日子已经一去不复返了。“用户或用户代表应该参与软件开发和设计的各个方面。小功能开发、原型、测试和展示都是确保用户参与并不断获得反馈的有效手段。”


五、需要新的人才职业发展规划和提升管理技能


金融科技公司Broadridge financial Solutions的首席技术官、金融服务提供商西联公司(Western Union)的前首席信息官阿米特·夏尔马(Amit Sharma)表示:“我们面临的最大挑战之一是,如何确保我们不断提供强大的开发人员体验,并随着技术的发展管理员工持续的技能提升”。


夏尔马(Sharma)说:“这意味着创建‘自动化’解决方案,提供安全、稳定的开发和测试环境,并为开发人员配备一套工具,帮助他们获得简单、可管理的体验,减轻繁重的管理开销和负担。”


随着软件开发的快速变化,公司需要培训软件工程师和其他人,以适应新技术、语言和开发流程。夏尔马(Sharma)说,IT部门和产品部门的领导者需要承认,出于开发新技能的需求,项目可能会被中断。他们还需要重视参与软件开发的人员。


夏尔马(Sharma)说:“重要的是,我们要认识到,我们的技术团队多年来持续构建解决方案,因此不仅成为系统的主题专家,而且成为产品的主题专家。将他们带入我们的下一代产品是至关重要的,无论其基于什么技术之上。”


除了需要培养新的开发人员技能外,许多IT领导者还需要磨练自己的技能。


埃森哲的凯利(Kelly)说:“许多IT领导者在理解用户需求、创建满足业务需求的软件路线图、根据这些路线图进行权衡、从基于流程的思维转向客户价值和客户旅程思维的能力方面存在巨大的人才缺口。这就是为什么像价值流映射【注:价值流映射(有时称为 VSM)是一种精益制造技术,用于分析、设计和管理将产品带给客户所需的材料和信息流。它也被称为“材料和信息流映射”,使用标准符号系统来描绘各种工作流和信息流。从客户的角度来看,项目被映射为增值或不增值,目的是根除不增值的项目】、客户至上/价值主张和设计思维等概念变得如此重要。



本文作者:鲍勃·维奥利诺(Bob Violino)


特约撰稿人,首席信息官