Rationale-Based Software Engineering

  • Janet E. Burge
  • John M. Carroll
  • Raymond McCall
  • Ivan Mistrik

Table of contents

  1. Front Matter
    Pages i-xxxv
  2. Introduction

  3. Uses for Rationale

    1. Front Matter
      Pages 78-78
    2. Pages 91-101
    3. Pages 113-122
  4. Rationale and Software Engineering

  5. Frameworks for Rationale-Based Software Engineering

  6. Back Matter
    Pages 267-316

About this book


Many decisions are required throughout the software development process. These decisions, and to some extent the decision-making process itself, can best be documented as the rationale for the system, which will reveal not only what was done during development but the reasons behind the choices made and alternatives considered and rejected. This information becomes increasingly critical as software development becomes more distributed and encompasses the corporate knowledge both used and refined during the development process. The capture of rationale helps to ensure that decisions are well thought out and justified and the use of rationale can help avoid the mistakes of the past during both the development of the current system and when software products (architecture and design, as well as code) are reused in future systems.

Burge, Carroll, McCall, and Mistrík describe in detail the capture and use of design rationale in software engineering to improve the quality of software. Their book is the first comprehensive and unified treatment of rationale usage in software engineering. It provides a consistent conceptual framework and a unified terminology for comparing, contrasting and combining the myriad approaches to rationale in software engineering. It is both an excellent introductory text for those new to the field and a uniquely valuable reference for experienced rationale researchers. The book covers the use of rationale for decision making throughout the software lifecycle, starting from the first decisions in a project and continuing through requirements definition, design, implementation, testing, maintenance, redesign and reuse.


Design Process Design Rationale Empirical Software Engineering Requirements Engineering Software Design Software Engineering Software Lifecycle Software Maintenance Software Reuse architecture design development testing validation

Authors and affiliations

  • Janet E. Burge
    • 1
  • John M. Carroll
    • 2
  • Raymond McCall
    • 3
  • Ivan Mistrik
    • 4
  1. 1.School of Eng. & Appl. Science Computer Science & Systems AnalysisMiami UniversityOxfordUSA
  2. 2.School of Information Sciences and Technology 504 Rider I BuildingPenn State UniversityUniversity ParkUSA
  3. 3.College Architecture & PlanningUniversity of ColoradoBoulderUSA
  4. 4.Independent ConsultantHeidelbergGermany

Bibliographic information

  • DOI
  • Copyright Information Springer-Verlag Berlin Heidelberg 2008
  • Publisher Name Springer, Berlin, Heidelberg
  • eBook Packages Computer Science
  • Print ISBN 978-3-540-77582-9
  • Online ISBN 978-3-540-77583-6
  • Buy this book on publisher's site