Title: Diapositiva 1
1Towards a Pattern Language for Adaptive Object
Models
Leon WelickiONO (Cableuropa S.A.U.)lwelicki_at_acm.
org
Joseph W. YoderThe Refactory, Inc.joe_at_refactory.
com
Rebecca Wirfs-BrockWirfs-Brock
Associatesrebecca_at_wirfs-brock.com
Ralph E. JohnsonUniv. of Illinois at
Urbana-Champaignjohnson_at_cs.uiuc.edu
Types of Rules
For more info on AOMs, visit www.adaptiveobjectmod
el.com
Code is data, data is code...Everything is data,
everything is code!
- Workflow / Flow of Control
- Functions
- Temporal Rules
- Constraints / Validations
- Event Driven
- Transformations
Manages states
Manages several
When get complex can be an
Are registered using
Can use
Can use
Uses / extends
Coordinates several
Uses for interpreting description of entities
Gets type information from
Decouple dependencies using
Renders one instance
Renders one instance
Complex behavior
Extents
Simple behaviour with
Extends
Creates instances of
Controls effects of references on
Uses to decuple types
Describe each property as
Describes
Represent attributes as
Creates instances of elements dinamically
Handle null and default values with
Represent relationships using
Handle incomplete and default relationships with
Allows having versions of
Registers changes
Improves performance
Types of Caching
Helps
Time
- Entities
- Configuration Data
- UI Caching
Sources for AOM Patterns and Applications
AOM Patterns Categories
AOM Common Architecture
- Buschmann, F. R. Meunier, H. Rohnert, P.
Sommerlad, M. Stal. Pattern Oriented Software
Architecture, Volume 1 A System of Patterns.
Wiley Sons. 1996. - Czarnecki, K., Eisenecker U. Generative
Progamming Methods, Tools, and Applications.
Addison-Wesley. 2000. - Foote B. J. Yoder. Metadata and Active Object
Models. Proceedings of Plop98. Technical Report
wucs-98-25, Dept. of Computer Science,
Washington University Department of Computer
Science, October 1998. - Fowler, M. Analysis Patterns Reusable Object
Models. Addison-Wesley. 1997. - Gamma, E. R. Helm, R. Johnson, J. Vlissides.
Design Patterns Elements of Reusable Object
Oriented Software. Addison-Wesley, 1995. - Johnson, R. R. Wolf. Type Object. Pattern
Languages of Program Design 3. Addisson Wesley,
1998. - Manolescu, D. R. Johnson. Dynamic Object Model
and Adaptive Workflow. Metadata and Active
Object-Model Pattern Mining Workshop. OOPSLA'99,
Denver, USA, 1999. - Razavi, R. K. Mechitov, S. Sundresh, G. Agha,
J. Perrot. Ambiance Adaptive Object Model-based
Platform for Macroprogramming Sensor Networks.
Companion of the 21st ACM SIGPLAN Conference on
Object Oriented Programming, Systems, Languages
and Applications (OOPSLA 2006), Portland, Oregon,
USA, 2006. - Revault, N J. Yoder. Adaptive Object-Models and
Metamodeling Techniques Workshop Results.
Proceedings of the 15th European Conference on
Object Oriented Programming (ECOOP 2001),
Budapest, Hungary, 2001. - Riehle, D. M. Tilman, R. Johnson. Dynamic
Object Model. Proceedings of the 8th Pattern
Language of Programs Conference (PLoP 2000),
Monticello, Illinois, USA, 2000. 00-29, Dept. of
Computer Science, Washington University
Department of Computer Science, October, 2000.
Classes with Attributes and Relationships
Includes the core patterns that are present in
the basic implementation of AOMs. These are the
basic patterns and they are the ones that govern
this architectural style
Includes the patterns that help to create
instances of AOMs
Behavior
Includes the patterns for dynamically adding,
removing or modifying behavior to the AOMs
Includes the patterns that deal with how to
present AOMs to end-users in applications
Includes the patterns that deal with the process
of creating AOMs. They establish guidelines for
evolving frameworks and boundaries to avoid going
up to the meta-levels far beyond than necessary.
Includes patterns that help to instrument the
usage, control, and instrumentation of AOMs. They
also help to provide guidelines for
non-functional requirements such as performance
and auditability