A few days ago, a colleague who has been working in the ABAP field for many years sent me an interesting email. A successful freelancer, top-notch ABAP developer and well-regarded analyst, he wrote that he was considering orienting towards SAP Composition Environment, and asked if I had any input for the decision. I responded to him and decided to blog about my thoughts on SCN.
How good is SAP NetWeaver Composition Environment?
We all know CE from slides and presentations – composition, integration of third-party applications, immediate access to cutting-edge technologies, light-weight applications, and so on. All of these points are correct! CE is a host of great opportunities to perform model-driven development and reap plenty of synergy effects in the process.
The composition tools are excellently tuned to each other, thus allowing for genuine end-to-end modelling and a tight integration.
From design time through software logistics to operating the software, all the components of the infrastructure work together seamlessly, so that no technical or conceptual discontinuities occur.
As far as I can tell, general product maturity is good (except for a few bugs, mostly in the IDE, which require the creation of OSS notes). The AS Java has gone a long way since its first release around 6.20. It is nearly eight years old and many of the composition tools have had plenty of time to ripen. (Even some of the newest stuff like BRM is actually old because SAP bought it and integrated it into the server.)
For customers who want to integrate new developments with an existing base of SAP systems (ABAP or Java), I sincerely believe there is no better development platform than SAP NetWeaver Composition Environment.
So my answer is that CE is very good indeed.
But who cares?
Sadly, few people do. One wonders how many customers and software vendors are starting CE-based development projects. From my little corner of the world, I cannot see much going on yet (my employer being an exception, thankfully).
As far as I have found out, smaller projects sprout everywhere, as they have for years; but larger development projects are generally rare in the SAP field and even rarer in the SAP Java sector.
In the perception of IT professionals, CE seems to be kind of sitting between chairs, being disregarded by both non-SAP professionals (Java developers) and SAP professionals (ABAPers):
Many Java people are completely unaware of the strengths of the toolset and EE implementation. There is an innovative DC concept that bears many similarities with OSGi; there is the completeness of the model-driven development approach, and finally the fact that SAP had the first Java EE 5 certified application server. All of these are indicate how significant a player in the Java world SAP has become. The general awareness of this fact will hopefully change when SAP showcases their concepts more in Java literature, magazines and on conferences. It’s happening, but sadly, many Java developers still avoid SAP because they are prejudiced – to them, SAP reeks old-fashioned, proprietary, and of career-ending personal vendor lock-in.
ABAPers, on the other hand, are often disinterested in the world outside their ERP system. “Standards? We work with the standard.“ Many of them reject “new” developments (anything newer than 30 years) in IT such as object-orientation and XML. They, too, are prejudiced and believe these things to be falderal, too juvenile and not ready for the challenges of serious sweat-stained lumberjack IT such as high-performance, parallelized mass-data processing and complex enterprise software logistics.
This is evidently absurd because of the long-standing history of mostly customer-specific Java-based enterprise applications. And the nay-sayer should know better: Wherever SAP forces them to run something on the AS Java, it does work. Think of the Portal and Process Infrastructure, which are present in many ABAP-focused enterprises. (Sadly, because of the strong focus on ABAP, these companies often do not invest enough in the Java administration skills of their people, so the systems do not work as smoothly and fast as they could, which doesn’t help the reputation of the servers but gives admins a great opportunity for bad-mouthing the technology.)
These are factors that slow the advent of SAP NetWeaver CE.
Will CE prevail? Why?
I think it will. The AS Java’s advance can hardly be stopped simply because first, customers using the AS ABAP are forced to use it. I’ve already mentioned PI and the Portal, there are also BI, the SLD (important for Solution Manager), MDM, and before you know it’s, you’ve got a bunch of AS Java installations up and running and reached the point where one more won’t hurt. It starts with a foot in the door and develops into a large presence.
Secondly, there are things that CE is simply much better at than the AS ABAP. Not everyone needs them, but when you need them, they constitute a strong argument for a CE project:
- Cross-system workflow inbox (Universal Worklist in the Portal)
- Cross-system workflow processes (Guided Procedures)
- XML Validation with Schema and other schema languages
- Global Data Types and custom modelling for Enterprise Services (Enterprise Service Repository)
- Directory services for Web Services (Service Registry)
- Advanced WSDL features (attachments, message-based authentication, etc.)
- Asynchronous Web Services
CE, NetWeaver Developer Studio and the AS Java have other strengths, such as highly efficient model-driven development using the Visual Composer, but hearing about them convinces nobody who is strongly biased against new technologies. However, appetite comes with eating when you’ve been sitting at the table for a while for other reasons. Java haters may come to the table reluctantly because of the Universal Worklist and stay because they’ve acquired a taste for Composite Applications.
This is why I expect that customers will adopt CE slowly and hesitatingly, but – finally – widely and happily. Once it is in the house, they will discover CAF, VC, etc. and appreciate their strengths one after another. From this point on, CE should be quite successful and be used for many development projects.
I believe that this process has already begun. My impression is that we’re still in the very slowly ascending part of the curve, but adoption will pick up speed and the curve will come to the point where adoption skyrockets.
What does this mean for you?
Employee are often in the comfortable situation that employers invest into their skills at their own risk. If your employer sends you to CE training but doesn’t use your new lodge, it’s their loss. If you use your increased market value to move on to a different company, your employer loses the investment completely.
Freelancers, on the other hand, cannot afford a dry spell. Investing too much to early into a platform that generate no customer projects for them might endanger their economic existence. Any bigger investment of time or money must pay back quickly, or it might ruin the freelancer.
Which investments pay back quickly?
If you’re an ABAPer, learning about the ABAP side of CE integration should be a pretty safe step. How to connect an ABAP system? How to implement and expose web services for Composite Applications and Service Oriented Architecture? How to integrate your ABAP system and application into the entire CE, SOA, CompApp and Portal infrastructure? How to provide and consume services and applications? If you build up knowledge in these fields, chances are you’ll be able to use them very soon.
Also, even if the ABAP business is running well and time for non-paying activities is rare, it’s a good idea to find some time for self-study. Thanks to the excellent resources available in SDN (CE download, blogs, tutorials, Wiki), you can learn learn plenty about Composition Environment and developing Java Enterprise applications – enough to find a place in any project that combines ABAP and Java roles. From this starting point, you can broaden and deepen your skills as appropriate and required.
Installing your private AS ABAP and a CE 7.1.1 system and working with the two puts you into a unique position – it gives you an overview and allows you to contribute valuable experience to cross-platform developments. Few consultants know their way around ABAP, but also Java, Composite Applications, and internet standards, because the cultural differences between these worlds are so big that most people don’t even want to look or move from one into the other.
A practical approach
- Download and install a CE 7.1.1 and start work with the tutorials that are included with the installation. Check SCN regularly for interesting contents – there are many articles and blogs that teach you the basics so you can get a quick start at most development tasks you will encounter in “real” CE projects.
- Register in the BPX community on SCN – it has many interesting blogs and features on CE and the AS Java.
- SAP Press has good books on CE, Visual Composer, Java EE 5 and Web Dynpro Java. These are well worth the money and time invested.
- There are brilliant books for Java programmers such as Joshua Bloch’s “Effective Java” (2nd Edition) that will deepen your understanding and provide invaluable best practices for every-day design decisions.
- Have fun. It’s extremely rewarding!