socialgekon.com
  • Hlavná
  • Inžiniersky Manažment
  • Životný Cyklus Produktu
  • Mobilný Dizajn
  • Životný Štýl
Proces A Nástroje

Agilný hardvér s vývojom zabudovaného softvéru

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.

Výzvy správy hardvérových produktov

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.



Špecializované technické talenty je ťažké nájsť lokálne

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.

Systémy na správu verzií nie sú prispôsobené hardvérovému dizajnu

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 sú delokalizované

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ť.

Zmeny hardvéru sú menej flexibilné

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.

Úskalie crowdfundingu

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.

Certifikáty, nariadenia a schválenia

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.

Príležitosti pre správu hardvérových produktov

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.

Zahrňte Agile do 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.

Vodný skok pre vývoj hardvérových produktov

Vodný skok pre vývoj hardvérových produktov

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.

Začleňte Agile do vývoja zabudovaného softvéru

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ú:

  • Vlastník platformy - Zodpovedný za definovanie cieľov v oblasti kvality, plánovania a nákladov
  • Vedúci produktu - Zodpovedný za implementáciu, integráciu a testovanie produktu
  • Vedúci funkcie - Zodpovedá za správu projektov subsystému a za sledovanie pokroku pri plnení tejto funkcie
  • Vývojový tím - Práca na vývoji produktu

Metodika rozdeľuje vývoj zabudovaného softvéru do troch procesných skupín:

Skupiny procesov metodiky návrhu softvéru na báze platformy

Skupiny procesov metodiky návrhu softvéru na báze platformy

  1. Skupina procesov systémovej platformy. Systém vyberie z knižnice platforiem komponenty systému, ktoré budú súčasťou architektúry a platforiem API, a upraví ich tak, aby vyhovovali obmedzeniam príslušnej aplikácie. Proces prispôsobenia sa vykonáva v iteračných cykloch programovaním procesorov konfigurovateľných návrhárom a logiky rekonfigurovateľnej za behu integrovanej do platformy.
  2. Skupina procesov vývoja produktu. Funkcie, ktoré tvoria produkt, sú rozdelené buď na hardvérové ​​alebo softvérové ​​prvky platformy. Metodika poskytuje algoritmy rozdelenia, ktoré berú do úvahy spotrebu energie, čas vykonania a veľkosť pamäte komponentov aplikácie.
  3. Skupina procesov riadenia produktov monitoruje a riadi rozsah, čas, kvalitu a nákladové parametre produktu. Navrhované prístupy pozostávajú hlavne z postupov propagovaných metódou Scrum Agile, ako aj z agilných vzorov.

Vytvorte program vývoja hardvéru

Š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.

Program rozvoja hardvéru

Program rozvoja hardvéru

Úspešné testovanie hardvéru pomocou zabudovaného softvéru

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:

  • Testovanie vyvolané udalosťou: Iniciované konkrétnymi udalosťami alebo zmenami stavu v životnosti hardvérového produktu (napr. Spustenie, reset, vypnutie). Jeho cieľom je zistiť trvalé poruchy.
  • Časovo podmienené testovanie: Spustené v predkonfigurovaných časoch pri normálnej prevádzke systému, pravidelne vykonávané na zisťovanie trvalých porúch. Je to užitočné v systémoch bežiacich po dlhú dobu, kde sa nevyskytujú významné udalosti spúšťajúce test. Časovo testované testovanie je tiež užitočné na zisťovanie občasných porúch.

Prijatie hardvéru produktom s integrovaným softvérom

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.

Vývoj hardvéru vyžaduje riadenú agilitu

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:

  • Nedostatok špecializovaného talentu
  • Systémy riadenia verzií, ktoré nie sú prispôsobené pre hardvér
  • Delokalizované výrobné zariadenia
  • V porovnaní so softvérom je ťažšie vykonať zmeny
  • Požiadavky na certifikáciu a reguláciu, ktoré ukladajú prekážky v plánovaní

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.

Pochopenie základov

Dá sa na vývoj hardvéru použiť agilný?

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.

Čo robí inžinier pre vývoj hardvéru?

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ď.

Aký je rozdiel medzi softvérovým a hardvérovým inžinierstvom?

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.

Čo sa myslí pod zabudovaným systémom?

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.

Umenie vojny aplikované na vývoj softvéru

Back-End

Umenie vojny aplikované na vývoj softvéru
Webpack alebo Browserify & Gulp: Čo je lepšie?

Webpack alebo Browserify & Gulp: Čo je lepšie?

Technológie

Populárne Príspevky
Ako odstrániť vírusy na iPhone
Ako odstrániť vírusy na iPhone
Úzkosť zo separácie: Výukový program na izoláciu vášho systému pomocou menných priestorov Linux
Úzkosť zo separácie: Výukový program na izoláciu vášho systému pomocou menných priestorov Linux
Používanie Spring Boot na implementáciu WebSocket s programom STOMP
Používanie Spring Boot na implementáciu WebSocket s programom STOMP
Dokonalé súkromné ​​ubytovanie: Airbnb vs. Expedia
Dokonalé súkromné ​​ubytovanie: Airbnb vs. Expedia
Ako vytvoriť token ERC20 jednoduchým spôsobom
Ako vytvoriť token ERC20 jednoduchým spôsobom
 
Sila Figmy ako dizajnového nástroja
Sila Figmy ako dizajnového nástroja
Agile UX: Ako začleniť UX a produktový dizajn do agilného
Agile UX: Ako začleniť UX a produktový dizajn do agilného
Zlepšite zapojenie pomocou týchto najlepších postupov pri navrhovaní SaaS UX
Zlepšite zapojenie pomocou týchto najlepších postupov pri navrhovaní SaaS UX
Ako vytvárať vlastné widgety Magento 2
Ako vytvárať vlastné widgety Magento 2
Navigácia v ekosystéme React.JS.
Navigácia v ekosystéme React.JS.
Kategórie
Back-EndĽudia A TímyDizajn ZnačkyDistribuované TímyTrendyPlánovanie A PrognózaKpi A AnalyticsUverejnenieDizajn Používateľského RozhraniaInžiniersky Manažment

© 2023 | Všetky Práva Vyhradené

socialgekon.com