The company is one of the largest utility companies, providing power, heat and gas. When they contacted me for the first time it was actually for a quite technical reason. They asked me how to create and update SAP NetWeaver BI master data via BI-IP (BI Integrated Planning) within their existing NetWeaver BI 7.0 system. I showed them an approach using Visual Composer and ABAP function modules which I have been applying at other projects.
Continuing this discussion we developed a prototype for a maintenance planning process based on this quite new technology. Especially the easy to use UI as well as Visual Composer's capability of combining BI queries with transactional business logic encouraged the company to turn this prototype into a real application.
Within the following lines I wrote down the scope of the project and my lessons learned.
The companies maintenance planning process is a yearly repeated operational planning process which happens before the official overall cost planning process. From April to September the maintenance group plans its estimated costs for maintaining the companies five power plants. For the upcoming year the costs are adjusted to cost elements whereas they are aggregated for the additional next four years.
The process itself is initiated by the technical controlling department. After process start the maintenance group - all technicians who try to avoid "unnecessary" administration work - creates maintenance tasks, assigns them to maintenance projects and provides the key figures. Finally the data's returned to technical controlling, consolidtated and entered into the existing SAP BW/BPS based planning tool.
Before this project the company used Microsoft Excel to build the workflow on. As the size of the Excel workbook was 50 MB+ as well as the data quality wasn't ok this process proved to be very time consuming. The result were high process costs as well as low transparency due to missing reporting functionality.
For me this is a quite typical situation. Planning processes of any kind frequently reach over department level thus involve different people with different roles. The consequence is that the different group of people uses their preferred tool to do their job resulting again in so called system and media breaks.
The prime goals of the project were the following:
In regards to functionality the application should ensure the following:
In order to archive these goals we developed a solution which eliminated the use of Microsoft Excel. Instead, a new web based front end was built to collect the planning data as well as to create new master data directly by the end users. At the end the planning process could be shortened and unnecessary work for the technical controlling department could be minimized.
The project began with an in-depth business and technical concept of the application. It was key to me to include the controlling and maintenance teams from begin on. Respective workshops took place end of 2007.
The result was a detailed business document which contained a verbal description of all use cases, the UIs which we had to implement as well as the content of the reports. Based on this business document we created a specific software design document for SOA-based application development. This is a document which precisely describes which UIs call which enterprise services, which enterprise services are based on technical services and so on.
This document was really important for me as it helped me organize my mixed team based on BI, ABAP and Visual composer cracks. In February 2008 we actually began developing the solution. We decided to use following architecture:
As you can see the heart of the solution is SAP NW BI 7.0. It generally speaking stores of all of our business objects we create/read/update/delete in the process. Most of the business objects are stored as BI characteristics in order to be available for BI reporting, whereas the planning data which is entered by the maintenance people is kept as key figures. Some of the characteristics are individual to this application whereas others belong to the corporate planning application. This makes sure that we get an integrated corporate reporting.
Now I'd like to emphasize an important point: Instead of using BI-IP we used Visual Composer with self developed enterprise services to write the planning key figures. The reason is that the end users expected very ease to use web front ends which incorporated change of key figures and characteristics. Additionally the enterprise service needs to cover additional business logic such as security checks. The possible flexibility gain of BI-IP was to performance expensive for us, so we decided to write delta packages into a transactional cube. On top of the planning cube we made a multicube which is only used for reporting purposes.
To meet the requirement of generating a highly customized PDF document we developed a set of Enterprise services which renders a Sap Script form into a PDF document. Adobe interactive forms have been under evaluation, but due to potential license costs we didn't use them.
The implementation of the application took approx. two months, followed by extensive technical tests. Finally the application was tested by the end users, approved and went into production at April 1st 2008.
Since then the application has continuously been extended.
First of all the major goal to streamline the process itself by eliminating Microsoft Excel has been met. The process costs could be reduced significantly.
Additionally ad-hoc reporting empowers the company to increase transparency about their maintenance plan and actual costs. This helps control the development of the costs.
The feedback from the end users was very positive. Some of them even like it more than Excel! This is confirmed by very low training and support costs. It took just 45 mins to train the end users.
At the end I applied with this project for the SAP Enterprise SOA reference case. I'm pleased that it has been officially accepted.
Lessons Learned
This project was very exciting, but tough though. Visual Composer is a great tool and SOA certainly helps reduce implementation costs, but we faced some challenges I'd like to share with you.
I personally see following points as positive:
Following bullets need some level of improvement:
So, that's all for now. I hope I could help you with some interesting information and would be happy to answer to your questions.