The calculation of the airport charge for a particular flight is not trivial. Various considerations play a part in the airport charge, including regulations, scarce resources, long term strategy and short term stimuli and of course the fierce competition in the airport market. The formulas for calculating the charge are fairly complex and are susceptible to frequent change and to business driven exceptions. The documents describing the calculation of the charge are frequently lengthy and contain many if/then clauses. The IT architects at Saibot Airport were quick to realize that a business rule is a good way of implementing the business logic that calculates the charge. The business rule encapsulates the derivation logic for the charge, makes it easy to reuse and gives the business easy access to the key parameters driving the calculation.
In its bare form, the airport charge is calculated based on the weight of the aircraft, using the following formula: if the weight is under 20000 kg, then the charge is (currently) set at 94 euros. Else the charge is calculated as 4,70 euro per 1000 kg of weight. In two iterations we will later on introduce considerations around cargo vs passengers, noise category of the aircraft, time of the day and landing vs. take off.
Oracle Fusion Middleware Blog: SOA Suite 11g Edit DVM and Business Rules at runtime using console
Emiel Paasschens on AMIS Technology Blog: Difficulties with a more complex Business Rule Engine in Oracle SOA Suite
The starting point sources are in the folder AirportCharge_step0. The end result for this section is in the AirportCharge_step1 folder.
Getting Started with Oracle Business Rules
Testing and Validating Business Rules
Using Oracle SOA Composer with Oracle Business Rules at Runtime