Confessions of a reboot virgin

This year was my first reboot. I have heard a great deal about the venue, but always too late to attend. This year thanks to twitter, I got the information about Reboot in time.

I have heard about reboot from Danish Radios Harddisken, from some of the previous conferences. They have made some great reports from the event. I got the impression that it was only IT people from Denmark, who came for the conference. That myth was blown away when I followed the twitter stream to the conference. There were quite a lot of foreigners and people from different industries.

The price was not an excuse compared to other conferences. The price was only €350 for two days compared to a standard SAP conference with a price of around €700 per day. And I did not have any consulting gig at the moment, so I did not have to take the days off.

My purpose with going to the conference this year was to get some inspiration for my startup, meet and learn from someone who have done a startup and get some inspiration for my life (Small issue). I have achieved all my goals for the conference. And what it even better, I had real fun in the process.

There were two days packed with all kind of talks. A large number of the talks were about something that I found interesting. It was difficult to pick the talks, because many of the talks, I wanted to hear, was at the same time. Luckily it was just to select one, and have fun with it.

The networking part of the conference was really easy. Everybody wanted to talk and learn from each others. I’m just starting to be a better networker, and be able to find the right people. But at this conference, it was really easy to start a conversation with other participants.

What did I learn on the conference? The reason for going to a conference is go meet new people, sell or learn something new. I did not sell anything, and it was not a goal. I have not processes my notes from Reboot yet, they are on my todo list. I don’t think I learned something, I can use on my job tomorrow. It has mostly some tools to help create, a vision for what I would like my future to be.

I think that the issue, with not learning something which can be used on the job tomorrow, can make it difficult to sell the idea of the conference to ones Boss. A way to justify the conference could be by seing this as a part of Stephen Covey’s 7.th habit. Habit 7 is about shaping the saw, get inspiration from outside. I see reboot as a way to step back from reality and get other inputs which will make life better.

I noticed some things which were different from my previous conferences.

  • The conference was ideological with the idea of Action. The Action was in many of the talks and thereby giving the word meaning.
  • Many presentations just had one word pr slide. This was a different way of presenting, than I have learned in my presentation courses. My previous experiences were just one slide pr 5 minutes, and then it should be a different way to paraphrase what was said or some graphics. The slides at reboot were more used to enhance the statement of the word. I have to learn more about this type of presenting, if it helps the learning experience.
  • People were working the whole time on their computers. But they were not doing work e-mails. It more looked like it was blogging or twitting. I was unable to follow the twitter stream and find interesting stories and blogs, hopefully I’ll find that information now.

The last part of the conference was probably the most interesting. The After party. It was held in “Kødbyen” and was a street party. In the beginning it did look really boring, just a few people sitting on chairs, but it turned out to be the coolest party. I did not know if it was possible to get 50+ people dancing in the street. The only bad thing about the party, was that it was shutdown because of noise regulations at 1am.

Then I want to say thanks to Thomas Mygdal-Madsen and all the other creators of the conference. Also the presenters did a great job, maybe a shame that they did not get evaluated. It was a blast to be a part of the conference and I hope that I’ll be able to be there next year also.

I did not bring my camera, but would have liked to have spiced up this post with some images. Instead try to look at flickr or Marias photos.

 

 

The future of integration consulting

For the last couple of years the job considering integrating legacy systems with the SAP ERP system has stayed the same. Each system is unique, so integration had to start from scratch. There could be some limited reuse between integrations, but they did not have a large impact.

Many of companies are going to use SaaS (at least that is what many company is betting on). SaaS strategies could be seen as a way to get a best-of-breed application. Some of the SaaS applications are probably going to replace old legacy applications or reduce the number of more legacy applications being created. Integration between SAP and SaaS applications are wherefore going to play a large role in the integration work done with PI.

My experience with integration with a systems, is that it takes an average of 10 days pr system (The development could be completed within 2 days, but support during testing and bug tracking is required). If the complexity is getting larger or requires the use on new services in SAP, the number of days will skyrocket. Large parts of the integration work are concern error handling, when some unexpected data is received. The price for 10 day integration is at least €10.000, but with a high uncertainty. Such start prices will many business cases fail in adopting a SaaS application, because of the initial investment.

One way to lower this price is if the SaaS vendors also use the same Enterprise Services that SAP is exposing. Then integration will just be to connect the two interfaces and will just require testing for the business functionality. From a customer perspective this would be the ideal situation, and lower the cost of integration.

If there are no Enterprise Services to cover the SaaS integration, two things should happen; Either an Enterprise Service is created or a PI integration is created. The two options can be produced by a consulting partner and then shared under some license. Open source could be an option if it was supported by the SaaS provider.

Creating reusable integration parts can be difficult, especially in small markets like Denmark. The Danish government was very keen on electronic invoices(OIOXML), using the UBL standard. That led to a race for consultancies to create templates for integrations. I do not know any company, how got a large enough part of the integrations, to have justified a large upfront investment a shrink wrapped solution.

Reuse is possible for some domains. I have been involved in project, where reuse of BPM functions lead to easy integration with the 2th and 3rd application. In this project the Enterprise Service was implemented as a ccBPM in PI. The later integrations needed some adjustments to support the new functions and integration protocols, but the overall framework proved successful.

We asked the vendors of the third party application, if they had any integration to SAP. They all did have some integrations, but for different versions of SAP and application components. Challenges like this are going to continue because of the flexibility in SAP. In some cases can different modules handle the same functions. I doubt an Enterprise Service should handle the functionality in two different modules.

With SaaS application is the marked larger since it is global and allow for packaged solutions. The packaged solutions can both be PI mappings and BPM’s or Enterprise Services and sold via Ecohub or from the SaaS vendor.

A way a business model for this could be to give a lower rate on the first implementation; then sell this integration to other customers. It will take a few iterations before a shrink wrapped integration can be released.

To have an integration for SAP must be a really interesting for SaaS providers, because it will make it easier for customers to start using their services. If the customer is going to spend a large number of days on integrating the application, it is less likely to happen. Without an integration to the ERP system, some of the benefits are removed from the application.

For consultants will it also be interesting, if you only have to produce something once and then be able to sell it multiply times. The issue is then how the global marked can be supported, but remote consulting via VPN can probably solve most of the issues.

I’m looking forward to see if, this is going to be the business model for future PI consultants.

Mosso or EC2 for hosting websites

I have the domain figaf.com where I’m hosting a CMS joomla site with some tools I have created. There is not a lot of traffic on the site. There are currently only 200 visitors a day, so it does not require a large server. The application that I’m using requires command access to run. I could therefore not use a hosted PHP plan. I therefore had to somehow get a server or use Virtual Private Server. I liked the idea of being able to scale the business after the needs.

I original choose Amazon EC2 because it was the only place I could rent servers for a low monthly rate. I did not find slicehosts plans attractive in comparison. They seem too small for what I needed, because I did not have any idea of what I needed.

I have now decided to move to Mosso. Mosso is Rackspaces name for Slicehost, after Rackspaces acquired Slicehost.

The advantages of Mosso are:

  • Plans starts with just 256Mb ram while EC2 has 1.7Gb.
  • Backup for small servers is done with a click in the control panel.

The Amazon EC2 solution has the following advantages:

  • Datacenters in both US and Europe giving lower roundtrip times.
  • Large verity of images from different vendors like Microsoft, Oracle and IBM
  • Auto scaling and load balancer application, so it is easy to customize the operation of the scalable web infrastructure.
  • No cost on data to the S3 service, where data and backups can be stored.
  • The ability to customize backup and additional storage capabilities with Elastic Block storage.
  • EC2 has a proven API, where Mosso is just releasing their version.

The Pricing of the 2Gb Mosso and the 1.7Gb EC2 is about the same. So it should not be the reason to choose any of the services.

I have not compared the CPU speed of the two solutions. Mosso says that it will allow the extra capacity to be shared among the instance running, so you might get more CPU cycles here.

I will continue to use EC2 for testing SAP software running on windows. Because the I’m not required to purchase hardware for the tests.

Naming conventions for software components.

During the different XI/PI implementations i have been involved with I have experiance differet naming conventions. I would like to share the different types of conventions that I have seen and my thought of it.

There is a great document for best practice on naming conventions. Also see Thorstens blog about the subject. The naming convention does not explicit ways to name things. In this blog, I would instead describe how namespaces and software components can be derived. For all the different types of interfaces lot of effort has to be devoted create abbreviation and create a meaning full structure, this will not be covered in this blog, but hopefully in a new blog.

In this blog the term object refers to all object created in the Integration Builder Repository, like scenarios, interface mapping or message interface.

Simple Group

With the first implementations we used a very rough, method to divide the object based on the target system. I think we had software components like SAPR3, SAPXI and all the legacy systems as separate software components.

This method was very easy to get started on and did not require a lot of work op front. It was pretty easy to find which software components to use. The component names could be implemented at all customers, because it was the same setup they all used.

The namespaces just contained the legacy system name, so it was more a point to point connection. It was easy to find objects involved in a scenario. You just use the legacy system name, and you go the information you needed from the object involved.

The problem with this method, was that a lot of interfaces are grouped into the same component. This can make it more difficult to transport the components; at least you need to be more careful, what you are promoting to production. A large problem with this tight coupling was that interfaces were not named for reuse, or a refactoring should exists. This limits the SOA cababilities, which are one of the key selling points for XI/PI.

In recent implementations more focus was on making an SOA architecture. I my view this requires a more process centric approach. I have seen two different methods for creating a naming convention for grouping the objects smarter. Using the Solution Manager description of the processes, or using Solution Maps, which is SAPs standard way to look at processes in organizations.

 

Solution manager (SOLMAN)

In SAP implementation SOLMAN is vital part, to describe the business process used in the organization. This is both true in the implementation phase and I believe also after the solution has been implemented.

I have not been involved in designing the SOLMAN maps used for describing the processes. What I have seen is that the business process has been used for grouping of the scenarios. By using the same structure for the object, there is a clear mapping from SOLMAN to the PI respository.

Using the SOLMAN grouping of processes gives to following advantages.

  • The business knows which process you are working on, since they have the same notation. This way it is easy for a developer to communicate, where there is a problem.
  • The architecture and naming is given, because the naming has already been created.

The disadvantages

  • If the project has multiply phases more maps can be created. With this it could be a little more difficult to find the mapping between the SOLMAN and PI objects. This could be solved with the help of software component versions.
  • If you are designing a project, which does not involve SOLMAN, then you need to create a new structure or create the SOLMAN structure.

Solution Maps

On a resent project we used the SAP Solution Maps as a source grouping our objects. The solution maps contain all the different processes used in an organization. There are a number of different solution maps, both the general ERP but also industry specialized maps.

An example solution map.

 

Advantages of Solution maps:

  • Structure which matches business organization.
  • Common naming conventions between projects (really nice if you are a consultant). If used on all projects it is easy to find the objects. There is no need to considerer which naming conventions for software components and namespaces, because they can be defined before they are used.
  • The convention is prepared for e-SOA, because the solution maps are used to place the enterprise services. There is though a small problem, about the enterprise services are places in the SAPAPP component. This can be solved in the design phase with placing the action in the software component corresponding to the Solution Map.
  • Interface objects are placed in a way, relating to the service they perform. Different processes can use the same service.

 

Disadvantage

  • It can be difficult to communicate issues about a scenario, because the implementation is focused on SOLMAN and not on the solution maps
  • It can be difficult to place an object in the correct group. Is this service use for accounts payable or sales order management.

Conclusion

Both SOLMAN and solution maps focus on the process. They have both some advantages and disadvantages. I currently like the Solution Maps method best, because it allows a standard setup for all customers. I also like the point with having services grouped pr function, so multiply processes can use the same service.

I need to share more thought on how, I see the Solution Maps solution. This will be describe in a blog soon.

PI documenter services has been upgraded to include User defined functions

The first release of the open source version of the documenter library did not have support for the newest PHPExcel. It was therefore not deployed as a service on the figaf homepage. I have now upgraded the service to support the newest release. The functionality is still free and works the same way.

I finally got time to work with the code and fund the bug, which did not allow for the newest PHPExcel library. The problem was that I had to much reuse of functions. When I created a difference document, I created two documentation documents. The mapping information was then extracted from the two documents and compared to create the difference document. I created a new Excel serializer to write the different documents, a problem occurred.

I also go time to a feature, which I have been requested. That was to get user defined functions in the documentation. A more needed function was to include the UDF in the difference functions, so it is possible to see which user defined function has changed.

For the documentation I have decided not to include comments. I believe comments for this instead should be included in the source code. Is this a plausible way to look at things, or should I reconsider the design?

I have not had access for a PI 7.1 system. If you are running 7.1 would you test my service and see if it works. If it is not working would you send the XIM file and I will create a new version, which allows for PI 7.1 User defined mappings.

Do you have any other request for functionality, then comment in this blog or in the google defect log.

Antichrist movie

I just watched antichrist, or half of it. Then I could not stand anymore of the film. It was one of the most evil movies I have ever seen.

The first half was good with some beautiful pictures and scenes. It is very well instructed and the acting is also superb.

But then the evil comes. Kind of like Stephen kings Carrie, but Antichrist has some more feelings involved. It could be because it is this more emotional. I was even sweating from the horror.

Then back home we watched The Kid with Bruce Willis, that movie I could handle.

Released Ondemand BAM service

I have just released my ondemand Business Activity Monitoring (BAM) site. It can be found at http://www.odmbam.com. Currently the site is under development, and I’m trying to see if the idea works and people would signup.

The idea is to make a BAM SaaS solution to monitor business processes. It should make it easier for people to get their processes monitored.

Cloud process monitoring is probably an area, which could be improved a lot. I hope the site prove successful and lead to further development of the service.

SAPPHIRE online

I did not prioritize going to SAPPHIRE this year. I did not expect the value for going was greater than the time an effort it would take to go to the conference. Now the conference is running, I feel it could be fun to participate.

Luckily it is not possible to follow much of SAPPHIRE conference remote. There are a number of resources that can be leveraged. There should be 8.000 watching the conference online.

First some of the interesting part of the conference is the keynotes. All the keynotes can be found at http://www.sap.com/about/newsroom/sapphire/webcasts/index.epx. It is possible to watch the live keynotes and replay of the keynotes from yesterday. They are in a fine quality, though some of the slides or demos can be a little difficult to read.

The SAPClubhouse is also a place to find information on what is going on or being talked about and participate in the conversation.

It is also possible to follow what is going on via twitter, where you can search for #sapphire09 . If you do not want to go to the twitter site, you can find the same search on SAPClubhouse. The Twitter feeds gives a way to share thoughts on presentations with other. It can also be possible to find information about relevant sites or facts.

It is also possible to follow blogs or news report about what is going on.

There are still some issues that you do not get with the live event like:

  • Being able to talk with people face to face.
  • Hearing other sessions than the keynotes, since this are not broadcasted.
  • Going to the events and parties

 

DTC race på Jyllandsringen

Jeg var til DTC (Danish Touringcar Championship) åbningsløbet på jyllandsringen den 9/5 2009. Det er første gang jeg ser andre racerløb en formel 1. Det var lidt mindre og nemmere at komme rundt og få parkeret.

Det var heller ikke så dyrt at være med til. Billetprisen var 200 kr, hvilket jo ikke er meget for en hel dags underholdning. Så kunne man købe opgraderinger til tribuner, men vi vurderede at det ikke gav så meget bedre oplevelse.

Der var en hel del løb i forskellige klasser. Der var en masse god race med overhalinger og placeringskampe.

Det som nok var mest impornerende i forhold til formel 1, var at der var løb på banen hele tiden. Der blev skiftet serier meget hurtigt. Det gjorde at der hele tiden skete noget på banen.

Der blev kørt rimeligt tæt til mange af løbene. Det gjorde at det var sjovt at se og at man ventede at der var overhaleninger hel tiden.

Noget som også gjorde løbet sjovt var at man kunne komme ned til alle bliverne. I stedet for F1 pitwalk, var der et grid show hvor man kunne komme helt ned til alle bilerne. Det betød at man kunne få et god indblik i hvordan bilerne så ud.

Til næste gang jeg skal af sted vil jeg nok gøre følgende anderledes.

  • Medbringe snacks og mad, så man kan spise andet end de pølser der bliver solgt
  • Medbringe stole, så man kan sidde lidt mere behaligt
  • Undlade at købe billet på forhold, men købe den ved indgangen og få FDM rabat.

Komme til så det passer med det første DTC løb, så man kan se alle løbene.

Release of PI documenter tools as open source

I released the two services for PI to get documentation of mappings and to compare two mappings to see what have changed. The release to those services can be found in the two
blogs.

After the release people have been asked if it was possible to run the tools at the users own computer instead of the server version. And I have been thinking about releasing the scripts as commercial products to accommodate this request. It is possible to create compiled PHP code, which can be executed at local PC’s. I did decide against it because it would require a product to be more mature then the product is and did not believe the marked was large enough and marketing would be difficult. By releasing the product as open source it might be possible to get other to contribute and create a service, which could help many more.

The product was original designed to run on a server in a controlled environment. But with this version I had to refactor some of the code to support the usage a client perspective. A problem is that script is extracting a lot of files from the XIM files. These files need to be cleaned up and I used the quick solution to use the windows Delete command to do this clean up. There are some other places which have not been cleaned up yet, they will be cleaned up in the next release.

One of the challenges with releasing software as open source is that it exposes ones coding capabilities. I would say that there is a long way to go before I’m able to get a living from coding PHP. The code seems to work, but the refactoring is a little more time consuming.

You can find the code and installation guides at code.google.com.

If you want to help with improving the code, please join the group and help improve the product.