物聯網(iot)項目的開發可能是一個艱巨的任務。從原型的設計和代碼的建構,到産品的最終釋出和全球部署,如何確定您的iot項目順利實作和上市?
鑒于未來數年将有數十億裝置投放市場,封閉的專屬系統會使不同裝置間的互操作變得更困難。programmableweb主編david berlind将持續演化的封閉iot生态系統看作一種“連環事故”。讓按照設計本無法配合使用的不同系統元件和元素協同工作,可能需要花費大量的時間和精力,延長部署所需時間并導緻總成本飙升。開源技術是解決這種問題讓不同裝置互相通信的方法之一。
不同應用領域的iot解決方案有很多共通之處:需要無線連接配接的能力,需要在裝置和後端系統之間具備通信能力,需要收集和解析獲得的資料,大量共通之處不一而足。但是随之而來的大量專有系統通常是“各自為政”的,這使得解決方案的開發和建構工作變得更為複雜,需要額外投入更多時間。專有系統還會讓不同系統之間的開放式通信變得更複雜,并有可能妨礙到未來的創新和更廣泛的運用。
面對這個快速演進,碎片化程度日趨嚴重的行業,這些挑戰也變得越來越棘手,不過隻要願意配合使用,市面上依然有幾個可用的解決方案。之是以說開源技術是iot開發的關鍵,主要有下列幾個原因:
用開放式協作和标準鋪平道路
行業标準的建立和實施可以幫助我們實作更強的互操作性。通過合作制定的完善标準可提供更豐富的選擇和更大靈活性:開發者可以針對具體需求,使用不同供應商的裝置建構解決方案,進而在建構解決方案的過程中實作更大的創新,獲得更大成本效益。
除了标準化開發,另一種互補的方法是将行業生态系統制定的設計和規範開放給開源社群,借此形成由所有人遵守的開源硬體和接口标準。這種方法日益受到歡迎,随着主要業内人士通過合作提供支援,開放的硬體參考設計和接口标準逐漸變得唾手可得。
例如越來越多的開發者開始通過arduino、raspberry pi以及beaglebone快速建立原型。但此類開放式硬體有一個問題,盡管可用于快速建立原型,但如果想将産品投放市場,還需要重新再來一遍,這可能是因為此類硬體産品的許可不允許用于最終産品,或者元件過于廉價不适合用于商用級别的産品。開放式硬體平台也在進化,其中一些已經可以同時用于原型和商用産品中。
開發者需要尋找對業務更為友好的開源許可,要找到以開源方式提供的工業級元件以及一系列工具,随後才能更快速地将有關iot的創意從最初的原型變為可量産的大規模部署。實際上這一過程需要進行的大量內建、測試,以及驗證工作已經預先完成了,就算需要擴充為全球化規模,開發者也不需要付出太多成本。
通過開放式硬體加速iot開發
上述開放式平台可以讓開發者借助有限的硬體、無線網絡,或低層軟體開發經驗,在數天而非數月内完成應用程式的開發。若能妥善運用,開源平台和硬體之間的互相通信能力可確定各種連接配接器和傳感器無需額外編寫代碼便可自動配合使用,這樣便可以大幅縮短從構思和原型,再到最終量産過程所要付出的時間和精力。借助工業級的規範,此類下一代平台不僅可用于快速建立原型,而且可以快速實作iot應用程式的工業化生産,因為原型可直接進入量産階段。
配合使用多個供應商和多個平台,這樣的能力為第三方合作關系和iot初創企業提供了大量新機遇。這樣的做法為新一代互聯應用程式奠定了基礎,使得開發者可以無需考慮所用裝置直接開發iot應用程式。
更完善的生态系統支援
開源解決方讓項目在投資和周期方面更經得起考驗,項目完成後多年時間内均可通過各種資源和工具不斷對項目進行完善。這樣的特性不僅可以保護解決方案開發階段所付出的時間和投資,也可以通過簡化的過程縮短從創新到最終上市所需的時間。
軟體方面,如果使用能得到廣泛支援的開源軟體應用程式架構和開發環境,例如linux,将能為開發工作提供極大的幫助。如果使用專有解決方案,隻能從原始供應商處獲得有關開發架構的支援,而這些供應商的規劃可能無法與您的需求保持一緻。開源解決方案可以通過更廣泛的開發社群為您提供幫助,確定哪怕在多年後您依然能找到各種實用的開發資源。您在解決方案開發過程中投入的時間和成本也能獲得更妥善的保護。
使用開源軟體還能獲得另一個優勢。例如,為數衆多的開發者確定軟體代碼可以經曆更嚴格的審查,這樣您的解決方案也能更安全。此外iot應用程式開發者還可以根據具體安全需求對代碼進行修改。
沒人可以預見iot技術适用的每個應用場景,但基于标準和開源技術的戰略有助于促進iot創新,讓開發者能夠以更快,更簡單的方式将更長生命周期的應用程式投放到市場。标準保障了技術的互操作性,開源項目保障了軟硬體元件在産品和服務平台演進之後依然可以實作複用。如果不這樣做,iot領域的創新将依然面臨各種阻礙。