Rule Integration Patterns in the Domain of Heath Care

Context

This topic falls in the context of rule-based knowledge that is contained in many object-oriented software applications. Typically this knowledge appears implicitly expressed. Although there exist many approaches that advocate the separation of rules, the rules’ connections still crosscut the core application functionality, which impedes reuse, either anticipated or not [1] [2] [3] [4]. Thus, in that previous work carried out at SSEL, Aspect-Oriented Programming [5] is successfully used to encapsulate the business rule connections.

We are particularly interested in analysing these rule integration issues in the domain of health care applications, of which the AZ VUB medical system of the IT department of the academic hospital of the VUB in Jette is an example. This system heavily relies on the use of rule-based systems for storing knowledge about interferences of drugs and examinations and knowledge about legal and legislative concerns related to healthcare. Some examples are rules that specify interference between different medicines or between medicines and examinations, such as if patient takes drug A then examination X should occur within 5 days and if drug A is provided then drug B should be avoided. Typically, multiple applications employ these rule bases. The problem in these applications is that finding and changing the calls to the rule bases requires a lot of expertise to guarantee a correct operation. Moreover, rules change depending on the context and the identity of the doctor that applies them. Depending on the application that is calling the rule base, other behaviour is to be associated with the results of calling the rule base. Also, rules that talk about drug interferences can be disabled by certain doctors that are specialists on the pertinent drugs.

We use AOSD since it can successfully deal with these integration issues non-invasively for the applications.

Stage

A real-life case (or a subset of it) from the medical AZ VUB system will be analyzed and the use of AOP for integrating the rules will be investigated. This case has two parts, the core application developed in java and the rule-based knowledge is implemented in a rule-based language. The integration of the rules is invasive in the core application. The goal is then to explore the use of AOP to decouple the calling of the rule bases from the applications. During the stage the student will get acquainted with the work on AOP and business rules carried out at SSEL [1] [2] [3] [4].

A prototype of the case will be built (together with the advisors) that uses JAsCo [6] for the integration of the rules.

Thesis

The thesis will consist on the generalization of the solutions encountered during the stage. When integrating rules, the student will encounter common steps that have to be repeated every time a medical rule needs to be integrated. Abstractions (such as patterns) will be distilled from these integration steps. These abstractions, implemented in the form of a high-level libraries, wizards or other approach, will facilitate the integration of medical rules, avoiding having to write aspect code every time.

Requirements

  • Good knowledge of OOSD concepts.
  • Experience in Java programming.
  • Knowledge of AOSD is an asset but not mandatory

Referenties

[1] M. A. Cibrán, M. D'Hondt and V. Jonckers, “Aspect-Oriented Programming for Connecting Business Rules”, Proceedings of BIS International Conference, Colorado Springs, USA, June 2003.

[2] M. A. Cibrán, M. D'Hondt, D. Suvee, W. Vanderperren and V. Jonckers, “JAsCo for Linking Business Rules to Object-Oriented Software”, Proceedings of CSITeA International Conference, Rio de Janeiro, Brazil, juin 2003.

[3] M. A. Cibrán, D. Suvee, M. D'Hondt, W. Vanderperren and V. Jonckers, « Integrating Rules with Object-Oriented Software Applications using Aspect-Oriented Programming », Proceedings of ASSE’04, Argentine Conference on Computer Science and Operational Research, Córdoba, Argentina, 2004.

[4] M. D'Hondt and V. Jonckers, “Hybrid Aspects for Weaving Object-Oriented Functionality and Rule-Based Knowledge”, Lancaster, UK, mars 2004.

[5] Aspect-Oriented Software Development website: http://www.aosd.net

[6] JAsCo website: http://ssel.vub.ac.be/jasco

 
teaching/thesis0506/proposals/brpatterns.txt · Last modified: 07/07/2005 16:13 (external edit)
 

© 2003-2010 • System and Software Engineering Lab • Submit comments and bugs to our Bugzilla or to the webmaster