The Rational Unified Process (RUP) is a language independent methodology that can be used to develop software. Constructed from a series of six best practice style guidelines, which are:
* Develop iteratively
* Manage requirements.
* Use component architectures.
* Model visually.
* Continuously verify quality.
* Manage change.
the RUP is a proven way to keep software projects on track. The Java 2 Platform, Enterprise Edition (J2EE) is the latest iteration of the Java language platform. Having only been introduced a few years ago, Java has undergone a phenomenal rate of adoption, which attests to the flexibility and power of the language. In this book, the two are combined, as the authors take you through a series of steps that show you how to construct the architecture of an online auction system using J2EE.
After finishing the book, I suddenly realized that I did not remember seeing any actual code. In fact there are a few lines, but only to demonstrate some of the J2EE component technologies, which is the topic of chapter 2. Code is not used in the chapters that describe the modeling of the project, which is a strong point in favor of the authors. Had they included code in this section, it would have just complicated the explanation without improving it.
Diagrams are heavily used throughout the book, which serves to clarify many of the critical points. However, the strongest area of the book is the use of Activity boxes, which are also used throughout the book. They are sections set aside having the form:
* Title. For example, Activity: Structure the use-case model.
* Overview. A brief explanation of the activity and how it is carried out.
* Input artifacts. What must be present when the activity starts.
* Resulting artifacts. What should be present when the activity is over.
* Steps. The operations to be performed in the activity.
I found these activity boxes of enormous help, and in most cases relied on them for the bulk of the information that I was looking for. Additional explanation appears in the text, but in many cases, I found it unnecessary.
The selection of the online auction project was a good one. It is complicated enough to provide an effective demonstration, yet simple enough to be understandable. The principles of an auction are easy to understand, so the only explanations needed are the additional rules needed to conduct one online.
This book is an effective demonstration of how to use RUP to build software. Since there is very little code, the structures are based on the organizational characteristics of J2EE rather than specific commands in the language. Therefore, it really is not necessary to understand Java to benefit from the book, and there certainly is a great deal of benefit to be gleaned from it.