Too often companies have to adjust the way they do business to accommodate for a deficiency in application software. Or cumbersome subsystems are developed to fill the void of the application system. This approach has little room for flexibility as requirements change, not to mention the level of difficulty to use, train and replicate.