Skip to main content.

TechEd 2007 Round-Up

From my admittedly blinkered point of view there were two new things at TechEd in Munich this year - NetWeaver Identity Management (formerly known as MaxWare) and CTS+, the ABAP transport system which can now deal with Portal and Java objects. Pretty much everything else was either vapourware or an evolution of last year's themes.

Actually, scratch that - to use the term "vapourware" is a little unkind. What we actually got was a sneak preview screencams of what will be released over the coming year or two - it's just annoying that SAP keep showing stuff at TechEd, getting you really into the problems that the new shiny thing will solve, only to get to the end and say "but you can't actually use this yet. We're keeping it to ourselves for a while. Even if we do let you play with it, we certainly won't support productive use." Like last year when Shai Agassi made a big thing - and it was a big thing - about SAP having the first certified Java EE 5 stack outside of Sun. Since then, most of the other big vendors have released theirs to the public. SAP have not. What's the point being the first to certification if you don't let anyone use it for their business? I am told that the NetWeaver Composition Environment (CE) 7.1, which uses the Java 5 engine, is in ramp-up and will be released soon. Let's hope so.

On the upside, NetWeaver CE shows the power of SOA with a stable core. The SAP ERP solution will continue to run on NetWeaver 7.0 (based on ABAP plus the J2EE 1.4 stack) minimizing any risk to the world's ERP systems. All the new goodies are in the CE 7.1 system which will be deployed as a new instance which communicates with the ERP core via web services (or RFCs if you're feeling naughty). This means that you can do business process and user interface innovation without scaring the accountants too much, which has got to be a good thing. Still, there's a certain irony to having a developer environment which allows you to develop composite applications more quickly and more easily than ever before, but makes you wait a year before you can deploy them.

Flexing the UI muscle

An up-and-coming technology, which I got to grips with at the Community Day just before TechEd, is Macromedia Flex and its close relative AIR (the Adobe Interactive Runtime). This technology just leaves AJAX and Java applets standing still. I really like Web Dynpro in terms of how it separates model, view and controller, and even more for how it provides an abstraction layer for the UI, but the HTML rendering really sucks, performance-wise. Example: I enter a timesheet in Web Dynpro and click to get a pop-up so I can pick a WBS code. From click to popup being ready is about three seconds, which wouldn't perhaps be so bad if it were all server round trip and database lookups. The thing is, this is three seconds of 100% CPU on the client (a new dual-core laptop) - OK, it's only maxing out one core, and each core is only 1GHz, but the fact remains that on a new HP dual-core laptop just getting a popup from Web Dynpro browser-based app soaks up three whole seconds of CPU time. Every time you click. The UI just shouldn't have that kind of overhead - imagine if this were some Citrix server farm and every user click generates several seconds worth of CPU overhead on your Citrix server - that's just not funny. Sub-1-GHz thin client browsers are even less funny (but let's face it, even the Portal's JavaScript is too much for them).

This is where Flex comes in - you get all that UI goodness of AJAX (in fact forget AJAX, Flex beats even the standard Windows UI hands down) and the performance hit is, well, normal. Quick. Substantially sub-second response times. Any data over the wire gets transmitted in compressed binary format, so large datasets for scrolling tables are no problem (compared with ultra-bloated HTML or even XML formats). That means there's no roundtrip as you page through a table. Searching, sorting and personalization of tables is all done on the client. From a developer's point of view it's all familiar too - the UI markup is in XML, and will be familiar to any web developer (it's not so very different from XHTML), except that you have a proper set of UI components to play with and proper tools to design with. Data can come from local flat files, XML sources, even SOAP calls. That's Flex, and it runs in a browser - pretty much any browser (it just needs Flash 9, which is a browser plugin and therefore much easier for end users to install in all but the most locked-down of corporate desktops).

AIR is basically Flex, but running on the desktop with an embedded SQLite database for local persistence - surely competition for Java in the heterogeneous desktop app space, though Eclipse and Netbeans are pretty well established when it comes to rich-client platforms for the desktop. AIR could do well in the widget space, allowing constantly-present, low desktop real-estate applets to do useful things like present alerts from the ERP core, newly arrived Worklist tasks, and so on.

What starts to make all this Adobe UI technology really exciting is the emergence of Flash players (the underlying UI technology for Flex and AIR) on mobile devices. Imagine AIR mobile, and suddenly we have a unified rich-client platform with local persistence across both desktop and mobile devices. Forget Web Dynpro rendering to lowly WML on a BlackBerry - suddenly the big disconnect between SAP mobile apps, SAP desktop apps and SAP browser-based apps just disappears, and that's very powerful indeed.

So here's my top tip for the 3-layer architecture of the future: stable ERP core with business logic and data persistence in ABAP (Model); service, process and application flow orchestration in Java EE (Controller); and user interface in Flash/Flex/AIR (View).

Duet - is it dead yet? 

So, speaking of next-generation user interfaces, is Duet dying on its feet? Several people I spoke to thought that SAP was really playing down Duet this year compared with last. I think that Duet has come from the hype cycle's peak of inflated expectations last year into the trough of disillusionment this year. Duet is just far too complex to deploy for the benefit it delivers. You need three servers (ERP on NetWeaver, Duet on NetWeaver on Windows and Exchange on Windows), three development environments (ABAP Editor, NetWeaver Developer Studio, Visual Studio) - if you can even develop anything, which is doubtful for a year or two at least - and two teams of consultants (SAP and Microsoft) just to be able to book your holiday in Outlook. Which takes about three clicks out of the box in ESS.

The sessions at Tech Ed this year seem to be pointing at using Duet as more of a workflow notification & action platform (an eventual replacement for Universal Worklist, perhaps?), reinforced by the move of SAP Business Workflow guru Alan Rickayzen to the Duet team. Personally, I don't think Duet is dying, but it's reached a low point from where it will steadily climb the slope of enlightenment to plateau in a productive niche, and the UWL replacement could well be that niche. More scenarios will be delivered, increasing the value. No doubt the installation and deployment will be made easier in time (wizard-based deployment? Virtual machine images?) - and the most serious problem will be addressed, that of SAP technology teams currently requiring an army of Microsoft consultants to explain all this Exchange stuff.

Comments

We currently have a heavily customized CAT2 running on ITS as our ESS Timesheet.. our upgrade to ECC6 is scheduled to start early next year.. Migrating our ESS Timesheet to the WDJ version is one of the key items.. Your comment on its performance (HTML rendering), has kept me thinking.. Is it really worth trying to modify the delivered WedDynpro Java to suit our needs or instead build a WedDynpro ABAP application from scratch?

Posted by Suresh Datti at 11/27/07 14:28:18

Hi Suresh,

I suspect the problem is likely to be due to the Web Dynpro framework itself, so you may not see much difference between the Java and ABAP versions. That said, on my day-to-day 1.6GHz laptop everything is fine - I only see the big delays on a 1GHz dual-core laptop, so maybe there's something peculiar to how the JavaScript compiler is working on that platform.

The best thing to do is start with the standard ESS Web Dynpro out of the box and see how that performs for you - if there are no problems, then you might as well go ahead with modifying it to suit your needs.

All the best,
Darren

Posted by Darren Hague at 11/28/07 12:08:09

Thanks for your suggestion Darren.. thats is exactly what we are doing now.. the ERP6 sandbox has just been setup.. we need to install the 1.0 BP & see how the WDJ looks like..

~Suresh

Posted by Suresh Datti at 11/28/07 13:34:56

Add Comment

:

:
: