<P>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 m
Rationale-Based Software Engineering
β Scribed by Janet E. Burge, John M. Carroll, Raymond McCall, Ivan Mistrik (auth.)
- Publisher
- Springer-Verlag Berlin Heidelberg
- Year
- 2008
- Tongue
- English
- Leaves
- 330
- Edition
- 1
- Category
- Library
No coin nor oath required. For personal study only.
β¦ Synopsis
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.
β¦ Table of Contents
Front Matter....Pages i-xxxv
Front Matter....Pages 2-2
What is Rationale and Why Does It Matter?....Pages 3-23
What Makes Software Different....Pages 25-35
Rationale and Software Engineering....Pages 37-48
Learning from Rationale Research in Other Domains....Pages 49-66
Decision-Making in Software Engineering....Pages 67-76
Front Matter....Pages 78-78
Presentation of Rationale....Pages 79-89
Evaluation....Pages 91-101
Support for Collaboration....Pages 103-112
Change Analysis....Pages 113-122
Front Matter....Pages 124-124
Rationale and the Software Lifecycle....Pages 125-138
Rationale and Requirements Engineering....Pages 139-153
Rationale and Software Design....Pages 155-173
Rationale and Software VV&T....Pages 175-185
Rationale and Software Maintenance....Pages 187-198
Rationale and Software Re-use....Pages 199-209
Front Matter....Pages 212-212
A Conceptual Framework....Pages 213-239
An Architectural Framework....Pages 241-254
Rationale-Based Software Engineering: Summary and Prospect....Pages 255-265
Back Matter....Pages 267-316
β¦ Subjects
Software Engineering; Management of Computing and Information Systems; Electrical Engineering
π SIMILAR VOLUMES
<p>Thirty years ago, I first entered the dark realm of software engineering, through a prior interest in documentation. In those days, documentation pretty much meant functional specifications. The idea that stakeholders in a system (its implementers, its end-users, its maintainers, and so forth) mi
<P>The emphasis on new and changing technologies and process models in todayβs software development obscures the fact that software engineering is still primarily a human-based activity and that the success of a software project largely depends on the decisions made by humans during engineering. Rat
The IT community has always struggled with questions concerning the value of an organizationβs investment in software and hardware. It is the goal of value-based software engineering (VBSE) to develop models and measures of value which are of use for managers, developers and users as they make trade