Samotnému programovaniu vždy predchádza analýza. Teda proces, počas ktorého si s klientom prejdeme všetky jeho požiadavky na systém, ktorý máme implementovať, ale taktiež úlohu tohto systému v celkovom informačnom systéme danej organizácie, či firmy. Pokiaľ si klient praje iba vypracovať analýzu, nie je to pre nás problém.
Po analýze prichádza samotný návrh systému, teda návrh jeho jednotlivý častí, komunikácia medzi nimi, komunikácia s dátovými úložskami, samotný fyzický návrh dátovej vrstvy, identifikácia užívateľov, a samozrejme samotné zabezpečenie riešenia ako zvonku, tak aj zvnútra. Dobrý a prepracovaný návrh nám potom slúži na rýchlu a bezproblémovú implementáciu.