On the Process of Software Design: Sources of Complexity and Reasons for Muddling Through

Morten Hertzum

    Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review


    Software design is a complex undertaking. This study delineates and analyses three major constituents of this complexity: the formative element entailed in articulating and reaching closure on a design, the progress imperative entailed in making estimates and tracking status, and the collaboration challenge entailed in learning within and across projects. Empirical data from two small to medium-size projects illustrate how practicing software designers struggle with the complexity induced by these constituents and suggest implications for user-centred design. These implications concern collaborative grounding, long-loop learning, and the need for a more managed design process while acknowledging that methods are not an alternative to the project knowledge created, negotiated, and refined by designers. Specifically, insufficient collaborative grounding will cause project knowledge to gradually disintegrate, but the activities required to avoid this may be costly in terms of scarce resources such as the time of key designers
    Original languageEnglish
    Title of host publicationOn the Process of Software Design : Sources of Complexity and Reasons for Muddling through
    EditorsJ. Gulliksen, M. B. Harning, P. Palanque, G. C. van der Veer, J. Wesson
    Number of pages18
    Publication date2008
    ISBN (Print)978-3-540-92697-9
    Publication statusPublished - 2008
    EventIFIP EIS 2007 Conference on Engineering Interactive Systems - Salamanca, Spain
    Duration: 22 Mar 200724 Mar 2007


    ConferenceIFIP EIS 2007 Conference on Engineering Interactive Systems
    SeriesLecture Notes in Computer Science


    • User-centred design
    • Design process
    • Software development
    • Software-project complexity
    • Muddling through
    • Collaborative grounding

    Cite this