Some customers have typical requirements and we are lost in finding solutions which sometimes lead to innovation!!We had a Unicode upgrade requirement for one such customer and our customer did not allow external access, meaning the work had to be carried out at the customer site. Now, this was not working for us as due to low project costs, we had to offshore the work.The customer system was running at 4.6C and it had to be upgraded to ECC 6.0.
What we did? We had our own internal 4.7 and ECC 6.0 systems which could be used to work on Unicode improvement. So we discussed with customer if they could provide the programs, associated structures, tables in a transport which we can import in our systems and work. Customer agreed, but this was just the start to climbing the mountain!
The above diagram displays the model which was used. Own learning servers were used to copy the programs sans database to allow Unicode upgrade on the programs.
Points to take back home:
- It’s important to remember since we would not have access to the customer system, all objects that need to be worked upon should be available in the working system.
- Freeze on inventory with the customer along with clear guidelines on deliverable is important in such projects.
- Since the work needs to be done without access to customer system, there would be challenges in importing objects specially Z tables. It is very important to have a clear working inventory.
- When the transports are imported in working system, try to get them per package as then the probability on missing objects becomes less.
- Understand the customer system information properly. Sometimes some extra utilities like ISU or IS being used at customer system might require special customer tables .Such tables should also be available in working system.
- Programs with syntax errors preferable be worked at customer system as it would become difficult to understand it in UCCHECK output.
- The policy decision has to be taken as to code freeze be done at customer system when the actual work starts, to avoid duplicity and rework.
- Transports to be created per change object or per package in the working system would depend on some factors. If the customer doesn’t have code freeze, then the imported corrected programs would need to be compared, which means transport per program is a good idea. This also means high probability of transports being missed, if not tracked properly.
- It is a good idea to check the UCCHECK of the working system and the customer system after the objects have been sent from working system to customer system.
- Use of modification assistant is always helpful in tracking the objects which have changed. Sometimes customers want only changed objects to be imported in new system.