Requirements Development

Previous Articles


UML made Jacobson’s Use Cases State of the Art. What’s Next?
Use cases are about applications that interact with other systems or with humans rather than about object technology. As interaction decreases, so will classical "system" use cases, whereas Ivar Jacobson’s business use cases will remain as useful as they are today.
By Milan Kratochvil
Milan Kratochvil is an independent consultant and trainer based outside Stockholm, Sweden. He focuses on IT requirements, model-driven development and architecture in general and on variance, customization and confi gurability in particular. Milan is also co-author of UML Xtra Light—How to Specify Your Software Requirements and of Growing Modular—Mass Customization of Complex Products, Services and Software.


How a Business Analyst can Help on a Software Project
Even without having lead responsibility for the requirements development process, an individual having business analyst skills and thought patterns can help smooth the requirements dialogue.
By Karl E. Wiegers, Ph.D.
Karl E. Wiegers is principal consultant with Process Impact in Portland, Ore. He is also the author of More About Software Requirements: Thorny Issues and Practical Advice; Software Requirements, 2nd Edition; Peer Reviews in Software: A Practical Guide; and Creating a Software Engineering Culture.


How to Handle Software Requirements Changes
When faced with changes to software or system requirements, the first thing you need to do is recognize and accept that changes and growth in requirements will be a reality on nearly every project.
By Karl E. Wiegers, Ph.D.
Karl E. Wiegers is principal consultant with Process Impact in Portland, Ore. He is also the author of More About Software Requirements: Thorny Issues and Practical Advice; Software Requirements, 2nd Edition; Peer Reviews in Software: A Practical Guide; and Creating a Software Engineering Culture.


When Requirements Go Bad
Errors of conception are the most significant kind of requirements errors, and they are the hardest to detect. In this first installment of a two-part article, Kurt examines "errors of conception," which relate to requirements errors that arise from problems with the basic conception of the solution.
By Kurt Bittner
Kurt Bittner works for IBM on software development product strategy. He is a coauthor, with Ian Spence, of Use Case Modeling (Addison-Wesley, 2002).


Requirements by Pattern
An industry obsessed with the "end game" needs a new descriptive tool designed to speed the specification process. These are a subset of the most prevalent and well-defined requirements patterns.
By Christopher Creel
At this writing, Christopher Creel worked for The Technical Resource Connection.


Plan Perfect
Don't depend on a work breakdown structure to keep your project on target: Write it out to help managers, team members, and stakeholders find consensus.
By Johanna Rothman
Johanna Rothman is president of the Rothman Consulting Group.


What Is the Cost of a Requirement Error?
(And How Can I Get a Discount?)
Here's a simple, practical calculation of the cost of requirements errors in application software development projects. Tom also recommends a way to find and fix requirements errors early in a project, when they are least expensive to correct.
By Tom King
Tom King is vice president of product development at Ravenflow.


Requirements Definition Practices
In Large American Corporations
Tom presents the results of a survey that examines current practices in Requirements Definition for software development projects within large corporations headquartered in the U.S.
By Tom King
Tom King is vice president of product development at Ravenflow.


Towards a Richer Representation of
Requirements
Once we understand that there is a rich representation of requirements lurking beneath the surface, we can change the way in which we treat the entire process of dealing with them.
By Joe Marasco
Joe Marasco, PhD, is the author of The Software Development Edge. Joe led Rational Software’s product strategy for lifecycle tools for 17 years until its acquisition by IBM.


Writing Good Use Cases
Use cases capture the functional requirements of your system and drive the software development lifecycle. That's why it is important to get use cases right.
By Terry Quatrani
Terry Quatrani is UML Evangelist for IBM Rational Software and author of Visual Modeling with Rational Rose (Addison-Wesley, 2002).


Requirements Engineering Patterns
Requirements engineering—the elicitation, documentation, and validation of requirements—is a fundamental aspect of software development.
By Scott Ambler
Scott Ambler is the practice leader of the Agile Modeling and Agile Unified Process methods. His latest book is Refactoring Databases: Evolutionary Database Design (Addison-Wesley, 2006).


Cosmic Truths About Software
The best advice for how to proceed in a given situation depends on the nature of the project, its constraints, the culture of the organization and team, the business environment, and other factors.
By Karl E. Wiegers
Karl E. Wiegers is Principal Consultant with Process Impact and author of Software Requirements, Second Edition (Microsoft Press, 2006), on which this article is based.


The Requirements Dilemma
Unraveling the requirements dilemma starts with a collaboration between business and IT.
By Tom King
Tom King is vice president of product development at Ravenflow.


The Requirements Translation Challenge
It's critical that tools that enable use case validation be part of the business analyst's toolkit.
By Joe Marasco
Joe Marasco, PhD, is the author of The Software Development Edge. Joe led Rational Software’s product strategy for lifecycle tools for 17 years until its acquisition by IBM.


Generating Complete, Unambiguous, and Verifiable
Requirements from Stories and Use Cases
Stories and use case path specifications are valuable tools for requirements elicitation, analysis, and validation.
By Don Firesmith
Don Firesmith is a senior member of the technical staff at the Software Engineering Institute (SEI) and developer of the world’s largest free and open-source informational web site of reusable process engineering components (www.opfro.org).


Writing Good Requirements
All too often, software requirements are poorly written and difficult to follow. Clarifying your specifications benefits everyone involved.
By Karl E. Wiegers
Karl E. Wiegers is Principal Consultant with Process Impact and author of More About Software Requirements: Thorny Issues and Practical Advice and Software Requirements, Second Edition, both published by Microsoft Press.


Use Case-Based Requirements: Part 2
Use case modeling is one of the more effective means of capturing functional requirements. In the final installment of this two-part article, Arnon examines how to organize the model and prioritize use cases in the process.
By Arnon Rotem-Gal-Oz
Arnon Rotem-Gal-Oz is a software architect who has worked on platforms ranging from HP-UX and Solaris to AS400 and Windows, and with technologies from Java and C++ to Ada and COBOL.


Software Requirements in 2006: A Fresh Perspective
Building complex systems is as much a business problem as software development problem, and addressing requirements development validation is fundamental to success.
By Joe Marasco
Joe Marasco, PhD, is the author of The Software Development Edge. Joe led Rational Software’s product strategy for lifecycle tools for 17 years until its acquisition by IBM.


HUD Automates Requirements Creation and Validation
In the process of consulting with the Department of Housing and Urban Development (HUD) on a major software conversion and legacy migration project, Information Engineering Services turned to Ravenflow’s RAVEN solution for help.


The Case for Modeling
Analysis models add value to the requirements development process by making it possible for you to represent information at multiple levels of abstraction.
By Karl E. Wiegers
Karl E. Wiegers is a leading authority in the requirements engineering arena. He is a frequent speaker and author of the best-selling Software Requirements, Second Edition.


Requirements Reviews
Many projects are delayed because development begins before anyone really understands how the software should behave. The solution is to verify the software requirements before the software is designed, built, and tested.
By Andrew Stellman and Jennifer Greene
Andrew Stellman and Jennifer Greene are the authors of Applied Software Project Management (O’Reilly & Associates).


Use Case-Based Requirements: Part I
Use case modeling is one of the more effective means of capturing functional requirements. In the first installment of this two-part article, we examine the challenges that use case requirements present, then show how to model the use case process.
By Arnon Rotem-Gal-Oz
Arnon Rotem-Gal-Oz is a software architect who has worked on platforms ranging from HP-UX and Solaris to AS400 and Windows, and with technologies from Java and C++ to Ada and COBOL.


Improving Software Development Success
Even though software development organizations are producing systems and applications that are more complex and sophisticated than ever before, progress in terms of overall project success is not as impressive. Are we attacking the right problems?
By Joe Marasco
Joe Marasco, PhD, is the author of The Software Development Edge. Joe led Rational Software’s product strategy for lifecycle tools for 17 years until its acquisition by IBM.


Detecting Requirements Errors
Developing precise and accurate requirements is a crucial step in the success of a development project or a new business process, and today’s emerging class of tools automate this critical process.
By Adam Frankl and Tom King
Tom King and Adam Frankl lead the product development and marketing groups at Ravenflow. Tom has 30 years experience in managing software development teams and led the team that won the ITAA Total Quality Award for Software. Adam is the founder and former publisher of The Rational Edge.