In a world of lacking resources either you are rich or you have to be smart. SAP seems to be rich and loves to do everything twice.
Usually you fight against the lack of resources by being smart and avoid doing nthings twice. But since it’s early R/2 days SAP loves to do double work.
And the pity is that it is not an evolution where a new component replaces and old one. No, both elements remain in competition with each other with a more or less large intersection – and the customer always has to worry about which one to use.
Do you remember the wars between the SAPDYNP and the SAPPG38 guys? Every party tried to do the same things the other one did, but differently. So, instead of simply attaching dynpros to reports for selections, we now have to struggle with two types of screens, dynpros and selection-screens (and an impending carpal tunnel syndrome when coding the latter).
A smart developer facing the customers heterogeneity would adopt a cross compiler framework, so he/she codes only once and then he/she throws the code through the cross compiler for the different customer environments. This would have been smart! But SAP is rich and for the SAP Gui development it prefers to use Microsoft products which notoriously bind you to the Microsoft Windows platform (Honi soit qui mal y pense) and then SAP rejoices in rewriting all gui coding a second time in java (unfortunately not all modules).
Do you wonder why you have to bother with both an ABAP and a Java instance? I have often seen my BW colleagues scratching their head trying to figure out on which platform they should implement their requirements.
But the Gui is from yesterday. Now we have html-stuff because it is reputed to be more modern. So all new transactions are realized as WebDynpros for Java, oh, pardon, as WebDynpros for ABAP.
Ok, let’s just talk generically about WebDynpros. They all have the same MVC paradigm and look&feel and so on. But what’s that? There is a second UI with another programming model and another look&feel, the CRM UI, sprouting in front of to the WebDynpro one. So what?
Play It Again, Sam, and again, and again…