Jan Štráfelda - Průvodce online -projektem
Praha/Mělník  |  776 678 044  |  jan@strafelda.cz  |  Pošlete mi poptávku

Pravidlo KISS

KISS je zkratka z anglického výrazu Keep It Simple, Stupid. Pravidlo by se tedy dalo přeložit jako „nekomplikuj to, hlupáku“ (původně se psalo s čárkou, později spíše bez ní). Případně také „dělej to jednoduše a hloupě“, méně doslovně pak „udělej to tak jednoduše, jak to jen lze“. Zároveň jde o slovní hříčku, neboť „kiss“ znamená v angličtině polibek (proto můžete někdy slyšet spojení „pravidlo polibku“).

Historie pravidla KISS

Clarence L. Johnson, autor pravidla KISS Clarence L. Johnson, autor pravidla KISSPrincip KISS prý definoval letecký inženýr Clarence L. Johnson zvaný Kelly, který přes čtyři desetiletí pracoval ve známých skunčích dílnách firmy Lockheed (mimo jiné navrhnul i známé špionážní letadlo U-2). Tvrdil, že i proudové letadlo musí být vyrobené tak, aby jej mohl v poli opravit průměrný mechanik jen s pomocí šroubováku a základního nářadí. Později pravidlo KISS převzala americká armáda, letectvo a zejména námořnictvo.

Následně se toto doporučení rozšířilo do mnoha oborů lidské činnosti, od vaření přes komponování fotografií až po minimalistický životní styl. Mně však samozřejmě nejvíce zajímá v souvislosti s vývojem webových aplikací.

Čím více bude mít webová aplikace funkcí, tím více to přinese komplikací. Komplikace přitom k funkcím přibývají exponenciálně.

Tweetnout jedním klikem

Uplatnění principu KISS při vývoji software

KISS při návrhu aplikace

Vývojáři s oblibou uplatňují pravidlo KISS na dvou úrovních vývoje. Za prvé při návrzích aplikace. Obecně platí, že čím více bude mít aplikace funkcí, tím více to přinese komplikací – přičemž komplikace k funkcím přibývají exponenciálně. Této skutečnosti pak obvykle odpovídá také cena a čas dodání. A jak to dopadá, pokud si jí manažeři projektu nejsou vědomi, všichni dobře známe.

Proto se nikdy nepokoušejte vymýšlet ideální aplikaci. Hledejte řešení „good enougth“. Což samozřejmě vyžaduje dobře pochopit, co přesně různé cílové skupiny od aplikace očekávají, jak ji budou používat a jakou jim konkrétně aplikace přináší hodnotu. Z této logiky vlastně vychází koncept minimálního životaschopného produktu, kdy první verze aplikace umí opravdu jen nutný základ. A další funkce se pak přidávají později, jakmile si již na reálném trhu ověříme, že jsou opravdu potřeba.

Klientům pravidlo KISS vždy opakuji na úvodních schůzkách, když se začínáme bavit o tom, co vše by jejich nový web, e-shop či internetová aplikace měly umět. Vize jsou skvělá věc – a určitě důležitá – ale připadá mi, že během vymýšlení zadání už je lepší utlumit našení a ukotvit ideální představy do reality.

Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.

Antoine de Saint-Exupéry, autor slavné knihy Malý princ

KISS při programování aplikací

A za druhé, vývojáři princip KISS aplikují i při samotném psaní aplikace. Úkolem programátora je totiž rozložit si aplikaci na co nejmenší kousky a pro ně pak napsat zdrojové kódy tak, aby každý kousek byl co nejsnáze pochopitelný, testovatelný a do budoucna i upravovatelný.

Méně zkušení programátoři však aplikaci nerozdrobí na dostatečně malé kusy a vytváří pak složitá a komplexní řešení, ve kterých je i pro ně samotné obtížné se orientovat a které pak nikdo nechce v budoucnu předělávat či rozšiřovat. Tzv. špagetový kód. Tím aplikace dostává hned při zrození do vínku obrovský technický dluh.

Řešením je najít si zkušené vývojáře. A věnovat část jejich času na tzv. refaktorizaci kódu, tj. jeho postupné přepsání tak, aby respektoval pravidlo KISS (a další podobné užitečné principy, jako třeba DRY, tj. neopakovat stejný kód na více místech aplikace).

Zaujal jsem vás? Přihlašte se do mailingu a mé další texty už vám neuniknou:

 

Zprávy posílám cca 8 × ročně. Odhlásit se můžete kdykoliv. Více informací.