设备软件开发人员如何更快地从原型转到产品?
在本文中,我将重点介绍设备软件开发的一些挑战,因为团队需要应对不断缩短的开发周期、稀缺的资源以及对质量和性能优化的高要求。
随着传感、计算、内存和通信技术的飞速发展,嵌入式设备的开发变得越来越复杂。在这里,我将重点介绍设备软件开发的一些挑战,因为团队需要应对不断缩短的开发周期、稀缺的资源以及对质量和性能优化的高要求。
如果您感到有些不知所措,请放心,Intel 的边缘到云生态系统及其强大的支持可以为您提供解决方案。稍后会详细介绍。
复杂性是一把双刃剑
仿佛就在昨天,我还花几个小时在 Intel 8051 主板上编写汇编代码,让一个简陋的设备闪烁指示灯。当我开始使用编译器时,似乎所有的乐趣都消失了。但我仍然可以输入很长的命令行语句。然后出现了集成开发环境(IDE),我必须习惯于通过几次简单的点击完成编辑-编译-调试,以及极具视觉化的工作流程。回想起来,我似乎很享受一点一滴地构建我的设备,并且始终完全掌控每一行代码。快进到不到 10 年的时间,我不得不放弃理解和手动优化代码每个方面的冲动。
如今,取而代之的是——天哪,我该如何理解和优化数百万行代码,这些代码运行在多核上,使用多线程,跨越一个互联的设备网格。事实上,超过 95% 的代码是由数百个未知实体编写的,这坦白说让我感到恐惧。值得庆幸的是,我的设备提供的价值远远超过了闪烁 LED。
我敢肯定,您作为软件开发者的经历一定也差不多。就像死亡和税收一样,软件开发的基本原理和您的薪酬(经通货膨胀调整后)几乎没有变化。在商业领域,更智能、软件复杂度更高的设备不一定会带来更高的市场价格。因此,软件开发面临着巨大的压力,需要在时间、预算和质量的限制内交付价值。
压迫开发者的三重压力
任何开发工作要取得成功,都需要三个要素齐头并进:时间表;优化;和资源。这适用于任何现代工业产品。然而,软件开发与大多数制造行业有着独特的不同。它将艺术和科学完美地结合起来,最终产出成果。与生产汽车零部件的典型制造生产线不同,每一个开发的软件程序都是独一无二的,在很多方面都反映了作为开发者的您。虽然这非常有意义,但总有机会优化您的软件——而且几乎总有多个机会找到错误。当处理一个非常大的代码库和多功能硬件时,在时间限制、有限的资源内交付高质量的软件,并且软件针对质量和性能进行了优化,就成了一个挑战。
大多数商业公司必须不断追赶技术和市场创新,维持价格点并应对激烈的竞争。因此,大多数开发团队在不断缩短的开发周期、有限的资源和严格的优化要求下承受着持续的压力。尽管如此,开发者仍然被期望编写无错误、高性能的代码。如果开发团队甚至在其中一个压力下都举步维艰,就会影响整体产出,并将产品置于风险之中。
缓解开发压力
如果这与您的情况和项目产生共鸣,您可以通过为您的项目选择一套合适的工具来缓解这些压力。工具是您的虚拟团队成员,它们可以完成您不想做的工作。为了选择最合适的工具,我推荐一个三管齐下的策略:
- 优先采用,而不是组装,甚至自己构建
- 确保您涵盖了开发的每个阶段
- 工具的选择应该是面向未来的
每个开发团队都必须为他们的项目在“构建还是采用”的决定上苦苦挣扎。然而,对于开发工具而言,花费宝贵的时间、资源和精力去构建自己的工具通常不是一个好主意。构建自己的工具只是一半的努力。随着技术的不断变化,长期维护它们会非常昂贵。一个简单的经验法则是:“如果您的努力没有为您的最终产品增加任何可以货币化的独特价值,那就让别人为您去做。”
在做出工具决策时,请回顾开发的每个部分和阶段。确保您拥有能够满足每个开发阶段的开发者需求的工具。生产一个复杂的软件项目需要团队的共同努力,您希望优化每个阶段,避免过程中出现薄弱环节。
我最重视的一个策略是审查您的开发工具是否面向未来。技术的进步和市场需求永无止境。例如,新的处理器会带来新功能,您希望尽快在编译器、调试器和库中利用它们。
今天的创新和未来的创新
虽然我怀念通过编写寄存器来闪烁 LED 所获得的快乐,但我认为现在是软件开发者的黄金时期。软件开发,特别是嵌入式设备的软件开发,非常复杂,但像 Intel® System Studio 这样的工具是专门设计和不断更新的,以帮助应对这种复杂性。
立即开始使用 免费下载 的 Intel System Studio 2018。您将获得一个可续订的 90 天商业许可,并附带社区支持,并且永远免费。该工具套件可应用于和优化的解决方案包括数字安全和监控、5G、网络、工业、数据存储、医疗保健、零售、智能家居/城市/建筑、汽车和办公自动化。
在未来的博客文章中,我将深入探讨使用 Intel System Studio 2018 开发的设备和物联网解决方案的详细信息。您将了解到设备制造商如何缩短开发和验证周期,系统集成商如何更快地优化软件堆栈,以及物联网应用程序开发人员如何通过访问云连接器和传感器来高效地提供具有边缘到云解决方案的新功能。