For a while now I try to promote the idea of seperating the responsibilities in application maintenance. Many applications contain a mix of IT logic and Business logic. So the technical logic such as e.g. unzipping files, checking servers or folders, loading configuration files, accessing databases and much more is mixed with logic from the business: adjusting field values, manipulating data, calculating values.
So why do we create this mixture of IT and business logic? Well sometimes the simple answer is, that in IT we have the best analytical thinking and the required tools. Another reason is that many times we are sitting in the middle: between a source system that can not be changed and a target system that takes a long time to change or is expensive to change (meaning it also can not be changed). ETL processes are a good example for this: IT has the tools and they are flexible, scalable and configurable. If source and target can not be changed, IT in the middle can do so. Many times IT is correcting, enhancing or streamlining data, because bad data comes from source systems and as indicated those are hard to change or the business processes capturing the data can not be changed.