云正在彻底改变行业如何开发软件

共同开发使顾客在桌子上坐下,并获得结果的股份。

保罗·吉林(Pau​​l Gillin)

保罗·吉林(Pau​​l Gillin)2020年3月30日

客户共同创建是一种用于开发各种产品和服务的久经考验的技术。它已经成功采用由联合利华,DHL,Lego和Anheuser-Busch等公司进行。但是,在软件方面,过去30年中的变化很小。软件公司确实从客户那里征集了投入,但是关于包括哪些功能以及如何揭露它们的决定通常是由开发人员酌情决定的。

随着云,复杂的协作工具,众包和新的开发技术的结合,可能会改变这一切,以使最终用户成为该过程的中心。

“我们目睹了一种范式转变,将对软件平台和生态系统产生深远的影响,并将引起新的软件共同开发形式,”希腊塞萨洛尼基大学的研究人员在一家希腊塞萨洛尼基大学的研究人员中写道。2012会议论文

这种转变是向软件开发人员和客户共同努力创建和发展应用程序的转变。

当前的发展挑战

大多数企业专业人士都熟悉向开发人员提交软件应用程序规范的经验,只是让结果回来看起来什么都没有他们的期望。这不一定是开发人员的错。

“客户无法完全阐明其确切需求,工程师通常只有对软件应如何工作的部分理解开发解决方案”。毛鲁斯·里德维格(Maurus Reidwig)写道,在LinkedIn帖子中,咨询公司AG的首席执行官。“人类无法完全表达他们对从未经历过的产品的确切需求。”

一个2019 Standish Group调查在近8,400个软件项目中,有将近84%的部分失败了。这家研究公司报道说,成功项目的主要因素是用户参与。为了帮助改善结果,共同开发在软件生命周期的每个阶段都涉及客户,并使用连续反馈循环来确保所得的产品精确地满足他们的期望。

完美的风暴?

趋势的融合是使共同开发更加实用,尤其是对于云本地应用。一种是平台即服务(PAAS)的兴起,这是用于开发云本地应用程序的一组工具。根据在线技术百科全书的说法,PAAS可以使开发团队能够合作和合作,无论他们的身体位置如何whatis.com

第二个趋势是敏捷发展。特别是,越来越流行的DevOps学科强调了频繁的代码发布,持续的评论和不断的协作。敏捷联盟的核心原则之一敏捷软件开发宣言是“关于合同谈判的客户协作”。

最后,开源软件的受欢迎程度已经验证了众包的有效性,在这些人中,不同时甚至不知道的人可以创建优于他们中任何一个人可以单独构建的软件。

新型的云本地软件还旨在从头开始合作。例如,云本地软件不是在核心代码库中进行硬编码的增强和扩展,而是使用应用程序编程接口(API)以安全且可跟踪的方式公开功能。涵盖基于Internet的API的新闻和信息网站ProgramMableWeb已记录了一个公共API的爆炸,从十年前不到2,000到截至2019年中期的22,000多个。

云的价值

“云使增值变得更容易,因为多个客户可以从共同的功能中受益,”Topcoder,一家软件众包公司。“云还通过共享文档和视频聊天等协作工具以及快速共享原型的能力来缓解通信。”

敏捷开发和开放协作的结合可以产生速度的质量回报,同时也提高了软件质量。Topcoder客户Booz Allen Hamilton使用了“快速用户体验”设计挑战构建视觉仪表板美国海军用来协调无人机。据报道,该项目在短短三天内就产生了23个独特的设计概念。

梅辛格说:“通过参与整个软件共同开发过程,客户有更多的发言权以确保其目标牢记。”“我们不仅看到上市时间更快,而且由于里程碑与成果有关,而且价值更快。”

医疗保健应用程序开发人员患者保管员使用共同开发作为标准技术来构建和优化电子健康记录。由于客户是产品的最终用户,因此他们可以指定专业开发人员可能会忽略的用户界面的详细信息。在公司博客上

他指出:“患者管理员的用户不需要对我们的产品进行正式培训,就像您在Apple App Store下载的消费者应用程序上未接受正式培训一样。”

Topcoder的Messinger同意。他说:“客户对查看实际界面而不是粗略的图纸或图表做出积极反应。”

云平台和API的结合还通过流行的App Store隐喻扩大了潜在开发合作伙伴的生态系统。Salesforce.com之类的平台力量Google的Google应用程序为第三方开发人员提供了丰富的工具,以增强和扩展核心功能并启用共同开发。

谢菲尔德大学的研究人员写道:“允许在平台提供商和个人生态系统合作伙伴之间建立共同开发关系,而且最重要的是在生态系统合作伙伴本身之间”。

棘手的业务

但是,共同开发并不容易,尤其是当客户是一家拥有多层批准的大型企业时。When boutique web developer Sparkbox collaborated with the Knoxville Utilities Board on an overhaul of the 5,000-employee company’s 10-year-old website, it had to contend with “multiple systems being built in parallel, underlying infrastructure changes, plentiful feedback from stakeholders and diverse platforms being integrated,”瑞安·克伦威尔(Ryan Cromwell)写道,Sparkbox的技术总监。

他写道:“保持积极和乐观,公开庆祝良好的工作,并提出问题使挑战决策和推荐替代方案变得更加容易。”

DivateKeepher的Brient相信,至少有两个客户参与任何合作,以对冲,以免与单个客户的业务方式保持过于紧密地使软件保持一致。布里恩特写道:“两个人不太可能拥有相同的独特过程。”

他还建议选择自然合作并尊重客户反馈的团队成员,并指出“您的共同开发伙伴正在提供关键的观点和反馈,即使不一定是您可能想听到的。”

共同开发挑战了软件行业的许多传统惯例,但云计算是一种潜在的游戏规则改变者。如果有84%的项目失败或撤销措施,则有很大的改进空间。

保罗·吉林(Pau​​l Gillin)是Computerworld的前总编辑,也是TechTarget的创始编辑。他是有关社交媒体和在线社区的五本书的作者。在Twitter上找到他@pgillin

©2020 Nutanix,Inc。保留所有权利。有关其他法律信息,请到这里

Baidu