Showing posts with label object oriented design. Show all posts
Showing posts with label object oriented design. Show all posts

7/10/2012

Designing Concurrent, Distributed, and Real-Time Applications with UML Review

Designing Concurrent, Distributed, and Real-Time Applications with UML
Average Reviews:

(More customer reviews)
This book provides a practical method to apply the Unified Modeling Language (UML) to design concurrent and distributed software for large systems. While many books have been published to explain the details of the UML notation, this book provides a method, COMET, to approach software design through application of a practical subset of the UML notation. The book contains numerous, extensive case studies and provides pragmatic, useful guidelines to identify distributed subsystems and concurrent tasks from a UML analysis model. The approach described represents a unique and valualbe contribution by the author of this text. Finally, because this book is intended mainly as a text for software design courses, I consulted with a few students who have used this book in a graduate-level software engineering course. All of the students were favorably impressed with the content, clarity, practicality, and detail contained in the book.
Prior to the publication of this text, a software design course based on UML could only be taught using a UML text together with a separate software design text. In this text book, Dr. Gomaa has integrated material from UML and software design in such a form that a software design course can now be taught with this text alone.

Click Here to see more reviews about: Designing Concurrent, Distributed, and Real-Time Applications with UML

In this book, renowned real-time software expert Hassan Gomaa adapts UML to the unique needs of the concurrent, distributed, and real-time applications -- helping developers leverage the powerful flexibility, reliability, and time-to-market benefits associated with UML. Gomaa starts by reviewing the key issues and concepts associated with analysis and design of distributed and real-time applications -- focusing not only on standard object-oriented concepts such as information hiding, classes, and inheritance, but also specialized issues such as finite state machines, concurrent tasks, and real-time scheduling. Next, he introduces the COMET (Concurrent Object Modeling and Architectural Design) Method, a UML-based object-oriented analysis and design method specifically created for concurrent, distributed, and real-time applications. The book presents detailed structuring criteria that assist the designer at every stage of the analysis and design process, and offers exceptional insight into dynamic modeling, concurrency, distributed application design, and performance analysis of real-time designs.Gomaa concludes with several detailed case studies covering a broad range of applications, including systems for banking, e-Commerce, cruise control, factory automation, and more.

Buy NowGet 20% OFF

Click here for more information about Designing Concurrent, Distributed, and Real-Time Applications with UML

Read More...

6/17/2012

Developing Software with UML: Object-Oriented Analysis and Design in Practice (2nd Edition) Review

Developing Software with UML: Object-Oriented Analysis and Design in Practice (2nd Edition)
Average Reviews:

(More customer reviews)
Surely this book is not the absolute reference for the UML. Someone seeking for such a book, should check up on: "The Unified Modeling Language User Guide", "The Unified Modeling Language Reference Manual" both by the 3 amigos, and "UML Distilled, Second Ed." by Martin Fowler et al.
I gave 5 stars because, to my opinion, the author has catched the main need of someone who uses the UML for the first time; to design/develop software. Formalizations and abstractions are absolutely necessary in real applications, but really destructing during the first steps simply because anything usefull is interspersed in several chapters. On the other hand, the coverage of both the UML and the OO S/W development in this book is definitely not shallow.
"Developing Software with UML" is perhaps the best choise for beginning with UML. It is well-structured, intuitive and easy.

Click Here to see more reviews about: Developing Software with UML: Object-Oriented Analysis and Design in Practice (2nd Edition)

Practical guide to exploiting the power of Object Technology & UML in your software development process.

Buy NowGet 15% OFF

Click here for more information about Developing Software with UML: Object-Oriented Analysis and Design in Practice (2nd Edition)

Read More...

4/26/2012

UML 2.0 in a Nutshell (In a Nutshell (O'Reilly)) Review

UML 2.0 in a Nutshell (In a Nutshell (O'Reilly))
Average Reviews:

(More customer reviews)

This is the book that UML In a Nutshell should have been.
Several years ago I picked up the original UML In a Nutshell with high hopes; I didn't bother reading much of it in the bookstore because (after all) the book was an O'Reilly. It had an animal on the cover; quality was assured. I snapped it up and went home. It turned out to be the one of the worst computer books I'd ever bought, and many of the Amazon reviews agreed with me. I wrote my own scathing (but rather funny) review, and to be honest I don't know what happened to the book itself, I no longer cared.
A few weeks ago I received email from an editor at O'Reilly asking if I was the person who had posted that review, and would I be interested in a copy of their re-written book on UML 2.0? The book arrived a few days ago, and I've spent a couple hours going through it. (In the interest of disclosure, please note that I did not pay for my copy).
To put it mildly, UML 2.0 In a Nutshell is a vast improvement. I don't know how to emphasize this: It's like waking up from a bad nightmare of Throgzaks-are-after-you (and of course, you can't run) to realize that everything is okay and it was just the cat sleeping on your face. It is a huge relief that O'Reilly recognized their error and decided to fix it.
This book is smaller, more succinct and to the point. The authors dive into meaty subject material right away, starting with the stuff that most engineers are likely to use. The writing is pleasantly conversational, targetted to a technical (rather than a managerial) audience, and the subject matter is well organized. A challenge in grokking the UML is that it is a "wad" of interrelated concepts, and the book has sufficient forward references ("You'll learn more about X in chapter 4") that I felt comfortable just forging ahead. The diagrams are clear and meaningful, and there is (gasp) actual humor from time to time.
I get the impression that O'Reilly's first UML book was published in a hurry just to "get something out there." I have the impression that they took their time getting this one right. There is almost no comparison between the two; this is the book to get. Recommended.


Click Here to see more reviews about: UML 2.0 in a Nutshell (In a Nutshell (O'Reilly))


System developers have used modeling languages for decades to specify, visualize, construct, and document systems. The Unified Modeling Language (UML) is one of those languages.UML makes it possible for team members to collaborate by providing a common language that applies to a multitude of different systems. Essentially, it enables you to communicate solutions in a consistent, tool-supported language.

Today, UML has become the standard method for modeling software systems, which means you're probably confronting this rich and expressive language more than ever before.And even though you may not write UML diagrams yourself, you'll still need to interpret diagrams written by others.

UML 2.0 in a Nutshell from O'Reilly feels your pain.It's been crafted for professionals like you who must read, create, and understand system artifacts expressed using UML.Furthermore, it's been fully revised to cover version 2.0 of the language.

This comprehensive new edition not only provides a quick-reference to all UML 2.0 diagram types, it also explains key concepts in a way that appeals to readers already familiar with UML or object-oriented programming concepts.

Topics include:

The role and value of UML in projects
The object-oriented paradigm and its relation to the UML
An integrated approach to UML diagrams
Class and Object, Use Case, Sequence, Collaboration, Statechart, Activity, Component, and Deployment Diagrams
Extension Mechanisms
The Object Constraint Language (OCL)
If you're new to UML, a tutorial with realistic examples has even been included to help you quickly familiarize yourself with the system.

Buy NowGet 43% OFF

Click here for more information about UML 2.0 in a Nutshell (In a Nutshell (O'Reilly))

Read More...

3/08/2012

Object Modeling and User Interface Design: Designing Interactive Systems Review

Object Modeling and User Interface Design: Designing Interactive Systems
Average Reviews:

(More customer reviews)
OM&UID is a book about developing new object-oriented methodologies for interactive software. Nine different methods are presented by an international team of software experts like Larry Constantine and Philippe Kruchten.
All the authors are trying to solve constraints or deficiencies in existing methods. Since these are all new or experimental techniques, each author explains exactly what problem s/he is trying to solve, where the new method might be best used, and how it worked in practice. Most of the sections work through a couple of cases, so you can see how the method works.
A couple of the writers have pointed out how difficult current heavy-weight methodologies are to use. The models generated, unless the modeler is extremely experienced, are usually not correct. What's more, as the first chapter notes, the modelers don't realize that their models are bad. A couple of writers have tried to deal with the problem that business customers can't understand UML-style notation, and don't mentally describe their jobs in terms of classes or windows. That cuts customers out of the system design process at exactly the point where they should be most engaged.
The editor repeats what is generally recognized: that very few people use a methodology as such. Most of us use a grab bag of techniques from a mix of methods, heavily customized to our own needs. Mark van Harmelen's book may be best addressed to those who use mixed methods, because it helps us to see how experienced architects decide which techniques to use in different circumstances and how we can determine whether we were successful.

Click Here to see more reviews about: Object Modeling and User Interface Design: Designing Interactive Systems

Object modeling with UML gives developers powerful tools for building software that meets the requirements of its users. Now, in this book, the field's leading experts extend UML to user interface design -- a breakthrough that will enable the creation of far more usable, productive software systems. This book introduces techniques for integrating today's best methods and modeling approaches from both the object technology and the user interface development communities -- ensuring a stronger focus on the user than ever before. The book's coverage encompasses four richly interconnected sources of user, domain, and system modeling information: participative design, task analysis, scenario-based design, and use case analysis. It also demonstrates exactly how UML object models can be used to record user interface design information -- giving developers practical information for designing and constructing software that responds more fully to user requirements and expectations. With contributions from Larry Constantine and other leading software design experts, this book combines theory, practice, and real world "advice from the trenches."

Buy Now

Click here for more information about Object Modeling and User Interface Design: Designing Interactive Systems

Read More...

2/03/2012

The Object Constraint Language: Precise Modeling With Uml (Addison-Wesley Object Technology Series) Review

The Object Constraint Language: Precise Modeling With Uml (Addison-Wesley Object Technology Series)
Average Reviews:

(More customer reviews)
First, I like this book. I trust about every line of it. It is itself precise or at least as precise as possible. It summarizes things in a concise and complete way. Required prior knowledge is UML (of course). I'd recommend Fowler's beautiful UML distilled and also even more important a solid understanding of design by contract. I recommend the complete book of Bertrand Meyer "Object Oriented Software Construction". Yes I know its many month of reading.
The problem with this OCL book is the following: It is difficult to understand anything not prior understood. However once one has a grasp of understanding this book is really clarifying. So, it requires in many areas more maturity in the field than most of us including me have. So, I would wish a book, which starts of at a somewhat lower level, in a less dry diction.

Click Here to see more reviews about: The Object Constraint Language: Precise Modeling With Uml (Addison-Wesley Object Technology Series)



Buy Now

Click here for more information about The Object Constraint Language: Precise Modeling With Uml (Addison-Wesley Object Technology Series)

Read More...

9/07/2011

Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures Review

Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures
Average Reviews:

(More customer reviews)
If you want to learn to use UML as a communication tool on your software development projects, this is the book too own. It contains a ton of examples and covers every aspect of the UML you will need to know to successfully use it on your projects.
The book starts out with an introduction to software architecture and object oriented analysis and design with UML.
There is then a short chapter on UML notation, a chapter on software development processes, and one on software design and architectural concepts. The last chapter in part one introduces COMET (Collaborative Object Modeling and Architectural Design Method), which is the author's software modeling and design method.
To me COMET is not really that much different than the Unified Process, which is a great process. COMET just breaks out the testing activities a little differently. COMET is a very usable process and if used correctly should lead to successful software development projects.
Part two of the book is all about modeling. There is a chapter on Use Case Modeling, Static Modeling, Object and Class Structuring, Dynamic Interaction Modeling, Finite State Machines, and State-Dependent Dynamic Interaction Modeling.
By the time you are done with part two of this book you will know all you need to know to produce high quality diagrams that can be used between the different stakeholders on your projects as very effective communication tools.
Part three of the book covers software architecture. There is a chapter on the Overview of Software Architecture, Software Subsystem Architectural Design, Designing Object-Oriented Software Architectures, Designing Client/Server Software Architectures, Designing Service-Oriented Architectures, Designing Component-Based Software Architectures, Designing Concurrent and Real-Time Software Architectures, Designing Software Product Line Architectures, and a chapter on Software Quality Attributes.
If the chapter on Software Product Lines interests you, I would highly recommend buying the author's book tilted Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures.
I really the like the way part two introduces the different perspectives you need to have when considering the type of architecture you are building. The way the author accomplishes this is unique to this book. I have not seen it broken down this way before, and it really provides some great insight.
Part three contains several case studies. Each one provides a detailed design of the system being discussed. These are great for seeing how well the design techniques in this book work. You get a complete understanding of each of the systems in the case studies by the time you are done reading the chapter.
This book is really well written and organized. You can read it from front to back or use it as a reference. Each chapter ends with exercise questions. I usually just ignore these, but since the author has decided to include the answers I enjoyed trying to answer them.
The book has an appendix which contains a nice catalog of software architectural patterns. It is a summary of architectural structure patterns, communication patterns, and transaction patterns. It contains a summary of the pattern and the location it is used in the book.
All in all this is a very high quality book packed with very valuable information any architect at an level of experience will benefit from. Hi highly recommend this book!!!!

Click Here to see more reviews about: Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures

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.

Buy NowGet 16% OFF

Click here for more information about Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures

Read More...

8/08/2011

UML Distilled: A Brief Guide to the Standard Object Modeling Language (3rd Edition) Review

UML Distilled: A Brief Guide to the Standard Object Modeling Language (3rd Edition)
Average Reviews:

(More customer reviews)
If you start your study of the Unified Modeling Language(UML) by going to the definitive references by the three creators, it is quite likely that you will be intimidated. The three books, _The Unified Modeling Language User Guide_, _The Unified Modeling Language Reference Manual_ and _The Unified Software Development Process_, all written by the designers and published by Addison-Wesley, are nearly 1500 pages of rather intense material. Like a veteran horseman, Martin Fowler charges to the rescue.
In a "mere" 174 pages, he takes each of the essential main areas of the UML and presents a brief, yet surprisingly thorough description of what it is and how it is used. While targeted at the UML novice, it is necessary to have a fairly solid background in object-oriented programming in order to understand it. Since the UML is a modeling language based heavily on diagrams, they are used throughout the book and are very effective.
This book will not teach you the UML, that task is left to weightier works. However, it will provide the proper foundation so that you can learn it, a task that is just as important. I listed the first edition as one of the best books of the year in my "On Books" column that appeared in the September, 1998 issue of _Journal of Object-Oriented Programming_ . There is nothing in the second edition that will change that opinion.

Click Here to see more reviews about: UML Distilled: A Brief Guide to the Standard Object Modeling Language (3rd Edition)

Pressured with tight deadlines, application developers do not have the luxury of keeping completely up-to-date with all of the latest innovations in software engineering. Once in a great while, a tremendous resource comes along that helps these professionals become more efficient. The first two editions of UML Distilled have been perennial best-sellers because of their concise, yet thorough, nature. This eagerly-anticipated third edition allows you to get acquainted with some of the best thinking about efficient object-oriented software design using the latest version of the industry-standard for modeling software: UML 2.0. The author has retained the book's convenient format that has made it an essential resource for anyone who designs software for a living. The book describes all the major UML 2.0 diagram types, what they are intended to do, and the basic notation involved in creating and deciphering them. A true treasure for the software engineering community.

Buy NowGet 32% OFF

Click here for more information about UML Distilled: A Brief Guide to the Standard Object Modeling Language (3rd Edition)

Read More...