Use cases allow software developers to identify exactly what features will be required by every user of a software system, and describe these features in terms that allow for rapid, cost-effective, successful development. Applying Use Cases is the most practical, simple, and gentle introduction to use cases. This edition is even better, with more real-world examples, more insight into the pitfalls of use case development, and thorough updating for UML 1.3 and RUP 2000. Leading mentors and consultants Geri Schneider and Jason Winters cover every phase of the process, in the context of a start-to-finish, realistic case study. Learn how to identify both primary and secondary scenarios for the usage of a proposed system; how to diagram use cases; and how to architect and organize large systems, define interfaces between components, and document your use cases.