Software modeling and design
Subtitle: UML, use cases, patterns, and software architectures
By: Hassan Gomaa
Publisher: Cambridge University Press
Published: 2011
Place of publication: Cambridge; New York
Language: eng
Number of pages: 550
ISBN-13: 9780521764148
Subjects: Development; Software architecture; Computer simulation; Computer software; COMPUTERS / Software Development & Engineering / General
Description: "This book covers all you need to know to model and design software applications from use cases to software architectures in UML and shows how to apply the COMET UML-based modeling and design method to real-world problems. The author describes architectural patterns for various architectures, such as broker, discovery, and transaction patterns for service-oriented architectures, and addresses software quality attributes including maintainability, modifiability, testability, traceability, scalability, reusability, performance, availability, and security. Complete case studies illustrate design issues for different software architectures: a banking system for client/server architecture, an online shopping system for service-oriented architecture, an emergency monitoring system for component-based software architecture, and an automated guided vehicle for real-time software architecture. Organized as an introduction followed by several short, self-contained chapters, the book is perfect for senior undergraduate or graduate courses in software engineering and design, and for experienced software engineers wanting a quick reference at each stage of the analysis, design, and development of large-scale software systems"--

"This book provides you with all you need to know for modeling and design of software applications, from use cases to software architectures in UML. It shows you how to apply the COMET UML-based modeling and design method to real-world problems. The author describes architectural patterns for various architectures, such as broker, discovery, and transaction patterns for service-oriented architectures, and layered patterns for software product line architectures, and addresses software quality attributes, including maintainability, modifiability, testability, traceability, scalability, reusability, performance, availability, and security. Complete case studies illustrate design issues for different software architectures: a Banking System for client/server architectures, an Online Shopping System for service-oriented architectures, an Emergency Monitoring System for component-based software architectures, and an Automated Guided Vehicle System for real-time software architectures. Organized as an introduction followed by several self-contained chapters the book is perfect for senior undergraduate or graduate courses in software engineering and for experienced software engineers who want a quick reference at each stage of the analysis, design, and development of large-scale software systems"--
Notes: Includes bibliographical references (p. 539-546) and index.
Table of contents: title: Machine generated contents note: Part I. Overview: 1. Introduction; 2. Overview of UML notation; 3. Software life cycles and processes; 4. Software design and architecture concepts; 5. Overview of software modeling and design method; Part II. Software Modeling: 6. Use case modeling; 7. Static modeling; 8. Object and class structuring; 9. Dynamic interaction modeling; 10. Finite state machines and statecharts; 11. State-dependent dynamic interaction modeling; Part III. Architectural Design: 12. Overview of software architecture; 13. Software subsystem architectural design; 14. Designing object-oriented software architectures; 15. Designing client/server software architectures; 16. Designing service-oriented architectures; 17. Designing component-based software architectures; 18. Designing concurrent and real-time software architectures; 19. Designing software product line architectures; 20. Software quality attributes; Part IV. Case Studies: 21. Client/server software architecture case study: banking system; 22. Service-oriented architecture case study: online shopping system; 23. Component-based software architecture case study: emergency monitoring system; 24. Real-time software architecture case study: automated guided vehicle system; Appendix A: catalog of software architectural patterns.