In this chapter the authors discuss the WHY and WHAT of modeling software development processes: defining the components of a software process and proposing 5-dimensional grid of attributes of existing models: strategy and path, levels, main subprocesses, components and aura. Specific process models, currently used or historically important, are described. This is followed by an extensive discussion of methods for and problems of modeling a software process, followed by a shorter discussion on the enactment of process models via software engineering environments. The chapter closes with a discussion of the human aspects concerning introduction and enactment of a process model.