The San Francisco Framework How useful is an OO framework? vrije amsterdam

advertisement
The San Francisco Framework
How useful is an OO framework?
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
•Example - San Francisco Framework
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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 ...
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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.
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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.
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
San Francisco Framework - layers
• Core Business Process Layer - the highest
• Common Business Objects Layer - middle
• Foundation Layer - lowest
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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?
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
Foundation Object Model Classes
•
•
•
•
•
Command
Entity
Dependent
Collection/Iterator
Factory
• you need to study Design Patterns to appreciate these ...
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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 …
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
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 ...
Postacademische Cursus Informatie Technologie
vrije Universiteit
amsterdam
Download