Items related to Java Design: Objects, UML, and Process

Java Design: Objects, UML, and Process - Softcover

 
9780201750447: Java Design: Objects, UML, and Process

Synopsis

Focuses on the software process and how UML, Java technology, and object-oriented programming can be used effectively. Describes how these complementary technologies can be used together as a system of checks and balances to ensure successful creation of high-quality software. Softcover.

"synopsis" may belong to another edition of this title.

About the Author

Kirk Knoernschild is a hands-on software consultant who is passionate about using leading best practices to build better software. In addition to his work on large development projects, Kirk shares his experiences through courseware development and teaching, writing, and speaking at seminars and conferences on UML, Java J2EE technology, object-oriented programming, software architecture, the Rational Unified Process, and Extreme Programming. Kirk can be reached at kirk@kirkk.com, or by visiting his Web site at www.kirkk.com.



0201750449AB11262001

From the Back Cover

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™ 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
  • Refactoring

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.



0201750449B11262001

Excerpt. © Reprinted by permission. All rights reserved.

Throughout my travels as a corporate developer, professional instructor, and consultant and mentor, I've found that software developers everywhere consistently struggle with the same fundamental challenges. In essence, these challenges are each centered on software design. Whether accommodating scope creep or managing a constant evolution in requirements when developing a new system, or attempting to add new features into an existing system, the architectural mechanisms utilized in each will be vital in determining the success or failure of the software development effort. Systems that support change will grow with the businesses they support; those that do not will inevitably crumble beneath their own weight, eventually requiring a new development effort.

On a theoretical front, if one were to consider a software system with an architecture that is ultimately flexible, the possibilities associated with this system would be endless. Simply plugging new components into the system could easily accommodate for changing requirements and scope creep. Older rules no longer supported could be dealt with by removing those components from the system. While theoretically this Promised Land may exist, pragmatically speaking it is almost impossible to achieve. That isn't to say, however, that we shouldn't strive to achieve it. By putting forth the effort, we are most assured of making it one step closer.

Taking this next step is not easy. It involves changes throughout the entire software development life cycle. By utilizing today's best of breed technologies, methodologies, and principles we have the set of complementary tools before us to take our efforts to this next level. Using these complementary tools creates a development effort with an implicit system of checks and balances. These help ensure us that our systems will, in fact, be more flexible and resilient to change.

In The Timeless Way of Building, Christopher Alexander discusses an aesthetically pleasing feeling associated with architecture called "The Quality Without a Name." He describes various aspects of a garden, a storefront, or a room, which creates a feeling of warmth. The cause of this feeling cannot be attributed to any singular aspect of the surroundings, but is ultimately the result of how each atomic element works together to create this quality. This holds true with software architecture as well. In my discussions with students and clients, I often times ask if they have had similar feelings when developing software. Most developers can relate to situations where they've looked at their work and have felt proud of what they've done. They see that the system is flexible, performs well, and is bug-free. They have achieved Quality Without a Name in software development.

Many times, after having this dialogue with developers and discussing the technologies, methodologies, and principles that can contribute to achieving this certain degree of quality, I've been asked to provide resources that present these complementary technologies in a structured format. While there are many such resources available, none discusses each as a set of complementary technologies in a single work. In fact, while these technologies do complement each other, they also force us to work in multiple, complex environments, including modeling using UML, applying object-oriented design principles, and programming in Java. In this book, we document and describe these complementary technologies, and how they can be used within the context of software process to help us develop higher-quality systems, ultimately achieving that pinnacle of software development, The Quality Without a Name.

This work documents more than five years of enterprise-wide development experience. It contains input from literally hundreds of developers I've instructed and worked with throughout those years when teaching and applying these concepts. It answers the most frequently asked questions of the developers I've encountered, in a format that I've found to be understandable by those developers. The approach taken in these answers is one of clear and concise direction, followed by elaboration on how various technologies can be used together to realize resilient results. It is my desire that the information contained within this book can save you both time and energy in your development efforts. Feel free to e-mail me your experiences, tips and strategies applied, both before and after reading this work. Let me know what you found useful, and what you found confusing. I'll post results on this book's accompanying Web site.Kirk Knoernschild
kknoerns@teamsoftinc.com 0201750449P09042001

"About this title" may belong to another edition of this title.

Buy Used

Condition: Good
Used book that is in clean, average...
View this item

FREE shipping within U.S.A.

Destination, rates & speeds

Search results for Java Design: Objects, UML, and Process

Stock Image

Knoernschild, Kirk
Published by Pearson Education, Limited, 2001
ISBN 10: 0201750449 ISBN 13: 9780201750447
Used Softcover First Edition

Seller: Better World Books, Mishawaka, IN, U.S.A.

Seller rating 5 out of 5 stars 5-star rating, Learn more about seller ratings

Condition: Good. 1ST. Used book that is in clean, average condition without any missing pages. Seller Inventory # 15390260-6

Contact seller

Buy Used

US$ 10.21
Convert currency
Shipping: FREE
Within U.S.A.
Destination, rates & speeds

Quantity: 1 available

Add to basket