物聯(lián)網(wǎng)項(xiàng)目實(shí)施中的五大挑戰(zhàn)

責(zé)任編輯:editor005

作者:Mikael Hakansson

2018-01-23 13:56:55

摘自:INFOQ

在向數(shù)字化轉(zhuǎn)型的道路中,我們終將用到更多的互聯(lián)事物。無論使用哪種方式,板載是設(shè)備管理的一個(gè)重要組成部分,出于多種目的考慮應(yīng)做分開部署,并以此作為整體解決方案的一個(gè)重要組成部分。

在向數(shù)字化轉(zhuǎn)型的道路中,我們終將用到更多的互聯(lián)事物。該新興領(lǐng)域注重軟件和數(shù)字體驗(yàn),這意味著軟件將會部署在更多的地方。物聯(lián)網(wǎng)關(guān)注的是如何將資產(chǎn)和數(shù)據(jù)整合到現(xiàn)有的基礎(chǔ)設(shè)施和系統(tǒng)中。為了滿足客戶對物聯(lián)網(wǎng)解決方案的需求,Microsoft、Amazon和IBM等服務(wù)供應(yīng)商正在各自的云平臺大量投資。而Schneider、Mitsubishi和Siemens等傳統(tǒng)技術(shù)廠商也準(zhǔn)備采取行動,計(jì)劃融入到這一新的生態(tài)系統(tǒng)中。

我這幾年來持續(xù)地參與了多個(gè)物聯(lián)網(wǎng)項(xiàng)目。我意識到,客戶需求與服務(wù)廠商所提供的服務(wù)間存在著很大差距。我并不是說服務(wù)提供商應(yīng)該乃至可以解決所有的問題,而是盡量強(qiáng)調(diào)指出組織需要關(guān)注的一些領(lǐng)域。

第一個(gè)挑戰(zhàn):所有權(quán)

物聯(lián)網(wǎng)在許多方面上與傳統(tǒng)的企業(yè)集成類似。然而在兩者間存在著一個(gè)非常顯著的差異。平臺集成最終是要服務(wù)于IT的,它幾乎與業(yè)務(wù)無關(guān)(除非發(fā)生失?。?。如果大家曾經(jīng)參與過一些集成平臺實(shí)施項(xiàng)目,那么就會明白我所要說的問題。要求企業(yè)贊助投資去實(shí)施EAI平臺,這無疑具有挑戰(zhàn)性的。因?yàn)槠脚_并不會產(chǎn)生收入,難以展示如何可以節(jié)省成本。我并不是說不應(yīng)該去做EAI,只是指出平臺的要求和優(yōu)勢是與IT相關(guān)的,而非與業(yè)務(wù)相關(guān)。

如果使用了物聯(lián)網(wǎng),那么事情就完全反過來了。一旦人們能認(rèn)識到業(yè)務(wù)具有的所有優(yōu)點(diǎn),將會非常樂意贊助該項(xiàng)目。在Axians IoT,我們通過召開一次僅針對業(yè)務(wù)的物聯(lián)網(wǎng)研討會解決了這個(gè)問題。研討會由用戶故事驅(qū)動,例如按使用付費(fèi)、可預(yù)測的維護(hù)、設(shè)備編排等。所有的故事都分別寫在卡片上,在卡片上還給出了描述、價(jià)值和風(fēng)險(xiǎn)。這樣小組得到了一副牌,并在小組中討論牌中的每張卡片,排定優(yōu)先級,最終選定一張候選卡片去試行。這一方法已被證明是非常有效的,它可使每個(gè)人都參與其中,并成為產(chǎn)品的基石。

在研討會中可以引入IT,也應(yīng)該引入IT,但I(xiàn)T并非會上的主角。如果我們將物聯(lián)網(wǎng)項(xiàng)目看作是一種IT項(xiàng)目,那么注定會產(chǎn)生失敗。由IT驅(qū)動的物聯(lián)網(wǎng)項(xiàng)目很少會取得成功。物聯(lián)網(wǎng)項(xiàng)目需要與業(yè)務(wù)保持一致,并由業(yè)務(wù)驅(qū)動。其中,我們需要對如何增加收入或削減成本具有明確的認(rèn)識。這就是說,其中必須涉及IT和OT(操作技術(shù),Operation Technology),以確保解決方案與現(xiàn)有的運(yùn)行和維護(hù)過程相一致。

第二個(gè)挑戰(zhàn):技能集

在一個(gè)“正常”的IT項(xiàng)目中,各個(gè)資源(即開發(fā)人員,測試人員和操作人員)應(yīng)對其他同行的領(lǐng)域具有很好的了解。有時(shí),例如在DevOps中,同一資源甚至可能擔(dān)當(dāng)多個(gè)活躍的角色。

另一方面,物聯(lián)網(wǎng)項(xiàng)目由三個(gè)截然不同的群組構(gòu)成,也可以說是三種不同類型的人員組成。這些團(tuán)體或角色往往不會去了解“另一面”。這并非像是十多年前Java和.Net開發(fā)者間那樣的水火不容,而是因?yàn)橹钡浆F(xiàn)在我們依然沒有看到互通有無的任何好處,因此沒有理由去這樣做。

一方面,我們的電氣工程師深入了解儀表、傳感器、電阻、PLC、布線等所有的現(xiàn)場設(shè)備,對于任何我們想要控制或與之互動的機(jī)械、車輛或電氣部件,他們也是專家。他們習(xí)慣于使用SCADA這樣的系統(tǒng),專注于穩(wěn)定性,僅將Raspberry PI看成是一種可愛的小玩具。字節(jié)數(shù)組是他們唯一了解的數(shù)據(jù)格式,他們會將Float看成是一種平常的數(shù)據(jù)類型,而事實(shí)上Float并不是!他們無疑是核心人物,沒有必要解釋他們?yōu)槭裁丛陧?xiàng)目中是不可或缺的!

換一個(gè)角度看技能集,我們還有一些業(yè)務(wù)分析師。他們對業(yè)務(wù)有著深入的了解,并且對如何處理數(shù)據(jù)以及如何使用數(shù)據(jù)改變收入模式有著深刻的理解。處于這個(gè)位置的人,往往就是推動商業(yè)案例的人,而且他們也應(yīng)該這樣做。在他們看來,MS Excel只是一種開發(fā)平臺,雖然事實(shí)并非如此。他們喜歡使用Power BI。盡管他們可能不太熟悉一些領(lǐng)域,例如機(jī)器學(xué)習(xí),但是他們很快就會熟悉這些領(lǐng)域。雖然Excel、機(jī)器學(xué)習(xí)和Power BI似乎與其它類型的開發(fā)是密切相關(guān)的,但事實(shí)上并非如此。

最后讓我們看一下云開發(fā)人員。盡管我十分想解釋清楚,但是該角色十分模糊。在當(dāng)前的場景下,云開發(fā)人員指的是那些精通網(wǎng)絡(luò)、存儲和集成的傳統(tǒng)開發(fā)人員。如果這些工程師認(rèn)為系統(tǒng)是穩(wěn)定的,那么電器工程師會對此不屑一顧冷嘲熱諷。盡管該角色稱為云開發(fā),但我認(rèn)為,只要關(guān)注了諸如Node.js、Java或.Net等高級編程平臺,就應(yīng)將設(shè)備開發(fā)人員也包括在其中。如果項(xiàng)目考慮使用嵌入式系統(tǒng)和C編程實(shí)現(xiàn)微控制器,那么設(shè)備開發(fā)人員可能與電氣工程師更密切相關(guān)。

與其它任何項(xiàng)目一樣,規(guī)劃整個(gè)項(xiàng)目的發(fā)布和任務(wù)同樣需要具有很好的領(lǐng)導(dǎo)和管理。但是考慮到各個(gè)群組具有完全不同的想法,我們需要做得更多。每個(gè)群組都必須主動去了解其它的群組。對于云開發(fā)人員來說,尤其應(yīng)該這樣做,因?yàn)樗麄兣c其它群組間交流存在一些不順。云開發(fā)人員必須協(xié)調(diào)從業(yè)務(wù)/數(shù)據(jù)分析人員到電氣工程師的需求,反之亦然。

第三個(gè)挑戰(zhàn):板載

在首次Sprint時(shí),Trello面板上可能不會出現(xiàn)“如何配置設(shè)備”這一問題。當(dāng)你意識到推出成百數(shù)千種設(shè)備的挑戰(zhàn)時(shí),我可以保證你會在同一塊面板上碰壁。為滿足你的需求,你可以也應(yīng)該預(yù)先安裝并配置設(shè)備,但是每個(gè)設(shè)備都或多或少地與其它設(shè)備類似,區(qū)分它們的是自動注冊設(shè)備時(shí)所需要使用的信息。這些信息可以是MAC地址、IMEI id、SIM卡ID(ICCID)、證書,或是你所希望的任何組合。雖然你可以訂購預(yù)先配置了密鑰或證書的設(shè)備,但這往往是非常昂貴的。

但是在某些情況下,我們不需要大量板載設(shè)備,只需要在使用WiFi的地點(diǎn)一次部署一個(gè)設(shè)備。物聯(lián)網(wǎng)設(shè)備可以由技術(shù)人員安裝在建筑物中,甚至可以由其中居住的居民安裝。在這種情況下,我們可以考慮讓設(shè)備提供一個(gè)WiFi熱點(diǎn),任何人都可以使用智能手機(jī)現(xiàn)場配置設(shè)備。

無論使用哪種方式,板載是設(shè)備管理的一個(gè)重要組成部分,出于多種目的考慮應(yīng)做分開部署,并以此作為整體解決方案的一個(gè)重要組成部分。除了管理配置過程的需求,我們可能還應(yīng)考慮支持在某個(gè)時(shí)間點(diǎn)更換云服務(wù)提供商,或者支持從跨數(shù)據(jù)中心的災(zāi)難恢復(fù)。

在Axians,我們使用了microServiceBus.com。它支持Azure、AWS和IBM 的物聯(lián)網(wǎng)、跨數(shù)據(jù)中心的災(zāi)難恢復(fù),并與Cisco Jasper集成,為我們提供了使用SIM卡的開箱即用的板載功能。它還支持使用MAC地址及其他一些方式的白名單。

第四個(gè)挑戰(zhàn):規(guī)劃更改

對于一個(gè)企業(yè)而言,部署Web應(yīng)用卻不監(jiān)視其運(yùn)行狀況,或者不修補(bǔ)其操作系統(tǒng),這是不可以接受的。企業(yè)也不會漠不關(guān)心每臺工作站和筆記本是否安裝了更新的防病毒軟件和防火墻。

不過出于某些原因,這看上去似乎與物聯(lián)網(wǎng)解決方案毫不相關(guān)。人們似乎認(rèn)為物聯(lián)網(wǎng)設(shè)備能夠抵御各種威脅,是運(yùn)行在經(jīng)得起時(shí)間考驗(yàn)的神奇操作系統(tǒng)之上的。事實(shí)并非如此!

無論大小和形狀如何,設(shè)備和網(wǎng)關(guān)在本質(zhì)上都是小型的計(jì)算機(jī),它們的操作系統(tǒng)需要修補(bǔ),還需要不斷地更新的平臺和自定義代碼,以及我們所能想象到的更多依賴性。所有這些都是可以更改的。如果有人不承認(rèn)這一點(diǎn),那么我們大可以禮貌地點(diǎn)點(diǎn)頭,然后就離開房間不再回來。

但是,設(shè)備管理不僅是遠(yuǎn)程更新和配置新設(shè)備。現(xiàn)有的IT操作可能會使用System Center或同類工具管理服務(wù)器和工作站。服務(wù)臺和NOC可能會使用像ServiceNow或JIRA這樣的工具來升級問題、發(fā)現(xiàn)問題并計(jì)劃發(fā)布。無論我們選擇了哪種設(shè)備管理系統(tǒng),都必須保持與現(xiàn)有流程的一致。一旦解決方案投入生產(chǎn),沒有人不希望面對的是一個(gè)沒有人可以也不想管理的混亂系統(tǒng)。

除了板載之外,microServiceBus.com還支持我們控制設(shè)備并配置更新,甚至是管理代碼。它集成了ServiceNow,該工具是我們用于管理狀況、問題和發(fā)布的工具。

第五個(gè)挑戰(zhàn):測試

對于從事各種類型應(yīng)用開發(fā)的組織,測試驅(qū)動設(shè)計(jì)(TDD)和持續(xù)集成(CI)都得到了廣泛的應(yīng)用。但是,物聯(lián)網(wǎng)解決方案的性質(zhì)和體系結(jié)構(gòu),決定了這些測試方法是難以接受的。測試的目標(biāo)是快速失敗,為適應(yīng)物聯(lián)網(wǎng)的需求,我們需要跳出其中考慮問題。

為了更好地解釋這些挑戰(zhàn),我將它們分成三類:

技能集和隔離

正如在“第二個(gè)挑戰(zhàn):技能集”一節(jié)中所介紹的,物聯(lián)網(wǎng)項(xiàng)目通常包括三個(gè)群組,各個(gè)群組間是相互隔離的,分別具有不同的關(guān)注點(diǎn)、技能集,當(dāng)然還有工具集。由于所做的測試是完全不同的,因此結(jié)果通常相互不符。

由于每個(gè)群組都與其它群組隔離,單元測試和模擬模型成為每個(gè)人日常生活的一部分。開發(fā)人員可能需要數(shù)個(gè)月的時(shí)間才能第一次看到PLC。而分析師則繼續(xù)使用假設(shè)的數(shù)據(jù)結(jié)構(gòu),直到他們最終能看到一些真實(shí)數(shù)據(jù)。因此,我需要在此強(qiáng)調(diào)指出組間協(xié)商接口和文檔化的重要性。

位置

物聯(lián)網(wǎng)的分布式本質(zhì)并不會簡化測試過程,但是對測試和演示環(huán)境的訪問的確十分有幫助。通常,企業(yè)不可能對站點(diǎn)設(shè)置創(chuàng)建副本,因?yàn)檫@往往需要耗費(fèi)大量的設(shè)備、管道和電線,讓原本整潔的辦公環(huán)境一團(tuán)糟。

盡管如此,我們還是要用心去創(chuàng)造一個(gè)很好的演示環(huán)境。不要在乎做適當(dāng)?shù)耐顿Y,要讓演示閃亮美麗。假定演示并非是未來測試,而是要打動你的利益相關(guān)者。給出一個(gè)好的物聯(lián)網(wǎng)演示,這無疑是最好的!

現(xiàn)場安裝

我們都希望團(tuán)隊(duì)能擁有優(yōu)秀的工程師,在設(shè)備站點(diǎn)或車輛上安裝儀表、網(wǎng)關(guān)、通信和電纜。但是隨著項(xiàng)目的推進(jìn),這些工程師可能不會繼續(xù)去設(shè)置站點(diǎn)。此時(shí)通常是由一些不太熟練的人接手。他們對項(xiàng)目缺乏洞察力,也不了解企業(yè)所創(chuàng)造的價(jià)值觀。

為了適應(yīng)這種狀況,我們需要給出安全可靠的安裝指南和過程,常常需要給出多種語言的版本。安裝指南必須經(jīng)過測試!

結(jié)論

物聯(lián)網(wǎng)驅(qū)動了大量人力物力的參與,并帶來了新的機(jī)遇。但我們應(yīng)確保以業(yè)務(wù)為驅(qū)動。考慮我們需要做的是什么,而不是我們能做什么。盡早給出對收益的估算,并確保向目標(biāo)推進(jìn)。

建立合伙關(guān)系,組建一支優(yōu)秀的團(tuán)隊(duì)。無論人們身處何種角色和職責(zé),鼓勵(lì)他們分享自己的知識和經(jīng)驗(yàn)。使用日常站會(Standup)建立人們間的合作,與整個(gè)團(tuán)隊(duì)一起規(guī)劃項(xiàng)目,無論是長期的還是短期的。

考慮板載等現(xiàn)實(shí)挑戰(zhàn),并盡早在項(xiàng)目中分配任務(wù)。深入查看自身所面對的機(jī)會,并確保硬件符合要求。不要使用Raspberry Pi或Arduino這樣的設(shè)備做概念驗(yàn)證。

對更改做出規(guī)劃!確保選擇一個(gè)可讓我們遠(yuǎn)程控制設(shè)備的平臺,不要把物聯(lián)網(wǎng)設(shè)備與其它的IT設(shè)備(如服務(wù)器,電話或工作站)區(qū)別對待。確保物聯(lián)網(wǎng)設(shè)備始終與最新的固件、操作系統(tǒng)及其它軟件保持同步。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號