topical media & game development
object-oriented programming
The San Francisco Framework
How useful is an OO framework?
A framework is ...
- a collection of components
- a generic solution for a class of problems
- a frame of mind for solving problems
- a set of architectural constraints
The San Francisco Framework
- is meant to develop business applications
- is based on Java technology
- may solve 70% of your problem
- leaves 30% (minimum) to solve for you
- may set a standard
- or may fail to do so ...
San Francisco - motivation
- The project was started when several software vendors asked IBM to help modernizing their application products
- However, there were several barriers preventing them from being able to update their applications
Barriers to modernizing
- (1) The problem of how to retrain their development staff to effectively use OO technology.
- (2) The risk involved in moving to a new technology.
- (3) moving -> the cost of the change
The software developers realized they needed some basic infrastructure.
Many companies could not develop this infrastructure themselves.
San Francisco - the press
- The San Francisco project helps to solve these problems by offering developers Business Process Components, designed as frameworks that provides an object oriented infrastructure, a consistent application programming model, and some default business logic
- The frameworks make it easier to move to OO technology because developers use well-tested services instead of building their own.
San Francisco Framework - layers
- Core Business Process Layer - the highest
- Common Business Objects Layer - middle
- Foundation Layer - lowest
Core Business Processes
The objective for this layer is to create a sound architecture and highly extensible OO implementation for the basic structure and behavior which any application provider delivering a solution in the application doamin would require:
- Accounts Receivable/Payable Ledger
- General Ledger Framework
- Sales Order Management Framework
- Purchase Order Management
Common Business Objects
- Business Objects common to multiple domains
- Common Application level Services
CBO:
- Business Partner
- Address
- Number - decimal structure
- Currency - how many euros in a dollar?
Foundation Layer
- Foundation Object Model Classes
- Utilities
in other words: it provides the infrastructure
comment: reinventing the wheel is not a big problem, because the wheel is a terrific invention
Foundation Object Model Classes
- Command
- Entity
- Dependent
- Collection/Iterator
- Factory
you need to study Design Patterns to appreciate these ...
Using the San Francisco Framework
The San Francisco Frameworks are designed to make many types of extensions easy for application developers:
- overriding the default business logic in supplied methods
- adding additional attributes to existing classes
- adding additional methods to existing classes
from the report: Complete documentation will be provided …
Example
Two classes: Receipt and Purchase order Line
- default attributes, methods
- default business logic: inspect Quality on receipt
Extension: enhance this logic
- subclass Receipt
- override inspection method
- change logic to include checks against supplier tables, and hazardous or high value products
San Francisco - issues
- Standards: OMG/CORBA Business Issues
- Technology Integration:
- Compound Documents: Lotus Notes, JavaBeans, Active X
- Business process Modeling and Control: workflow engines may be used as glue
- Internet/Intranet and Java: applications may be designed
- Conclusions: a bit premature ...
(C) Æliens
04/09/2009
You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.