Amazon.com: SanFrancisco(TM) Design Patterns: Blueprints for Business Software (0785342616446): James O. Carey, Brent Carlson, Tim Graser: Books

Buy Used
Used - Good See details
$5.96 & eligible for FREE Super Saver Shipping on orders over $25. Details

or
Sign in to turn on 1-Click ordering.
 
   
Have one to sell? Sell yours here
SanFrancisco(TM) Design Patterns: Blueprints for Business Software
 
See larger image
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

SanFrancisco(TM) Design Patterns: Blueprints for Business Software [Paperback]

James O. Carey (Author), Brent Carlson (Author), Tim Graser (Author)
4.0 out of 5 stars  See all reviews (4 customer reviews)


Available from these sellers.



Book Description

April 7, 2000
IBM's SanFrancisco is a Java-based set of pre-constructed components that help developers quickly assemble server-side business applications. In developing SanFrancisco, IBM's Java developers discovered a wide range of patterns that are invaluable to all Java developers. This book documents them, in-depth. It follows the format used in the groundbreaking book Design Patterns. Beginning with a case study describing a typical set of business requirements for a hypothetical enterprise, successive chapters address each design pattern in turn, using an aspect of the case study to provide a concrete example that motivates the pattern. The patterns fall into five categories: foundational, behavioral, structural, process, and dynamic behavioral patterns. While some of them extend patterns originally identified elsewhere, many are entirely new -- and all of them offer powerful opportunities for more effective development.

Editorial Reviews

From the Inside Flap

One of the core forces behind object-oriented development is the need to manage increasing application complexity. Object-oriented techniques are not a magic bullet in this regard; however, a well-executed object-oriented design will result in well-partitioned assignment of responsibility across the objects within the design--a major step toward isolating complex pieces of an application.

Many of you have already discovered the power of object-oriented design patterns when defining and implementing complex applications. IBM's SanFrancisco Application Business Components is a set of frameworks that have been built around design patterns, both those that are well known throughout the software industry and new patterns described in this book. Why new design patterns? As we analyzed the requirements of typical business applications, we discovered many recurring situations whose needs were not adequately met by existing patterns. Often those needs could be met by extensions of well-known patterns; sometimes new patterns arose directly out of specific business application requirements. This book covers both the extended and the new patterns of IBM SanFrancisco, describing them within the context of a typical business application's requirements.

So what should you expect to get out of this book? The design patterns documented here capture the experiences we have gained from developing business components across multiple business domains. Every pattern in this book has been refined through multiple uses within SanFrancisco and has been validated by users of the frameworks as they build and deploy applications based on SanFrancisco. In particular, we have found these patterns very useful in helping us "think outside of the box" when confronted with complex business application requirements.

Regardless of your level of design experience, we encourage you to read this book with an eye toward the design problems you have come across in your past and toward opportunities to apply these patterns (or extensions of them) to your current projects.

About This Book

This book follows the format established by Gamma, Vlissides, Johnson, and Helm (the "Gang of Four") in their groundbreaking book Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley, 1995). Beginning in Chapter 2 with a case study describing a typical set of business requirements for a hypothetical food distribution enterprise, the book continues with chapters that address each design pattern in turn. Each pattern is defined along the lines of the standard design pattern template used by the Design Patterns book, typically incorporating an aspect of the case study to provide a concrete example that motivates the pattern.

Introduction
Over the course of IBM SanFrancisco development, our belief in design patterns as a core component of effective object-oriented development has been strongly reinforced. Chapter 1 distills some of the key reasons for this belief. Those of you who are already sold on design patterns won't find any great revelations here, but we hope you will find the consolidation of these points in one place to be useful. Those of you who are new to design patterns will find some strong arguments for using them in all your object-oriented development projects.

Case Study
Design patterns don't exist in a vacuum. Each design pattern described in this book was developed as a result of meeting real-life business application requirements. What we have attempted to do in the case study (Chapter 2) is provide a business context for many of the patterns in this book. (Although not all patterns are used in the case study, we provide a detailed business motivation in each pattern chapter of this book.) If your background is oriented toward business analysis, the case study will help justify these patterns and will help you make the leap from business domain analysis to object-oriented design. If your background is primarily technical, the case study will help you communicate with business experts as you jointly explore the right solutions for specific application requirements.

Design Patterns
Design patterns, as you would expect, are the core of this book. Many of the design patterns we describe build on or are extensions of patterns defined in Design Patterns, and you will find it helpful to have previously read about and used those patterns. However, each pattern in this book is described in enough detail for you to understand its purpose, design, and implementation without a detailed knowledge of any underlying design patterns.

This book divides the patterns into five major categories:

Part I: Foundational Patterns. SanFrancisco's foundational patterns provide an underlying structure for all SanFrancisco-based business objects. The foundational patterns provide mechanisms for business object creation, changing behavior, and construction of business processes. Many of these patterns are incorporated into higher-level patterns described in the remaining parts of the book. Part II: Behavioral Patterns. SanFrancisco's behavioral patterns describe various methods of incorporating flexible algorithms throughout a business application. Each of the behavioral object patterns described in this book defines a variation or extension of the Strategy pattern defined by Design Patterns. Part III: Structural Patterns. SanFrancisco's structural patterns are concerned with how business information is organized and accessed. Structural class patterns deal with the issue of business information access through inheritance. Structural object patterns define how business information (in the form of business objects) is organized within the scope of a complex business environment. Part IV: Process Patterns. SanFrancisco's process patterns are concerned with how businesses organize and process information. The process patterns do not identify the information involved, but rather define how businesses work with that information. Process patterns can be applied in many business situations. The use of these patterns provides consistency for the same types of processes, allowing the user to grasp more quickly the mode of information processing and the flexibility provided as part of that processing. Part V: Dynamic Behavioral Patterns. SanFrancisco's dynamic behavioral patterns describe object-oriented approaches for modeling entities in the business domain that exhibit behavioral changes throughout their existence--not only changes to existing behavior, but also changes to the set of behaviors (responsibilities) supported by the business entity at any given time. The dynamic behavioral patterns described in this book build on the general concepts described in the State pattern of Design Patterns and on one another.

0201616440P04062001

From the Back Cover

"This book is priceless because it explains why the developers of SanFrancisco designed things the way they did. As such it takes a good hard look at the problems involved in writing flexible business software, and the patterns inherent in the solutions this team came up with."

--Martin Fowler

The much-anticipated SanFrancisco Application Business Components product from IBM provides a platform-independent infrastructure and ready-built components for constructing business applications. SanFrancisco is one of largest software projects based on Java technology, providing Common Business Objects that can be used in many different application domains and Core Business Processes that each address a specific application domain. SanFrancisco™ Design Patterns documents the design patterns identified as part of this ambitious multidomain development effort.

Design patterns are the heart of SanFrancisco. Whether building a business application in SanFrancisco or from scratch, the patterns identified in this book will help you build flexibility, power, and strength into your business applications. This book follows the format established by the seminal Design Patterns, with a case study providing a business context for patterns running throughout the book. The authors focus on the generic use of these patterns, using SanFrancisco as an example.

With this book as your guide, you will learn how to use and extend these patterns within the context of a business application's requirements. SanFrancisco™ Design Patterns explains the purpose, design, and implementation of patterns in the following categories:

  • Foundational patterns, which provide an underlying structure for all SanFrancisco-based business objects and produce mechanisms for creating business objects, changing behavior, and constructing business processes.
  • Behavioral patterns, which describe various methods of incorporating flexible algorithms throughout a business application.
  • Structural patterns, which focus on how business information is organized and accessed throughout a framework or application.
  • Process patterns, which define how businesses organize and process information.
  • Dynamic behavioral patterns, which support the structural and behavioral transformation of business objects throughout their lifecycles. These transformations include the addition and removal of attributes and capabilities (methods).


0201616440B04062001


Product Details

  • Paperback: 400 pages
  • Publisher: Addison-Wesley Professional (April 7, 2000)
  • Language: English
  • ISBN-10: 0201616440
  • ISBN-13: 978-0201616446
  • Product Dimensions: 9.2 x 7.4 x 0.8 inches
  • Shipping Weight: 1.2 pounds
  • Average Customer Review: 4.0 out of 5 stars  See all reviews (4 customer reviews)
  • Amazon Best Sellers Rank: #3,005,877 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

4 Reviews
5 star:
 (3)
4 star:    (0)
3 star:    (0)
2 star:    (0)
1 star:
 (1)
 
 
 
 
 
Average Customer Review
4.0 out of 5 stars (4 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

20 of 21 people found the following review helpful:
5.0 out of 5 stars Excellent Design Pattern book, May 19, 2000
This review is from: SanFrancisco(TM) Design Patterns: Blueprints for Business Software (Paperback)
I found the book very readable. Each pattern is presented in the style of the GoF book. Also, each comes with a sample implementation in Java. A pity is that these implementations are not found on the CD that comes with the book.

This book is definitely more readable then the GoF book. However, it is definitely not a book for beginners without prior understanding of the design patterns found in the GoF book. While the GoF is geared towards design patterns for O-O development, this book is aimed at design patterns for the development of business applications.

This book is good insights for developers even if they are not using the San Franciso product.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


15 of 17 people found the following review helpful:
5.0 out of 5 stars Excellent, July 20, 2000
By 
Amazon Verified Purchase(What's this?)
This review is from: SanFrancisco(TM) Design Patterns: Blueprints for Business Software (Paperback)
This is a very important book.

My previous reading experience on patterns has included the Design Patterns book (by the Gang of Four) and Analysis Patterns by Martin Fowler. I found this book to be more than just a fascinating fusion of the two. The creators of the IBM SanFrancisco framework have done an invaluable service for patterns users in general by providing a concrete and reusable reference implementation that demonstrates both the patterns and the interactions between patterns.

Make no mistake, there are definitely new patterns in this book. With some, it's easy to trace their origins to certain GoF patterns, but they still stand alone. Others are complex, sophisticated, and utterly new to mainstream patterns literature. This book is the essential patterns book of the year for anyone involved in the patterns community.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5 of 5 people found the following review helpful:
5.0 out of 5 stars An insightful and invaluable reference, July 25, 2001
By 
Stuart Charlton (Toronto, Ontario Canada) - See all my reviews
(REAL NAME)   
This review is from: SanFrancisco(TM) Design Patterns: Blueprints for Business Software (Paperback)
This is a book for any developer wishing to learn state of the art ways to cope with increasing features, flexibility, and dynamism in modern business systems. You don't need to touch SanFrancisco to get tremendous value from these authors.

The real benefit, I think, is that this book exposes a whole lot of what some would term "techniques that are deep down in the bag of tricks". Many of these patterns are definitely tried and tested. I have some of these patterns (Property Container, Policy, and Extensible Item, in particular) from past systems that I've built or studied. Some patterns are newer and more complex (such as Business Entity Lifecycle and Decoupled Processes), which are definitely worthy of further study.

I've read the book several times, and learn something new with each pass. It comes with my highest recommendation.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews


Only search this product's reviews



Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(1)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums


Listmania!


Create a Listmania! list

So You'd Like to...


Create a guide


Look for Similar Items by Category


Look for Similar Items by Subject