Mncedisi Kasper is a director of technology and strategy at Open Xcellence ICT Solutions, a South Africa-based company specializing in enterprise application integration and SAP (ABAP/XI) consultancy.
THE SUPPORT AND MAINTENANCE OF AN APPLICATION should never, ever be an afterthought. Since over 80% of an application's lifecycle is spent in maintenance, you should pay a lot of attention to the problems of support and maintenance when you're designing. Fail to heed this, and you'll watch with horror as your application stops being the architect's dream and becomes a vile beast that dies a horrible death and is forever remembered as a failure.
When most architects design applications, they think mainly of developers, who have IDEs and debuggers in place. If something goes wrong, highly skilled software engineers debug away and the bug is discovered. It's easy to think this way because most architects have spent most of their lives as developers rather than administrators. Unfortunately, the developer and the support guy have different skill sets, just as the development/testing environment and the production environment have different purposes.
Here are a few of the disadvantages that an administrator faces:
An administrator can't resubmit a request message to reproduce the problem. When you're in production, you can't ...