{"id":74955,"date":"2020-03-22T08:42:23","date_gmt":"2020-03-22T05:42:23","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/kak-prochest-i-ispravit-100000-strok-koda-za-nedelyu"},"modified":"2020-03-22T08:42:23","modified_gmt":"2020-03-22T05:42:23","slug":"kak-prochest-i-ispravit-100000-strok-koda-za-nedelyu","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/kak-prochest-i-ispravit-100000-strok-koda-za-nedelyu","title":{"rendered":"Ako pre\u010d\u00edta\u0165 a opravi\u0165 100 000 riadkov k\u00f3du za t\u00fd\u017ede\u0148","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Ako pre\u010d\u00edta\u0165 a opravi\u0165 100 000 riadkov k\u00f3du za t\u00fd\u017ede\u0148\" src=\"\/wp-content\/uploads\/2020\/03\/9d646716cc8d6eb1f9c49cb8539d7422.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNa za\u010diatku sa v\u017edy \u0165a\u017eko zorientova\u0165 vo ve\u013ekom a starom projekte. Hodnotenie architekt\u00fary je jedna z aktiv\u00edt architekta. Zvy\u010dajne sa mus\u00ed pracova\u0165 s ve\u013ek\u00fdmi, star\u00fdmi projektmi a v\u00fdsledky je potrebn\u00e9 poskytn\u00fa\u0165 do t\u00fd\u017ed\u0148a.<\/p>\n<p>Ako ohodnoti\u0165 projekt s viac ako 100 000 riadkami k\u00f3du za t\u00fd\u017ede\u0148 a pritom poskytn\u00fa\u0165 naozaj u\u017eito\u010dn\u00e9 v\u00fdsledky pre klienta.<\/p>\n<p>V\u00e4\u010d\u0161ina architektov a technick\u00fdch l\u00eddrov sa stretla s podobn\u00fdmi po\u017eiadavkami na hodnotenie projektu. M\u00f4\u017ee to vyzera\u0165 ako poloform\u00e1lny proces alebo ako samostatn\u00e1 slu\u017eba, ako sa to rob\u00ed v na\u0161ej spolo\u010dnosti, tak \u010di onak, v\u00e4\u010d\u0161ina z v\u00e1s s t\u00fdm u\u017e mala do\u010dinenia.<\/p>\n<p>Origin\u00e1l v anglickom jazyku pre va\u0161ich nehovoriacich rusk\u00fd priate\u013eov n\u00e1jdete tu: <noindex><a rel=\"nofollow\" href=\"http:\/\/alexandvira.com\/architecture\/architecture-assessment-read-and-fix-100000-lines-of-code-in-a-week\/\">Architecture Assessment in a week<\/a><\/noindex>.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Pr\u00edstup v na\u0161ej spolo\u010dnosti<\/h2>\n<p>\nPoviem v\u00e1m, ako to funguje u n\u00e1s a ako sa spr\u00e1va\u0165 v podobn\u00fdch situ\u00e1ci\u00e1ch, ale m\u00f4\u017eete si tento pr\u00edstup \u013eahko prisp\u00f4sobi\u0165 potreb\u00e1m v\u00e1\u0161ho projektu a spolo\u010dnosti.<\/p>\n<p>Existuj\u00fa dva typy hodnotenia architekt\u00fary.<\/p>\n<p><b>Intern\u00e9<\/b> \u2013 zvy\u010dajne ho rob\u00edme pre projekty v r\u00e1mci spolo\u010dnosti. Ak\u00fdko\u013evek projekt m\u00f4\u017ee po\u017eiada\u0165 o hodnotenie architekt\u00fary z nieko\u013ek\u00fdch d\u00f4vodov:<\/p>\n<ol>\n<li>T\u00edm si mysl\u00ed, \u017ee ich projekt je dokonal\u00fd, \u010do je podozriv\u00e9. Mali sme tak\u00e9 pr\u00edpady a \u010dasto je v tak\u00fdch projektoch situ\u00e1cia ve\u013emi neuspokojiv\u00e1.<\/li>\n<li>T\u00edm chce skontrolova\u0165 svoj projekt a svoje rozhodnutia.<\/li>\n<li>T\u00edm vie, \u017ee je v\u0161etko zl\u00e9. M\u00f4\u017eu dokonca vymenova\u0165 z\u00e1kladn\u00e9 probl\u00e9my a pr\u00ed\u010diny, ale chc\u00fa z\u00edska\u0165 \u00fapln\u00fd zoznam probl\u00e9mov a odpor\u00fa\u010dan\u00ed na zlep\u0161enie projektu.<\/li>\n<\/ol>\n<p>\n<b>Extern\u00e9<\/b> \u2013 je to form\u00e1lnej\u0161\u00ed proces ne\u017e intern\u00e9 hodnotenie. Klient prich\u00e1dza v\u017edy len v jednom pr\u00edpade, ke\u010f je v\u0161etko zl\u00e9 \u2013 ve\u013emi zl\u00e9. Zvy\u010dajne si klient uvedomuje, \u017ee existuj\u00fa glob\u00e1lne probl\u00e9my, ale nem\u00f4\u017ee spr\u00e1vne ur\u010di\u0165 pr\u00ed\u010diny a rozdeli\u0165 ich na jednotliv\u00e9 \u010dasti.<\/p>\n<p>Hodnotenie architekt\u00fary pre extern\u00e9ho klienta je komplikovanej\u0161\u00ed pr\u00edpad. Proces mus\u00ed by\u0165 form\u00e1lnej\u0161\u00ed. Projekty s\u00fa v\u017edy ve\u013ek\u00e9 a star\u00e9. Obsahuj\u00fa ve\u013ea probl\u00e9mov, ch\u00fdb a nepreh\u013eadn\u00e9ho k\u00f3du. Spr\u00e1va o vykonanej pr\u00e1ci by mala by\u0165 pripraven\u00e1 do nieko\u013ek\u00fdch t\u00fd\u017ed\u0148ov maxim\u00e1lne, kde by mali by\u0165 uveden\u00e9 hlavn\u00e9 probl\u00e9my a odpor\u00fa\u010dania na zlep\u0161enie. Preto, ak sa dostaneme k extern\u00e9mu hodnoteniu projektu, potom intern\u00e9 bude p\u00e1r mali\u010dkost\u00ed. Pozrime sa na najkomplikovanej\u0161\u00ed pr\u00edpad.<\/p>\n<h2>Hodnotenie architekt\u00fary enterprise projektu<\/h2>\n<p>\nTypick\u00fd projekt na hodnotenie je ve\u013ek\u00fd, star\u00fd enterprise projekt s mno\u017estvom probl\u00e9mov. Klient k n\u00e1m prich\u00e1dza s po\u017eiadavkou opravi\u0165 jeho projekt. Je to ako s \u013eadov\u00fdm vrchom, klient vid\u00ed len vrchol svojich probl\u00e9mov a netu\u0161\u00ed, \u010do je pod vodou (v h\u013abke k\u00f3du).<\/p>\n<p>Probl\u00e9my, na ktor\u00e9 sa klient m\u00f4\u017ee s\u0165a\u017eova\u0165 a o ktor\u00fdch m\u00f4\u017ee vedie\u0165:<\/p>\n<ul>\n<li>Probl\u00e9my s v\u00fdkonom<\/li>\n<li>Probl\u00e9my s pou\u017eite\u013enos\u0165ou aplik\u00e1cie (Usability)<\/li>\n<li>Dlh\u00e9 nasadzovanie<\/li>\n<li>Nedostatok unit a in\u00fdch testov<\/li>\n<\/ul>\n<p>\nProbl\u00e9my, o ktor\u00fdch klient pravdepodobne netu\u0161\u00ed, ale m\u00f4\u017eu sa v projekte nach\u00e1dza\u0165:<\/p>\n<ul>\n<li>Probl\u00e9my s bezpe\u010dnos\u0165ou<\/li>\n<li>Probl\u00e9my s dizajnom<\/li>\n<li>Nespr\u00e1vna architekt\u00fara<\/li>\n<li>Algoritmick\u00e9 chyby<\/li>\n<li>Nevhodn\u00e9 technol\u00f3gie<\/li>\n<li>Technick\u00fd dlh<\/li>\n<li>Nespr\u00e1vny proces v\u00fdvoja<\/li>\n<\/ul>\n<p><\/p>\n<h2>Form\u00e1lny proces hodnotenia architekt\u00fary<\/h2>\n<p>\nJe to form\u00e1lny proces, ktor\u00e9ho sa dr\u017e\u00edme v na\u0161ej spolo\u010dnosti, ale m\u00f4\u017eete ho prisp\u00f4sobi\u0165 pod\u013ea svojich potrieb v z\u00e1vislosti od va\u0161ej spolo\u010dnosti a projektu.<\/p>\n<h3>\u017diados\u0165 od klienta<\/h3>\n<p>\nKlient \u017eiada o hodnotenie architekt\u00fary s\u00fa\u010dasn\u00e9ho projektu. Zodpovedn\u00e1 osoba z na\u0161ej strany zhroma\u017e\u010fuje z\u00e1kladn\u00e9 inform\u00e1cie o projekte a vyber\u00e1 potrebn\u00fdch expertov. V z\u00e1vislosti od projektu to m\u00f4\u017eu by\u0165 r\u00f4zni experti.<\/p>\n<p><b>Architekt rie\u0161enia<\/b> \u2013 hlavn\u00fa osobu zodpovedn\u00fa za hodnotenie a koordin\u00e1ciu (a \u010dasto aj jedin\u00fa).<br \/>\n<b>Odborn\u00edci v r\u00e1mci stacku<\/b> \u2013 .Net, Java, Python a \u010fal\u0161\u00ed technick\u00ed odborn\u00edci v z\u00e1vislosti od projektu a technol\u00f3gi\u00ed.<br \/>\n<b>Cloud odborn\u00edci<\/b> \u2013 to m\u00f4\u017eu by\u0165 architekti cloudu Azure, GCP alebo AWS.<br \/>\n<b>Infrastrukt\u00fara<\/b> \u2013 DevOps, syst\u00e9mov\u00fd administr\u00e1tor at\u010f.<br \/>\n<b>\u010eal\u0161\u00ed odborn\u00edci<\/b> \u2013 ako napr\u00edklad big data, machine learning, performance engineer, security expert, QA lead.<\/p>\n<h3>Zhroma\u017e\u010fovanie inform\u00e1ci\u00ed o projekte<\/h3>\n<p>\nMali by ste zhroma\u017edi\u0165 \u010do najviac inform\u00e1ci\u00ed o projekte. M\u00f4\u017eete pou\u017ei\u0165 r\u00f4zne techniky v z\u00e1vislosti od situ\u00e1cie:<\/p>\n<ul>\n<li>Dotazn\u00edky a in\u00e9 sp\u00f4soby komunik\u00e1cie prostredn\u00edctvom e-mailu. Najmenej efekt\u00edvny sp\u00f4sob.<\/li>\n<li>Online stretnutia.<\/li>\n<li>\u0160peci\u00e1lne n\u00e1stroje na v\u00fdmenu inform\u00e1ci\u00ed ako: Google doc, Confluence, repozit\u00e1re at\u010f.<\/li>\n<li>\u201e\u017div\u00e9\u201c stretnutia na mieste. Najefekt\u00edvnej\u0161\u00ed a najdrah\u0161\u00ed sp\u00f4sob.<\/li>\n<\/ul>\n<p>\n<i>\u010co je potrebn\u00e9 z\u00edska\u0165 od klienta?<\/i><\/p>\n<p><b>Z\u00e1kladn\u00e9 inform\u00e1cie.<\/b> O \u010dom projekt je. Jeho cie\u013e a hodnota. Hlavn\u00e9 ciele a pl\u00e1ny do bud\u00facnosti. Obchodn\u00e9 ciele a strat\u00e9gie. Hlavn\u00e9 probl\u00e9my a \u017eelan\u00fd v\u00fdsledok.<\/p>\n<p><b>Inform\u00e1cie o projekte<\/b>. Technologick\u00fd stack, r\u00e1mce, programovac\u00ed jazyky. On-premise alebo cloudov\u00fd deployment. Ak je projekt v cloude, ak\u00e9 slu\u017eby sa pou\u017e\u00edvaj\u00fa. Ak\u00e9 architektonick\u00e9 a dizajnov\u00e9 vzory sa pou\u017eili.<\/p>\n<p><b>Nefunk\u010dn\u00e9 po\u017eiadavky<\/b>. V\u0161etky po\u017eiadavky s\u00favisiace s v\u00fdkonnos\u0165ou, dostupnos\u0165ou, pou\u017eite\u013enos\u0165ou syst\u00e9mu. Po\u017eiadavky na bezpe\u010dnos\u0165 at\u010f.<\/p>\n<p><b>Z\u00e1kladn\u00e9 use case a toky \u00fadajov.<\/b><\/p>\n<p><b>Pr\u00edstup k zdrojov\u00e9mu k\u00f3du<\/b>. Najd\u00f4le\u017eitej\u0161ia \u010das\u0165! Ur\u010dite by ste mali z\u00edska\u0165 pr\u00edstup k repozit\u00e1rom a dokument\u00e1cii, ako zostavi\u0165 projekt.<\/p>\n<p><b>Pr\u00edstup k infra\u0161trukt\u00fare<\/b>. Bolo by dobr\u00e9 z\u00edska\u0165 pr\u00edstup k stage alebo produk\u010dnej infra\u0161trukt\u00fare, aby ste pracovali s \u201e\u017eiv\u00fdm\u201c syst\u00e9mom. Je to ve\u013ek\u00e1 v\u00fdhra, ak m\u00e1 klient n\u00e1stroje na sledovanie infra\u0161trukt\u00fary a v\u00fdkonnosti. O t\u00fdchto n\u00e1strojoch si povieme v nasleduj\u00facej sekcii.<\/p>\n<p><b>Dokument\u00e1cia<\/b>. Ak m\u00e1 klient dokument\u00e1ciu, je to dobr\u00fd za\u010diatok. M\u00f4\u017ee by\u0165 zastaran\u00e1, ale st\u00e1le je to dobr\u00fd za\u010diatok. Nikdy neverte dokument\u00e1cii \u2013 overte ju s klientom, na re\u00e1lnej infra\u0161trukt\u00fare a v zdrojovom k\u00f3de.<\/p>\n<h3>Proces hodnotenia architekt\u00fary<\/h3>\n<p>\nAko spracova\u0165 tak\u00e9 obrovsk\u00e9 mno\u017estvo inform\u00e1ci\u00ed za tak kr\u00e1tky \u010das? Predov\u0161etk\u00fdm paralelizujte pr\u00e1cu.<\/p>\n<p>DevOps by sa mal pozrie\u0165 na infra\u0161trukt\u00faru. Tech lead do k\u00f3du. V\u00fdkonov\u00fd in\u017einier by mal skontrolova\u0165 metriky v\u00fdkonnosti. \u0160pecialista na datab\u00e1zy by mal hlb\u0161ie presk\u00fama\u0165 \u0161trukt\u00faru \u00fadajov.<\/p>\n<p>Ale to je ide\u00e1lny pr\u00edpad, ke\u010f m\u00e1te ve\u013ea zdrojov. Zvy\u010dajne hodnotenie projektu vykon\u00e1va od jedn\u00e9ho do troch \u013eud\u00ed. M\u00f4\u017eete dokonca vykona\u0165 hodnotenie sami, \u010do sa \u010dasto st\u00e1va, ak m\u00e1te potrebn\u00e9 znalosti a sk\u00fasenosti vo v\u0161etk\u00fdch oblastiach projektu. V takom pr\u00edpade by ste mali automatizova\u0165 v\u0161etky procesy, ako len to je mo\u017en\u00e9.<\/p>\n<p>\u017dia\u013e, pre\u010d\u00edta\u0165 dokument\u00e1ciu si budete musie\u0165 manu\u00e1lne. Pri dostato\u010dnej sk\u00fasenosti m\u00f4\u017eete pomerne r\u00fdchlo pochopi\u0165 kvalitu dokument\u00e1cie. \u010co tam je pravda a \u010do jasne nezodpoved\u00e1 realite. Niekedy sa m\u00f4\u017eete stretn\u00fa\u0165 s architekt\u00farou v dokument\u00e1cii, ktor\u00e1 nikdy nebude fungova\u0165 v re\u00e1lnom \u017eivote. To je sp\u00fa\u0161\u0165, aby ste sa zamysleli, ako to vlastne funguje v projekte.<\/p>\n<h3>U\u017eito\u010dn\u00e9 n\u00e1stroje na automatiz\u00e1ciu hodnotenia projektu<\/h3>\n<p>\nHodnotenie k\u00f3du je jednoduch\u00e9 cvi\u010denie. M\u00f4\u017eete pou\u017ei\u0165 statick\u00e9 analyz\u00e1tory k\u00f3du, ktor\u00e9 odhalia probl\u00e9my s dizajnom, v\u00fdkonom a bezpe\u010dnos\u0165ou. Tu je nieko\u013eko z nich:<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/structure101.com\/\">Structure 101<\/a><\/noindex> je skvel\u00fd n\u00e1stroj pre architektov. Uk\u00e1\u017ee v\u00e1m celkov\u00fd obraz, z\u00e1vislosti medzi modulmi a potenci\u00e1lne oblasti na refaktoring. Ako v\u0161etky dobr\u00e9 n\u00e1stroje, aj on stoj\u00ed ve\u013ea pe\u0148az\u00ed, ale m\u00f4\u017eete vyu\u017ei\u0165 30-d\u0148ov\u00fa sk\u00fa\u0161obn\u00fa verziu.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.sonarqube.org\/\">SonarQube<\/a><\/noindex> je star\u00fd dobr\u00fd n\u00e1stroj. N\u00e1stroj na statick\u00fa anal\u00fdzu k\u00f3du. Umo\u017e\u0148uje identifikova\u0165 zl\u00fd k\u00f3d, chyby a probl\u00e9my so zabezpe\u010den\u00edm pre viac ako 20 programovac\u00edch jazykov.<\/p>\n<p>V\u0161etci poskytovatelia cloudov\u00fdch slu\u017eieb maj\u00fa n\u00e1stroje na monitorovanie infra\u0161trukt\u00fary. To v\u00e1m umo\u017en\u00ed spr\u00e1vne pos\u00fadi\u0165 \u00fa\u010dinnos\u0165 infra\u0161trukt\u00fary z h\u013eadiska n\u00e1kladov a v\u00fdkonu. Pre AWS je to <noindex><a rel=\"nofollow\" href=\"https:\/\/aws.amazon.com\/premiumsupport\/technology\/trusted-advisor\/\">trusted advisor<\/a><\/noindex>. Pre Azure je to jednoducho <noindex><a rel=\"nofollow\" href=\"https:\/\/azure.microsoft.com\/en-us\/services\/advisor\/\">Azure Advisor<\/a><\/noindex>.<\/p>\n<p>\u010eal\u0161ie monitorovanie v\u00fdkonu a logovanie pom\u00f4\u017ee n\u00e1js\u0165 probl\u00e9my s v\u00fdkonom na v\u0161etk\u00fdch \u00farovniach. Od datab\u00e1zy s neefekt\u00edvnymi dotazmi, backendu, a\u017e po frontend. Aj ke\u010f si klient tieto n\u00e1stroje predt\u00fdm nenain\u0161taloval, m\u00f4\u017eete ich pomerne r\u00fdchlo integrova\u0165 do existuj\u00faceho syst\u00e9mu, aby ste identifikovali probl\u00e9my s v\u00fdkonom.<\/p>\n<p>Ako v\u017edy, dobr\u00e9 n\u00e1stroje maj\u00fa svoju cenu. M\u00f4\u017eem odporu\u010di\u0165 nieko\u013eko platen\u00fdch n\u00e1strojov. Samozrejme, m\u00f4\u017eete pou\u017ei\u0165 open-source, ale potrv\u00e1 to viac \u010dasu. A to by sa malo urobi\u0165 vopred, a nie po\u010das hodnotenia architekt\u00fary.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/newrelic.com\/\">New Relic<\/a><\/noindex> n\u00e1stroj na hodnotenie v\u00fdkonu aplik\u00e1ci\u00ed<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.datadoghq.com\/\">Datadog<\/a><\/noindex> je cloudov\u00e1 slu\u017eba na monitorovanie syst\u00e9mov<\/p>\n<p>Na testovanie bezpe\u010dnosti existuje mno\u017estvo n\u00e1strojov. Tentoraz odpor\u00fa\u010dam bezplatn\u00fd n\u00e1stroj na skenovanie syst\u00e9mu.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/owasp.org\/www-project-zap\/\">OWASP ZAP<\/a><\/noindex> je n\u00e1stroj na skenovanie webov\u00fdch aplik\u00e1ci\u00ed na s\u00falad so \u0161tandardmi zabezpe\u010denia.<\/p>\n<p>Zbierame v\u0161etko do jedn\u00e9ho celku.<\/p>\n<h3>Pripravujeme spr\u00e1vu<\/h3>\n<p>\nZa\u010dnite svoju spr\u00e1vu so zozbieran\u00fdmi \u00fadajmi od klienta. Op\u00ed\u0161te ciele projektu, obmedzenia, nefunk\u010dn\u00e9 po\u017eiadavky. Potom by ste mali spomen\u00fa\u0165 v\u0161etky vstupn\u00e9 d\u00e1ta - zdrojov\u00fd k\u00f3d, dokument\u00e1ciu, infra\u0161trukt\u00faru.<\/p>\n<p>Nasleduj\u00faci krok. Uve\u010fte v\u0161etky probl\u00e9my, ktor\u00e9 ste na\u0161li manu\u00e1lne alebo pomocou automatizovan\u00fdch n\u00e1strojov. Ve\u013ek\u00e9 automaticky generovan\u00e9 spr\u00e1vy umiestnite na koniec do sekcie pr\u00edloh. Tu by mali by\u0165 kr\u00e1tke a v\u00fdsti\u017en\u00e9 d\u00f4kazy o n\u00e1jden\u00fdch probl\u00e9moch.<br \/>\nPrioritizujte n\u00e1jden\u00e9 probl\u00e9my pod\u013ea hodnotenia: error, warning, info. M\u00f4\u017eete zvoli\u0165 svoju \u0161k\u00e1lu, ale t\u00e1to je vo v\u0161eobecnosti akceptovan\u00e1.<\/p>\n<p>Ako skuto\u010dn\u00fd architekt ste povinn\u00fd poskytn\u00fa\u0165 odpor\u00fa\u010dania na odstr\u00e1nenie n\u00e1jden\u00fdch probl\u00e9mov. Op\u00ed\u0161te vylep\u0161enia a hodnotu pre podnik, ktor\u00fa z\u00edska klient. Ako uk\u00e1za\u0165 hodnotu pre podnik od <noindex><a rel=\"nofollow\" href=\"http:\/\/alexandvira.com\/architecture\/architecture-refactoring-and-design-refactoring-how-to-sell-it-client\/\">architekt\u00fara refaktoring<\/a><\/noindex> o ktor\u00fdch sme diskutovali sk\u00f4r.<\/p>\n<p>Pripravte roadmapu s mal\u00fdmi iter\u00e1ciami. Ka\u017ed\u00e1 iter\u00e1cia by mala obsahova\u0165 \u010das na vykonanie, popis, mno\u017estvo zdrojov potrebn\u00fdch na vylep\u0161enie, technick\u00fa hodnotu a hodnotu pre podnik.<\/p>\n<h3>Ukon\u010dujeme hodnotenie architekt\u00fary a poskytujeme klientovi spr\u00e1vu.<\/h3>\n<p>\nNikdy len tak nezasielajte spr\u00e1vu e-mailom. M\u00f4\u017eu ju bu\u010f v\u00f4bec nepre\u010d\u00edta\u0165, alebo ju pre\u010d\u00edta\u0165 a nepochopi\u0165 bez riadneho vysvetlenia. Skr\u00e1tka \u2013 osobn\u00e1 komunik\u00e1cia pom\u00e1ha eliminova\u0165 nedorozumenia medzi \u013eu\u010fmi. Mali by ste si dohodn\u00fa\u0165 stretnutie s klientom a poveda\u0165 mu o n\u00e1jden\u00fdch probl\u00e9moch, pri\u010dom zd\u00f4raznite najd\u00f4le\u017eitej\u0161ie. Je potrebn\u00e9 upozorni\u0165 klienta na probl\u00e9my, o ktor\u00fdch mohol ani len netu\u0161i\u0165. Napr\u00edklad probl\u00e9my so zabezpe\u010den\u00edm a vysvetli\u0165, ako m\u00f4\u017eu ovplyvni\u0165 podnik. Uk\u00e1\u017ete svoju roadmapu s vylep\u0161eniami a prediskutujte r\u00f4zne mo\u017enosti, ktor\u00e9 s\u00fa pre klienta vhodnej\u0161ie. M\u00f4\u017ee \u00eds\u0165 o \u010das, zdroje, objem pr\u00e1ce.<\/p>\n<p>Na konci v\u00e1\u0161ho stretnutia po\u0161lite klientovi va\u0161u spr\u00e1vu.<\/p>\n<h2>Na z\u00e1ver<\/h2>\n<p>\nHodnotenie architekt\u00fary je zlo\u017eit\u00fd proces. Aby ste vykonali hodnotenie riadne, potrebujete ma\u0165 dostatok sk\u00fasenost\u00ed a znalost\u00ed.<\/p>\n<p>Je re\u00e1lne poskytn\u00fa\u0165 klientovi v\u00fdsledky, ktor\u00e9 s\u00fa pre neho a jeho podnik u\u017eito\u010dn\u00e9, u\u017e za t\u00fd\u017ede\u0148. Aj ke\u010f to rob\u00edte sami.<\/p>\n<p>Na z\u00e1klade mojich sk\u00fasenost\u00ed sa mnoh\u00e9 vylep\u0161enia zastavovali v polovici, a niekedy ani neza\u010dali. T\u00ed, ktor\u00ed si vybrali zlat\u00fa stredn\u00fa cestu a robili len \u010das\u0165 vylep\u0161en\u00ed maxim\u00e1lne prospe\u0161n\u00fdch pre podnik s minim\u00e1lnymi pracovn\u00fdmi n\u00e1kladmi, v\u00fdrazne zlep\u0161ili kvalitu svojho produktu. T\u00ed, ktor\u00ed ni\u010d nerobili, mohli po p\u00e1r rokoch \u00faplne uzavrie\u0165 projekt.<\/p>\n<p>Va\u0161\u00edm cie\u013eom je uk\u00e1za\u0165 z\u00e1kazn\u00edkovi maxim\u00e1lne zlep\u0161enia za minim\u00e1lnu cenu.<\/p>\n<p>In\u00e9 \u010dl\u00e1nky v sekcii <noindex><a rel=\"nofollow\" href=\"http:\/\/alexandvira.com\/category\/architecture\/\">architekt\u00fara<\/a><\/noindex> m\u00f4\u017eete si pre\u010d\u00edta\u0165 vo vo\u013enom \u010dase.<\/p>\n<p>Prajem v\u00e1m \u010dist\u00fd k\u00f3d a dobr\u00e9 architektonick\u00e9 rie\u0161enia.<\/p>\n<p>Na\u0161a facebookov\u00e1 skupina \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.facebook.com\/groups\/206130407152602\/\">Architekt\u00fara a v\u00fdvoj softv\u00e9ru<\/a><\/noindex>.<br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/493226\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0442\u044f\u0436\u0435\u043b\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u0431\u043e\u043b\u044c\u0448\u043e\u043c \u0438 \u0441\u0442\u0430\u0440\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435. Architecture assessment \u2014 \u044d\u0442\u043e \u043e\u0434\u043d\u0430 \u0438\u0437 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0435\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440\u0430. \u041e\u0431\u044b\u0447\u043d\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438, \u0441\u0442\u0430\u0440\u044b\u043c\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c\u0438, \u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043d\u0430\u0434\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0437\u0430 \u043d\u0435\u0434\u0435\u043b\u044e. \u041a\u0430\u043a \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 100\u043a \u0438 \u0431\u043e\u043b\u0435\u0435 \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430 \u043d\u0435\u0434\u0435\u043b\u044e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u0434\u043b\u044f \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b. \u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0438 \u0442\u0435\u0445 \u043b\u0438\u0434\u043e\u0432 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":74956,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-74955","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0442\u044f\u0436\u0435\u043b\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/kak-prochest-i-ispravit-100000-strok-koda-za-nedelyu\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a \u043f\u0440\u043e\u0447\u0435\u0441\u0442\u044c \u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c 100,000 \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430 \u043d\u0435\u0434\u0435\u043b\u044e | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0442\u044f\u0436\u0435\u043b\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/kak-prochest-i-ispravit-100000-strok-koda-za-nedelyu\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-03-22T05:42:23+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-03-22T05:42:23+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Ako pre\u010d\u00edta\u0165 a opravi\u0165 100,000 riadkov k\u00f3du za t\u00fd\u017ede\u0148 | ProHoster","description":"Na za\u010diatku sa v\u017edy \u0165a\u017eko zorientova\u0165 v.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/kak-prochest-i-ispravit-100000-strok-koda-za-nedelyu","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a \u043f\u0440\u043e\u0447\u0435\u0441\u0442\u044c \u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c 100,000 \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 \u0437\u0430 \u043d\u0435\u0434\u0435\u043b\u044e | ProHoster","og:description":"\u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0442\u044f\u0436\u0435\u043b\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432.","og:url":"https:\/\/prohoster.info\/sk\/blog\/administrirovanie\/kak-prochest-i-ispravit-100000-strok-koda-za-nedelyu","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-03-22T05:42:23+00:00","article:modified_time":"2020-03-22T05:42:23+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"74955","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 18:04:26","updated":"2022-10-02 00:18:18","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/74955","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=74955"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/74955\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media\/74956"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=74955"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=74955"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=74955"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}