2020-04-28 11:15:28分類:行業(yè)資訊4337
物聯(lián)網(wǎng)(IOT)曾經(jīng)是一個技術(shù)流行語,但僅在短短幾年里,它已經(jīng)成為一個非常真實的現(xiàn)象。其中智能家居、可穿戴技術(shù)甚至自動駕駛汽車只是物聯(lián)網(wǎng)承諾改變?nèi)藗兩?、工作和娛樂的幾種方式。
隨著物聯(lián)網(wǎng)市場變得越來越成熟,客戶越來越希望產(chǎn)品質(zhì)量高、功能豐富、安全且經(jīng)常更新。希望利用這些趨勢的企業(yè)需要評估其物聯(lián)網(wǎng)產(chǎn)品開發(fā)計劃,以便能夠滿足客戶的這些需求。
在本文中,我們將討論整合軟硬件團隊在物聯(lián)網(wǎng)開發(fā)中的重要性,以及如何做。
關(guān)于業(yè)務(wù)中的 “孤島”已經(jīng)寫了很多文章,當(dāng)同一家公司的不同部門之間不共享信息或工具時,就會出現(xiàn)這種情況。孤島可能是有意產(chǎn)生的,因為這些團隊或部門之間的嫌隙,也可能是無意間產(chǎn)生的,因為缺乏溝通。
由于它們會阻礙組織實現(xiàn)其目標(biāo)和潛力,因此孤島通常被視為一種負(fù)面現(xiàn)象。在物聯(lián)網(wǎng)開發(fā)過程中保持硬件和軟件團隊的獨立性很可能會造成孤島,從而影響效率和生產(chǎn)力。
如果沒有整合團隊,則會在期限、預(yù)算、資源和產(chǎn)品質(zhì)量方面造成問題。缺乏整合對于分布式團隊來說尤其具有挑戰(zhàn)性,例如我們的運營團隊。我們經(jīng)常需要在物理硬件上運行測試,因此硬件和軟件團隊需要進(jìn)行交流,以便每個人都了解套件的工作原理。
整合硬件和軟件團隊進(jìn)行物聯(lián)網(wǎng)開發(fā)的想法深受敏捷軟件開發(fā)方法論的影響。傳統(tǒng)的“瀑布式”軟件開發(fā)模型從設(shè)計和開發(fā)到測試和發(fā)布都是分階段進(jìn)行的,下一階段只有在前一階段完成時才能開始。然而,敏捷開發(fā)將一個項目分解成工作單元而不是階段,并專注于盡快交付產(chǎn)品的最低可行版本。
讓軟件和硬件工程師在方案設(shè)計時就開始直接交流。在這里,協(xié)作可以簡單到確保硬件和代碼庫的命名方案保持一致。這可以避免編寫冗長的手冊或代碼注釋,從而節(jié)省時間。
隨著物聯(lián)網(wǎng)的發(fā)展,良好的硬件設(shè)計和軟件設(shè)計不會孤立地出現(xiàn),它們兩者都可以相互影響。如果硬件設(shè)計師正在考慮某項操作,他們應(yīng)該與軟件設(shè)計師溝通,以確保這不會在項目的后期產(chǎn)生問題。
整合物聯(lián)網(wǎng)軟硬件團隊的三大優(yōu)勢
一旦讓硬件和軟件團隊一起工作,而不是在單獨的孤島中工作,可以獲得哪些主要好處?
(1) 專業(yè)知識
當(dāng)您開發(fā)新的物聯(lián)網(wǎng)系統(tǒng)時,將硬件和軟件團隊結(jié)合在一起特別有價值:硬件尚未經(jīng)過驗證,并且可能沒有任何基準(zhǔn)可使用。
在嵌入式系統(tǒng)的世界中,很難將硬件和固件進(jìn)行分離。例如,如果您的驅(qū)動程序不工作,那么電路板也不會工作。擁有同時具備硬件和軟件專業(yè)知識的人員可以大大加快開發(fā)和調(diào)試的初始過程。
(2) 意見的多樣性
如果沒有各種各樣的人和意見參與該項目,那么在開發(fā)過程中就很容易獲得“隧道視野”。 工程師、設(shè)計師、開發(fā)人員、測試人員和管理人員都應(yīng)該能夠給出他們的意見。特別是,包括從硬件和軟件設(shè)計的角度來看,將有助于確保最終產(chǎn)品代表公司所有人的最大努力。
(3) 產(chǎn)品質(zhì)量
通過整合物聯(lián)網(wǎng)硬件和軟件開發(fā),您的最終產(chǎn)品更有可能具有更高的質(zhì)量。將兩個團隊的努力結(jié)合在一起,不僅可以減少項目時間和成本,而且還可以更輕松地通過更快的開發(fā)和反饋循環(huán)來發(fā)布升級。
整合硬件和軟件團隊的4種方法
在本節(jié)中,我們將討論一些最佳實踐,以幫助您縮小物聯(lián)網(wǎng)開發(fā)中硬件和軟件團隊之間的差距。
(1) 開放的溝通渠道
實現(xiàn)清晰、誠實、開放的溝通是打破業(yè)務(wù)孤立、讓硬件和軟件團隊在整個項目中協(xié)作的最佳方式。這在項目的硬件階段完成后尤為重要,硬件團隊的角色轉(zhuǎn)變?yōu)橹С止碳蛙浖_發(fā)。
(2) 指定項目經(jīng)理
當(dāng)擁有不同目標(biāo)和愿景的多個團隊匯聚在一起時,在做事方式上不可避免地會出現(xiàn)分歧。確保您指定了一名項目經(jīng)理,他可以充當(dāng)硬件和軟件之間的聯(lián)絡(luò)人,并協(xié)調(diào)出現(xiàn)的任何問題。
(3) 協(xié)作和項目管理工具
像Slack這樣的協(xié)作工具對于分布式工作人員尤其有用。為了提高跨團隊的可見性,您還應(yīng)該能夠在項目管理軟件(如Jira、Trello或Pivotal Tracker)中跟蹤團隊的活動和任務(wù)。
(4) 版本控制
像Git這樣的版本控制系統(tǒng)對于備份和共享代碼庫來說是非常寶貴的。確保您有辦法指定硬件的哪個版本與固件的哪個版本兼容,這樣您就不會浪費時間去查找過時的錯誤或使用錯誤的文件。