59 used & new from $0.75

Have one to sell? Sell yours here
 
 
Managing Software Requirements: A Unified Approach (The Addison-Wesley Object Technology Series)
 
 
Tell the Publisher!
I’d like to read this book on Kindle

Don’t have a Kindle? Get your Kindle here.
 
  

Managing Software Requirements: A Unified Approach (The Addison-Wesley Object Technology Series) (Hardcover)

~ (Author), Don Widrig (Author)
4.3 out of 5 stars  See all reviews (18 customer reviews)


Available from these sellers.


19 new from $7.34 39 used from $0.75 1 collectible from $52.50
There is a newer edition of this item:
Managing Software Requirements: A Use Case Approach (2nd Edition) Managing Software Requirements: A Use Case Approach (2nd Edition) 4.5 out of 5 stars (6)
$43.57
In Stock.
What Do Customers Ultimately Buy After Viewing This Item?

Customers Who Bought This Item Also Bought

Software Requirements, Second Edition (Pro-Best Practices)

Software Requirements, Second Edition (Pro-Best Practices)

by Karl Eugene Wiegers
4.6 out of 5 stars (47)  $26.39
Writing Effective Use Cases

Writing Effective Use Cases

by Alistair Cockburn
4.6 out of 5 stars (46)  $44.40
Mastering the Requirements Process (2nd Edition)

Mastering the Requirements Process (2nd Edition)

by Suzanne Robertson
4.4 out of 5 stars (26)  $37.89
Exploring Requirements: Quality Before Design

Exploring Requirements: Quality Before Design

by Gerald M. Weinberg
4.7 out of 5 stars (27)  $33.81
Software Project Survival Guide (Pro -- Best Practices)

Software Project Survival Guide (Pro -- Best Practices)

by Steve McConnell
4.3 out of 5 stars (64)  $22.49
Explore similar items

Editorial Reviews

Product Description

"A comprehensive solution to the requirements challenges faced by every development team. Full of insight and ideas all developers can learn from." --Ivar Jacobson

"Many projects fail for the simple reason that the developers fail to build the right thing: They either deliver a system that does not meet the expectations of its intended users, or they deliver a system that focuses on secondary functions at the expense of its primary use. Drawing on their extensive experience, Dean and Don demonstrate how to employ an industrial-strength requirements process, one that helps ensure you will build the right thing. Developers of any kind of application should read this book." --Grady Booch

Despite the wealth of development knowledge, experience, and tools generally available today, a substantial percentage of software projects continue to fail, often because requirements are not correctly determined and defined at the outset, or are not managed correctly as the project unfolds. Clients do not always know or express their needs precisely, and too often designers and developers do not ask the right questions at the right times. As a result, projects often spin out of control as "feature bloat" and shifting priorities cause budgets and schedules to exceed expectations. Managing Software Requirements focuses on this critical cause of failure and offers a practical, proven approach to building systems that meet customers' needs--on time and within budget.

The authors are skilled practitioners who have spent their careers in the trenches building high-quality applications, including safety-critical, real-time systems. Using an informal, approachable style, their own war stories, and a comprehensive case study they show how designers and developers can effectively identify requirements by employing the power of use cases and more traditional forms of requirements expression. The book illustrates proven techniques for determining, implementing, verifying, and validating requirements. It describes six vital Team Skills for managing requirements throughout the lifecycle of a project: Analyzing the Problem, Understanding User Needs, Defining the System, Managing Scope, Refining the System Definition, and Building the Right System. Managing Software Requirements specifically addresses the ongoing challenge of managing change and describes a process for assuring that project scope is successfully defined and agreed upon by all stakeholders.

Topics covered include:

* The five steps in problem analysis * Business modeling and system engineering * Techniques for eliciting requirements from clients, users, developers, and other stakeholders * Applying and refining use cases * Prototyping * Organizing and managing requirements information * Establishing project scope and managing customers * Using both informal and technical methods for specifying requirements * How to measure and improve the quality of your product's requirements * Moving from requirements to implementation * Verifying and validating the system * Managing change

The book concludes with a step-by-step guide to incorporating these powerful techniques into future projects.



From the Inside Flap

Context and Acknowledgments

The knowledge delivered in this book represents the cumulative experience of a number of individuals who have spent their careers defining, developing, and delivering world-class software systems. This book is not an academic treatment of requirements management. During the 1980s, Don Widrig and I were executives in a small company producing software solutions for customers. When we developed many of the requirements management practices described in this book, our perspective was of those accountable for both the outcomes of the software systems we developed and the results that had to be delivered to shareholders. As the performance of the delivered software was critical to the success of the business venture itself, we tended to discourage petty biases, personal preferences, and experimentation with unproven techniques.

Over the past decade, the techniques have evolved and have been enhanced by new experiences, extended with the help of additional expertise, in different companies and in different circumstances. But all of the techniques presented are "real-world" proven and have withstood the test of time. Perhaps even more important, they have withstood the technological change that has occurred in the industry during this period. Indeed, most of the principles in this book are independent of changing trends in software technology. We can therefore at least hope that the knowledge expressed herein can deliver some lasting value.

Requirements Lessons from Building Software for Others

At first, I just hated computers. ("What? I stayed here all night and I have to submit this batch job again because I left out a 'space'? Are you crazy? Let me in that room....") My first "real computer" was a minicomputer, which, although incredibly limited in performance by today's standards, was unique in that I could touch it, program it, and make it do what I wanted. It was mine.

My early research applied the computer to analyze physiological signals from the human body, primarily EKGs, and the dedicated computer was a wonderful tool for this job. Out of this experience, I began to apply my programming skills and experience with real time software systems to the needs of the industry.

Eventually, I incorporated RELA, Inc., and began a long, and perhaps unusually difficult, career as CEO of a contract software development business. My coauthor, Don Widrig, joined me at RELA in the early years as Vice President of Research and Development. He had the primary accountability for the success of the many systems that we developed.

Over the years, the company grew rapidly. Today, the company employs many hundreds of people and has diversified beyond providing just software to providing complete medical devices and systems that encompass software, as well as mechanical, electronic, optical, and fluidics-handling subsystems. However, at the heart of each and every machine, including the latest DNA fingerprinting in vitro diagnostic clinical laboratory, lies one or more computers, reliably and routinely delivering its steady heartbeat through the rhythm of a real-time multitasking system.

Initially, we would program anything for anybody, from antenna positioning software to such games as laser tag, automated guided vehicles for amusement parks, educational products, welding robots, and automated machine controls. We even developed a large distributed computer system that auto-matically detected and counted the presence of commercials on television. (Our motto then was "We make computers to watch commercials so you don't have to!") Perhaps the only thing the software we developed was that we developed it for others--we were not domain experts in the field, and we couldn't cover our own paychecks if we had to. We were completely dependent on the cus-tomer's satisfaction as the final determination of outcome. In many ways, such an environment was very conducive to effective requirements management. Here's why:

We knew little about the domain, so we were dependent on customers for the requirements. There was little temptation to simply make them up; we had to ask, and we had to learn how to ask the right questions the right way, at the right time. Our customers often knew little about computers, so they were dependent on us to translate their needs and wishes into technical requirements. The fact that money changed hands created a rigorous interface between the developer and the customer. Quality was easy to measure: We either got paid or didn't.

It was in this environment that we discovered the first of two fundamental questions that face software developers on each and every project. This question dominated our behavior for many years and remains today as perhaps the toughest question to answer in any software project. And the Big Question is:

Big Question 1: "Exactly what is this software supposed to do?"

The principles and techniques presented in Team Skill 1, Analyzing, the Problem; Team Skill 2, Understanding User Needs; and Team Skill 3, Defining the System, were developed over more than a decade as a means to discover the answer to this question. Each of these techniques has proved its worth and has demonstrated its effectiveness in many real-world projects. It was also during this period that I first became aware of the work of Donald Gause, and Jerry Weinberg especially their book Exploring Requirements: Quality Before Design, (1989). Because their book heavily influenced our work, we have borrowed a few key concepts from it for this book, both because the concepts work and because we thought it only fair that you share the Gause and Weinberg experience.

Lessons from Building High Assurance Systems

Over time, RELA began to specialize in the development of various types of computer-based medical devices and systems: portable ventilators (breathing machines), infusion pumps, pacemaker programmers, clinical diagnostic systems, blood pumps, patient-monitoring equipment, and a plethora of other diagnostic and therapeutic devices.

It was early during the ventilator development project that the ultimate accountability for what we were doing really hit us: Whoa, if we screw this up, somebody could die! Our primary concern was for the patient and for the family of the patient who was tethered to the device, a device on which we were executing some of the earliest, most time-critical, resource-limited software the world had yet seen. (Imagine the challenge of alpha and beta testing. You go first!)

Clearly, this high-stakes endeavor caused us to take software very seriously at a fairly early time in the evolution of the embedded-systems industry. It became clear very quickly that sustainable success would require a combination of

A pragmatic process for defining and managing the requirements for the software A solid methodology for the design and development of software The application of various proven, innovative, techniques for verifying and validating that the software was safe and effective, and Extraordinary skills and commitment on the part of both the software development and software quality assurance teams.

I strongly believed at that time, and I am even more convinced today, that all of those elements are required to deliver any reasonably reliable software system of any significant scope. At RELA, Inc., this was to be the only way we could possibly ensure each patient's safety, the very survival of our company, and the economic futures of the employees and their families who depended on the company.

Given our earlier success in the development and application of the various techniques we used to answer Big Question 1, we now moved on to the second fundamental question facing software development teams worldwide. Big Question 2 is

Big Question 2: "How, exactly, will we know when the software does exactly that and nothing else?"

The techniques we used to answer this question form the basis of Team Skill 5, Refining the System Definition, and Team Skill 6, Building the Right System.

So, you can be confident that the techniques presented in this book are road hardened and well proven. Also, even if you are not in the business of developing safety-critical systems, you can rest assured that what follows is useful, practical, and cost-effective advice that you can use to develop software systems of the highest quality. Although the techniques that we borrowed, modified, developed and applied at RELA, Inc., to address the two big questions were highly effective, I must also admit to one nagging uncertainty that kept me awake during the most serious crunch times on these projects: "Given the highly manual nature of the requirements process, how long would it be before we made a single, but potentially dangerous, mistake?" And there was also the matter of cost, as manual verification and validation were expensive and error prone. During this period, the discipline of mechanical engineering had advanced from a mechanical drawing arm to 3-D computer-aided design systems. In the same period, our software advances were limited, for all practical purposes, to having increased the level of abstraction in our programming languages: a good thing, for certain, but defect rates, lines-of-code productivity factors, and quality measures were relatively constant. Our experiments with the CASE tools of that period were met with mixed results. Frankly, as a software engineer and entrepreneur, I found the state of the art in "software engineering" to be embarrassing. Although it was obvious that automation would never eliminate the critical- thinking skills required in software development, I did become convinced that automating some of the manual, record-keeping, and change management aspects of the process would free scarce resources to focus on higher, value-added activities. And, of course, we anticipated that development costs would be lower while reliability would be increased! Lessons from the Requirements Management Business

So, in 1993, REQUISITE, Inc., was born, and a number of us committed to a course of action to develop and to market an innovative requirements management tool: RequisitePro. As we were continuously helping customers address their requirements management challenges during this time, much additional material for this book was born. We owe much of this work to those customers, and the customers at RELA, who essentially taught us everything we know on the subject.

This portion of my career was heavily influenced by Dr. Alan Davis, who was Editor in Chief of IEEE Software magazine and held the El Pomar Endowed Chair of Software Engineering at the University of Colorado in Colorado Springs. Al joined the company as a director and advisor early on and was instrumental in influencing our technology and the business direction. He is well known for his leadership in the field of requirements engineering. Al was also active in consulting activities and had developed a number of techniques for helping companies improve their requirements process. These techniques were merged with some of the RELA-derived techniques and became the basis of a professional training offering called Requirements College, the basis for parts of this book.

In addition, operating under the insufficiently popular business theory of "you can never have too much professional help," we recruited renowned software author and expert Ed Yourdon to join the board of the company. Ed was also highly influential in guiding the course of the technology and busi-ness direction. Both Ed and Al were earlier contributors to this work, and many of the words that appear in this book are theirs. Indeed, we had intended to release the book jointly a few years ago. But times change, and Ed and Al have graciously donated all of their earlier work to us. However, you will often hear them speaking through these words.

Experiences at Rational Software

Rational Software Corporation purchased Requisite, Inc., in 1997. At Rational, we have gained significant additional experience in requirements management as it applies to developing and releasing a full family of application development tools, as well as continuing to help customers address their requirements problems. Don continues to work with us and help refine the techniques. In addition, at Rational, I have had the pleasure of working with software experts and authors Grady Booch, Ivar Jacobson, James Rumbaugh, Walker Royce, and Philippe Kruchten. Each of them contributed to my view of the requirements management challenge, and Walker and Philippe were early reviewers of this work.

We also became exposed to the use case technique for requirements capture. The application of notion of using use cases within the design model pro-vides a common thread to drive architecture, implementation, and testing.

I am also a fan of Rational's promulgation of the iterative approach for software development, of which I like to think that we were early practitioners at RELA, as well as the Rational Unified Process, a full life cycle software development process. Rational helped me complete this work, and for that I am grateful. Also, Rational graciously provided permission to use certain ideas, text, and diagrams. Finally, we would also like to thank the reviewers and many others who contributed to this work, including Al Davis, Ed Yourdon, Grady Booch, Philippe Kruchten, Leslee Probasco, Ian Spence, Jean Bell, Walker Royce, Joe

Summary

In a sense, few, if any, ideas in this book are original. Instead, it represents harvesting the shared software development experiences of two decades, with a focused, consistent, and measured emphasis on the requirements challenge. In so doing, the work, we hope, assimilates the experiences and opinions of some of the best minds in the industry on this unique and difficult software challenge. We firmly believe that the result--these six requisite team skills for effective requirements management, will help you deliver quality software systems on time and on budget.

0201615932P04062001


Product Details

  • Hardcover: 528 pages
  • Publisher: Addison-Wesley Professional (October 28, 1999)
  • Language: English
  • ISBN-10: 0201615932
  • ISBN-13: 978-0201615937
  • Product Dimensions: 9.2 x 7.5 x 1.2 inches
  • Shipping Weight: 2.2 pounds
  • Average Customer Review: 4.3 out of 5 stars  See all reviews (18 customer reviews)
  • Amazon.com Sales Rank: #721,351 in Books (See Bestsellers in Books)

More About the Author

Dean Leffingwell
Discover books, learn about writers, read author blogs, and more.

Visit Amazon's Dean Leffingwell Page

Look Inside This Book


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

 

Customer Reviews

18 Reviews
5 star:
 (10)
4 star:
 (5)
3 star:
 (2)
2 star:    (0)
1 star:
 (1)
 
 
 
 
 
Average Customer Review
4.3 out of 5 stars (18 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
65 of 67 people found the following review helpful:
5.0 out of 5 stars One of the best, January 24, 2000
By Al Davis (Colorado Springs, Colorado, USA) - See all my reviews
As an author myself of a competing requirements book, you might expect me to pan this one. But, no, I must admit that this is one of the bext requirements books ever written. It is quite obvious that these two authors have actually lived and breathed software requirements for many, many years. The book is chock full of real-life experiences and practical advice.

Unlike many other requirements books, this one covers the full breadth of classical requirements management, including both elicitation and specification. It is not a religious piece (I mean that as a compliment) in that it does not preach any single "best" way to do anything. Instead, it offers the readers a wide range of choices: brainstorming, storyboarding, use cases, prototyping, and so on.

If you are writing requirements, you need to read this book.

Alan M. Davis

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
37 of 39 people found the following review helpful:
5.0 out of 5 stars An excellent addition to your bookshelf!, November 30, 1999
By Dan Rawsthorne (Seattle, WA United States) - See all my reviews
First of all, let's get to the point. If you are serious about Software Engineering this book belongs on your bookshelf. It covers the full range of topics relating to Requirements Management, from 'Defining the Problem' to 'Managing Your Customer' to 'Managing Change.' There is enough information in here to make your brain hurt, but it is presented well - with many diagrams, stories, and a conversational tone. The book focuses on large team development of large systems, but the concepts will be useful to anyone who has to manage interactions between Developers, Customers, and Users.

This book is a logical, systematic, and thorough description of the current 'state of the art' for Requirements Management, defined as ''a systematic approach to eliciting, organizing, and documenting the requirements of the system, and a process that establishes and maintains agreement between the customer and the project team on the changing requirements of the system.'' It divides the discipline into six team skills, each with its own goals, concepts, and techniques.
- Analyzing the Problem: understanding the problem that needs to be solved.
- Understanding User Needs: eliciting requirements from Users and other Stakeholders.
- Defining the System: organizing and documenting the user's requirements.
- Managing Scope: keeping the workload under control.
- Refining the System Definition: converting the user's requirements to design inputs.
- Building the Right System: implementing, verifying, and validating the system.
Finally, the authors provide a four-page recipe for getting started in your organization.

This book is well worth buying.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)



 
21 of 23 people found the following review helpful:
5.0 out of 5 stars Every IT analyst and software consultant should read this, June 22, 2000
By Bryan D. Merrill (Oakland, CA) - See all my reviews
Managing Software Requirements gives a true-to-life overview of the problems and pitfalls inherent in getting business people and software people to speak a common language. The first six chapters leverage the authors' combined 40+ years of experience in solving business problems with software. Their insight is keen. Their advice is practical.

The section on understanding user needs, though a bit shallow at times, gives the consultant a useful collection of tools to help elicit issues from business people who have trouble expressing them.

The section on managing scope should be read by everyone who hands projects over to software development teams. These four chapters give more useful information in 38 pages than most books give in 400 pages.

I was disappointed in the light treatment of use case methodology. However, the broad overview of involving consultants in the software analysis and design process is priceless.

Anyone implementing the Rational Unified Process or similar iterative design method would find this work timely and pragmatic. This is a must read for development managers, project coordinators, business analysts, and even architecture and planning administrators.

Comment Comment | Permalink | Was this review helpful to you? Yes No (Report this)


Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

4.0 out of 5 stars Fails to explain the GAP between Biz Objectives & Outcomes
Software requirements begin with business objectives, definition, requirements, and expectations. Business community always looks at the bigger picture, on the other hand, systems... Read more
Published on September 15, 2003 by Vivek Dixit

5.0 out of 5 stars Anyone involved with developing software - read this book
I have survived many approaches to "capturing" a system design over the last 22 years. This book, however, lays out a tactical plan that can be used to flush out design... Read more
Published on February 28, 2003 by Mark W Mitchell

5.0 out of 5 stars A must for anyone in software development
This is the most inspiring book I have read for years! I recommend it to *anyone* involved in software development or even those who are about to make an investment in software... Read more
Published on October 4, 2002 by livingrid

5.0 out of 5 stars Excellent, informative guide to requirements gathering
This is an excellent book for building a strong foundation in requirements gathering. The authors have clearly been doing requirements gathering for years and are kind of enough... Read more
Published on March 21, 2002 by Victor L. Peters

4.0 out of 5 stars Basics
This is a good book to read and have in the bookself. It gets you started and even if you have knowledge of requirements management, you should see it what's inside. Read more
Published on February 12, 2002 by Ville Hanninen

4.0 out of 5 stars Basics
This is a good book to read and have in the bookself. It gets you started and even if you have knowledge of requirements management, you should see it what's inside. Read more
Published on February 12, 2002 by Ville Hanninen

5.0 out of 5 stars Outstanding
I previously wrote a positive review, and said the only thing that would make the book better is if they'd elaborated on the case study in an appendix. Read more
Published on January 22, 2002 by AJW

5.0 out of 5 stars Outstanding
This book is must-reading for project managers. The writing is crisp, and the chapters short -- each topic is nailed tight. Read more
Published on January 21, 2002 by AJW

3.0 out of 5 stars A bit much
I bought this book sight unseen, after it was recommended by the local computer society.

The organisation I work for now builds medium-size community based web-portal... Read more

Published on August 3, 2001 by Christo

1.0 out of 5 stars Shotgun approach to requirements gathering.
Well, I bought this book and I have to say that, even though Ed Yourdon is a co-writer, I am pretty disappointed with it. Read more
Published on June 28, 2001 by C. A. Herbaut

Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Discussion Replies Latest Post
Textbooks for Kindle DX? 61 4 days ago
textbook scam 66 9 days ago
Search Customer Discussions
Search all Amazon discussions
   




Product Information from the Amapedia Community

Beta (What's this?)


Look for Similar Items by Category


Look for Similar Items by Subject

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.



Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.