Abstract
Statement of Problem: Enterprise Job Schedulers and Rule Engines are an expensive class of software. According to an IDC report, the market for job scheduling software licenses in 2009 was 1.5 billion USD. Over the past 25 years, since job schedulers appeared in the market, they compete on price, but not on solutions. Rule Engines are continuously evolving to solve complex problems for many software organizations. Today’s Job Schedulers and Rule Engines typically provide huge set of features with Graphical User Interfaces over a distributed network of computers to monitor the background executions and setup new rules or jobs. Job Schedulers and Rule Engines share a common goal in orchestrating the integration of real-time business activities over different platforms and application environments. The result of a job execution often needs to be validated against the most probable outcomes. The most probable outcomes can be stored in a Rule Database as understandable rules to support the Rule Engine as a Centralized Knowledge Base, increasing the ease of rules-invocation, consumption, portability and maintenance. An extensive application would be in an Enterprise-level Job Scheduler performing the ETL (Extract, Transform and Load) process across various database connection pools/multiple applications. As the Job Scheduler only involves in ETL, the data that is loaded needs to be validated against the most probable outcomes. Designing a set of rules to fire after each Load after a job fire validates the data before it is further used in the application. This provides reliable data for the business workflow enhancing the business process as a whole. Approach: FIT stands for Fully Integrated Tracking. FIT Scheduler is a lightweight open-source solution for organizations requiring client-server Enterprise Job Schedulers who cannot bear the over-priced licenses. FIT Scheduler uses Quartz Scheduling Framework [3] as back-end, Google Web Toolkit framework combined with Sencha’s Ext-GWT library for the web-based front-end and various other open-source projects like Jersey [6] implementation of Java API for RESTful Web-services, Groovy programming language, Apache POI – API for Microsoft Documents [11]. Conclusions Reached: It is a platform independent and vendor independent solution to perform the process of Extraction, Transformation and Data Load within an Application Server across multiple applications synchronously. It leverages a common framework to manage the connection pools to achieve data synchronization. Aimed at providing a configuration-driven approach to the end-user, the functionality of FIT Scheduler is highly extendable in future. It has built in features to overcome Daylight Saving Time, evaluate the data loaded using a custom-built rule engine, re-run failed jobs, launch new jobs, monitor the scheduling system, increase scheduler resources on the fly etc. It acquires various powerful features from Quartz like fail-over, load balancing, and clustering.