Budovanie komplexných hardvérových a softvérových ekosystémov, ktoré vyhovujú produktom / trhu, je náročná úloha. Zatiaľ čo väčšina startupov s hardvérom nakoniec zlyhá, pretože sa im minú peniaze, podľa a správa z CB Insights je hlavným hlavným dôvodom vlastne nedostatočný dopyt po ich produktoch. To len podčiarkuje dôležitosť toho, aká dôležitá je rola produktového manažéra pre startupy hardvéru, pretože ich primárnym cieľom je zistiť potreby a slabé stránky klienta s cieľom dodať úspešný produkt.
Posledná spoločnosť, ktorú som riadil, vytvorila ekosystém parkovacích, webových, mobilných, zabudovaných softvérových aplikácií a hardvérových zariadení. Stratégia hardvérového produktu bola súčasťou mojej každodennej práce, ktorá ma priviedla k experimentom s rôznymi pracovnými postupmi vývoja hardvérových produktov. Napriek tomu, že som pracoval 10 rokov s hardvérovými produktmi a získal som BS v elektronike a telekomunikáciách, musel som sa pri práci toho veľa naučiť. Sprievodcu som vytvoril nižšie v nádeji, že sa vám v správe hardvéru s hardvérom s integrovaným softvérovým priestorom podarí rýchlejšie ako ja.
Zatiaľ čo SaaS a mobilné aplikácie možno ľahko vyvinúť pomocou agilný rámec Vďaka jedinečným podmienkam pri vývoji zabudovaného softvéru a hardvérových zariadení je uplatňovanie agilných princípov oveľa ťažšie. V tejto prvej časti sa budeme venovať charakteristikám vývoja hardvéru, ktoré vytvárajú zložitosť. Nie všetky majú priame riešenia, ale existujú spôsoby, ako znížiť ťažkosti použitím konkrétnych stratégií vývoja hardvéru, ktorým sa budeme venovať v nasledujúcej časti.
Vytváranie nových hardvérových produktov je podstatne ťažšie ako opakovanie existujúcich. Zahŕňa to veľa kreativity a skúseností s prototypovaním, ktoré sa na univerzitách vyučuje zriedka. Niektoré univerzity ani nemajú prototypové vybavenie alebo nástroje potrebné na rozvoj týchto zručností a tieto skúsenosti sa takmer výlučne získavajú vo väčších hardvérových korporáciách, ktoré majú výskumné a vývojové centrá. Nájsť miestnych odborníkov s príslušnými odbornými znalosťami preto môže byť veľmi ťažké, čo vedie k tomu, že veľa zakladateľov hardvérových startupov bude musieť rozšíriť svoj talent prostredníctvom diaľkového prenájmu.
Väčšina systémov na správu verzií (VCS) je zameraná na podporu textového formátu, pretože bola vytvorená pre spoluprácu pri vývoji softvéru. V projektoch týkajúcich sa vývoja hardvéru sa informácie namiesto toho zhromažďujú v návrhových súboroch vytvorených pomocou špeciálnych nástrojov, ako je OrCAD. A niektoré z týchto nástrojov podporujú iba binárne súbory, ktoré nie sú ani optimalizované na použitie vo VCS. CADLAB je relatívne nový pokus o vytvorenie hardvérovo kompatibilného VCS a dúfajme, že v blízkej budúcnosti pribudne ďalších nástrojov, ako je tento.
Zariadenia na výrobu hardvéru sa často nachádzajú v inom regióne, krajine alebo na kontinente. Komunikácia medzi výrobcom hardvéru a výrobcom si vyžaduje osobitnú pozornosť a je kľúčom k úspešnej dodávke produktu. Úspešná komunikácia si vyžaduje strategickejšie formovanie, aby sa zabezpečila kvalita produktu a zabezpečilo sa, že zvládne zmeny v dynamickej fáze validácie trhu s produktom. Na dosiahnutie tohto cieľa musí výrobca hardvéru vytvoriť veľa podrobných špecifikácií zasielaných výrobcovi. Rámec spolupráce musí zabezpečiť rýchle poskytovanie informácií a správu životného cyklu špecifikácií, pretože môžu ľahko rýchlo zastarať.
Populárny operačný model pri štartoch softvéru v raných fázach obetuje kvalitu za rýchlosť. Dokonca aj Facebook dlho obhajoval mantru „rýchlo sa pohybuj a rozbíjaj veci“. Ďalším známym prístupom je „falošné to, kým to nezvládnete“. Toto funguje pre startupy z dôvodu lacných nákladov na infraštruktúru a efektívnych programovacích rámcov, ktoré umožňujú vývojárom nasadiť aktualizácie kódu každý deň.
Aj keď sa tento prístup k vývoju pomaly vkradol do hardvérového priestoru, je to v tejto oblasti nešťastný trend, pretože je oveľa ťažšie vykonať a nasadiť hardvérové zmeny. Náklady na vývoj kompenzujú hodnotu získanú rýchlymi a častými vydaniami, takže je skutočne oveľa žiadanejšou stratégiou investovať viac do fázy návrhu, aby sa vytvorili zdravé hardvérové architektúry.
Mnoho startupov je uväznených v myšlienke, že spustenie je úspešné hardvérové crowdfunding kampaň je ekvivalentná validácii trhu. Crowdfunding býva najúspešnejší pri produktoch obsahujúcich hardvérový komponent, najmä kvôli našej nevedomej túžbe vlastniť fyzický objekt. Cieľom skupinového financovania však nie je overiť váš produkt v rozsahu, ale skôr demokratický spôsob financovania vývoja produktov v počiatočnom štádiu. Nešťastnou realitou je, že pre mnoho spoločností s úspešnými crowdfundingovými kampaňami bolo neskôr ťažké alebo takmer nemožné rozšíriť svoju výrobu, pretože neoverili svoj trh vo veľkom rozsahu.
Všetky hardvérové produkty vyžadujú na predaj určitý druh certifikácie. Je to jeden z najviac prehliadaných krokov vo veľmi skorých fázach uvedenia hardvérových produktov na trh. Ako ovplyvní obmedzenie certifikácie produktový plán a rámec použitý pri vývoji? Nie je nezvyčajné naplánovať počiatočné fázy projektu s certifikáciou a ďalšími schváleniami ako míľnik projektu, až potom podmienečne ustúpiť od počiatočnej fázy. Produktoví manažéri môžu namiesto toho starostlivo analyzovať nariadenia, závislosti a brány strategického rozhodovania v rámci produktového plánu prístupom podobnejším vodopádom.
Teraz, keď sme sa zaoberali niektorými výzvami, ktoré existujú v oblasti hardvéru, so zabudovaným softvérom, poďme sa teraz pozrieť na to, ako zjednodušiť a predvídať vývojový proces, aby sme vyrovnali inherentné ťažkosti vývoja hardvéru.
Skúsení produktoví manažéri sú si vedomí výziev, ktoré stoja za budovaním hardvérových produktov s integrovaným softvérom, ktorý sa snaží využiť trhovú príležitosť vytvorenú novým technologickým vývojom. Naučia sa vyvážiť zrýchlenie času uvedenia na trh bez toho, aby znížili pravdepodobnosť úspechu produktu od fázy plánovania. Väčšinou sa to deje formou a vodný skrumáž prístup.
Fáza nápadu na produkt rozširuje princípy, ciele a funkcie na vysokej úrovni produktu čo najpodrobnejšie. Skvelí produktoví manažéri trávia viac času zdokonaľovaním dodávok tejto fázy: vízia, poslanie, hodnotenie príležitostí, ciele a vlastnosti hardvérových produktov. Toto je severná hviezda produktu, ktorá musí byť dostatočne zreteľná pred tým, ako začne pracovať na akomkoľvek prototype hardvéru, preto sa odporúča prístup k vodopádu.
Je veľmi dôležité mať dobre zdokumentované požiadavky a funkčné špecifikácie pre hardvérové produkty, ako aj dobrú technickú architektúru pre vstavaný softvér poháňajúci hardvérový produkt. Zmeny v požiadavkách a špecifikáciách by nemali byť penalizované, nemali by sa podporovať, keď sa odhlásia celým tímom.
Pri vývoji zabudovaného softvéru je možné použiť štandardnú scrum metodológiu. Je menej nákladné z hľadiska času a peňazí na úpravu a zdokonalenie implementácie softvéru, aby bolo možné pracovať s preddefinovanou hardvérovou architektúrou, ako naopak.
Konečné testovanie integrácie a testovanie prijatia používateľom by sa malo vykonať v podmienkach vodopádu. V tejto fáze je vývojová fáza úplná a nové funkcie a chýbajúce funkcie sa zaznamenávajú ako ďalšie pracovné požiadavky pre ďalšie plánovacie obdobie.
Budovanie komplexných hardvérových produktov s integrovaným softvérom ovplyvňuje použitie tradičných metodík vývoja softvéru. Mnoho systémov používaných na výrobu softvéru, ktorý beží na osobnom počítači, nie je vhodných na vývoj zabudovaného softvéru, pretože existujú obmedzenia týkajúce sa nedostatku zdrojov a oveľa dlhších životných cyklov vývoja.
Skupina akademikov a odborníkov z Brazílie ponúkla potenciálne riešenie: Metodika návrhu softvéru na báze platformy pre vstavané riadiace systémy: Agile Toolkit . Táto metodika obsahuje agilný princípov do vývoja zabudovaného softvéru. Ďalej uvádzame krátke zhrnutie metodiky, avšak manažérom hardvérových produktov sa dôrazne odporúča prečítať si tento dokument úplný popis pred uplatnením v praxi.
Úlohy zahrnuté v tejto metodike sú:
Metodika rozdeľuje vývoj zabudovaného softvéru do troch procesných skupín:
Štruktúrovanie programu vývoja hardvéru v počiatočnom štádiu umožnilo spoločnostiam poskytnúť rýchle otočenie alebo plán B. Z obchodného hľadiska môže znížiť finančné marže, ale v konečnom dôsledku poskytuje potrebnú pružnosť na zvládnutie neustále sa meniaceho trhu. podmienky, pokiaľ ide o výrobky uvoľnené konkurenciou a pokrok v technologických možnostiach.
Predpokladajme, že spoločnosť uskutoční úspešnú crowdfundingovú kampaň pre svoj hardvérový produkt so zabudovaným softvérom. Pracujú skvele pri prvej várke produktov, kým veľká zavedená spoločnosť neoznámi niečo podobné. Najdôležitejšie sú univerzálnosť a čas uvedenia na trh. Pragmatická a svižná reakcia na túto situáciu zvyšuje pravdepodobnosť úspešného produktu. Vďaka zavedenému programu vývoja hardvéru sa spoločnosť môže rýchlo prispôsobiť a dať do pozornosti bohatšiu verziu produktu ako reakciu na svojich konkurentov.
Testovanie je rozhodujúcou súčasťou správy hardvérových produktov, pretože na rozdiel od systému Windows agilné testovanie softvéru , väčšinu hardvérových chýb je možné opraviť iba vytvorením novej dávky produktov. Zariadenia Samsung Galaxy Note 7, ktoré boli vzplanutie je skvelým príkladom toho, prečo by malo byť testovanie hardvéru najvyššou prioritou pre všetkých produktových manažérov.
Funkčné skúšky sú kľúčovým cieľom technickej validácie hardvéru so zabudovanými softvérovými produktmi. Zložitosť týchto postupov vyplýva zo skutočnosti, že chyby pravdepodobne pochádzajú z ktorejkoľvek časti systému.
Testovanie jednotky sa zvyčajne deje v simulovanom prostredí po každom šprinte, pretože simulovaný hardvér ponúka výhodu v tom, že je dokonale ovládateľný. Testovacie skripty je možné automatizovať, môžu dohliadať na vykonávanie a zabíjať testy, ktoré sa pravdepodobne zrútili, pretože nepriniesli žiadne výsledky.
Testovanie integrácie by mali brať do úvahy online a offline operácie a podrobenie sa hardvérového produktu skutočným prevádzkovým podmienkam. Napríklad, ak spoločnosť vyvíja systém monitorovania mozgu namontovaný na hlave počas outdoorových aktivít, mali by sa pri testovacích podmienkach zohľadniť tieto osobitosti.
Testovanie systému zahŕňa testovanie celého systému na chyby a chyby. Táto skúška sa vykonáva prepojením hardvérových a softvérových komponentov celého systému (ktoré boli predtým testované na jednotku a integráciu) a potom boli testované ako celok. Toto testovanie je uvedené v testovacej metóde čiernej skrinky, pri ktorej sa kontroluje, či softvér obsahuje scenáre očakávané používateľom, potenciálne výnimky a podmienky okrajových prípadov. Spomenuteľné špeciálne kategórie testovania:
Hodnota produktu pre hardvérové produkty so zabudovaným softvérom sa zvyčajne overuje po kroku prijatia produktu v metodike pádu vodného skrumáže. Hardvér so zabudovaným softvérovým ekosystémom musí pri overovaní a akceptovaní uprednostňovať hardvér pred softvérom. Ako už bolo uvedené, vykonávanie hardvérových zmien je náročnejšie a nákladnejšie. Je obvyklé, že produktoví manažéri vymýšľajú inovatívne riešenia, ktoré sú potrebné na riešenie problémov s akceptáciou alebo na úpravu hodnoty zvážením obmedzenia, ktoré nie je schopné zmeniť hardvér, a uprednostnením ďalších iterácií v oblasti vývoja softvéru.
Vynikajúci produktoví manažéri majú prezieravosť produktu a veľkú predvídavosť v predpovedaní hardvérových potrieb a určovaní priorít tých správnych funkcií, ktoré je možné zahrnúť, aby bol obchodný model pevný, akceptácia pevná a užívatelia mohli produkt používať. Ak vezmeme do úvahy zabudovaný softvér, „výzdoba“ hardvéru by nemala byť prekvapujúca, pretože musí dodržiavať pravidlá a obmedzenia, ktoré vychádzajú z procesov vývoja hardvéru, certifikačných postupov, výrobných problémov a akceptácie trhu.
Spoločnosť Agile vzala svet vývoja softvéru útokom a teraz sa začala vkrádať do hardvérového priestoru. Podmienky hardvérového produktu s vývojom zabudovaného softvéru však prinášajú rôzne výzvy:
Tieto výzvy sťažujú uplatňovanie agilných princípov rovnakým spôsobom ako softvérové spoločnosti.
Na zvládnutie týchto výziev je potrebný riadený agilný prístup vo forme pádu vodného skrumáže. Vývoj zabudovaného softvéru je vytváraný podľa štandardných procedúr scrumu, zatiaľ čo ďalšie kroky, ako je návrh, vytváranie špecifikácií a testovanie, sú implementované do nastavenia vodopádu. To umožňuje hardvérovým spoločnostiam ťažiť z výhod, ktoré ponúka spoločnosť Agile, pri zachovaní funkčného prístupu k správe produktov, ktorý musí brať do úvahy rôzne obmedzenia uvedené vyššie. Tento riadený agilný prístup poskytuje úspešnú cestu vpred v kontexte rýchlo sa meniacich trhových podmienok a neustáleho technologického zlepšovania.
Pre agilný vývoj hardvéru sa odporúča prístup vodných skrumáží. Vývoj zabudovaného softvéru je vytváraný podľa štandardných procedúr scrumu, zatiaľ čo ďalšie kroky, ako je návrh, vytváranie špecifikácií a testovanie, sú implementované do nastavenia vodopádu.
Inžinier vývoja hardvéru je zodpovedný za skutočné vytváranie a testovanie hardvérových komponentov, ako sú dosky s plošnými spojmi, procesory, pamäťové zariadenia atď.
Hlavným rozdielom medzi softvérovým a hardvérovým inžinierstvom je fyzický prvok. Softvéroví inžinieri pracujú s kódom iba v počítači, zatiaľ čo hardvéroví inžinieri pracujú s fyzickými produktmi, ako sú procesory, dosky s plošnými spojmi alebo pamäťové zariadenia.
Vstavané systémy sú softvérové komponenty, ktoré fungujú v rámci hardvérového produktu. Nazývajú sa vložené, pretože sú prispôsobené iba na fungovanie na konkrétnom hardvéri.