Conceptual - for application domain analysis and high-level system
design
Design - for software designs
Programming - used to implement software systems
The higher level must be substantiated by the lower level.
The lower level must fit into the context of the higher level.