Requirements analysis has an artful component in that the method needs to be matched to the unique stakeholders and project; the One True Way is not effective in requirements exploration. Therefore, in this hands-on course you will learn to apply a variety of excellent requirements methods and models, including user stories, use cases, the Unified Process requirements model, Planguage from Evo (one of the original evolutionary methods, from Tom Gilb), and an introduction to acceptance test-driven development in which requirements are expressed as executable tests.
All my education emphasizes agile modeling and iterative development, thus we will explore agile requirements in the context of an iterative and evolutionary life cycle and emphasizing feedback loops and learning, rather than a sequential life cycle approach of big upfront “thorough” requirements definition. You will learn how to do requirements work with agility. You will apply skills for “requirements by collaboration” and rapid elicitation, including how to conduct a successful requirements workshop, proper group brainstorming, brainwriting, affinity clustering, mindmapping, team rotation writing, rotation surveys, essential UI modeling, essential UI navigation maps, dot voting, card voting, vision-boxes, and more.
We apply a variety of education techniques established over 20 years of coaching and mentoring to maximize the learning, value, and fun, including buzz groups, multi-modal learning, and hands-on practice.
In short, you will leave this course equipped with an excellent suite of tools to apply to agile and iterative requirements analysis.
Methods of Education
Discussion, presentation, Q&A, workshop exercises
Anyone involved in learning or sharing requirements for systems development.
Intermediate: This course introduces concepts and techniques that the attendee will apply during the workshop.
Upon completion of this course, students should be able to:
- Express requirements in user story, use case, UP model, and Planguage
- Decide an appropriate requirements model for their situation
- Define acceptance test-driven development
- Do requirements workshops
- Do brainwriting, affinity clustering, mindmapping, team rotation writing, rotation surveys, essential UI modeling, essential UI navigation maps, dot voting, card voting, and vision boxes
organize requirements content in a Wiki
- Iterative and agile requirements analysis
- The art of excellent requirements workshops
- Rapid elicitation, visualization, and prioritization techniques: requirements workshops, meta-questions, brain writing, dot voting, vision-boxes, affinity clustering, and more.
- User stories
- Common UP requirements artifacts: Vision, Use-Case Model, Supplementary Specification, and Glossary.
- Use Cases
- Visual modeling to understand and collaborate: activity diagrams for workflow modeling and state machine diagrams for UI navigation modeling
- Agile tools for requirements capture and management. Using wikis for capturing and organizing requirements.
- Wikis for requirements – reducing information scatter and the waste of waiting
- GUIs with glue
- Planguage: clear, quantified requirements in Evo
- Non-functional requirements in requirements models
- Agile Acceptance Test-Driven Development: Requirements as Executable Tests
- Agile Requirements with User Stories