Като архитект на решения ще бъдете помолени да проектирате много проекти. Не забравяйте да имате предвид голямата картина, когато създавате своя дизайн

Една от най-добрите части на това да си архитект на решения е да измисляш архитектурен дизайн за нови проекти. Можете да изследвате нови технологии, да измислите нови модели и да изградите нещо от нулата. Все неща, които софтуерните инженери обичат.

Когато бъдат помолени да проектират проект след проект, хората са склонни да губят от поглед голямата схема на това, което се опитват да постигнат. Всеки проект стеснява малко визията им, докато не се фокусират напълно върху отделен проект.

Това води до функции, които се чувстват неуместни във вашето приложение. В крайна сметка те са „завършени функции“, но не са сплотени в приложението ви, защото сте имали тунелно виждане. Може случайно да сте изгубили от поглед голямата картина, защото сте били толкова фокусирани върху завършването на този конкретен проект.

На всеки се случва. Всички ние се нуждаем от някакво подкрепление за това, което всъщност се опитваме да направим. Ако оставим нещата сами, без да се отдръпваме от време на време, сме склонни да се отдалечим от по-голямата картина.

Не можете да видите гората през дърветата.

Днес ще говорим за стъпките, които можете да предприемете, за да предотвратите това „отклоняване“, да оставите част от детайлите и да се съсредоточите върху крайната си игра.

Установете ръководни принципи

Ако все още не сте го направили, трябва да измислите ръководни принципи за вашата работа. Те не трябва да са специфични за архитектурата на решенията или дори за конкретен продукт. Но те трябва да бъдат записани и официално съгласувани.

AWS има „набор от лидерски принципи“, които управляват начина, по който работят всеки ден. Те действат като стълбове за всичко, което правят от наемането на лидери до проектирането на решения.

Като установите своите ръководни принципи, вие поставяте набор от проверки и баланси, които помагат да насочите работата си в посоката, в която вашата компания иска да върви.

С тези принципи ваша отговорност като архитект на решения е да се уверите, че вашите проекти попадат в границите. Следвайте нормите, установени от вашата компания, и голямата картина ще си дойде на мястото.

Всеки дизайн, който измислите, трябва да ги вземе предвид. Ако започнете да се отклонявате, ще започнете да пропускате по-голямата картина и ще изградите нещо, което не искате.

Може би се чудите: „ Как да измисля тези ръководни принципи? „ Страхотен въпрос!

Говорете с лидерите около вашата организация. Вижте какви са техните цели за продукта, върху който работите. Какво искат да постигнат?

Намерете припокриванията. Какво казват множество лидери? Кой е особено запален по нещо? Това са началните точки за вашите ръководни принципи. Трябва да вземете мислите на тези хора и да ги превърнете в действащи стълбове, които движат развитието.

Спрете да бързате

Ще бъдете помолени за бърз обрат на вашите планове. Това е само част от бизнеса. Всичко си има срок. Но вашата работа е да бъдете отговорни към времето, което отделяте. Не забравяйте, че 2022 е „годината на асинхронността“.

Отделете време да се отдръпнете и да видите къде този нов проект се вписва във вашите ръководни принципи. Ако не пасва, трябва да помислите за разговор със собственика на продукта относно прилагането на различно решение.

Тичали ли сте някога до хранителния магазин, за да вземете едно нещо? Влизате, отивате направо до пътеката, където знаете, че продуктът живее, грабвате го и си тръгвате. Прибирате се у дома, приготвяте се да го отворите и разбирате, че сте взели различно разнообразие от това, което сте искали. Донякъде е това, което искахте, но не наистина.

Бързахте да преминете през магазина за хранителни стоки, защото се почувствате като бързо „ вземете и тръгвайте “. Но тъй като бързахте, не обърнахте внимание на малките детайли и видяхте, че сте хванали грешния вкус.

Същото важи и за проектирането на софтуер като архитект на решения. Дори основен проект може да попадне в капана на бързия и лесен и можете да се окажете с нещо, което не отговаря съвсем на шаблона.

Със софтуера „можете да го имате бързо или можете да имате правилно“. Рядко, ако изобщо, можете да имате и двете.

Говорили сме за „отговорностите на архитекта на решения“ преди. Знаете стъпките към успеха. „Начертайте една или две диаграми“. Попитайте защо. Сдвоете съществуващи части с нови проекти. Но преди всичко не бързайте.

Има нещо, наречено правило 1x, 10x, 100x с развитието. Колкото по-рано хванете проблем, толкова по-евтино е да го разрешите.

Ако адресирате проблем във фазата на планиране или разработка, това е 1x усилие. Ако го хванете в QA или когато вашите автоматизирани тестове се изпълняват, това е 10x усилие. Ако хванете нещо в производството, това е 100x усилие за коригиране.

С навлизането в SDLC все повече и повече хора се включват, което умножава количеството усилия.

Отнасяйте се към всеки проект като към парче от пъзел

Имам приятели, които обичат да правят проекти за къщи. Постоянно правят нещо ново. Когато един проект приключи, те започват нов.

Качеството на тяхната работа е изключително и изглежда професионално изпълнена, когато погледнете един проект изолирано. Но когато погледнете къщата им, тя се чувства малко… разединена.

Всеки проект е правен без да се взема предвид къщата като цяло. Всеки проект е направен много добре, но не вървят заедно.

Когато подхождате към дизайн като към част от голям пъзел, дизайните ви ще бъдат по-сплотени и ще се вписват по-добре в по-голямата картина.

Трябва да вземете предвид вашето приложение и цялостната екосистема, когато измисляте нови дизайни на проекти. Не правете това, което трябва да се направи само за този един проект. Усъвършенствайте как работи с вашето приложение и идентифицирайте други области, които са засегнати от предложените промени.

Новите проекти рядко са изолирани. Те почти винаги са подобрения на съществуваща функционалност или нова функция, която ще добави към набора от инструменти на вашето приложение.

Заключение

За съжаление няма вълшебен куршум, който да запази поглед върху по-голямата картина. Но можете да си зададете тези прости въпроси, когато измисляте своя дизайн.

  • Проектът спазва ли вашите ръководни принципи?
  • Вложихте ли подходящото време и усилия във вашия дизайн?
  • Каква роля играе този проект във вашата екосистема?

Отговаряйки на тези въпроси, ще излезете с дизайн, който се вписва в по-голямата картина.

Никой не иска приложение на Франкенщайн. Нещо, което има куп готини части поотделно, но нямат смисъл заедно. Едно „възхитително приложение“ се усеща сплотено и еднообразно навсякъде.

Като архитект на решения, вие сте първата линия на защита, за да направите вашето приложение страхотно. Ваша отговорност е да се уверите, че частите играят добре една с друга и протичат безпроблемно.

За всичко е необходима практика, за да сте сигурни, че вашият дизайн отговаря на по-голямата картина. Но с течение на времето ще бъде все по-лесно и по-лесно да запомните трите въпроса за успех.

Успех и приятно кодиране!