Requirements Analysis and System Design with CD is suitable for both computer science and informations systems curricula, as well as practitioners working on OO software projects (for whom the author runs regular training courses). Software development takes place in three stages: analysis, design and programming. This second edition describes the methods and techniques used in the first two of these stages, emphasising object-oriented techniques that can be applied to the development of large-scale applications and capitalising on the popularity of the Unified Modeling Language (UML) and the latest software production technologies. The text teaches by example throughout. Separate chapters are dedicated to a guided tutorial in analysis and in design. Four application areas are discussed to help explain independent topics, and these build into running case studies through the book. A fifth application is described in end-of-chapter exercises and can be used to formulate student assignments or specifications for a larger project. Throughout, the principles, methods and techniques of good analysis and design are covered. Design is not treated as simply a transformation from good analysis, but as a complex 'value-added' mapping of models that can result in a successful implementation. The difficulties and intricacies of large-scale OO development are acknowledged and the reader is given a balanced blend of practical explanation and theoretical insight.Compliant with the UML 2.0 standard.Uses Java for basic coding examples.Increased coverage of patterns and components.More on GUIs and Web interface design.More on Web applications design.Improved coverage of application-database integration.Extended coverage of use cases and collaboration/sequence diagrams.Extended coverage of change management, traceability and testing.CD-ROM including UML software (Argo and Poseidon) and UML model files for the case studies in the book.