Chapter 4. UML -F tags for framework construction principles and patterns

Chapter 4. UML -F tags for framework construction principles and patterns

This chapter explores how to build and adapt object-oriented frameworks that is, it presents the framework construction principles and patterns, and introduces the corresponding UML-F tags. What we call the construction principles of frameworks are independent of specific domains. Building frameworks by combining the basic object-oriented language constructs proves to be quite straightforward. However, this does not imply that frameworks are straightforward to develop. Instead, building such artefacts requires a thorough domain understanding. Good frameworks typically result from a tedious, iterative development process in which the interaction between software engineers and domain experts is a key element. (Chapter 7 provides hints and guidelines for the development and adaptation process in general.)

Many patterns written up in the pioneering pattern catalog (Gamma et al., 1995) by the GoF are frameworks that also rely on the few framework construction principles. This chapter discusses the relationship between the construction principles and the GoF catalog patterns and introduces the UML-F tags for annotating both the framework construction principles and the design patterns. Instead of listing the UML-F tags for each of the construction principles and patterns, we explain and exemplify how to derive the UML-F tags in a straightforward manner from their static structure.

Essential framework construction principles

Remember the definition of a framework as a piece of software that is extensible through the call-back style of programming. Object-oriented programming languages support the call-back style of programming through inheritance or interfaces, combined with dynamic binding of methods. Adapting a framework thus means:

  • modifying components according to specific needs by overriding methods of some framework classes in subclasses or by implementing interfaces; and/or

  • assembling ready-made components.

The following sections discuss the two construction principles that assist these two styles of adaptation. The overriding of methods in white-box framework components corresponds to what we call the Unification construction principle. The assembly of ready-made components (black-box framework components) relies on what we call the Separation construction principle.



The UML Profile for Framework Architectures
The UML Profile for Framework Architectures
ISBN: 0201675188
EAN: 2147483647
Year: 2000
Pages: 84

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net