Преземете ја контролата врз вашата архитектура: Водете ги тимовите низ променливиот пејзаж на ВИ
ВИ брзо се менува доволно за дури и искусните тимови да се чувствуваат како да заостануваат. Нови модели, асистенти за програмирање, алатки за работни текови и ветувања за автономна испорака пристигнуваат во постојан тек. Опасноста не е дека тимот ќе го пропушти секој тренд. Опасноста е дека ќе го предаде своето расудување на трендот на месецот.
Техничкото лидерство не е во предвидувањето која алатка ќе победи. Тоа е во преземањето одговорност за архитектурата, одлуките и резултатите што остануваат откако некоја алатка ќе биде заменета. ВИ може да ја забрза работата. Не може да преземе одговорност за кревок продукциски систем, нејасна граница на производот или проблем на клиент што никогаш не бил правилно разбран.
Сопственоста е стабилниот слој
Сопственоста над архитектурата не значи дека едно лице ги диктира сите детали на имплементацијата. Тоа значи дека тимот може да објасни зошто системот постои во својата сегашна форма, какви компромиси прави, кој ја одржува секоја важна граница и како безбедно ќе се менува.
Тој стандард е уште поважен кога е вклучена ВИ. Генерираниот код може да изгледа уверливо, а притоа да воведе неконзистентни обрасци, недостасувачка валидација, нејасно справување со грешки или апстракција што никој не е подготвен да ја одржува. Прашањето не е дали кодот дошол од развивач или од асистент. Прашањето е дали тимот може сигурно да го управува.
Корисно правило е едноставно: користете ВИ за да го намалите трудот, а не за да ја префрлите одговорноста. Ако генерирана промена допира автентикација, текови на плаќање, задржување на податоци, јавни API-и или клучни деловни правила, некој во тимот треба да го разбира доволно добро за да може да го прегледа, тестира, измени и отстрани.
Почнете со одлуката за производот, а не со моделот
Многу иницијативи за ВИ почнуваат со способност: „Треба да додадеме четбот“ или „Треба да го автоматизираме овој работен тек“. Силното размислување за производот почнува на друго место. Што се обидува да постигне корисникот? Каде сегашното искуство создава доцнење, неизвесност или повторлива работа? Кој резултат би ја направил функционалноста вредна за задржување?
Разгледајте портал за поддршка. Одговор генериран од ВИ може да звучи корисно, но тоа не е вистинскиот исход. Подобар исход би бил да им се помогне на клиентите да ја најдат правилната политика, да го разберат следниот чекор и брзо да стигнат до човек кога прашањето е чувствително или двосмислено.
Таквото врамување води до подобра архитектура. Наместо да изгради неограничен асистент со широк пристап до информациите на компанијата, тимот може да изгради тесен работен тек за пребарување со одобрена содржина, видливи цитати, патеки за ескалација и сигнали за повратни информации. Помалку е театрален, но често е покорисен и побезбеден за управување.
Дефинирајте ја границата пред имплементацијата
- Влез: Кои информации смеат да влезат во системот, а кои мора да бидат исклучени или редактирани?
- Одлука: Кои дејства може да се предложат, а за кои е потребно човечко одобрување?
- Излез: Како корисниците ќе разликуваат генерирани насоки од авторитативни записи?
- Неуспех: Што се случува кога системот е несигурен, недостапен или погрешен?
- Мерење: Кој сигнал од корисниците или бизнисот ќе покаже дека функционалноста помага?
Ова се истовремено прашања за производот и технички прашања. Јасната граница ја намалува и сложеноста на имплементацијата и организациската вознемиреност.
Дизајнирајте за замена, проверка и опоравување
Добавувачите на ВИ, однесувањето на моделите, цените и обрасците за интеграција можат да се променат. Тимовите треба да избегнуваат експериментална зависност да ја направат неразлична од нивната клучна доменска логика. Поставете намерна граница околу неа.
На пример, апликацијата може да изрази интерфејс на деловно ниво како summarizeCase() наместо да расфрла специфични за добавувачот поттикнувачи и анализирање на одговори низ контролери, задачи и кориснички интерфејси. Така имплементацијата може да се развива без да го принудува остатокот од производот да ја наследи секоја одлука на добавувачот.
Таа граница не е бирократија. Таа создава простор за тестирање, набљудливост, резервно однесување и идна замена. Исто така, го тера тимот да ги постави вистинските оперативни прашања: Кое е временското ограничување? Каква е политиката за повторни обиди? Што се случува ако одговорот е неправилно форматиран? Може ли клиентот да продолжи без функционалноста?
Повторните обиди заслужуваат особено внимание. Повторувањето барање за сумирање само за читање по минлив неуспех може да биде разумно. Повторувањето дејство што создава тикет, испраќа порака или менува запис може да создаде дупликати, освен ако работниот тек е дизајниран со идемпотентност и експлицитна потврда. ВИ не ги отстранува вообичаените грижи на дистрибуираните системи; може да ги направи полесни за превидување.
Направете од прегледот систем за учење
Тимовите често го третираат прегледот на код потпомогнат од ВИ како прашање на откривање: дали ова е генерирано? Тоа обично е помалку вредно од подобрувањето на самиот процес на преглед.
Прегледот треба да се фокусира на однесувањето, одржливоста и ризикот. Дали промената има јасна одговорност? Дали ги зачувува постојните договори? Дали се тестирани граничните случаи? Дали изложува тајни, неправилно постапува со корисничките податоци или тивко ги проширува дозволите? Може ли следниот развивач да го разбере кодот без да го реконструира поттикнувачот што го создал?
Практичен пристап е покрај значајните промени да се бара кратко објаснување напишано од човек: наменетиот исход, клучниот компромис и начинот на кој е потврдено. Ова е особено корисно во оддалечени тимови, каде што прегледот на код е и облик на асинхрона комуникација.
Добрите писмени одлуки се надградуваат. Кратка архитектонска белешка што објаснува зошто функционалноста користи ограничен извор на податоци, чекор на човечко одобрување или резервна патека може подоцна да спречи недели повторно откривање. Таа им дава контекст на новите членови на тимот и го прави несогласувањето поконструктивно бидејќи одлуката е видлива.
На оддалечените тимови им е потребна експлицитна сопственост
Работата од далечина ја засилува двосмисленоста. Кога никој не е во иста просторија, претпоставките патуваат подалеку пред некој да ги забележи. Излезот генериран од ВИ може да ѝ додаде брзина на таа двосмисленост ако луѓето спојуваат промени без заедничко разбирање на одговорноста.
Доделете сопственост на системи и исходи, а не само на складишта. Тимот треба да знае кој ја поседува доверливоста на интеграцијата, кој одлучува за доменска граница и кој е одговорен за координирање ризично пуштање во употреба. Сопственоста не значи да работите сами; таа значи да се осигурате дека прашањето ќе стигне до одлука.
За испорака, претпочитајте мали изданија со јасни патеки за враќање. Користете знаменца за функционалности каде што е соодветно, следете го однесувањето што е важно и држете достапна патека без ВИ кога функционалноста не е суштинска. Одржливата испорака не е побавна испорака. Таа е испорака што не го претвора секое пуштање во вонредна состојба.
Градете кариери околу расудувањето
Развивачите оправдано може да се прашуваат кои вештини остануваат вредни додека имплементацијата станува побрза. Трајните вештини се оние што ја претвораат способноста во сигурна вредност: врамување проблеми, разбирање системи, комуницирање компромиси, заштита на корисниците и помагање на група да донесува одлуки.
Вреди да се научи како добро да се користи ВИ. Поважно е да се научи како да се преиспитува. Третирајте го асистентот како брз соработник што има потреба од насока, ограничувања и преглед. Барајте од него алтернативи, гранични случаи, идеи за тестови и објаснувања. Потоа применете го делот што ниту една алатка не може да го обезбеди: информирано расудување за тоа што припаѓа во производот.
Тимовите што напредуваат во променлив пејзаж нема да бидат оние што ја следат секоја нова способност. Тоа ќе бидат тимовите што ги држат рацете на архитектурата, остануваат блиску до потребите на корисниците и градат системи за кои се подготвени да преземат сопственост долго откако новитетот ќе избледи.