当前的疫情带来了前所未有的挑战。它突显了一个高度全球化的世界,这个世界拥有能力,并以资源和手段的高度相互依赖为特征,但同时也非常脆弱,并且具有高度的传染潜力——不仅在物理意义上,而且在信息、思想、流程和其他方面也是如此。
鉴于情况的新颖性,人们可能会倾向于认为这是一个独特的局面,很快就会被克服,最终回到先前存在的(表面上的)稳定状态。然而,现实表明,这种观点充其量只是一种幻想,我们生活在一个社会脆弱性和不稳定性将日益明显的时代(乐观地看,人们对它们的意识也将变得更加敏锐)。换句话说,危机一直是人类进化的一部分,它们必须被视为不可避免和反复出现的现实,需要快速有效的应对。关键是要为它们做好准备并采取相应的行动。
正如历史多次证明的那样,困难时期增强了社会适应能力,并促使人们寻求更好的解决方案。近几十年来,信息技术彻底改变了人们和企业的生活——有时或多或少悄无声息,有时则惊天动地——它们是不可避免的,因为它们为日益互联互通的世界中日益复杂的问题提供了具有成本效益的解决方案。从一个简单的例子就很容易理解这一点:如果在这次疫情中,支持互联网的技术基础设施发生了全球性瘫痪,那么世界确实会比我们现在所经历的更加复杂和混乱——而现在对每个人来说已经相当艰难了。
正是在这种背景下,本文描述的软件开发项目值得报道,因为它涉及几个在需要“今天思考”的解决方案“昨天就可用”的世界中至关重要的颠覆性方面。从市场机会意识的产生到功能齐全的软件产品的可用,这个项目仅用了三周时间完成,并采用了几种最先进的实践和工具:快速决策;敏捷项目管理;以及极限低代码软件开发技术。
2020年3月12日,世界卫生组织正式宣布冠状病毒爆发为全球大流行。同一天,一家中型软件公司 Quidgest 的首席执行官将这次疫情视为公司的机遇,并撰写了一份创建基于 Web 的软件产品的计划,以及初步的需求列表(与监测、控制、创新管理和疾病根除相关)。然后,该计划被发送给销售和营销团队(国内和国际),以及研发团队以征求反馈。请注意,销售和营销团队已经与政府部门、医院、养老院等建立了多个联系,这为该项目的市场潜力提供了广泛的见解。
所有团队的反应都迅速而积极,因此公司决定在 3 月 13 日(一天后)开始推进该项目。
该产品名为 VIRVI — 健康警戒和控制软件 — 被定位为“用于应对全球流行病挑战的超敏捷应急软件”。正如 Quidgest 所描述的那样,VIRVI 是“一个信息系统,旨在支持在紧急时间内(即在数小时内开始运行)监测和控制任何国家或地区的病毒流行病,例如 Covid-19。VIRVI 稳健、可靠且能够持续发展,为应对病毒流行病提供良好的关键管理和沟通基础。”
如图 1 中的时间线所示,VIRVI 发展迅速。3 月 12 日,项目启动时的估计规模为 207 个功能点,功能点衡量的是信息系统(作为产品)向用户提供的业务功能的数量;复杂性级别为 941(根据公司内部的衡量标准,该标准考虑了数据表、数据字段、外键、数组、公式、表单、表单字段、菜单、多语言和其他方面,以及维护和文档要求)。在三周后的产品发布时,总共实现的功能点为 1,365 个,复杂性级别为 4,387。
这表明需求的高度波动性,在项目执行期间根据疫情的演变和预测的市场机会定期更新。在研究了国内和国际最佳实践和趋势之后,Quidgest 决定将其解决方案重点放在护理和养老院(抗击疫情的优先事项)、国家卫生部门、医院和卫生实验室。
VIRVI 的第一个功能齐全的原型于 3 月 22 日发布,在接下来的一周里,它在四个国家进行了展示,进行了三次正式演示并产生了两个潜在客户。这获得了合作伙伴的反馈,并促使人们确定了额外的所需功能。此外,它证实了有可能快速响应每个客户的特定需求并适应新的要求。
该软件的一些最终功能如下:集中信息库中的注册和数据收集;参与应对疫情的实体之间的协调,具有不同的访问级别;实时监测和决策;开放数据供外部分析;数据可视化,实时提供指标、统计数据和地图;支持官方紧急通道;公民/实体与卫生专业人员之间的直接沟通;以及实体和供应商的集中市场。
VIRVI 于 4 月 3 日准备发布,距离项目启动三周。最终产品具有 117 个数据表、506 个数据字段、156 个外键、31 个数组、115 个公式、106 个表单、867 个表单字段和 274 个菜单。
Quidgest 是如何在短短三周内获得功能齐全的产品的?该产品是在需求每天都在变化且复杂性如上所述的高度不稳定的环境中开发的。本节提供了一些见解。
在项目启动和前两周,团队由两名全职系统分析师/开发人员组成;一名兼职(25%)UX(用户体验)设计师;一名全职项目经理;一名兼职(50%)开发技术专家;营销团队的五名兼职(25%)人员;以及销售团队的四名兼职(25%)人员。在前两周之后,团队变更为两名兼职(50%)系统分析师/开发人员;一名兼职(50%)项目经理;一名兼职(25%)开发技术专家;一名兼职(50%)公共卫生顾问;营销团队的四名兼职(5%)人员;以及销售团队的四名兼职(20%)人员。总的来说,这相当于开发团队约 3.25 FTE(全职当量),以及营销和销售团队在三周开发时间线内约 1.84 FTE。考虑到最终产品总共有 1,365 个功能点,分析师/开发人员/技术专家的平均每周生产力接近 220 个功能点。
由于没有常规的需求制定,该项目仅基于对产品重要功能的“感知”而开始(主要基于首席执行官和公司在该领域的经验,以及对文献和新闻的回顾)。该团队还拥有在卫生部门接受过培训和具有专业知识的成员,并与医疗保健领域的专家进行了多次联系。后来,Quidgest 的健康协调员加入了团队,推动了自愿咨询计划的建立。所有这些声音的结果是软件需求的每日演变。最终,实际需求来自公司经验、与专家的联系、媒体新闻、科学研究和关于疫情的官方报告的结合。
鉴于项目的特点,公司标准的项目管理方法在这种情况下是不可行的,因为市场机会窗口非常狭窄,并且最终分析必须考虑不同利益相关者的需求。因此,由于需要几乎每天都接受新需求,因此有必要将敏捷项目管理方法推向极致。
Microsoft Teams 中的 Planner 被用于支持该流程,重点关注团队、任务和优先级(根据里程碑确定)。创建了一个看板,整个团队都可以编辑,共有六个状态:(1)正在分析的任务,(2)待定,(3)进行中,(4)已执行,(5)用于测试,以及(6)已完成。定期举行团队会议,以审查关于优先级、过时性和需求澄清的任务。该项目的另一个显著方面是,它是完全远程进行的(自 3 月 16 日起,公司开始远程办公,原因是疫情封锁限制)。
该项目成功的另一个关键要素是软件开发采用的低代码技术。考虑到需求的高度波动性以及快速提供功能齐全的解决方案的需求,挑战是如何在不损害软件质量、文档或进一步所需维护的情况下实现这一目标。
在这种背景下,低代码或极限低代码技术的强大功能和实用性变得更加明显。这些技术目前包括 IBM Automation 平台、Zoho Creator、Appian、Mendix、OutSystems、AgilePoint、Google App Maker、Nintex、TrackVia、Quickbase、ServiceNow、Salesforce App Cloud、Microsoft Power Apps、Oracle Visual Builder 和 Oracle APEX (Application Express),仅举几例。这些技术的显著特点是它们能够以最少的手工编码创建软件应用程序。对于该项目,Quidgest 使用了其专有的 Genio 平台。Genio 是一种极限低代码(介于低代码和无代码之间)开发技术。开发是面向模式的,Genio 具有基于建模(模型驱动工程)的代码生成功能。
所选择的技术允许每天发布软件的演进版本。通过这种方式,可以简化开发过程。即使需求不断演变,第二天也可能已经有一个功能齐全的解决方案来支持它们。低代码技术的优势对于解决方案的维护也至关重要。在这种情况下的好处可能更加明显,因为它使得在不损害软件工件(包括文档)质量的情况下支持需求的持续演变成为可能。
总的来说,尽管需求和应用场景的不稳定以及解决方案的紧迫性造成了高风险,但该项目设定的目标还是实现了。在短时间内,Quidgest 的项目不仅产生了多个销售线索,而且还有助于组织学习和公司知名度的提升。
在这个项目中,挑战是“比冠状病毒传播更快地部署软件”。在一个具有如此特殊特征的项目中,有几个因素会影响成功,但有些因素显然脱颖而出:高层管理的支持、敏捷性(在决策和管理方面)、项目团队的理解和承诺以及所使用的技术。传统的开发方法和技术根本无法及时满足需求。
此处描述的项目反映了当前公司在决策和行动能力方面面临的需求。它结合了市场远见和快速决策能力与行动。该公司识别了一个机会,定义了一个项目,并决定推进,通过采用不同的项目管理方法(精简的敏捷方法)并采取积极主动的营销姿态来构建和组织团队。然而,如果没有支持软件快速开发和部署的技术,该项目不可能在如此短的时间内完成——在需求高度不稳定和快速演变的背景下。
IBM 十多年前发布的一项研究《未来企业——对 CIO 的启示》(2009 年)指出,“未来企业渴望变革,创新超越客户想象,全球整合,本质上具有颠覆性,真诚,而不仅仅是慷慨。” 这些比以往任何时候都更成为当今组织的基本特征,可以明确地补充一句,“由稳定和颠覆性的信息技术支持”。低代码、极限低代码和无代码软件开发,在人工智能等创新技术的支持下,肯定会影响这一情景,并有望加速在全球范围内普及,成为数字化转型的主要推动者。
João Varajão 是葡萄牙米尼奥大学信息系统系的信息系统和项目管理教授。他还是 ALGORITMI 研究中心的研究员。他的主要研究兴趣是信息系统项目管理和信息系统开发(特别关注项目管理和项目的成功)。在加入学术界之前,他曾在私营公司和公共机构担任 IT/IS 顾问、项目经理、信息系统分析师和软件开发人员。他曾在国际研讨会和会议的众多委员会任职。他发表了大量文章,并担任国际期刊的主编、副主编和编委会成员。
版权所有 © 2021 归所有者/作者所有。出版权已许可给 。
最初发表于 Queue 第 19 卷,第 1 期—
在 数字图书馆 中评论本文
Catherine Hayes, David Malone - 质疑评估非加密哈希函数的标准
尽管加密和非加密哈希函数无处不在,但在它们的设计方式上似乎存在差距。存在许多由各种安全要求驱动的加密哈希标准,但在非加密方面,存在一定程度的民间传说,尽管哈希函数历史悠久,但尚未得到充分探索。虽然针对真实世界数据集的均匀分布非常有意义,但在面对具有特定模式的数据集时,这可能是一个挑战。
Nicole Forsgren, Eirini Kalliamvakou, Abi Noda, Michaela Greiler, Brian Houck, Margaret-Anne Storey - DevEx 的实践
随着领导者寻求在财政紧缩和人工智能等变革性技术的背景下优化软件交付,DevEx(开发者体验)在许多软件组织中越来越受到关注。技术领导者直觉上接受良好的开发者体验能够实现更有效的软件交付和开发者幸福感。然而,在许多组织中,旨在改进 DevEx 的拟议举措和投资难以获得支持,因为业务利益相关者质疑改进的价值主张。
João Varajão, António Trigo, Miguel Almeida - 低代码开发生产力
本文旨在通过展示使用基于代码、低代码和极限低代码技术进行的实验室实验结果来研究生产力差异,从而为该主题提供新的见解。低代码技术已明确显示出更高的生产力水平,为低代码在短期/中期内主导软件开发主流提供了强有力的论据。本文报告了程序和协议、结果、局限性和未来研究的机会。
Ivar Jacobson, Alistair Cockburn - 用例至关重要
虽然软件行业是一个快节奏且令人兴奋的世界,其中不断开发新的工具、技术和技巧来服务于商业和社会,但它也很健忘。在其快速前进的匆忙中,它容易受到时尚的 whims 的影响,并且可能会忘记或忽略针对其面临的一些永恒问题的行之有效的解决方案。用例于 1986 年首次引入,并在后来普及,就是那些行之有效的解决方案之一。