Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
An Architectural Model forAdapting Domain-Specific    AOM Applications   Patricia Matsumoto    Eduardo Guerra
Understanding   AOM
The domain model flexibilityis an essencial requirement inthe context of someapplications.
health      insurance   archeology  defense        communications
AOM   Adaptive Object Models An architectural style where classes,attributes, relationships and behaviors     are represen...
AOMType Object                            Patterns              Properties                           Type Square
Basic AOM                     Structurehttp://adaptiveobjectmodel.com/
Problems in Using AOM
But it is very complicated to   implement an AOM system, because I need to implement allthe model and all the components  ...
PersistenceApplication               AOM Model Domain              Domain                   Graphical              specifi...
An application usually creates an AOM specific to their domain,and this fact make difficult the   creation of more general...
But the flexibility of anAOM should be onlyenough! We dont want anew programminglanguage!                   It is good to ...
How we can create domain-specificAOM models and allow the reuse ofthe components that deals with it?              ?
Proposed Solution
Metadata      Mapping                               Generic                              AOM ModelApplication      Aplicat...
metadata                    mapping    Aplication                      Generic    AOM Model                      AOM Model...
Integration Model
Metadata is used to mapthe roles of each element tothe AOM generic model.AOM generic model is usedto adapt the domain-spec...
AOM Role Mapperhttp://esfinge.sf.net
Metadata Handling  A Metadata Descriptor is used to  represent metadata at runtime.  A Metadata Reader is used to read  an...
@EntityType@Entity@PropertyType@EntityProperties@EntityProperty@PropertyTypeType@PropertyValue@CreateEntityMethod
@Entitypublic class Account {    @EntityType    private AccountType accountType;    …    public AccountType getAccountType...
SolutionExample
Solution Example
AOM Model Adapters   Fixed properties on classes can be   mapped to AOM properties.   Relationships are mapped using a   d...
Model ManagerProvide a hotspot for persistencecomponents for model and instances.Has an internal map to avoid to havedupli...
ModelTalk                                                    Esfinge                                OghmaNot coupled to a ...
Validation
Application                  Domain-specific                    AOM Model                 Generic AOM                Model...
Two different AOM models were developed   and mapped using the framework.
Application
MongoDB
Modularity Analysis
Domain only depends on the annotations
Frameworks depends on the AOM model
Applications depends on the API and AOM model
It is evaluated thatwith this model ispossible to decouplethe application AOMmodel from theAOM frameworksallowing their re...
However there are still many challenges in the AOM domain and for theEsfinge AOM Role Mapper!
Thank You!
An Architectural Model for Adapting Domain-Specific AOM Applications
Upcoming SlideShare
Loading in …5
×

An Architectural Model for Adapting Domain-Specific AOM Applications

839 views

Published on

An Adaptive Object Model (AOM) is a common architectural style for systems in which classes, attributes, relationships and behaviors of applications are represented as metadata consumed at runtime. This allows them to be very flexible and changeable at runtime not only by programmers, but also by end users, improving system time-to-market. Nevertheless, this flexibility comes with a cost of a greater complexity when developing the system, and therefore one usually uses a bottom-up approach, adding flexibility only when and where it is needed. As a consequence, many AOM applications are tied to the specific domain to which they were developed and this fact makes it difficult to develop and use generic and reusable AOM frameworks that properly handle specific requirements of the AOM architecture. This work presents an architectural model that aims to adapt domain-specific AOM core structures to a common core structure by identifying AOM roles played by each element through custom metadata configuration. By doing this, this model allows the integration of domain-specific AOM applications and AOM frameworks, making it feasible to develop reusable components for the AOM architecture. This model is evaluated by creating an AOM framework and performing a modularity analysis on a case study based on it.

Presentation of a paper published on SBCARS 2012 and available on http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=6394972&contentType=Conference+Publications&sortType%3Dasc_p_Sequence%26filter%3DAND%28p_IS_Number%3A6394968%29

Published in: Technology
  • Be the first to comment

An Architectural Model for Adapting Domain-Specific AOM Applications

  1. 1. An Architectural Model forAdapting Domain-Specific AOM Applications Patricia Matsumoto Eduardo Guerra
  2. 2. Understanding AOM
  3. 3. The domain model flexibilityis an essencial requirement inthe context of someapplications.
  4. 4. health insurance archeology defense communications
  5. 5. AOM Adaptive Object Models An architectural style where classes,attributes, relationships and behaviors are represented at runtime as instances using metadata.
  6. 6. AOMType Object Patterns Properties Type Square
  7. 7. Basic AOM Structurehttp://adaptiveobjectmodel.com/
  8. 8. Problems in Using AOM
  9. 9. But it is very complicated to implement an AOM system, because I need to implement allthe model and all the components that handle it.
  10. 10. PersistenceApplication AOM Model Domain Domain Graphical specific! Interface
  11. 11. An application usually creates an AOM specific to their domain,and this fact make difficult the creation of more general frameworks! The components are stuck to their domain!
  12. 12. But the flexibility of anAOM should be onlyenough! We dont want anew programminglanguage! It is good to have the domain model close to our domain, because that can improve code readability on the business rules.
  13. 13. How we can create domain-specificAOM models and allow the reuse ofthe components that deals with it? ?
  14. 14. Proposed Solution
  15. 15. Metadata Mapping Generic AOM ModelApplication Aplication Domain AOM Model
  16. 16. metadata mapping Aplication Generic AOM Model AOM ModelHas some domain- Independent ofspecific characteristics application domainand contains only and is used by theenough flexibility. components.
  17. 17. Integration Model
  18. 18. Metadata is used to mapthe roles of each element tothe AOM generic model.AOM generic model is usedto adapt the domain-specific AOM model.Frameworks only dependson the generic model andcan be reused.
  19. 19. AOM Role Mapperhttp://esfinge.sf.net
  20. 20. Metadata Handling A Metadata Descriptor is used to represent metadata at runtime. A Metadata Reader is used to read annotations, but others can be implemented. A Metadata Repository is used to avoid unnecessary readings.
  21. 21. @EntityType@Entity@PropertyType@EntityProperties@EntityProperty@PropertyTypeType@PropertyValue@CreateEntityMethod
  22. 22. @Entitypublic class Account { @EntityType private AccountType accountType; … public AccountType getAccountType() { return accountType; } public void setAccountType(AccountType accountType) { this.accountType = accountType; }}
  23. 23. SolutionExample
  24. 24. Solution Example
  25. 25. AOM Model Adapters Fixed properties on classes can be mapped to AOM properties. Relationships are mapped using a different property implementation. The AOM objects can be created using factories that instatiate the appropriate classes.
  26. 26. Model ManagerProvide a hotspot for persistencecomponents for model and instances.Has an internal map to avoid to haveduplication in the model.Entity types are identified by name andpackage, entities by the framework.A Visitor is used by frameworks to buildthe entities and entity types.
  27. 27. ModelTalk Esfinge OghmaNot coupled to a domainMake AOM development easyAllow domain-specific AOMIntegrate external frameworksFrameworks can be reused bydifferent AOM models
  28. 28. Validation
  29. 29. Application Domain-specific AOM Model Generic AOM Model Adapters Persistence Framework MongoDB
  30. 30. Two different AOM models were developed and mapped using the framework.
  31. 31. Application
  32. 32. MongoDB
  33. 33. Modularity Analysis
  34. 34. Domain only depends on the annotations
  35. 35. Frameworks depends on the AOM model
  36. 36. Applications depends on the API and AOM model
  37. 37. It is evaluated thatwith this model ispossible to decouplethe application AOMmodel from theAOM frameworksallowing their reuse.
  38. 38. However there are still many challenges in the AOM domain and for theEsfinge AOM Role Mapper!
  39. 39. Thank You!

×