Clear, actionable, accurate, and complete requirements are a key component for having productive teams and high quality software—whether your development lifecycle employs detailed requirements specs, agile story cards, or something in between.
Without testable requirements, there is no real way to ensure that you are developing the “right” software—software that will meet the needs and expectations of customers and users. Just as important, testable requirements are the basis for designing and executing tests to confirm that the software does what it’s supposed to do.
The hands-on Writing Testable Requirements course focuses on problem avoidance before coding starts—how to write requirements accurately the first time and ensure that the product will meet your organization’s needs.
Learn practical guidelines for describing processes and data within software specifications. Then, practice writing requirements statements that have the clarity and the necessary detail to become the basis for developing test cases.
You can apply these techniques to any requirements documentation format—company or industry standards—and use them within automated requirements repositories.
This course is intended to help those who write and review functional requirements—and those who develop and test systems based on those requirements. The audience includes business analysts, test analysts, requirements engineers, developers, and project managers. Finding Ambiguities in Requirements is a prerequisite for this class.
Richard Bender has more than forty years of experience in software with a primary focus on testing and quality assurance. He has consulted internationally to large and small corporations, government agencies, and the military. Richard’s work has included a wide variety of application classes and technology bases from embedded systems to super computer-based systems—and everything in between—consulting to both vendors and IT departments alike. He has been active in establishing industry standards for software quality and is a frequent speaker at conferences, universities, and corporate events. For his breakthroughs on code-based testing, Richard was one of the first programmers ever awarded IBM’s Outstanding Invention Award.
Why Good Requirements Are Critical
Impact on costs of development
Impact on schedules
Characteristics of testable requirements
Identifying all classes of requirements
Identifying the major requirements components
Organizing the requirements specification/database
Ensuring sufficient detail in the requirements templates
Naming conventions
Documenting data stores and data flows
Clarifying the boundary between requirements and design
Creating the initial process model—clarifying scope
Documenting use cases, functions, and external entities
Ensuring readability without ambiguity
Making requirements explicit instead of implicit
The four building blocks of decision logic
Reducing complexity in decision rules
Documenting simple and complex transforms
Impact of design and technology on requirements
Difference between structured English and pseudo-code
Rapid prototyping and RAD
Agile methodologies
New development
Maintenance
Third-party packages
Technology conversions, rewrites, and re-engineering
RM tools as a requirements database
Migrating from documents to requirements databases
Moving beyond simple version control and traceability
Key features to support ambiguity reviews
Building templates into RM tools
Building automatic verification into RM tools
Requirements optimization wizards
Back to the top