Dette handler om de forskellige overordnede teknikker og betragtninger man har, når man skal udvikle software.