Advertisement

Ontology - Driven Observer Pattern

  • Amrita Chaturvedi
  • Prabhakar T.V.
Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 241)

Abstract

We propose an ontology driven observer pattern which not only mitigates the drawbacks identified in the GoF observer pattern but also mitigates the drawbacks which occur in the general usage of patterns. We separate and encapsulate the pattern logic in an ontology component which increases the reusability of the pattern at the implementation level as well. The proposed solution enables to change the classes participating in the pattern even at runtime. Even the users/ non-programmers can make changes in the pattern to change the application behavior. It enables identification of a pattern present in a code and also allows easy change, addition/ removal of the pattern to/ from the code. The proposed pattern also decouples the participant classes from each other thereby enhancing the reusability and modifiability of each of the participant classes.

Keywords

Observer pattern ontology maintainability reusability 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns Elements of Reusable Object-Oriented Software. Addison-Wesley (1995)Google Scholar
  2. 2.
    Gruber, T.: A translation approach to portable ontology specification. Knowledge Acquisition 5(2), 199–220 (1993)CrossRefGoogle Scholar
  3. 3.
    Hachani, O., Bardou, D.: Using aspect-oriented programming for design patterns implementation. In: Proceedings of Workshop Reuse in Object-Oriented Information Systems Design (2002)Google Scholar
  4. 4.
    Hannemann, J., Kiczales, G.: Design pattern implementation in java and aspectj. In: Proceedings of the 17th ACM SIGPLAN conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2002), vol. 37(11), pp. 161–173 (2002)Google Scholar
  5. 5.
    Garcia, A., Sant’Anna, C., Figueiredo, E., Kulesza, U., Lucena, C.J.P., von Staa, A.: Modularizing design patterns with aspects: A quantitative study. In: Rashid, A., Akşit, M. (eds.) Transactions on Aspect-Oriented Software Development I. LNCS, vol. 3880, pp. 36–74. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    Borella, J.: The observer pattern using aspect oriented programming. In: Proceedings of the Viking Pattern Languages of Programs, Viking PLOP (2003)Google Scholar
  7. 7.
    Jicheng, L., Hui, Y., Yabo, W.: A novel implementation of observer pattern by aspect based on java annotation. In: Proceedings of 3rd IEEE International Conference on Computer Science and Information Technology (ICCSIT 2010), vol. 1, pp. 284–288 (2010)Google Scholar
  8. 8.
    Fowler, M.: Organizing presentation logic: observer gotchas (2006), http://martinfowler.com/eaaDev/OrganizingPresentations.html#observer-gotchas (accessed on March 20, 2012)
  9. 9.
    Soukup, J.: Implementing patterns. In: Coplien, J.O., Schmidt, D.C. (eds.) Pattern Languages of Program Design, pp. 395–412 (1995)Google Scholar
  10. 10.
    Budinsky, F., Finnie, M., Yu, P., Vlissides, J.: Automatic code generation from design patterns. IBM Systems Journal 35(2), 151–171 (1996)CrossRefGoogle Scholar
  11. 11.
    JArchitect: A tool to evaluate java code base (v3.0 2012), http://www.javadepend.com/ (accessed on April 10, 2012)

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  1. 1.Department of Computer Science and EngineeringIndian Institute of Technology KanpurKanpurIndia

Personalised recommendations