Almost any rewrite of an existing legacy system needs to do some kind of data transformation with the old legacy data before it can be used in the new system. It needs to load the data and transform them so that they meet the requirements of the new system and finally store them. This is just one example of where data transformation is needed.
Drools can help us with this data transformation task as well. Depending on our requirements it might be a good idea to isolate this transformation process in the form of rules. The rules can be reused later, maybe when our business will expand and we'll be converting data from a different third-party system. Of course, other advantages of using rules apply.
If performance is the most important requirement (for example, all data has to be converted within a specified time frame), rules may not be the ideal approach. Probably, the biggest disadvantage of using rules is that they need the legacy data in memory, so they are...