Ulangan mahsulot uning atrofidagi muhandislik ishlari tugallanishidan ancha oldin tayyor ko'rinishi mumkin. Prototip barqaror, ma'lumotlar bulutga yetib boradi, ilova to'g'ri qiymatlarni ko'rsatadi va qurilmalarning birinchi partiyasi allaqachon foydalanuvchilar qo'lida. Bu vaqtda, orqa qism hali ham jamoa deyarli har bir qurilmani alohida bilishi uchun etarlicha sodda bo'lishi mumkin. Ta'minotni skript yordamida boshqarish mumkin, konfiguratsiya o'zgarishlarini qo'lda amalga oshirish mumkin va agar biror narsa ishlamay qolsa, muhandis odatda muammoni to'g'ridan-to'g'ri kuzatishi mumkin.

Keyin u real dunyoda yashashni boshlashi kerak. Ikkinchi apparat versiyasi paydo bo'ladi. Ba'zi mijozlar hali ham birinchi versiyadan foydalanmoqdalar. Dasturiy ta'minot versiyalari farq qila boshlaydi. Boshqa mijoz yoki bozor uchun yangi konfiguratsiya kerak, eski qurilmalar esa hali ham yangilanishlar va qo'llab-quvvatlashga muhtoj.

Hech narsa, albatta, buzilgan emas. Qurilmaning orqasidagi dasturiy ta'minot shunchaki o'ziga xos hayot aylanishiga ega bo'ldi.

Bu o'tishni o'tkazib yuborish oson, chunki prototip mukammal darajada ishlashda davom etishi mumkin. Ammo bir xil jismoniy mahsulotning bir nechta versiyalari sohada birga mavjud bo'lishi kerak bo'lgandan so'ng, orqa qism endi shunchaki apparat orqasidagi infratuzilma emas. U mahsulot arxitekturasining o'ziga aylanadi.

Ishlaydigan ulangan prototip hali kengaytiriladigan mahsulot emas

Prototip muhim vazifani bajaradi: tizimning boshidan oxirigacha ishlashini isbotlash. Qurilma o'zining asosiy funktsiyasini bajaradi, dasturiy ta'minot orqa tomon bilan aloqa qiladi, telemetriya kerakli joyga yetib boradi, buyruqlar qaytish safarini amalga oshiradi va mobil yoki veb-interfeys foydalanuvchiga funksiyani ochib beradi.

Odatda bir xil tizim xilma-xillikni qanchalik yaxshi boshqarishi isbotlanmagan.

Dastlabki yigirmata qurilmaning barchasi bir xil dasturiy ta'minotda ishlashi, bir xil apparat versiyasiga moslashtirilishi va bir xil muhandislar tomonidan sozlanishi mumkin. Bu bosqichda qo'lda ro'yxatdan o'tish, to'g'ridan-to'g'ri konfiguratsiya o'zgarishlari yoki kichik ishga tushirish skripti mutlaqo oqilona bo'lishi mumkin. Mahsulot o'zini isbotlamasdan oldin ishlab chiqarish darajasidagi vositalarni yaratish erta bo'lishi mumkin.

Masshtab muammoni o'zgartiradi. Qurilmalar oflayn rejimda qoladi, almashtiriladi, turli xil dasturiy ta'minotni ishga tushiradi va turli xil mijozlar konfiguratsiyalarini talab qiladi. Qo'llab-quvvatlash hech qachon to'g'ri ta'minlanmagan qurilmani noto'g'ri sozlangan yoki shunchaki ulanib bo'lmaydigan qurilmadan ajratishi kerak.

Prototip qarzlari ko'pincha shunday boshlanadi: noto'g'ri qaror bilan emas, balki mahsulot boshqa joyga ko'chirilgandan keyin o'z o'rnida qoladigan vaqtinchalik qaror bilan. Va bu o'tishni ko'rinishga majbur qiladigan birinchi narsalardan biri bu apparatning o'zi. Yangi versiya shunchaki eskisini almashtirmaydi; u u bilan birga mavjud bo'lishi kerak.

Har bir apparat versiyasi dasturiy ta'minotning hayot aylanishi bilan bog'liq muammo tug'diradi

Yangi apparat versiyasi kamdan-kam hollarda eskisining o'rnini bosadi. Amalda, ikkala versiya ham ba'zan yillar davomida ishlab chiqarilmoqda. O'tish partiyasini, bir nechta dasturiy ta'minot tarmoqlarini va mijozga xos konfiguratsiyalarni qo'shsangiz, flot asl mahsulot modeli taklif qilganidan ko'ra tezda rang-barangroq bo'ladi.

Dasturiy ta'minot qatlami endi har bir birlikni mavhum "qurilma" sifatida ko'rib chiqa olmaydi. U ushbu birlik nima qila olishini bilishi kerak.

Qayta ko'rib chiqilgan platada boshqa sensor, aloqa moduli yoki kontrollerdan foydalanishi mumkin. Eng so'nggi versiya uchun amal qiladigan buyruq avvalgisi tomonidan qo'llab-quvvatlanmasligi mumkin. Kalibrlash qiymatlari o'zgarishi mumkin. Konfiguratsiya chegaralari o'zgarishi mumkin. Bir avlod uchun mos keladigan dasturiy ta'minot paketi boshqa avlod uchun xavfli bo'lishi mumkin.

Jismoniy mahsulot muhandislari allaqachon shu tarzda ishlaydi. Deyarli bir xil ko'rinadigan ikkita komponent, agar ularning qayta ko'rib chiqilishi, bardoshliligi yoki texnik xususiyatlari farq qilsa, bir-birini almashtirib bo'lmaydi. Bog'langan mahsulotlar dasturiy ta'minot tomonida bir xil muammoni keltirib chiqaradi: platforma jismoniy mahsulotning qaysi versiyasi haqida gapirayotganini va unga qanday qoidalar qo'llanilishini tushunishning ishonchli usuliga muhtoj.

Birinchi versiyasi bitta kalibrlash protsedurasidan foydalanadigan, ikkinchisi esa yangi sensor va boshqa parametrlar to'plamini kiritadigan mahsulotni ko'rib chiqing. Mijoz uchun ikkala qurilma ham baribir bir xil mahsulot bo'lishi mumkin, platforma uchun esa bunday bo'lishi mumkin emas.

Agar bu farqlar aniq ko'rsatilmasa, ular maxsus holatlar sifatida dastur mantig'iga kirib borishga moyil bo'ladi. Bir ish jarayoni seriya raqami diapazonini tekshiradi. Boshqasi apparat yaratish uchun proksi sifatida dasturiy ta'minot versiyasidan foydalanadi. Uchinchisi qo'llab-quvvatlash eski partiyaning maydonda boshqacha harakat qilayotganini aniqlaganidan keyin qo'shilgan istisnoni o'z ichiga oladi. Bu tuzatishlarning hech biri o'z-o'zidan xavfli ko'rinmaydi, lekin ular birgalikda har bir kelajakdagi o'zgarish haqida mulohaza yuritishni qiyinlashtiradi.

Eskirgan apparat vositalari kamdan-kam hollarda belgilangan vaqtda yo'qoladi. Mahsulot guruhlari tabiiyki, eng yangi versiyaga e'tibor qaratadilar, mijozlar esa ko'pincha eski versiyalarni kutilganidan ancha uzoqroq saqlaydilar. Shuning uchun platforma o'rnatilgan bazaning bitta joriy holatga mos kelishini taxmin qilish o'rniga, bir vaqtning o'zida bir nechta avlodlarni qo'llab-quvvatlashi kerak.

Bu sodir bo'lgandan so'ng, apparat evolyutsiyasi va dasturiy ta'minot hayot aylanishini boshqarish ajralmas bo'lib qoladi. Platforma nafaqat qurilma qayerda ekanligini va u onlayn ekanligini, balki u nima ekanligini, nima ishlashi mumkinligini, qanday sozlanishi kerakligini va qaysi o'zgarishlarni qo'llash xavfsiz ekanligini ham bilishi kerak.

Va bu savollarga ishonchli javob berishdan oldin, har bir qurilma tizimga izchil tarzda kirishi kerak.

Ta'minot - bu qo'lda muhandislik miqyoslashni to'xtatadigan joy

Avtopark kichik bo'lganda, ta'minotni ta'minlash oddiy ko'rinadi: qurilma yozuvini yarating, seriya raqamini kiriting, hisob ma'lumotlarini yarating, qurilmani mijozga tayinlang, konfiguratsiyani qo'llang va davom eting. Bir necha o'nlab qurilmalar uchun bularning ba'zilarini qo'lda boshqarish hali ham to'g'ri tanlov bo'lishi mumkin.

Biroq, ishlab chiqarish miqyosida ta'minot qurilma identifikatori, hisobga olish ma'lumotlari, egalik huquqi, konfiguratsiya va hayot aylanishi holati kesishmasida joylashgan. Qurilmani ishga tushirish paytida qilingan xato, qurilma zavoddan chiqqanidan keyin ham uzoq vaqt davomida qanday ishlashi va qo'llab-quvvatlanishiga ta'sir qilishi mumkin.

Elektron jadval endi aslida o'rnatilgan qurilmaga mos kelmasligi mumkin. O'zgartiriladigan qurilma noto'g'ri identifikatorni meros qilib olmasdan to'g'ri mijoz assotsiatsiyasiga muhtoj. Zavod sozlamalariga qaytarish jarayon davomida boshqa yo'l yaratadi. O'rnatuvchi qurilmani noto'g'ri hisobga tayinlashi mumkin, bu esa uning oflayn ekanligini, noto'g'ri ta'minlanganligini yoki shunchaki noto'g'ri konfiguratsiyani olib yurganligini aniqlash uchun qoldiradi.

Ushbu savollarga javob berish uchun ishlab chiquvchidan ma'lumotlar bazasini tekshirish yoki ichki skriptni ishga tushirish muntazam ravishda talab qilingandan so'ng, jarayon mahsulot bilan masshtablash to'xtaydi.

Takrorlash yana bir ogohlantirish belgisidir. Har bir mahsulot varianti o'zining onboarding skriptini, konfiguratsiya vositasini yoki o'rnatuvchi ish jarayonini olishni boshlaydi. Bu farqlar kichik ko'rinishi mumkin, ammo asosiy mas'uliyat bir xil. Ta'minot ma'lum bir qurilmaga biriktirilgan o'rnatish vazifasi emas, balki qayta ishlatiladigan platforma infratuzilmasiga aylandi.

Va bu kamdan-kam hollarda qayta foydalanish mumkin bo'lgan yagona imkoniyatdir.

Platforma qatlami qayta ishlatiladigan infratuzilmaga aylanishi kerak

Bir nechta mahsulot yoki apparat ta'minoti versiyalari bir xil asosiy ehtiyojlarni qondira boshlagach, ba'zi dasturiy ta'minot imkoniyatlari mahsulotga xos bo'lishni to'xtatadi. Qurilma identifikatori, ta'minot, ulanish, telemetriya, dasturiy ta'minot yetkazib berish, hayot aylanishi holati, flotning ko'rinishi va diagnostika bunga yaxshi misollardir. Ularni har bir yangi variant uchun qayta tiklash mahsulotning o'zini yanada o'ziga xos qilmasdan ko'proq kod va ko'proq operatsion yo'llarni yaratadi.

Jamoalar kamdan-kam hollarda bu takrorlashni yaratishga kirishadilar. Har bir mahsulot atrofida kichik farqlar to'planib qoladi, toki jamoa bir xil muhandislik mas'uliyatiga aylangan narsaning bir nechta implementatsiyasini saqlab qolmaguncha.

Mahsulot qatlamini platforma qatlamidan ajratish yanada aniqroq chegara hisoblanadi. Mahsulot qatlami ma'lum bir qurilmani qimmatli qiladigan xatti-harakatlar, ish jarayonlari, interfeyslar, integratsiyalar va domen mantig'ini o'z ichiga oladi. Platforma qatlami apparat o'zgarganda ham izchil bo'lib qolishi kerak bo'lgan mexanikalarni boshqaradi.

Ulangan mahsulotlar birinchi versiyasidan tashqariga chiqqanligi sababli, qurilmalarni yetkazib berish, qurilmalarning hayot aylanishini boshqarish, avtoparkni boshqarish va qo'llab-quvvatlash vositalari bir martalik loyiha tafsilotlari o'rniga umumiy infratuzilmaga aylanadi. Korxonalar uchun IoT PaaS bir nechta mahsulotlar yoki mahsulot variantlari bo'ylab qayta ishlatiladigan platforma qatlamini taqdim etishi, standart qurilmalar va ma'lumotlarni qayta ishlatiladigan qurilish bloklari orqali boshqarishi mumkin, muhandislik guruhlari esa o'zlarining maxsus harakatlarini apparat, ish jarayonlari va foydalanuvchi tajribasiga qaratadilar.

Umumiy asos hali ham haqiqiy mahsulot farqlari uchun joy qoldirishi kerak. Yangi qurilmaga boshqa ma'lumotlar modeli, konfiguratsiya oqimi, integratsiya yoki boshqaruv mantig'i kerak bo'lishi mumkin va bu farqlarni kiritish oson bo'lib qolishi kerak. Maqsad shunchaki har bir farqni boshqa qurilma registri, telemetriya quvuri, ta'minot mexanizmi yoki flotni boshqarish vositalari to'plami bo'ylab cho'zib yubormaslikdir.

Jamoa birinchi mahsulotni yaratayotgan paytda platforma qo'shimcha ko'rinishga ega bo'lishi mumkin va ikkinchi yoki uchinchi mahsulotga kelganda aktivga o'xshaydi. Umumiy operatsion mexanika o'rnatilgandan so'ng, yangi variant jamoa mahsulotning qolgan umri davomida saqlab turishi kerak bo'lgan boshqa orqa qism bilan kelish o'rniga ishchi poydevorni meros qilib olishi mumkin.

Mahsulot aslida boshqacha bo'lgan joyda maxsus muhandislikni saqlang

Qayta ishlatiladigan platforma ulangan mahsulotlarni yanada umumiylashtirmasligi kerak. Uning vazifasi farqlashni keltirib chiqarmaydigan qismlardan takroriy muhandislikni olib tashlashdir.

Maxsus harakatlar hali ham qurilma xatti-harakatlari, domenga xos mantiq, ish jarayonlari, foydalanuvchi tajribasi, ixtisoslashgan integratsiyalar va ma'lum bir mahsulotning jismoniy dunyo bilan o'zaro ta'siriga tegishli. Aynan shu sohalarda muhandislik tanlovlari bir mahsulotni boshqasidan sezilarli darajada yaxshiroq qilishi mumkin.

Kamdan-kam hollarda atrofdagi operatsion sanitariya-tesisat bir xil munosabatda bo'lishga loyiqdir. Bir xil mashinaning oddiy versiyasi va sanoat versiyasi turli xil sensorlar, boshqaruv elementlari va interfeyslarni talab qilishi mumkin, ammo ular qurilmalarni aniqlash, dasturiy ta'minot versiyalarini kuzatish yoki parkni boshqarishning alohida usullarini talab qilmasligi kerak.

Men muhandislarning bu vaqtni jamoada boshqa mahsulot uchun mavjud bo'lgan mexanikani qayta tiklashdan ko'ra, mahsulotning dala sharoitida qanday ishlashini takomillashtirishga sarflashlarini ko'rishni afzal ko'raman. Umumiy poydevor maxsus muhandislik imkoniyatlarini kamaytirmaydi; u bu harakatni infratuzilma tomonidan iste'mol qilinishidan himoya qiladi.

Haqiqiy sinov jamoa ikkinchi raqamli mahsulotni ishlab chiqarishni boshlaganda keladi.

Yaxshi platforma keyingi mahsulotni birinchisidan osonroq qiladi

Agar ikkinchi mahsulot birinchi mahsulot bilan deyarli bir xil platforma ishlashini talab qilsa, aslida juda oz qismi qayta ishlatilgan.

Yangi variant operatsion modelning o'zgarmagan qismlarini meros qilib olishi kerak: ta'minot oqimlari, identifikatsiya, hayot aylanishi mexanikasi, flot vositalari, dasturiy ta'minot jarayonlari, qo'llab-quvvatlash ko'rinishi va umumiy integratsiyalar. Keyin muhandislik sa'y-harakatlari poydevorni qayta qurish o'rniga farqlarga - ehtimol yangi sensor paketiga, boshqa boshqaruv ish oqimiga yoki mijozga xos integratsiyaga - o'tadi.

Yangi apparat avlodi xuddi shu g'oyani ko'proq bosim ostiga qo'yadi. Eski qurilmalar sohada faol bo'lib qolsa, uning imkoniyatlari sezilarli darajada o'zgarishi mumkin. Yetuk platforma jamoani mijozlar hali ham bitta mahsulot oilasi deb biladigan ikkita alohida platforma stekini saqlashga majburlamasdan ikkalasini ham qo'llab-quvvatlashi mumkin.

Bularning hech biri bitta monolit orqa qismni talab qilmaydi. Turli xil mahsulotlar hali ham aniq me'moriy chegaralarga muhtoj bo'lishi mumkin. Muhimi, bir xil muhandislik mas'uliyatini asosli sababsiz ikkinchi marta amalga oshirishdan qochishdir.

Aynan o'shanda platforma to'plangan qo'shimcha xarajatlar o'rniga aktivga aylanadi. Qo'llab-quvvatlashni tushunish uchun kamroq parallel vositalar mavjud, nashrlar yanada izchil yo'llarni bosib o'tadi va kompaniya cheksiz meros qilib oladigan boshqa orqa tomon o'rniga boshqa mahsulot qo'shish boshqariladigan kengaytmaga aylanadi.

Platformani mahsulot arxitekturasining bir qismi sifatida ko'rib chiqing

Jismoniy mahsulotlar qayta ko'rib chiqishlar, xizmat ko'rsatishga yaroqlilik, ishlab chiqarishga yaroqlilik va kelajakdagi o'zgarishlarni hisobga olgan holda ishlab chiqilgan. Bog'langan mahsulotlar dasturiy ta'minot tomonida ham xuddi shunday intizomga muhtoj.

Birinchi orqa qism vaqtinchalik bo'lishi mumkin. Birinchi ta'minot skripti yoki qo'llab-quvvatlash vositasi ham shunday bo'lishi mumkin. Bunda hech qanday yomon narsa yo'q. Muammolar mahsulotning o'zi rivojlanishda davom etar ekan, vaqtinchalik mexanikalar jimgina doimiy arxitekturaga aylanganda boshlanadi.

O'sha paytga kelib, ulangan mahsulot endi shunchaki apparat, dasturiy ta'minot va ilova emas. Bu, shuningdek, har bir qurilmani aniqlaydigan, uning imkoniyatlarini tushunadigan, to'g'ri konfiguratsiyani qo'llaydigan, yangilanishlarni qo'llab-quvvatlaydigan va jamoalarga yetkazib berilgandan keyin yillar davomida muammolarni aniqlashga yordam beradigan infratuzilmaga bog'liq.

Ushbu qatlam mahsulot arxitekturasi sifatida ko'rib chiqilgandan so'ng, bo'linish aniqroq bo'ladi: standart mexanika qayta ishlatilishi mumkin bo'lib qoladi, maxsus ish esa bir mahsulot yoki mahsulot oilasini boshqasidan aslida ajratib turadigan narsaga o'tadi.

Eng kuchli platforma shunchaki birinchi ulangan mahsulotni yaratishga imkon beradigan platforma emas. Bu muhandislik guruhiga har safar yangi orqa qismni meros qilib olmasdan ikkinchi, uchinchi va to'rtinchisini yaratishga imkon beradigan platformadir.

Muallif