Ovenfra tilnærminger legger vekt på planlegging og fullstendig forståelse av systemet. Ingen koding kan begynne før tilstrekkelig detaljnivå har blitt oppnådd i designet av minst en del av systemet. Ovenfra tilnærminger implementeres ved å sette spirer inn for modulene, men dette sinker testing av de endelige funksjonelle enhetene i et system inntil et betydelig design er komplett.