A constant need for Project-based organizations is the need for their project systems to provide them with automated alerts for significant events in the execution of their projects. These events may have occurred during the ordinary course of business or maybe upcoming.
Currently, all parties involved need to troll through reports to find this information, and this can be time-consuming, especially in high-volume businesses. Oracle Family Pack M and onwards has taken the first step in this direction with the Exceptions functions in Oracle Project Management. Still, these are relatively limited in scale to what is needed.
The following discussion provides a framework for project-based organizations to implement automatic event alerts.
The requirements for this function can be listed as follows:
1. Capture different types of events as follows
a. Date based events: Upcoming/Past Due Task/Deliverable/Milestone Dates, etc
b. Financial events: Actuals a % of budget, Revenue accrual % of funding, etc.
c. Administrative events: New Projects being activated, Projects being closed, Bids awarded, etc.
2. Allow for user specification of events that need to be captured, allowing entry of a benchmark (to be compared against: e.g., 80% of the budget, milestone upcoming within 30 days) and an additional model for escalation.
3. For each event specified, allow for defining a periodicity for the possibility that determines how often the system will check for the event’s occurrence.
4. For each event, specify a list of people/roles that need to be notified and a separate list for escalations.
5. Email notifications to be sent out for events captured; to avoid email overload, group all event notifications by person, project, and event type and send one email per person across projects.
To handle the execution of this function, it is envisioned that a batch process that runs daily will look for enabled events and check for their occurrence based on the periodicity defined. This is true for Date and Financial Events. Every event occurrence for all projects is captured in a holding object (table) along with a list of persons to be notified of the event. Once all the events are processed, the batch program groups events by person and additional grouping criteria as needed and sends one email to each person.
The batch process cannot handle administrative events, especially if no history is maintained for the underlying data elements. In such cases, we can use functions like Oracle Alerts or DB Triggers to capture the events as they occur and store the information in the holding table. The daily batch process run will then process these records for email notifications and other events.
Project Partners is in the process of designing such a solution for our clients. If you are interested in this function, please get in touch with us.
That’s it for now, and remember:
There is no better way to manage a business than to Manage by Project.
PS: I welcome all comments/trackbacks/pingbacks/queries to my nascent venture here. I will try and respond to your comments, etc., in future entries.