Skip to main content

Decision Modules in Models and Implementations

  • Conference paper
  • First Online:
Behavior Modeling -- Foundations and Applications

Part of the book series: Lecture Notes in Computer Science ((LNISA,volume 6368))

Abstract

We define a type of concern called a decision module. Decision modules can be seen as a specific subset of often changeable business rules, identified in requirements. We present decision modules as protocol machines in protocol models. The proven property of such protocol machines is their unidirectional dependency from other protocol machines. The composition technique used in protocol models allows for such local changes in a protocol machine that the behaviour of unchanged machines in the whole system is preserved.

We analyse different Java implementation techniques in order to find the possibility of building decision modules having the same properties as in protocol models. We implement decision modules using object composition, reflection, the publisher-subscriber design pattern, interceptors and aspects. The results of our experiments are illustrated with an example of a document submission system. We discuss the functionality of a generic library that we build for adopting the new style of locally changeable implementations with separated decision modules.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. von Halle, B.: Business Rules Applied. Wiley, New York (2001)

    Google Scholar 

  2. Bracha, G., Cook, W.: Mixin-based inheritance. In: OOPSLA/ECOOP 1990 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications, pp. 303–311 (1990)

    Google Scholar 

  3. Business Rules Group. Defining Business Rules. What Are They Really? (2000). http://www.businessrulesgroup.org/first_paper/br01c0.htm

  4. Date, C.J.: What not How: The Business Rules Approach to Application Development. Addison-Wesley, Boston (2000)

    Google Scholar 

  5. Eclipse. AspectJ project. http://projects.eclipse.org/projects/tools.aspectj

  6. EJB 3.2 Expert Group. JSR-318 Enterprise JavaBeans, Version 3.2 (2013)

    Google Scholar 

  7. Filman, R., Elrad, T., Clarke, S., AkÅŸit, M.: Aspect-Oriented Software Development. Addison-Wesley, Boston (2004)

    Google Scholar 

  8. Hoare, C.: Communicating Sequential Processes. Prentice-Hall International (1985)

    Google Scholar 

  9. IDC. IDC survey (2007). http://ceiton.com/CMS/EN/workflow/introduction.html/

  10. Taylor, J., Raden, N.: Smart (Enough) Systems. Prentice Hall, Upper Saddle River, NJ, USA (2007)

    Google Scholar 

  11. JSR-000337 Java SE 8 Release (2014)

    Google Scholar 

  12. Jensen, K.: Coloured Petri Nets. Springer, Heidelberg (1997)

    Book  Google Scholar 

  13. Kellens, A., Schutter, K.D., D’Hondt, T., Jonckers, V., Doggen, H.: Experiences in modularizing business rules into aspects. In: ICSM 2008, pp. 448–451 (2008)

    Google Scholar 

  14. Kerflyn’s Blog. Java 8: Now You Have Mixins?. http://kerflyn.wordpress.com/2012/07/09/java-8-now-you-have-mixins/

  15. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: Proceedings of the European Conference on Object-Oriented Programming, vol. 1241, pp. 220–242 (1997)

    Google Scholar 

  16. Cibrán, M.A., D’Hondt, M.: Composable and reusable business rules using AspectJ. In: Workshop on Software engineering Properties of Languages for Aspect Technologies (SPLAT) at the International Conference on AOSD. Boston, USA (2003)

    Google Scholar 

  17. Cibrán, M.A., D’Hondt, M., Jonckers, V.: Aspect-oriented programming for connecting business rules. In: 6th Proceedings of International Conference on Business nforamtioon Systems, Colorado Springs, USA (2003)

    Google Scholar 

  18. Flatt, M., Adsul, B., Felleisen, M.: A programmer’s reduction semantics for classes and mixins. In: Alves-Foss, J. (ed.) Formal Syntax and Semantics of Java. LNCS, vol. 1523, pp. 241–269. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  19. McNeile, A., Roubtsova, E.: CSP parallel composition of aspect models. In: AOM 2008, pp. 13–18 (2008)

    Google Scholar 

  20. McNeile, A., Roubtsova, E.: Aspect-oriented development using protocol modeling. In: Katz, S., Mezini, M., Kienzle, J. (eds.) Transactions on Aspect-Oriented Software Development VII. LNCS, vol. 6210, pp. 115–150. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  21. McNeile, A., Simons, N.: http://www.metamaxim.com/

  22. McNeile, A., Simons, N.: Protocol modelling: a modelling approach that supports reusable behavioural abstractions. Softw. Syst. Modeling 5(1), 91–107 (2006)

    Article  Google Scholar 

  23. OMG. Unified Modeling Language: Superstructure version 2.1.1 formal/2007-02-03 (2003)

    Google Scholar 

  24. OMG. Case Management Model and Notation. Version 1.0, formal/2014-05-05 (2014)

    Google Scholar 

  25. Oracle. JavaEE Compatibility. http://www.oracle.com/technetwork/java/javaee/overview/compatibility-jsp-136984.html

  26. Roubtsova, E., Roubtsov, S.: A test generator for model-based testing. In: Proceedings of the Fourth International Symposium on Business Modeling and Software Design, BMSD 2014, 24–26 June, 2014. Luxembourg (2014)

    Google Scholar 

  27. Spring. Spring Framework. http://projects.spring.io/spring-framework/

  28. Verheul, J., Roubtsova, E.: An executable and changeable reference model for the health insurance industry. In: The 3rd International Workshop on Behavioural Modelling - Foundations and Application, BM-FA 2011, Birmingham, UK, pp. 33–40. ACM DL (2011)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Serguei Roubtsov .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Roubtsov, S., Roubtsova, E. (2015). Decision Modules in Models and Implementations. In: Roubtsova, E., McNeile, A., Kindler, E., Gerth, C. (eds) Behavior Modeling -- Foundations and Applications. Lecture Notes in Computer Science(), vol 6368. Springer, Cham. https://doi.org/10.1007/978-3-319-21912-7_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-21912-7_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-21911-0

  • Online ISBN: 978-3-319-21912-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics