Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000010274545 | QA76.76.D47 G652 2011 | Open Access Book | Book | Searching... |
Searching... | 30000010294070 | QA76.76.D47 G652 2011 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
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.
Reviews 1
Choice Review
Software Modeling and Design is well written and concise, effectively describing a variety of software models and architectures. Gomaa (George Mason Univ.) has served in industry and academia; his research revolves around this book's topic, and he has made numerous contributions in the field. Indeed, his book benefits from the inclusion of concrete methods to derive software models from requirements, to design effective object-oriented architectures, and to address the static and dynamic components of software. The author introduces UML, a diagram-based modeling standard, early in the text and uses it appropriately throughout the work to demonstrate key concepts in software modeling. Possibly the best part of the book can be found toward the end, where the author presents a series of case studies. There, through well-defined steps, Gomaa applies the theory presented in the previous sections to a variety of problems that need distinct modeling approaches. This work does not cover all components of software engineering, nor does it claim to. Thus, it would be difficult to justify its use as a textbook in a one-semester course, but it would serve as an excellent supplement to a course on architecture design and software modeling. Summing Up: Recommended. Upper-division undergraduates through professionals/practitioners. D. Papamichail University of Miami
Table of Contents
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 |