Foreword


Consumers know what they want. Nowadays, the Internet is accessible to everybody. Our children start playing with it at a very early age, but there is no upper age limit for its use. We learn to be able to find any information we want quickly and easily. We have little patience for slow web sites, knowing that there's always somewhere else you can turn. Just think, what's your patience level for getting the information you want? Generally, people start becoming impatient after only four seconds! And now the same technology has become common in our workplace and we carry over those same levels of expectation onto our corporate web experience. We start complaining about the static content of our work systems and how we wish they were personalized and could learn from our use of them. Most of all we wish we didn't have to remember so many passwords and enter the same information repeatedly.

The technically high-level might say, "well that's all very simple—all you need is a Portal system with personalization capabilities, campaign management, a solid application server to support your business logic, single-sign-on security and probably some integration technology;" and in essence they are quite right. They are right in the same way that you only need a dam to control the Yangtze River in China—they're overlooking the implementation detail, which is often unexpectedly complex.

In the aerospace industry, this is very well known and we should all be thankful every time we step on a plane for the painstaking analysis and design phases that took place before the implementation and test phases began (of course, we're not thankful and hardly give a moments thought to the physics involved in getting a large metal tube to fly and all the interacting systems that have to work in order to keep it flying—perhaps it's better that we don't). Aerospace engineers have to get it right; lives are at stake. Even though we might think that commercial software does not require such stringent development, it shouldn't be that far removed. After all, there are plenty of implementations, especially in the financial sector where system downtime can cost millions of dollars per day. Even on a smaller scale, if your competitors have a system that is more flexible to change in customer demand than yours, your bottom line is likely to suffer.

So we have a paradox. User expectations on the systems we build are at an all-time high (and can only get greater) and the consequent system requirements are increasing rapidly. At the same time, the focus these days is on Return on Investment (ROI), value for money, speed to market and flexibility to change. So how do we resolve this paradox? Quite simply, you need to design carefully. As we have already observed, such sweeping statements are misleading and the design process can easily be a very involved undertaking. But at the end of the day, your system should be all the better for it. In all likelihood you will have avoided scope creep (adding new requirements part-way through development that derails the project planning) and, best of all, you may even have delivered what the customer wanted when they wanted it.

Understanding what your customer wants and rendering those requirements in a J2EE framework is what this book is all about. Enterprise application development can be a daunting task, so it is good to know there's now a contemporary source of relevant material to show you the way. This book pulls off the hardest trick of all—explaining complex topics simply, enabling you to see the relevance in your work. After all, chances are you are new to some or all of this technology and need to get up to speed in the fastest possible time.

So next time you check your account balance online or phone a support desk, gauge your expectations against the experience you receive. Do you think they designed their system well?

Simon Rowell
Director, Technical Management
Global Alliances, Western US
BEA Systems, Inc.

Acknowledgements

This book has been made possible by contributions from several individuals who provided text, insight, guidance, and support in shaping of the book's content.

I am indebted to Govy Munamala for his significant contributions in the shaping of Chapters 6 (Domain Model Design and Implementation) and Chapter 7 (Business Tier Design and Implementation), and in the design and development of business tier components and the creation of corresponding data model. Govy also provided the Ant build script explained in Chapter 9. My deepest appreciation to Kartik Ganeshan for contributing to the security-related content, and to Ali Siddiqui for helping shape the caching-related content that appears in Chapter 3. Special thanks go to Mansour Kavianpour for helping me shape Chapter 8 and for his significant contributions to this chapter. I am very grateful to Terry Markou for his assistance in the production of Web pages and to Sarah Murgel for creating the graphics for the site. Both Terry and Sarah provided assistance in validating the information architecture. I am very appreciative of the help provided by Enterpulse staff—most importantly the support provided by Geoff Faulkner, Jennifer Wilde, and Jacques Vigeant.

I am very grateful to the staff of McGraw-Hill/Osborne Media publication for their support throughout this project. The content of this book has the benefit of technical editing from Anne Horton and copy editing from Darren Meiss, and their efforts have greatly improved the presentation. Many thanks go to Athena Honore and Julie Smith for helping me focus on the delivery dates, and for providing the coordination, guidance, and encouragement during the project. Julie Smith worked tirelessly with the production team to get this book out on time. I am eternally grateful to Wendy Rinaldi for her encouragement and support, for without her belief in me this book would not have been written.

My very special thanks to Denyse Kehoe for introducing me to Osborne/McGraw-Hill publications.

I have benefited greatly from reading the works of other successful authors whose books have been mentioned in several chapters. My sincerest thanks to these authors for broadening my horizon in various disciplines of software development.

Last but most importantly, I would like to express my gratitude to my wonderful daughter Farrah and my lovely wife Munira for their infinite patience, support, and sacrifice during the course of this project.

Nadir Gulzar




Practical J2ee Application Architecture
Practical J2EE Application Architecture
ISBN: 0072227117
EAN: 2147483647
Year: 2003
Pages: 111
Authors: Nadir Gulzar

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net