Established software development processes focus on delivering software within time and budget according to a set of requirements. However, practical experiences show that neither business processes nor requirements can be fully understood in an early stage of a realistic software project. This is not primarily due to inadequate requirements elicitation but the fact that the technical implementation constitutes a formalization of a more or less fuzzy business domain revealing gaps and inconsistencies. Furthermore, the technology used adds constraints and enables new processes. Hence, trying to set the requirements in advance causes change requests, cost and time overruns, or even project cancellation. This paper continues the line of thought of iterative process models by regarding software development as a process iteratively converging business goals and technology from both sides. This “goaldriven process” is successfully applied in real-life commercial software projects and ha...