Toţi facem greşeli. Uneori acestea sunt minore, fără a influența evoluția businessului, alteori sunt mari şi cu impact asupra acestuia. Acum câţiva ani am fost direct implicat într-un proiect unde o decizie greşită a dus nu doar la pierderea unei sume importante de bani, ci a avut și un efect negativ major asupra continuităţii businessului.
Am decis să scriu acest articol ca o lecţie pentru a preveni astfel de greşeli, în special în aceste vremuri, când SaaS este opţiunea preferată, când cumpărarea licenţelor pentru soluţiile existente este mai bună decât a le dezvolta pe cele proprii - fără a analiza impactul şi paşii care trebuie urmaţi dacă doriţi să schimbaţi furnizorul.
Nu mă înţelegeţi greşit. Sunt un mare fan al SaaS, al cumpărării acestuia şi al development-ului făcut ulterior în interiorul firmei. Din perspectiva mea, este soluţia corectă pentru companiile care au oamenii potriviţi în jurul lor. Este vorba despre oamenii care ştiu că sistemul va trebui înlocuit - cu alte cuvinte, despre aceia care nu sunt preocupaţi doar de indicatori de perfomanţă (KPIs).
Există o regulă care spune că un Manager, GM sau Cxx va începe, chiar din prima zi, să o pregătească pe acea persoană care îi va lua locul. Acelaşi lucru se întâmplă şi în industria software, în special când vorbim de varianta enterprise şi IoT. Înlocuirea unei componente ar putea avea consecințe asupra continuităţii businessului, a costurilor şi a licenţelor legale după 5 sau 10 ani.
Povestea are loc într-o companie mare care funcţionează cu dispozitive şi IoT de mai bine de 25 de ani. Este acel tip de companie care schimbă lumea. Soluţiile lor se pot găsi oriunde pe glob şi sunt folosite de milioane de oameni în fiecare zi.
Evident, în varianta enterprise, un dispozitiv vine cu un pachet de suport și de mentenanţă. Acest lucru presupune că datele telemetrice trebuie să fie colectate, update-urile trebuie să fie trimise pe dispozitive şi multe altele. Pe scurt, este vorba de IoT, aşa cum înţelegem această noţiune în ziua de azi.
Ca orice soluţie software, încercaţi să o reutilizaţi cât de mult posibil. Prin urmare, veţi încerca să folosiţi aceeaşi implementare pentru toate dispozitivele voastre. Este un lucru normal şi natural. În cele din urmă, fluxul de lucru este similar. De obicei, doar sursa sau doar informaţia pe care o colectezi poate fi diferită în funcţie de funcţiile dispozitivului.
În era IoT, este normal să te uiţi în jurul tău, să identifici soluţia curentă şi să o găseşti pe cea care se potriveşte cel mai bine nevoilor tale. Odată ce aţi identificat platforma care răspunde cerinţelor dumneavoastră, veţi cumpăra o licenţă pentru aceasta şi, evident, veţi începe să o folosiţi.
În general, o astfel de platformă vine cu o soluţie la cheie pe partea de backend şi cu o altă parte care rulează pe dispozitivele voastre. În plus, s-ar putea să fie nevoie de nişte personalizări, pentru ca apoi să reuşiți să vă conectaţi dispozitivele la sistemul backend.
Soluţia la cheie care vine cu platforma IoT poate avea diferite modele de licenţă. Cel mai agresiv model, după părerea mea, este acela unde agentul care a venit cu platforma IoT şi care rulează pe dispozitivul vostru, nu este, de fapt, proprietatea voastră şi îl puteţi utiliza atâta timp cât vă plătiţi licenţa anuală.
Asta se întâmplă în povestea mea. Este una dintre cele mai malefice dependinţe pe care le poţi avea.
Vă voi explica de ce este aşa.
În cadrul oricărei soluţii software, sistemul are o durată de viaţă. Sunteţi conştient că această soluţie nu va funcţiona la nesfârşit şi că va trebui să o schimbaţi. Ciclul poate dura 5 ani, 10 ani sau 15 ani. De la bun început, trebuie să luaţi în calcul dependinţele pe care le veţi avea când expiră durata de viaţă. Trebuie să vă asiguraţi că migrarea la soluţia nouă se va putea face cu efort minim. În astfel de situaţii, impactul minim va fi semnificativ, dar măcar veţi încerca să evitaţi intervenţia umană pentru fiecare dispozitiv.
Al doilea aspect important este că lucraţi în industrii speciale, legile nu vă vor permite să instalaţi orice software pe orice dispozitiv. Există un proces standard de validare care poate dura de la 6 luni la câţiva ani. Acest lucru înseamnă că, dacă nu sunteţi în această fază de validare, adăugarea unui nou software va prelungi cu 6 luni (din 2 ani) proiectul. Mai mult, pe această perioadă nu veţi putea promova noi dispozitive pe piaţă.
Un alt aspect important este situaţia în care dispozitivele sunt offline, dar funcţionează. În această situaţie este greu de îndepărtat software-ul din dispozitiv. Nu discutăm cum puteţi să îndepărtaţi acest software din imaginile de backup pe care le-aţi transmis cu aceste dispositive şi care sunt folosite automat când software-ul sau sistemul de operare care rulează pe dispozitiv nu mai funcţionează …
Toate acest lucruri se întâmplă pentru că aveţi pe dispozitivele voastre, dispozitivele produse de voi, o componentă software ce poate fi folosită atâta timp cât sunteţi client al furnizorului acelei platforme IoT.
De îndată ce nu mai figuraţi în lista de clienţi, sunteţi obligat, prin contract, să îndepărtaţi tot software-ul pe care nu îl deţineţi.
Este acceptabil să aveţi o astfel de componentă software pe sisteme la care aveţi acces uşor. Aceste dependinţe ar putea fi mutate pe soluţii cloud, centre de date unde aveţi acces fizic.
Fiecare dispozitiv rulează software-ul cu o licenţă care vă permite să îl utilizaţi şi după 50 de ani fără a plăti. Este normal să se plătească un serviciu online sau orice altceva. Pentru agent, pentru acea mică bucată de cod, ar trebui cumpărată licenţa potrivită. Nu trebuie să fiţi proprietarul agentului, dar trebuie să puteţi să îl rulaţi sau să îl instalaţi pe dispozitivele voastre atâta timp cât este necesar.
Sistemul de operare Windows este un bun exemplu. Menţionez un lucru despre Windows 98 sau Windows 7. Cumpăraţi licenţa doar o dată, dar o folosiţi cât de mult doriţi. Alte versiuni vă vor permite să faceţi upgrade (fix-uri şi update-uri) atâta timp cât plătiţi acest lucru.
Un exemplu din IoT este agentul IoT Hub oferit de Microsoft. Acesta este open source, este gratuit şi îl puteţi folosi cum doriţi. Puteţi chiar să îl modificaţi fără probleme. Ce trebuie să plătiţi? Trebuie plătit doar serviciul IoT Hub backend. Dacă nu îl mai folosiţi, nimeni nu vă va cere să dezinstalaţi agentul de pe device-uri.
În concluzie, încercaţi să aveţi o viziune de ansamblu a duratei de viaţă de la început. În cele din urmă, chiar şi cel mai bun software va fi înlocuit.