Udostępnij za pośrednictwem


Podstawy architekta rozwiązań

Każde obciążenie przechodzi przez proces projektowania składników i topologii. Ten proces jest najbardziej intensywny na początku obciążenia, który obejmuje projektowanie pod kątem początkowych wymagań i długoterminowego sukcesu obciążenia. Architektura jest również zaprojektowana, gdy obciążenie zmienia się w czasie, a organizacja dodaje, zmienia lub usuwa funkcje.

Projektowanie składników i topologii jest podstawową funkcją architekta. Architekci, którzy koncentrują się na rozwiązaniach opartych na chmurze i hybrydowych, są często nazywani architektami rozwiązań w chmurze. W niektórych organizacjach architekci rozwiązań w chmurze istnieją w scentralizowanej pojemności w grupie architektury przedsiębiorstwa. Mogą również skupić się na konkretnym obciążeniu.

Dedykowana rola może dostarczyć funkcję architekta. W niektórych przypadkach zaufani specjaliści techniczni (na przykład główny lider inżynierów obciążeń) mogą dostarczyć funkcję architekta. Lub organizacja może dystrybuować funkcję między małą grupą starszych inżynierów, którzy są powiązani z obciążeniem.

Architekci zwykle mają doświadczenie w rolach poza projektowaniem systemu. Mogą one mieć:

  • Byli deweloperami i członkami zespołu operacyjnego.
  • Pracował z zespołami pomocy technicznej klientów.
  • Opracowano wiedzę na temat testowania systemu pod kątem zapewnienia jakości i akceptacji użytkowników.
  • Przechodzenie do próbnego odzyskiwania po awarii lub reagowanie na zdarzenia.
  • Uwidoczniono zarówno przyrostowe, jak i duże zmiany funkcjonalne obciążeń.
  • Interpretowane specyfikacje i kryteria akceptacji użytkownika.

Chociaż poprzednia lista nie jest wyczerpująca, te perspektywy są ważnym aspektem tego, co architekt wnosi do obowiązków projektowych. W przewodniku Azure Well-Architected Framework przyjęto założenie, że te praktyki są używane w celu najbardziej efektywnego korzystania ze wskazówek.

W poniższych sekcjach przedstawiono wytyczne, które architekci powinni przestrzegać, aby byli skuteczni w ich funkcji.

Posiadanie ram podejmowania decyzji

Kluczowym aspektem projektowania jest użycie spójnego procesu do podejmowania decyzji. Architekt powinien podejść zarówno do projektu początkowego, jak i przyrostowego z rygorem.

Identyfikowanie oczekiwanych decyzji. Skorzystaj ze zdobytych doświadczeń, aby ułatwić identyfikację decyzji. Zarejestruj wszystkie decyzje, które planujesz podjąć.

Podejmowanie świadomych decyzji. Rozważ ograniczenia, ograniczenia, kompromisy, nakład pracy, odwracalność i ryzyko. Dołącz dowody pomocnicze z weryfikacji koncepcji wraz z dokumentacją technologii i wskazówkami.

Decyzje dotyczące dokumentów w rekordzie decyzyjnym architektury (ADR). Udokumentowanie uzasadnienia wraz z każdą decyzją.

Kontynuacja implementacji. Komunikacja i implementowanie wszystkich decyzji. Dowiedz się od implementacji, aby pomóc w podejmowaniu przyszłych decyzji. Poszukaj obszarów, w których nie można zidentyfikować decyzji, które wprowadziły ryzyko.

Znajomość wzorców projektowych chmury

Wzorce projektowe chmury są podstawowym blokiem konstrukcyjnym architektury. Architektura oparta na chmurze i projektowanie aplikacji są często ćwiczeniem w zakresie rozpoznawania wzorców.

Ocena funkcjonalnych i niefunkcjonalnych wymagań obciążenia w celu rozpoznawania wzorców. Poszukaj możliwości mapowania projektu na przypadki użycia za pomocą ustandaryzowanych wzorców.

Pomyśl o przyszłości

Projektowanie w celu osiągnięcia bieżących wymagań jest konieczne, ale ważne jest, aby architekt przewidział ewolucję obciążenia. Włączenie zmian w zaimplementowanym systemie jest droższe niż zmiana projektu przed wdrożeniem.

Aby zaprojektować system, który będzie trwał do planowanego końca życia, należy zaprojektować obciążenie z myślą o elastyczności architektury. Unikaj projektowania klifów, gdy można je zidentyfikować.

Model wzrostu. Przewidywanie, jak użycie obciążenia wzrośnie lub zmniejszy się wraz z upływem czasu.

Zmiany zgodności. Podejmij proaktywne środki, jeśli oczekujesz, że obciążenie będzie spełniać wymagania dotyczące zgodności w przyszłości. Takie podejście może zmniejszyć nakład pracy, gdy przestrzeganie zgodności staje się wymaganiem.

Ekspansja regionalna. Rozważ przyszłe rozszerzenie obciążenia do wielu regionów. Projekt ograniczony do pojedynczego regionu musi być w dużym stopniu refaktoryzowany w przypadku wdrożenia w wielu regionach i może to być kosztowna zmiana. Istnieje jeszcze większa złożoność, jeśli projekt obciążenia musi pomieścić wiele lokalizacji geograficznych z różnymi wymaganiami dotyczącymi zgodności. Upewnij się, że czynniki projektowe w rozsądnym przewidywaniu rozwoju regionalnego.

Plany rozwoju produktu. W projekcie nie uwzględniaj składników, które znajdują się na ścieżce do wycofania. Podobnie należy zachować ostrożność w przypadku uwzględnienia funkcji w projekcie, które są obecnie w stanie wersji zapoznawczej. Mogą one zostać zwolnione, ale mogą być również anulowane. Wyprzedzanie krzywej przy użyciu funkcji w wersji zapoznawczej może być bardzo korzystne. Wkrótce po wydaniu funkcji obciążenie jest przygotowane do przejścia do środowiska produkcyjnego. Jednak uwzględnij funkcje w wersji zapoznawczej w projekcie dopiero po wykonaniu starannej analizy ryzyka. Dostarczaj tylko funkcje, które mają tolerowany profil ryzyka.

Aby uzyskać więcej informacji na temat wzorców projektowania chmury, zobacz:

Projektowanie pod kątem możliwości obsługi

Projektowanie obciążeń z trzema kluczowymi perspektywami obsługi:

Obsługa dostawcy usług w chmurze. Obciążenie powinno działać w ramach obsługiwanej konfiguracji dostawcy usług w chmurze, aby uniknąć zakłóceń w przypadku korzystania z kanałów pomocy technicznej platformy.

Widoczność operacyjna. Projekt powinien zapewnić widoczność wykonywania dla zespołu ds. operacji obciążenia, aby zapobiec nieporozumieniu podczas reagowania na zdarzenia.

Możliwości obsługi klienta. Projekt powinien spełniać potrzeby użytkowników, ale także ułatwiać funkcje obsługi klienta. Projekt, który utrudnia zespołowi pomocy technicznej badanie lub pomoc klientom, jest nieodpowiedni.

Utrzymywanie i zwiększanie umiejętności

Wiedza architekta jest często zakorzeniona w praktycznym doświadczeniu. Ważne jest, aby zainwestować w rozszerzenie zestawu umiejętności, aby nadążyć za zmieniającym się ekosystemem chmury.

Edukacja. Szukaj możliwości szkolenia i certyfikacji oferowanych przez dostawców technologii dla architektów.

Uczestnictwo społeczności. Skontaktuj się z rówieśnikami za pośrednictwem społeczności architektury online i lokalnej.

Ćwiczenia eksploracyjne. Weź udział w sponsorowanych przez organizację maratonach hackatonowych lub podobnych wydarzeniach, aby rozwijać umiejętności w nieznanych obszarach.

Współpraca w celu osiągnięcia sukcesu

Architekt powinien korzystać z wiedzy dostawcy usług w chmurze lub partnera implementacji. Większość dostawców chce, aby obciążenie powiodło się na swojej platformie i często świadczy usługi, takie jak sesje przeglądu architektury lub sesje konsultacyjne ze swoimi architektami rozwiązań w chmurze. Poszukaj możliwości przeglądu i pomocy w relacjach dostawcy.

Bądź metodyczny w podejściu projektowym

Struktury architektury obsługują architekta, oferując perspektywy obciążeń i metodyczne podejścia. Dobrze zaprojektowana struktura zapewnia kompleksowy punkt widzenia obciążenia. Architekci mogą łączyć dobrze zaprojektowaną strukturę z innymi strukturami architektury, takimi jak Open Group Architecture Framework (TOGAF).

Użyj zasad, list kontrolnych, ocen i materiałów referencyjnych w strukturach architektury, aby ustanowić proces pasujący do obciążenia. Łączenie struktur z osobistymi technikami, takimi jak mapowanie umysłu.

Architektura dotyczy komunikacji tak samo, jak o produkcie końcowym. Upewnij się, że optymalizujesz celowe podejmowanie decyzji, potwierdzanie kompromisów i wyraźną komunikację w ustalonych procesach.

Następne kroki