A DevOps architektúrája
A jól megtervezett architektúra olyan, mint egy autópálya, amely gyorsan képes üzleti értéket nyújtani a végfelhasználónak. Ha nincs rendben, olyan, mint egy kimosott híd, amely megakadályozza a célokat.
A szoftverarchitektúra bemutatása
Minden architektúra hosszú távú életképességéhez a tervezés, a megvalósítás, a frissítés és az elkerülhetetlen változás sikeresnek kell lennie.
Az architektúra absztrakció, amíg működésbe nem lép, amikor élővé válik.
William LeMessurier, a Egyesült Államok egyik legkitűnőbb szerkezeti tervezője, tervezési és építési tanácsadóként dolgozott az innovatív Citicorp központ tornyán New Yorkban. A torony 1977-ben készült el. A következő évben, miután egy princetoni egyetemista tanulmányozta a toronytervet, felhívta, hogy mutasson rá egy lehetséges hiányosságra, LeMessurier felfedezte, hogy az épület valóban szerkezetileg hiányos.
Az épület nem lenne képes ellenállni 70 mérföld per óra szél - amely szerint az időjárási táblázatok, fordul elő legalább egyszer 55 évente New York City. Ebben a helyzetben az ízületek meghibásodnak, és az épület összeomlik, a 13. emelettől kezdve. A torony teljesen elfoglalt volt abban az időben. LeMessuriernek meg kellett szakítania a híreket a tulajdonosoknak és a városi tisztviselőknek.
A LeMessurier a szakmai felelősség összetett és nehéz problémájával szembesült. Figyelmeztetnie kellett az emberek széles csoportját a szerkezeti hiányra, és össze kellett fognia az együttműködésüket a hiány javításában, mielőtt egy hurrikán lehozta volna az épületet.
Azon a nyáron az Ella hurrikán a város felé haladt. Az épület védett. A Citicorp torony azóta is szilárdan áll.
Fontos
A szoftverarchitektúra alapvető szerkezeti döntések meghozataláról szól, amelyek megvalósítása költséges.
Jellemzői a következők:
- Érdekelt felek, amelyek lehetnek az üzleti érdekelt felek, az alkalmazáscsapatok, a minőségbiztosítási csapatok, az üzemeltetés, a biztonság és a felhasználók.
- Az aggodalmak elkülönítése: az összetettség csökkentése érdekében válassza el a kialakítást hajtó szempontokat.
- Minőségvezérelt attribútumok: beleértve a méretezhetőséget, a bővíthetőséget, a megbízhatóságot, a karbantarthatóságot és a biztonságot.
- Fogalmi integritás: a szoftverarchitektúra átfogó képet ad arról, hogy mit kell tennie, és hogyan kell azt megtennie az architektúra, az adatok és a folyamatok integritásának fenntartása érdekében.
- Kognitív kényszerek: a szervezetek számára korlátozott a kommunikációs struktúrák másolataiból álló tervek készítése.
- Ismétlődő stílusok: a szoftverarchitektúra szemlélete megköveteli, hogy szabványos módszereket fejlesszünk ki az ismétlődő problémák kezelésére.
Bármely architektúra a "-ilities" címet adja meg:
- naplózás
- rendelkezésre állás
- Kompatibilitás
- kompatibilitás
- Konfigurálhatóság
- Hozzáférhetőség
- Alkalmazkodóképesség
- Megfizethetőség
- testreszabhatóság
- bizonyíthatóság
- üzembe helyezés
- Tartósság
- Használhatóság
- Bővíthetőség
- Rugalmasság
- Interoperabilitás
- Kezelhetőség
- Hordozhatóság
- Kiszámíthatóság
- helyreállíthatóság
- megbízhatóság
- megismételhetőség
- újrafelhasználhatóság
- Skálázhatóság
- szervizelhetőség
- szociability
- Egyszerűség
- tesztelhetőség
- Fenntarthatóság
- Nyomonkövethetőségi
- Reprodukálhatóság
A szoftverek készítésekor az építészeknek meg kell határozniuk ezeknek a "-ilities" legfontosabb elemeit. Azonban számos tényező ellenzi egymást.
A magas teljesítmény és a szélsőséges méretezhetőség elérése például nehéz lehet, mert az architektúra, a műveletek és sok más tényező gondos egyensúlyát igényli.
Ez a döntéshozatali folyamat egy egyensúlyozó intézkedés; Az egyes építészeti döntések előnyeinek és hátrányainak kiegyensúlyozása az építészek által oly gyakran siratott kompromisszumokhez vezet.
Az elmúlt néhány évben a szoftverfejlesztés alapvető mérnöki gyakorlatának növekményes fejlesztései megalapozták az architektúra időbeli változásainak újragondolását, valamint a fontos architekturális jellemzők védelmének módját.
DevOps-architektúra
Gene Kim neves DevOps-kutató, író és látnok. Három dolgot azonosít, amelyek szükségesek a DevOps végrehajtásához:
"Az egyik a kulturális összetevő. Természetesen a másik rész az eszközök és a technológia. A harmadik rész az architektúra. Nagyszerű technológiai eljárásokra van szüksége, beleértve az automatizálást is. Nagy megbízhatóságú kultúrára van szüksége. És ez az architektúra lehetővé teszi, hogy oda jusson."
A Gyorsítás című könyvben bemutatott kutatások nem mutatnak összefüggést a rendszer típusa és a teljesítménnyel számos rendszertípus esetében, beleértve az új rendszereket, a rekordrendszereket, a csomagolt kereskedelmi szoftvereket, a nagyszámítógépes szoftvereket és a beágyazott szoftvereket. Ami fontos, az üzembe helyezés és a tesztelhetőség.
Tipp.
A jó architektúra megkönnyíti az üzembe helyezést és a tesztelhetőséget.
Architektúra és szervezet
Conway törvényét Melvin Conway számítógép-programozóról nevezték el, aki 1967-ben vezette be az ötletet. Tudomásul veszi, hogy a rendszertervezést a rendszereket tervező szervezetek kommunikációs struktúrái befolyásolják:
Fontos
Conway törvénye: Minden olyan szervezet, amely (széles körben definiált) rendszert tervez, olyan tervet fog készíteni, amelynek struktúrája a szervezet kommunikációs struktúrájának másolata.
A törvény azon az érvelésen alapul, hogy egy szoftvermodul működéséhez több szerzőnek is gyakran kell kommunikálnia egymással.
Ezért a rendszer szoftverfelület-struktúrája tükrözi az azt előállító szervezet(ek) társadalmi határait, amelyek között a kommunikáció nehezebb.
Tervezői ismeretek az Enterprise DevOpsban
Az építészek számos olyan készséget fejlesztenek és finomítanak, mint például:
- nagy kép gondolkodás
- rendszerek gondolkodása
- üzleti ismeretek
- interperszonális készségek
- befolyásoló és vezetői készségek
- a műszaki architektúra ismerete
- Informatikai pénzügyi felügyeleti tapasztalat
- időbeosztás
- nagyvállalati architektúra -keretrendszereknek való kitettség
- az informaták vezetőinek való elmagyarázásának képessége
- bemutató készségek
- coaching skills
- az adatarchitektúra és az informatikai műveletek ismerete
Fontos
De mi a 21. századi siker legfontosabb képessége?
A tanulásra való hajlandóság és képesség.