When does class start/end?
Classes begin promptly at 9:00 am, and typically end at 5:00 pm.
This two-day advanced course will build on your existing knowledge of the use case approach to give you hands-on experience with the latest proven techniques for developing use cases, discovering...Read More
This two-day advanced course will build on your existing knowledge of the use case approach to give you hands-on experience with the latest proven techniques for developing use cases, discovering other types of requirements, and documenting them expertly. Lively lectures combined with insightful demonstrations and realistic practice exercises will equip you with the capability and confidence to improve your project outcomes through better requirements and use case development. You’ll gain a thorough understanding of common requirements and use case pitfalls and challenges, practical approaches for discovering and writing use cases and requirements, and strategies for applying the use case methodology throughout the project life cycle in your organization. If you already know the basics of use cases and you play a role in defining project scope, capturing requirements, or consuming them as a developer, tester, or technical business user, you can’t afford to miss this course.
Advance the knowledge you already have about use cases and their value throughout the development life cycle Implement practical methods for understanding user requirements Practice state-of-the-art business and system modeling techniques Understand the connection between functional system scope and use cases Identify the correct use cases for a new or enhanced business system quickly and accurately Develop and document correct functional requirements Gain exposure to relationships among use cases, Agile methods, and user stories Overcome common use case traps and pitfalls Explore inter-dependencies among use cases, other types of requirements, design elements, and test cases Increase testing effectiveness through well-written use cases Leverage the power of use cases to enhance software quality with improved traceability Apply use cases in your real organizational environment Improve your requirements elicitation skills Produce high-quality, readable use case documentation that serves business and IT stakeholders Experience powerful ways to document requirements with use cases
You'll receive a comprehensive Participant Guide containing copies of all slides, supplemental material on specific tools and techniques, and a complete set of all workshop case project materials, plus an annotated bibliography to guide your further reading and learning after the workshop.
Practical and realistic hands-on exercises and activities will allow you to refine and enhance your use case discovery and writing skills. Working in small groups, you and your peers will identify and discuss strategies and tactics that your organization should be using to better define project scope, discover requirements, and document and manage use cases. Specifically you will:
Use cases are one of the best approaches for developing requirements. In this section of the workshop, we will review key definitions and terms, overview a requirements management framework, and review how use cases fit into the development life cycle. We’ll refresh your knowledge of how to find requirements from use cases, and we’ll conclude with a discussion of use cases and Agile methods.
To exploit the full advantages of use cases, seasoned analysts plan for them from the very beginning of each project. This section explores project initiation and its relationship to use cases, particularly how to identify and capture them early in the project life cycle. In particular, you'll review whether use cases are appropriate for a specific project. You'll strengthen your understanding of the connection between project scope and use cases. We'll conclude this module with an exploration of other methods for identifying the use cases that comprise a system, and a chance for you to practice constructing a use case diagram.
At some point, we must document the use cases and requirements discovered during the requirements elicitation process. This section of the workshop focuses on how to apply the knowledge you already have to writing better use cases. It also examines more complex aspects of uses cases, including includes and extends relationships and use case linking on larger systems.
As with most aspects of system development, the quality of downstream work products (design elements, test plans, etc.) depends directly upon the quality of the use cases. During this part of the workshop, we will apply standards for quality to our use cases and requirements and look at some proven ways to prevent common problems. We'll also explore how to derive maximum benefit from reviews throughout the life cycle.
Merely writing use cases is not sufficient for capturing all project requirements. While desired user functionality yields a major set of project requirements, experienced analysts know there are also non-functional aspects of the desired system that must be identified and captured. In this section, we will examine ways to derive other typical requirements from use cases and how to identify constraints on the solution design. In addition, we'll explore how use cases not only trace back to one or more business requirements, but also how they trace forward through the development life cycle to design and testing.
One of the most powerful aspects of the use case approach is its improvement in test procedure development. Well-written use cases directly impact the outcome of the very portion of the life cycle most likely to suffer when time is of the essence. Here, we'll look at how use cases can help identify test cases early in the life cycle. Next, we'll examine an example use case and its associated test plan side-by-side. Finally, we'll discuss how use of automated tools can reduce not only testing time, but also the time required to produce the test procedures.
Once we have the use cases developed, we can use them as a basis for discovering the elements needed for the design and development of the solution. In this section, we'll learn how to find typical design elements such as screens, messages, and dialog boxes, creating another layer of detail (sometimes called a "system use case").