on the horizon chapter twenty-five of: szyperski, clemens et al. component software - beyond...
Post on 21-Dec-2015
212 views
TRANSCRIPT
On the horizon
Chapter twenty-five of:
Szyperski, Clemens et al. Component Software - Beyond Object-Oriented
Programming. Second Edition
Contents
Advanced object composition Delegation Split Objects Environmental acquisition Dynamic inheritance
New forms of object and component abstraction Subject-oriented programming Aspect-oriented programming XML Components
Advanced object composition
Class composition is too static for many components applications
Object composition is usually based on message forwarding
The Loss of identity of the whole causes some problems
Delegation
Dependencies between base class and subclass
Delegation-based object composition problem
Performance aspects
Split Objects
A web of objects with a common identity established by means of delegation
Individually a fragment of a split object does not have object status
Delegations across split objects is excluded in this model
Hierarchical split objects Reorganization
Environmental acquisition
Objects are embedded in a containment hierarchy
Delegation or forwarding requests are sent up the containment hierarchy
Dynamic inheritance
The idea is to generalize the concept of a base class to that of a base object selected at object construction time
Rely on delegation between an object and its base object
New forms of object and component abstraction
Fundamental property of objects Traditional inheritance Supertype
Subject-oriented programming
A subject can associate state and behavior with an object identifier as required by that subject
Association of property Separation of concerns along hyperplanes
Aspect-oriented programming
AOP is about explicitly slicing programs according to the various aspects they address
AOP weavers Post-deployment weaving
XML Components
XML world is mostly declarative in nature Still be necessary to establish an appropriate
component concept XML web services
Gamut of markets
Chapter twenty-five of:
Szyperski, Clemens et al. Component Software - Beyond Object-Oriented
Programming. Second Edition
Contents
Component platforms and infrastructure Tools Professional Services
Component platforms and infrastructure
The value of component platforms and infrastructure can exceed that of used components
Approaches to reduce the cost of component construction
Component design and implementation tools
Rests on environmental specifications Should use RAD methods Use the same environment to prototype a
component and implente the component Support for the construction of models and
supporting futher metadata
Component testing tools
Testing of components is the single most demanding aspect of component technology
Systematic aproach to testing are needed Advisable strategies
Component assembly tools
Assembly needs to be automated Differences from hardware assembly
Component system diagnosis and maintenance
Related to component testing Diagnosis is tricky because systems consist
of components from many different vendors Diagnosis tools and ways of operation Requirements of maintenance
Component system and framework architects
These tasks are extremely demanding Independent architecture firms can
concentrate the expertise Few clients X Open markets
Component assembly consultants
Component assembly is supposedly simple… Component specializing in assembly of
components can find a broad market COTS (commercial off the shelf) Act knowing well the potential and
limitations of products and helping gauge the risks and benefits
Component configuration management
Outsourcing Monitoring of component markets Development of gradual migration plans and
the integration Migration from monolithic solutions to
component-based ones
Component warehouses, marketing, and consulting
Traditional aspects… All activities are likely to be fully electronic Legal and practical protection offered by
physical package becomes unnecessary
Component operators, web services, application service
providers
Component paired with a service provider forms a marketplace service
Business model will be concentrated in provisioning service combined with availability and help desk services
Any question?