《企业软件交付:敏捷与高效管理精要》——1.5 对企业软件交付的需求是如何演变的呢

简介: 本节书摘来自华章计算机《企业软件交付:敏捷与高效管理精要》一书中的第1章,第1.5节,作者:(美)布朗(Brown, A. W.)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.5 对企业软件交付的需求是如何演变的呢

对企业软件系统的交付来说,一个非常重要的转变是由几个相辅相成的因素推动的。
最终用户的期望。最终用户要求获得更及时的同步信息,要随处、随时、无需停机。这种访问方便程度和透明度的提升,大大改变了整个机构中报告、治理、管理和部署的做法。职能变得越来越多样化,特别对于非专业的软件用户来说。这些用户的需求可以是天差地别。随着软件在我们的生活中发挥着越来越重要的作用,正在开发的解决方案必须能让更广泛的群众在多种设备上更容易地使用,提供更准确、更可靠的信息,还要有更好的可用性。简而言之,企业组织必须努力让自己更贴近用户(从用户角度来说,就是能够为他们的想法提供更便利的服务和支持)。
创建解决方案的成本。不断扩张的业务和技术需求,对业务技能提出了越来越高的要求,以便各式各样的新的平台满足非功能性的需求。为了在满足这些需求方面保持竞争力,企业软件交付机构必须利用世界各地的劳动力价格优势,集成来自多个供应商的组件,并跨越产品线和解决方案的界限来重用解决方案。一个全球性的“软件供应链”的出现,让机构身处一系列业务和技术关系的中心。这些关系可能无法完全受其控制,但却在很大程度上决定了交付能否成功。在重新思考软件供应链和对成本控制的倚重之后,目前的开发实践中的低效率就暴露出来。它还要求目前进行的活动要有更好的可见性和透明度,而现有的团队协作方法则有点不堪重负。
审计和合规性。问责制的加强,迫使关于软件如何开发才能确保它满足业务需求这一过程必须更为透明。越来越多的规则和监管也提出了额外的要求,要求采用文档完备的最佳实践,并具有帮助审计的强制控制点。在许多领域,交付一个功能正确的企业级解决方案是不够的,现在还必须证明它确实能够正确工作,并证明其创建、开发和管理中都采用了合适的做法。
速度的变化。业务的迅速变化,要求把更多的软件频繁地交付给更多的利益相关方,这导致许多企业不得不采用加速交付方式,以便快速生产“还不错”的解决方案,免得错过关键业务期限。这种要迅速满足需求的压力所引起的一个根本性的转变,就是要通过更为渐进的分期方法让交付更为灵活。这通常会让每次交付较小,但更为频繁。对于许多企业软件交付机构来说,这种方法与他们的公司治理结构格格不入,导致他们可能会受到死板的企业软件和管束过严的开发方法的拖累。
适应性强的业务平台。增加对架构的控制,以及对于解决方案部署到什么地方的深入理解,有助于确保对于当前业务需求的支持,并能够根据这些需求更为灵活地调整部署。企业变得越来越全球化,更频繁地与合作伙伴结成联盟,在各种市场上提供更多的产品,并不断地重新审视自己的核心业务能力。今天的分布式解决方案平台,必须能够围绕当前的业务需求进行优化,并支持在这些需求变化时进行重新配置。一大批分布式基础设施技术涌现出来,让核心应用能力能够随着业务需求的变化,更灵活地进行部署、优化和重新部署。企业软件交付机构必须投入大量的资源,并引进、吸收和优化这些由业务驱动的平台。
由于这些因素,企业软件交付机构比以前更加谨慎地考虑,如何让正在管理的系统组合、正在运营的技术基础和现有团队的技能进行演变。至于目标,通俗地说,就是要“少花钱多办事”。其战略规划的主要重点就是要在两座大山下取得平衡:一方面,如何与业务相关方共事,如何采纳新技术,如何满足客户需求,这些要追求更高的敏捷性和灵活性。另一方面,还要寻求标准化、重用和节约,以最大限度地提高业务的效率和价值。既要控制成本,又要在短时间内交付软件,这种压力会继续要求开发和测试团队能够创造性地进行管理。
如何应对这样的矛盾,对于企业软件交付机构来说是最有趣和最紧迫的挑战之一,并将在很大程度上决定一个企业能否成功。本书探讨了这个问题的全球化本质、正在采取的做法,以及采取哪些措施可以更有效地将精力集中在对业务价值最大的领域上。

相关文章
一文带你了解服务器!
一文带你了解服务器!
881 1
OpenFeign
OpenFeign
129 2
C/C++静态库和动态库的制作、使用、优缺点
C/C++静态库和动态库的制作、使用、优缺点
317 0
极智AI | 一文看懂winograd卷积加速算法
本文详细解释了 winograd 算法加速卷积的实现原理。
1065 1
干货!MFTCoder论文多任务微调技术详解
代码大模型(Code LLMs)已经成为一个专门的研究领域,通过使用代码相关数据对预训练模型进行微调来提升模型的编码能力。以往的微调方法通常针对特定的下游任务或场景进行定制,意味着每个任务需要单独进行微调,需要大量的训练资源,并且由于多个模型并存而难于维护和部署。此外,这些方法未能利用不同代码任务之间的内在联系。
587 0
SpringBoot线程池ThreadPoolExecutor极简教程
ThreadPoolExecutor 是 java.util.concurrent 包下的一个类,在jdk1.5版本引入,帮助开发人员管理线程并方便地执行并行任务。 通俗来说,ThreadPoolExecutor 的作用是生产和管理线程池的,可以通过调用其 execute 方法和 submit 方法执行多线程任务。
1583 0
SpringBoot线程池ThreadPoolExecutor极简教程