Чӣ тавр хондан ва ислоҳ кардани 100,000 сатри код дар як ҳафта

Чӣ тавр хондан ва ислоҳ кардани 100,000 сатри код дар як ҳафта
Дар ибтидо фаҳмидани лоиҳаи калон ва кӯҳна ҳамеша душвор аст. Меъморӣ яке аз фаъолиятҳои арзёбии меъмор аст. Одатан, шумо бояд бо лоиҳаҳои калон ва кӯҳна кор кунед ва натиҷаҳо бояд дар як ҳафта расонида шаванд.

Лоиҳаи 100к ё зиёда сатрҳои кодро дар як ҳафта чӣ гуна баҳо додан мумкин аст, дар ҳоле ки натиҷаҳоеро пешкаш мекунанд, ки барои муштарӣ воқеан муфиданд.

Аксари меъморон ва роҳбарони техникӣ бо чунин арзёбиҳои лоиҳа дучор шудаанд. Ин метавонад ба як раванди нимрасмӣ ё хидмати алоҳида, ки дар ширкати мо анҷом дода мешавад, ба назар мерасад, бо ин ё он роҳ аксари шумо бо ин кор сарукор доштаед.

Нусхаи аслӣ бо забони англисӣ барои дӯстони русзабони шумо инҷост: Арзёбии меъморӣ дар як ҳафта.

Муносибати ширкати мо

Ман ба шумо мегӯям, ки он дар ширкати мо чӣ гуна кор мекунад ва ман дар чунин ҳолатҳо чӣ гуна амал мекунам, аммо шумо метавонед ин равишро мувофиқи ниёзҳои лоиҳа ва ширкати худ ба осонӣ тағир диҳед.

Ду намуди арзёбии меъморӣ вуҷуд дорад.

Корҳои дохилӣ - мо одатан онро барои лоиҳаҳои дохили ширкат мекунем. Ҳар як лоиҳа метавонад бо якчанд сабаб арзёбии меъмориро дархост кунад:

  1. Даста фикр мекунад, ки лоиҳаи онҳо комил аст ва ин шубҳанок аст. Мо чунин ҳолатҳо доштем ва аксар вақт дар чунин лоиҳаҳо ҳама чиз аз идеал дур аст.
  2. Даста мехоҳад лоиҳа ва роҳҳои ҳалли худро санҷад.
  3. Коллектив медонад, ки вазъият бад аст. Онҳо ҳатто метавонанд мушкилот ва сабабҳои асосиро номбар кунанд, аммо мехоҳанд рӯйхати пурраи мушкилот ва тавсияҳоро барои такмил додани лоиҳа.

беруна назар ба арзёбии дохилӣ раванди расмӣтар аст. Мизоҷ ҳамеша танҳо дар як ҳолат меояд, вақте ки ҳама чиз бад аст - хеле бад. Одатан, муштарӣ дарк мекунад, ки мушкилоти глобалӣ вуҷуд доранд, аммо наметавонанд сабабҳоро дуруст муайян кунанд ва онҳоро ба ҷузъҳо тақсим кунанд.

Арзёбии меъморӣ барои муштарии беруна як ҳолати мураккабтар аст. Раванд бояд бештар расмӣ бошад. Лоиҳаҳо ҳамеша калон ва кӯҳнаанд. Онҳо бисёр мушкилот, хатогиҳо ва рамзи каҷ доранд. Ҳисобот дар бораи кори анҷомдодашуда бояд ҳадди аксар дар давоми чанд ҳафта омода шавад, ки дар он бояд мушкилоти асосӣ ва тавсияҳо оид ба такмил дода шаванд. Бинобар ин, агар мо бо баходихии берунии лоиха машгул шавем, пас баходихии дохилй як пораи торт мешавад. Биёед парвандаи душвортаринро дида бароем.

Арзёбии меъмории лоиҳаи корхона

Лоиҳаи маъмулии арзёбӣ як лоиҳаи калон, кӯҳна ва корхона мебошад, ки мушкилоти зиёд дорад. Мизоҷ ба назди мо меояд ва аз мо хоҳиш мекунад, ки лоиҳаашро ислоҳ кунем. Мисли айсберг, муштарӣ танҳо нӯги мушкилоти худро мебинад ва намедонад, ки дар зери об чӣ аст (дар умқи код).

Мушкилоте, ки муштарӣ метавонад аз онҳо шикоят кунад ва аз онҳо огоҳ бошад:

  • Масъалаҳои иҷроиш
  • Масъалаҳои қобили истифода
  • Ҷойгиркунии дарозмуддат
  • Набудани агрегат ва дигар озмоишхо

Мушкилоте, ки муштарӣ аз эҳтимол дур нест, аммо онҳо метавонанд дар лоиҳа мавҷуд бошанд:

  • Проблемаҳои бехатарӣ
  • Проблемаҳои тарҳрезӣ
  • Меъмории нодуруст
  • Хатогиҳои алгоритмӣ
  • Технологияҳои номуносиб
  • Қарзи техникӣ
  • Раванди рушди нодуруст

Раванди баррасии расмии меъморӣ

Ин як раванди расмӣ аст, ки мо ҳамчун як ширкат пайравӣ мекунем, аммо шумо метавонед онро вобаста ба ширкат ва лоиҳаи худ танзим кунед.

Дархост аз муштарӣ

Мизоҷ хоҳиш мекунад, ки меъмории лоиҳаи ҷорӣро арзёбӣ кунад. Шахси масъул аз ҷониби мо маълумоти асосӣ дар бораи лоиҳа ҷамъоварӣ мекунад ва коршиносони заруриро интихоб мекунад. Вобаста аз лоиҳа, инҳо метавонанд коршиносони гуногун бошанд.

Меъмори ҳалли масъала – шахси асосие, ки барои арзёбӣ ва ҳамоҳангсозӣ масъул аст (ва аксар вақт ягона).
Мутахассисони мушаххасро ҷамъ кунед – .Net, Java, Python ва дигар мутахассисони техникӣ вобаста ба лоиҳа ва технологияҳо
Мутахассисони абрӣ - инҳо метавонанд меъморони абрии Azure, GCP ё AWS бошанд.
инфрасохтор – DevOps, мудири система ва ғайра.
Мутахассисони дигар - ба монанди маълумоти калон, омӯзиши мошинсозӣ, муҳандиси иҷроиш, коршиноси амният, роҳбари QA.

Ҷамъоварии маълумот дар бораи лоиҳа

Шумо бояд дар бораи лоиҳа ҳарчи бештар маълумот ҷамъ кунед. Вобаста ба вазъият шумо метавонед усулҳои гуногунро истифода баред:

  • Саволнома ва дигар усулҳои муошират тавассути почта. Роҳи бесамартарин.
  • Вохӯриҳои онлайн.
  • Воситаҳои махсус барои мубодилаи иттилоот, аз қабили: Google doc, Confluence, репозиторийҳо ва ғайра.
  • Вохӯриҳои "зинда" дар сайт. Самараноктарин ва гаронтарин роҳ.

Аз муштарӣ чӣ бояд гирифт?

Маълумоти асосӣ. Лоиҳа дар бораи чӣ аст? Мақсад ва арзиши он. Максадхои асосй ва накшахои оянда. Ҳадафҳо ва стратегияҳои тиҷорат. Проблемахои асосй ва натичахои дилхох.

Маълумоти лоиҳа. Стеки технологӣ, чаҳорчӯбаҳо, забонҳои барномасозӣ. Ҷойгиркунии дар дохили бино ё абрӣ. Агар лоиҳа дар абр бошад, кадом хидматҳо истифода мешаванд. Кадом намунаҳои меъморӣ ва тарҳрезӣ истифода мешуданд.

Талаботҳои ғайрифунксионалӣ. Ҳама талаботҳои марбут ба кор, дастрасӣ ва осонии истифодаи система. Талаботи бехатарӣ ва ғайра.

Ҳолатҳои истифодаи асосӣ ва ҷараёни маълумот.

Дастрасӣ ба рамзи сарчашма. Муҳимтарин қисми! Шумо бешубҳа бояд ба анборҳо ва ҳуҷҷатҳо дар бораи чӣ гуна сохтани лоиҳа дастрасӣ пайдо кунед.

Дастрасӣ ба инфрасохтор. Хуб мебуд, ки дастрасӣ ба саҳна ё инфрасохтори истеҳсолӣ барои кор бо системаи зинда дошта бошед. Ин як муваффақияти бузург аст, агар муштарӣ асбобҳои мониторинги инфрасохтор ва иҷроиш дошта бошад. Мо дар боби оянда дар бораи ин воситаҳо сӯҳбат хоҳем кард.

сабт. Агар муштарӣ ҳуҷҷат дошта бошад, ин оғози хуб аст. Он метавонад кӯҳна бошад, аммо ин ҳанӯз оғози хуб аст. Ҳеҷ гоҳ ба ҳуҷҷатҳо бовар накунед - онро бо муштарӣ, дар инфрасохтори воқеӣ ва коди манбаъ санҷед.

Раванди арзёбии меъморӣ

Чӣ гуна метавон дар муддати кӯтоҳ ин қадар миқдори зиёди иттилоотро коркард кард? Пеш аз хама корро параллел кунед.

DevOps бояд инфрасохторро бубинад. Роҳбарии техникӣ ба код. Муҳандиси иҷро барои дидани ченакҳои иҷроиш. Мутахассиси пойгоҳи додаҳо бояд сохторҳои додаҳоро амиқтар кобед.

Аммо ин як ҳолати беҳтаринест, ки шумо захираҳои зиёд доред. Одатан, як то се нафар лоиҳаро арзёбӣ мекунанд. Шумо ҳатто метавонед баҳодиҳии худро худатон анҷом диҳед, ки аксар вақт дар сурати доштани дониш ва таҷрибаи дуруст дар ҳама самтҳои лоиҳа. Дар ин ҳолат, шумо бояд тамоми равандҳоро то ҳадди имкон автоматӣ кунед.

Мутаассифона, шумо бояд ҳуҷҷатҳоро дастӣ хонед. Бо миқдори дурусти таҷриба, шумо метавонед сифати ҳуҷҷатҳоро зуд фаҳмед. Чӣ дуруст аст ва он чизе, ки ба воқеият комилан мувофиқат намекунад. Баъзан шумо метавонед меъмориро дар ҳуҷҷатҳо бубинед, ки ҳеҷ гоҳ дар ҳаёти воқеӣ кор намекунад. Ин як ангезаест, ки шумо дар бораи он фикр кунед, ки он дар лоиҳа чӣ гуна амалӣ шудааст.

Воситаҳои муфид барои автоматикунонии арзёбии лоиҳа

Арзёбии код як машқи оддӣ аст. Шумо метавонед таҳлилгари коди статикиро истифода баред, ки ба шумо тарроҳӣ, иҷроиш ва масъалаҳои амниятро нишон медиҳанд. Инҳоянд чанде аз онҳо:

Сохтори 101 барои меъмор воситаи оличаноб аст. Он ба шумо тасвири калон, вобастагии байни модулҳо ва минтақаҳои эҳтимолиро барои рефакторинг нишон медиҳад. Мисли ҳама асбобҳои хуб, он пули хубро талаб мекунад, аммо шумо метавонед аз версияи озмоишии 30-рӯза истифода баред.

soundQube - асбоби хуби кӯҳна. Восита барои таҳлили коди статикӣ. Ба шумо имкон медиҳад, ки рамзи бад, хатогиҳо ва мушкилоти амниятро барои зиёда аз 20 забони барномасозӣ муайян кунед.

Ҳама провайдерҳои абрӣ асбобҳои мониторинги инфрасохтор доранд. Ин ба шумо имкон медиҳад, ки самаранокии инфрасохтори худро аз ҷиҳати арзиш ва иҷроиш дуруст арзёбӣ кунед. Барои AWS ин аст мушовири боэътимод. Ин барои Azure осон аст Мушовири Azure.

Мониторинги иловагӣ ва сабти иҷрои кор дар ҳама сатҳҳо ба дарёфти мушкилоти иҷроиш кӯмак хоҳад кард. Аз пойгоҳи додаҳо бо дархостҳои бесамар сар карда, пушти сар ва анҷомёбӣ бо frontend. Ҳатто агар муштарӣ ин асбобҳоро қаблан насб накарда бошад ҳам, шумо метавонед онҳоро ба зудӣ ба системаи мавҷуда ворид кунед, то мушкилоти иҷроишро муайян кунед.

Чун ҳамеша, асбобҳои хуб ба маблағи он ҳастанд. Ман метавонам якчанд асбобҳои пулакӣ тавсия диҳам. Албатта, шумо метавонед сарчашмаи кушодаро истифода баред, аммо ин вақти бештарро мегирад. Ва ин бояд пешакӣ анҷом дода шавад, на дар ҷараёни арзёбии меъморӣ.

New Relic - воситаи арзёбии иҷрои барнома
datadog – хадамоти мониторинги системаи абрӣ

Воситаҳои зиёде барои санҷиши амният мавҷуданд. Ин дафъа ман ба шумо як воситаи ройгони сканеркунии системаро тавсия медиҳам.

OWASP ZAP – асбоб барои скан кардани барномаҳои веб барои мутобиқат ба стандартҳои амниятӣ.

Биёед ҳама чизро дар як маҷмӯъ ҷамъ кунем.

Тайёр кардани гузориш

Ҳисоботи худро бо маълумоте, ки аз муштарӣ ҷамъ овардаед, оғоз кунед. Ҳадафҳои лоиҳа, маҳдудиятҳо, талаботҳои ғайрифунксионалӣ тавсиф кунед. Пас аз ин, ҳама маълумоти воридотӣ бояд зикр карда шаванд: рамзи манбаъ, ҳуҷҷатҳо, инфрасохтор.

Қадами навбатӣ. Ҳама мушкилотеро, ки дастӣ ё бо истифода аз абзорҳои автоматӣ ёфтаед, номбар кунед. Ҳисоботи калони худкор тавлидшударо дар охири бахши барномаҳо ҷойгир кунед. Дар бораи мушкилоти пайдошуда бояд далелҳои кӯтоҳ ва мухтасар бошанд.
Мушкилоте, ки дар хатогӣ, огоҳӣ, миқёси иттилоот пайдо шудаанд, афзалият диҳед. Шумо метавонед миқёси худро интихоб кунед, аммо ин аз ҳама маъмул аст.

Ҳамчун меъмори ҳақиқӣ масъулияти шумо барои пешниҳоди тавсияҳо барои ислоҳи мушкилоти пайдошуда мебошад. Бехбудиҳо ва арзиши тиҷоратиро, ки муштарӣ ба даст меорад, тавсиф кунед. Чӣ тавр нишон додани арзиши тиҷорат аз рефакторинги меъморӣ мо пештар мухокима карда будем.

Харитаи роҳро бо такрорҳои хурд омода кунед. Ҳар як итератсия бояд вақт барои анҷом, тавсиф, миқдори захираҳои барои такмил, арзиши техникӣ ва арзиши тиҷоратро дар бар гирад.

Мо арзёбии меъмориро анҷом медиҳем ва ба муштарӣ гузориш медиҳем

Ҳеҷ гоҳ танҳо гузоришро ба почтаи электронӣ нафиристед. Онро умуман хондан мумкин нест ва ё бидуни тавзеҳи дуруст хондаву намефаҳмад. Хулоса, муоширати зинда кӯмак мекунад, ки нофаҳмиҳо байни одамон бартараф карда шаванд. Шумо бояд вохӯриро бо муштарӣ ба нақша гиред ва дар бораи мушкилоти пайдошуда сӯҳбат кунед, бо таваҷҷӯҳ ба масъалаҳои муҳимтарин. Қобили таваҷҷӯҳи муштариро ба мушкилоте ҷалб кардан лозим аст, ки ӯ ҳатто аз онҳо огоҳ нест. Ба монанди масъалаҳои амният ва шарҳ диҳед, ки чӣ гуна онҳо метавонанд ба тиҷорат таъсир расонанд. Харитаи роҳи худро бо беҳбудиҳо нишон диҳед ва имконоти мухталиферо, ки барои муштарӣ бештар мувофиқанд, муҳокима кунед. Ин метавонад вақт, захираҳо, ҳаҷми кор бошад.

Ҳамчун хулосаи вохӯрии худ, гузориши худро ба муштарӣ фиристед.

Дар охир

Арзёбии меъморӣ як раванди мураккаб аст. Барои дуруст анҷом додани арзёбӣ шумо бояд таҷриба ва дониши кофӣ дошта бошед.

Мумкин аст, ки дар давоми як ҳафта ба муштарӣ натиҷаҳои барои ӯ ва тиҷорати ӯ муфид пешниҳод карда шаванд. Ҳатто агар шумо ин корро танҳо кунед.

Бар асоси таҷрибаи ман, бисёр беҳбудиҳо дар мобайн бор карда шуданд ва баъзан ҳеҷ гоҳ оғоз нашудаанд. Онҳое, ки барои худ маънои тиллоиро интихоб карданд ва танҳо як қисми такмилҳоеро анҷом доданд, ки бо сарфи ками меҳнат барои тиҷорат бештар муфид буданд, сифати маҳсулоти худро хеле беҳтар карданд. Онҳое, ки ҳеҷ коре накарданд, метавонанд пас аз як ду сол лоиҳаро пурра банданд.

Ҳадафи шумо ин аст, ки ба муштарӣ беҳтарин беҳбудиро бо нархи ҳадди ақал нишон диҳед.

Мақолаҳои дигар аз бахш меъморӣ шумо метавонед дар вақти холӣ хонед.

Ба шумо рамзи пок ва қарорҳои хуби меъморӣ орзумандам.

Гурӯҳи фейсбукии мо - Архитектура ва таҳияи нармафзор.

Манбаъ: will.com

Илова Эзоҳ