到目前為止,嵌入式開發(fā)人員的日常工作相當(dāng)明確:他們開發(fā)并交付嵌入式軟件。軟件永遠保持靜態(tài),因為它是孤立的。而這正是正在發(fā)生的變化:因為嵌入式開發(fā)人員開始在其嵌入式開發(fā)中實施DevOps實踐。
這得益于云原生計算的并行出現(xiàn)以及物聯(lián)網(wǎng)設(shè)備的爆炸式增長和edge數(shù)十億的嵌入式設(shè)備全天候連接到互聯(lián)網(wǎng)的世界需要一種新的方式來開發(fā),測試,部署和維護這些設(shè)備。與此同時,云原生計算引入了持續(xù)交付(CD)和持續(xù)集成(CI),以實現(xiàn)自動化和可重復(fù)的軟件構(gòu)建。所有這些都引發(fā)了嵌入式世界的革命。
成本和安全需要新的思維
傳統(tǒng)上,開發(fā)嵌入式軟件是一項非常復(fù)雜的任務(wù)。通常,開發(fā)人員需要構(gòu)建整個平臺來開發(fā)新軟件,包括內(nèi)核,發(fā)行版等。每當(dāng)有任何變化時,整個軟件都必須重新創(chuàng)建。一切都必須被檢查和清除。一個團隊負責(zé)版本控制基礎(chǔ)設(shè)施,另一個團隊負責(zé)持續(xù)集成,另一個團隊負責(zé)質(zhì)量保證。
然而,他們都必須協(xié)同工作并相互協(xié)調(diào),以滿足產(chǎn)品計劃。這種開發(fā)方法不僅緩慢、昂貴且繁瑣,而且完全不適合當(dāng)今連接設(shè)備的世界,更不用說IoT和Edge了。例如,家用電器等消費品的制造商根本沒有資源來提供頻繁的更新。此外,消費者不習(xí)慣頻繁更新設(shè)備,除非涉及他們的手機或筆記本電腦。
隨著現(xiàn)代應(yīng)用程序的出現(xiàn),開發(fā)永不更改或更新的靜態(tài)軟件已不再可接受。隨著數(shù)十億設(shè)備處于始終在線模式,安全漏洞的威脅從未如此之大,特別是對于需要管理網(wǎng)絡(luò)上數(shù)百萬個節(jié)點的企業(yè)而言。如今,企業(yè)需要始終連接所有節(jié)點和設(shè)備,以便正確維護和保護它們。
DevOps:嵌入式創(chuàng)新
DevOps 已經(jīng)改變了云原生應(yīng)用程序的開發(fā)方式。軟件經(jīng)常被開發(fā)和部署。因此,Web應(yīng)用程序不斷更新?,F(xiàn)在,嵌入式系統(tǒng)也可以利用這種軟件版本控制系統(tǒng),使軟件創(chuàng)建自動化和可重復(fù)性。
在嵌入式軟件中引入DevOps是關(guān)于提供一組工具或平臺,這些工具或平臺在單個包中執(zhí)行版本控制,CI和CD部分。一個簡化工作流程的平臺,通常需要自己開發(fā)所有這些功能,可以實現(xiàn)巨大的效率提升和新的創(chuàng)新。
嵌入式軟件開發(fā)人員可以專注于定制他們的產(chǎn)品,而不是耗時的創(chuàng)建,而不是差異化。這是我們在嵌入式軟件中看到的文化變革背后的概念。你購買飛機并調(diào)整它,而不是自己建造一切。
DevOps 模型還包括分布式開發(fā)實踐,其中不同的團隊成員在世界各地執(zhí)行不同的任務(wù),可以無縫協(xié)作。流行病肯定增加了對這種模式的需求,但分布式團隊不會消失,也不會在技術(shù)開發(fā)中被忽視。
許多嵌入式軟件開發(fā)人員的工作方式仍然與80年代和90年代相同。借助DevOps實踐和平臺,嵌入式軟件開發(fā)人員現(xiàn)在可以專注于其應(yīng)用程序的附加值。隨著自主開發(fā)的復(fù)雜性消失,企業(yè)現(xiàn)在可以輕松地使用可消費和可重復(fù)使用的工具來實現(xiàn)云開發(fā)人員多年來一直在做的事情。