Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
0 of .
Results for:
No results containing your search query
P. 1
Java Design Objects UML and Process

Java Design Objects UML and Process

Ratings: (0)|Views: 132 |Likes:
Published by api-3700668

More info:

Published by: api-3700668 on Oct 19, 2008
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less





Table of
Java\u2122 Design: Objects, UML, and Process
By Kirk Knoernschild
Publisher: Addison Wesley
Pub Date: December 18, 2001
ISBN: 0-201-75044-9
Pages: 304
Slots: 1

Software designers, developers, and architects are constantly confronted
with the same confounding problem: how to design software that is both
flexible and resilient amid change. To accomplish this tall task,
practitioners must utilize the best available technologies to the fullest.

Java(TM) Design relies on a combination of best practices and

best-of-breed technologies to create a clear and concise guide to building
high-quality, lasting software designs. In particular, the author provides
unique insight into using the Unified Modeling Language (UML) to
develop Java applications.

The first half of the book focuses on the software process and how UML,
Java technology, and object-oriented programming can be used effectively.
The advantages of each technology are enumerated, highlighting common
principles. Also included are in-depth discussions of design patterns, the
Unified Process, and Extreme Programming.

The second half of the book describes how these complementary
technologies can be used together as a system of checks and balances to
ensure successful creation of high-quality software. You'll also find details
on modeling strategies, a phased approach to adopting each of the
technologies outlined, and the design of subsystems.

Key topics include:
Object-oriented principles and patterns
UML and the role of modeling
UML and the software process, including best practices and
lifecycle development
Modeling strategies and requirements
Behavioral modeling
Architectural modeling
Designing subsystems

Armed with a fresh perception of current design tools, this book will give
you a deeper understanding of how to design cleaner Java applications
using UML. Learn how you can expand your developer's toolkit using
existing technologies in new ways--and create better software.

This book emphasizes the utilization of Java, the Unified Modeling Language (UML),
object-orientation, and software process as a cohesive whole. This book will help you

Understand how to apply proven object-oriented design principles and patterns
to develop resilient, robust, and extensible software systems using the Java
programming language


Gain insight into how to adopt and take advantage of the most useful aspects
of the UML on a Java development project, while ignoring those less often


Do the preceding within the context of a well-defined, repeatable, and
predictable software development process, ensuring that the software artifacts
that are created are used

This book documents my experiences developing enterprisewide software
applications. It contains input from literally hundreds of developers I've instructed and
worked with throughout my years of teaching and applying these concepts. It answers
these developers' most frequently asked questions in a format that I've found to be
understandable by those developers. The approach taken in presenting these answers
is one of clear and concise directions, followed by elaborating how various
technologies can be used together to realize resilient results. I hope that the
information in this book can save you both time and energy in your development

Intended Audience

This book discusses how the UML can be used during an implementation stage of the software development lifecycle. With its emphasis on object orientation, problem solving, and communication, this book will give developers a deeper understanding of how to design cleaner Java applications. Much of the discussion is focused on refactoring or cleaning up the design of existing code. Using these concepts, developers can become more efficient in discovering more resilient solutions sooner.

Designers and architects can benefit by gaining a deeper understanding of how the
UML can be used to create a system of checks and balances when establishing

architectural restrictions and designing subsystems. These individuals will gain insight into how our models serve as the mechanism to validate our systems' architectures. The numerous principles and guidelines discussed also will help contribute to more resilient systems, as well as serve as a measuring stick of our existing object-oriented designs.

Project managers, IT managers, and project sponsors can benefit by obtaining a deeper understanding of the importance of these key technologies. No longer will we view each of these technologies as separate entities, but we'll see them as a set of complementary tools that can be used together to contribute to a lower-risk development effort.


I'm always interested in obtaining feedback from individuals reading this book. Feel free to e-mail me the information you found most useful. But more importantly, I'm interested in hearing how you feel this book could be improved. Such feedback can ensure future readers obtain the knowledge needed to enhance their software development efforts. I'll post additional information on this book at


A very special thanks goes out to all of the thoughtful reviewers who contributed
significantly in helping to ensure the material in this book was both useful and
accurate. Most significantly, I would like to extend a personal thank you to Adam
Brace, John Brugge, Levi Cook, and David Williams. Their thoughtful reviews and
contributions played significant roles in my ability to complete this work.

In addition, I would like to thank Paul Becker, my editor. Without his constant
encouragement and patience, I no doubt would have been unable to complete this
work. Thank you to Debbie Lafferty, without whom I would not have been a part of
the Addison-Wesley family. I would like to thank Tyrrell Albaugh, my production
manager, for her careful guidance through the final editing stages of the manuscript.
And, of course, without the patience of Nancy Crumpton, some of my ill-formed
sentences and grammatical errors might not have been caught. Finally, I want to thank
the rest of the Addison-Wesley family, most of whom I did not have the honor of
meeting. They made significant contributions in making this book a reality.

Last, I thank those individuals, too many to name, who have contributed, no matter
how small, to my life. You know who you are!

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->