Goodbye MIBS – Hello SAP

Tomorrow, July 1st, I will be joining SAP to work for the team which my fellow SAP Mentor and friend Darren Hague is also part of. Needless to say, I’m very excited about the new possibilities and tasks ahead.

I’ve been working as a consultant in the SAP enterprise business for over 9 years now and was only employed by two companies. To leave my current company MIBS has been one of the toughest decisions recently because of the talented people I’ve met and the good friends I’ve made there. In case you are looking for a consultant or a small team of well trained and highly motivated ABAP and Java developers for your project, I recommend you give them a try.

Side projects such as this website or the SDN Contributor Widget will continue to exist and be maintained, and they may even benefit from this move given that I’m likely to have better access to related resources. Other projects such as GuidEd may find a new home at SAP, but this hasn’t been discussed yet.

With the new engagement and other exciting private events ahead, the future has never looked brighter.

The SAP Affinity Group as a Model for Twitter Groups

Amazing as Twitter is for talking to people and finding all the latest news, it does have one major drawback: it can be relatively difficult to find people that relate to your personal interests, that actually help you get the most out of Twitter for your specific needs. There have been several attempts to place a group layer such as www.twittgroups.com on top of Twitter, but none of them worked for me. For one reason or another, they never bring together the right kind of people and they tend to get easily invaded by spammers. From my perspective, they all lack a moderator, someone who ensures only people with relevant interests can join a group.

On the quest for a better answer I created a wiki page for Twitter accounts that relate to one of my personal interests, the SAP ecosystem. It started with a blank page onto which I encouraged a couple of my friends from the SAP world to add their Twitter accounts. I never add anybody to the page myself, but I encourage everybody to add their own accounts (the page is open for public editing). To make it easier for everybody to identify the most relevant people to follow, I added subgroups by using simple headlines. Later on I added a better description of the page to the header and, as a matter of netiquette, I asked visitors to add all new accounts to the bottom of each subgroup.

This approach has worked out quite well over the last couple of months, and the SAP Affinity Group has grown to an impressive list of over 100 unique Twitter accounts in several subgroups such as SAP employees, consultants and SAP Mentors. Apart from occasional mentions of the wiki page that I have posted on Twitter, the existence of the wiki page has spread by word of mouth – see, for example, this video posted by fellow SAP Mentor Jon Reed – and only very little moderation is necessary to keep it in good shape. It sometimes happens that someone messes up the formatting because of the less than obvious wiki syntax, but most of the times that isn’t a problem at all. Overall the wiki has been of great help both in terms of finding people in our ecosystem who are also on Twitter and in terms of becoming known in the community by adding one’s own account to the page. The wiki also has an RSS feed showing the latest changes, which allows you to spot new people added to the page.

What is really missing now is a front end that would allow one to follow the whole group, a subgroup or any number of accounts from that page. The specific wiki I’m running (DokuWiki) has an XMLRPC interface which would make this possible, and other wikis probably have similar ways to read their content. Following some basic guidelines, for instance, listing only one account per line, the page content itself shouldn’t be to hard to parse. And because the interface works both ways, a new user could request to be added to the list by using the follow function. It would be probably a good idea to add some kind of approval process for adding new accounts but these would be minor details to work out.

Maybe a next step would be to see this approach in a broader context of a system of Twitter group pages in independent wikis that can be accessed over a unified interface from a central web site. This would solve the problem of finding a specific interest group and could provide basic maintenance services for group moderators.

New Wiki entry on Federated Portal Network

With Federated Portal Network, SAP offers organizations a technology to create content on one portal that can then be accessed (that is consumed) from another portal.

This gives you quite some possibilities, because you can provide a central access to content provided by different organizational. If for example your Human Resources (HR) department runs an HR-Portal with Employee Self Services and your Finance Department has a BI 7 system with a BI-Portal that provides some analytical reports on it, you can integrate these two completely unrelated content types into your corporate portal giving your users a central access point so that they do not need to logon to different systems. And this is, after all, the major driver for a portal in the first place.

Of course the decision what content a user can access, is still completely at your fingertips because FPN puts no restrictions on user rights management at all.

In a Federated Portal Network we always speak about two partners, the content provider (where you actually create the content), called the producer, and the consumer of the content (the one people access the provided content on) consequently called the consumer.

Take a look at this picture, to see the general concept of FPN:

As you can see there are three systems here. One central (maybe corporate) portal and two producer systems each with it’s own portal. The central portal consumes content from both producer systems and also provides it’s own content.

An example for this is a Collaboration Portal (with Knowledge Management) that could consume an ESS scenario from an HR-Portal and Analytical applications from a BI-Portal.

Also the BI-System (on the lower left) consumes some Collaboration content from the central portal.

Content vs Portal Federation

You can also see in this picture, that a user is not forced to only use the central portal to access the content. After all, the two producers are portals and therefor provide user access. Wether or not you want to allow your users to access only the consumer or the consumer and the producer portal is totally up to you.

You can also see a second concept in FPN: Portal vs. Content Federation. The difference here is that in Portal Federation there are (at least) two completely different portals that each provide parts of their content to the other portal and the users can logon to each of the portals. In Content Federation there is one central portal that consumes content from one or more producer portals providing a central access.

Content Sharing Modes

At the moment there are four different variants on how content can be provided and consumed in a portal.

  1. Remote Role Assignment
  2. Remote Delta Links
  3. Remote Application Integration (for BI Content)
  4. WSRP – Web Services for Remote Portlets

Remote Role Assignment

With RRA – the earliest available content sharing mode, you create the complete content on the so called producer portal and then just assign users on the consumer to the roles (which of course in turn contain the pages, worksets, iViews and so on).

Remote Delta Links

With RDL you create the pages, iViews or worksets on the producer and then in the consumer create the roles and using a delta link to include the remote content from the producer in this role on the consumer. Thats the reason why it’s called Remote Delta Link.

Remote Application Integration

This is the newest content sharing method and it’s currently only available for BI applications. The idea behind RAI is to move the content administration from the producer to the consumer. This means you create the iView on the consumer but integrate applications (that is BI apps) from the producer BI system.

Web Services for Remote Portlets
WSRP is a compatibility content sharing mode – if you accept such a strange word crafting by me.

What I mean with this is, that WSRP is the only standards based content sharing mode provide by nearly all software vendors. In theory it should give you the possibility to integrate non-SAP applications in an SAP iView on the NetWeaver portal or vice versa making use of an SAP application on a non-SAP portal.

But, before you excitedly jump on this idea to e.g. integrate your SAP ESS scenario in an iFrame on MS Sharepoint Portal server, be warned, it is far from being complete!

You would definitely have to testrun ANY application to see if this can really work for you.

HTTP-Connection and packet flow

There is one last thing I’d like to mention, because I was asked it so many times by clients, and that is the way a client accesses the portals involved in an FPN.

A lot of customers came up to me with this question: Can I use an FPN to “hide” my producer portal(e.g. my HR-Portal) from the client by providing access to it’s content only through a central consumer portal???

The short answer is NO. The client always, at some point in the communication, also accesses the producer portal! The long answer is this. In content sharing mode WSRP, the consumer portal acts actually like some kind of a proxy by completely consuming the provided application and providing it on it’s own to the client. But keep in mind what I said earlier about this content sharing mode.

If you want to hide the existence of a producer portal, say as a some security measure, then the only valid option, at the moment at least, is to place a reverse proxy in front of your whole portal installation landscape and make all clients only connect to the reverse proxy. This will be the topic in a different blog.

The Wiki-Entry
In this just released wiki entry on SDN you find a step by step guide on what to do to setup an FPN between two SAP NetWeaver Portal 7 systems and then use Remote Role Assignment to consume content on the consumer from the producer.

You can find it here: Implementing a Federated Portal Network on SAP NetWeaver…

Have fun,

Christian Guenther

Implementing SAP HCM with ESS – a true story

In this series of posts I’d like to share my findings on the way from HR 4.7 to HCM (ERP 6) with an emphasis on the technical part of implementing Employee Self Services (ESS).

As you may know when you upgrade your system from 4.7 ERP to ERP 6, quite a lot of things change. First of all the whole architecture of the Web Application Server 7.0 (the basis for ERP 6), as compared to the web Application Server 6.20 (the one from 4.7 ERP), has changed dramatically. This involves areas like the stack of components, the patch management and also of course interfaces provided by the AS.

Take a look at these two pictures. I know they are very rough, but they might give you a glimpse on what has changed from a patch management point of view, that is in the way one applies patches or adds new functionality – I’m referring to the Enhancement Packages about which I’d like to talk in a different Blog (link is going to be added soon).

SAP 4.7 ERP architecture

SAP ERP 6 architecture

But it’s not only in the architecture of the Web Application Server, the whole user interface area also has undergone major changes – as an example take the introduction of Web Dynpro (first for Java and then for ABAP) as a mid-range replacement for BSP.

Moreover, complete new ideas such as how to create UI’s or design processes were brought into the NetWeaver application server. I guess I will have to write a lot of Blogs just to tackle all this new things, but right now, I just want you to get this point: A lot of things have changed and that means, you can’t go on like you used to but have to do something. What that is? I will try to answer this in this blog-series.

Challenges you face

The bottom line of this introductional part of my blog series is this: Implementing HCM with ESS is not only a technical upgrade of your HR system. It’s actually a major change in the architecture, landscape and technology used by your company where you need to adapt to.

Common questions you should ask yourself:

If you happen to answer no to any of these questions, read the next articles of this Blog.

So far,

Christian Guenther

SDN Contributor WordPress Widget Update

Today my pal Abesh pinged me because the widget would throw an XML error and ruin the beautiful new layout in his blog. A quick look at a couple of other blogs using the WordPress widget or the hosted version showed the same error. After diving into the code I discovered that the fine folks from SDN had made a minor change in the blog feed XML. They removed DOCTYPE tag (which shouldn’t have been there in the first place) and revealed a bug in my work around to remove the unnecessary tag.

If you got some feedback lately about a ugly error in your blogs sidebar, go get the update and don’t forget to deactivate it first before replacing the files.

PS: I recently updated the widget to WordPress 2.5, did you noticed? Abesh is probably right and I should submit it to the WP Plugin databse.

Roy Osherove

Developers tend to be creative people, quite often with a talent for making music. Therefor one shouldn’t be surprised about the amount of geek songs by developers. Lately my pal Vassil pointed me to this song by Roy Osherove, .Net Developer and author of several free tools. I wonder if Sting would be fine with this cover.

TwitterFox broken with FireFox 2.0.0.8

Mozilla Foundation released lately security update 2.0.0.8 for FireFox which broke my favorite Twitter client TwitterFox by that links in posts did not open anymore. I did a quick dive into the source and after a few tries I had a basic fix running. It is available for download here.

To install close FF, locate your profile directory and copy TwitterFox.jar to [profiledir]\extensions\twitternotifier@naan.net\chrome\

The fix will remove the ability for TwitterFox to locate a tab, that has the URL already opened but I can easily live without that.

The author is informed and we will hopefully see an official update shortly.

Pants Down

This morning I got the final proof that SDN is in deed running on a Enterprise Portal. Looks like they messed up the display configuration and the standard portal theme showed up for me…funny;)
SDN in Enterprise Portal Standard Theme

Update: After logging out/logging in everything seems to be fine again.

SDN Contributor Wordpress Widget V1.0

In the last couple of days I had some time to work on a widget for a new instance of this blog I’m builing up at the moment. The idea was to have a sidebar widget with some information from my SDN profile like total points and the latest blog posts.

My blog is running on Wordpress. Because I didn’t had any experience with PHP I found the del.icio.us widget by Automattic, Inc. very useful as a basic example for a plugin including how to build the widget configuration view. Frank Bueldges work on WP-RSSImport fitted well for reading the blog feed. Nigel James pointed me to curl which did a great job fetching a SDN Business Card related website to parse it for the name and total number of points.

The widget is called SDN Contributor and now available as version 1.0 and you can see it running on my new blog. I’ve set up a wiki page with all further information like installation instructions and download location. If you’re a SDN member and have a Wordpress blog under your own control, give it a try.

No More Links Posts

Having daily automatic posts of my del.icio.us bookmarks to the blog looked like a welcome feature when I discovered it, but after using for a quite some time now it feels to me more like blog noise, so I turned it of last week. If you want to follow my bookmarks, there are still multiple ways to it.

1. If you have your own del.icio.us account, I would prefer you add me to your del.icio.us network. You will get a RSS feed for the bookmarks of all the people in your network. And people in your network will see that you added them and will get a chance to add you back to their network.
2. Consume my del.icio.us feed in your preferred feed reader.
3. My bookmarks are still available as a widget in my blog.