With all the talk about service-oriented architectures some might find it odd that batch processing makes the list of best practices. Unfortunately, SOA is really a long way off for most of us and the processing of large batches of data, both inbound and outbound on a periodic basis, is still a big part of the equation. Because of this, we should spend some time thinking about what the architecture of the area looks like to ensure we have a system that processes reliably and if the processing fails, notifies us reliably.
The maturity levels associated with batch processing are briefly described in the following table with additional details provided on the succeeding pages.
| Maturity Level | Hallmarks |
| 0 | Name: Ad-hoc
|
| 1 | Name: Standardizing —
Input
|
| 2 | Name: Standardizing —
Output
|
| 3 | Name: Architected
|
| 4 | Name: Interactive
|
| 5 | Name: Dynamic
|
As can be seen by the number of levels and the hallmarks, batch processing is not a trivial area, yet few loyalty system architects spend much time here. Admittedly, my background is all about the creation of “general purpose” tools so levels 4 and 5 may be beyond the needs of an internal deployment, but the value of the facilities provided by being at level 3 should be apparent, and for larger programs, should likely be the appropriate target.
