Skip to Content
Technical Articles

Composition – Way to Reap the Benefits of SOA

The word composition often brings to my mind a picture of classical music concert, where a conductor directs the large ensemble to perform the main musical composition of the evening. Perhaps it’s due to similarities between the gestures of a conductor arranging sounds from different instruments on the symphony orchestra making harmonious music; and the activities of a modeler seamlessly arranging functionalities from heterogeneous applications on the business process platform creating value adding composites. As in a concert, I have divided this write-up into three parts: prelude, performing the composition and finale.



I think Service Oriented Architecture (SOA) is the most significant and singular phenomenon of the decade in the evolution of software architecture, which focuses on building agile enterprises. Agility is achieved through adaptable solutions running on a flexible SOA foundation that quickly responds to the demands of ever-changing business strategies. The Business Process Platform (BPP) is the SOA foundation in the SAP context.


SAP enables businesses to adopt SOA through the following: (not an exhaustive list)

  • SOA enabled SAP business solutions (providing harmonized enterprise services)
  • BPP capabilities for consolidation of information and integration of enterprise applications based on open standards
  • BPP capabilities for composition of business solutions (a.k.a composites) based on model driven development principles


The approach and value propositions of the first and second points in the above lists have already become a word of mouth. To understand the complete value of the third point we need to bring together the skills of both the business and the technical experts, for composition is the ultimate reaping of the business benefits from SOA.


Composites open up a new dimension of flexibility for building individual customer-specific solutions, while at the same time leveraging the proven advantages of existing standardized business applications (SAP Business Suite) and their embedded core processes.


In the following sections of this blog, I like to share an approach based on my experience of developing a real-life composite and also make an attempt to show how even common business problems can be turned into quick win solutions.


Performing The Composition

The composite I created is titled “Room Reservation” and is based on the enterprises services described in Real Estate – Room Reservation ES bundle. The services are available in ECC 6.0 starting with EhP4. The composite was built using tools available in NetWeaver CE7.1 SP05.


It All Started With A Business Problem…

Following is the brief description of the business problem that the composite application had to address:


Booking of meeting rooms can be extremely time-consuming and, depending on software and system landscape, can often be done by power users/ specialist only (e.g. assistants). This often causes high administrative efforts, especially when there is no possibility to search for specific room equipment or to order additional services. The lack of cost awareness due to missing visibility of involved costs generates waste of money and reduced profitability due to inefficient room utilization. Further, if an employee or manager wants to book a meeting room, he is forced to contact such a specialist before finalizing the meeting request on his own, thus loosing valuable time. (To read more click here)


Defined How It Needs To Be Solved In Solution Specification…

A business expert colleague of mine, Yves, gathered more requirements, analyzed and compiled the specification document for this customer problem. The idea of solution was to develop a self-service application, which empowers the employees and reduces waste of time & cost. As part of the specification the business processes, UI mock-ups & related enterprises services mappings were identified.  My colleague demonstrated the UI mock-ups and discussed the specification with the end-users on the customer side, seeking improvement opportunities and consent.

Figure 1: Business Process Flow for Create Reservation Scenario


Laid The Foundation With Solution Architecture…

Due to expertise and efficiency in building composites, the SAP Make-to-order Composition Service team was the clear choice to build the solution and this is where I came in. After discussion with the business expert, I drafted the technical architecture of the composite. Here I identified the components, boundaries and quality attributes for the application, and then defined the subcomponents and organized them into logical layers. I also selected the technology to be used for implementation of each of these layers. Web Dynpro was selected for UI development over Visual Composer (VC) as the composite involved some dynamic behavior, especially for the screens containing room schedules and additional services. The SAP Composite Application Framework (CAF) was selected for service composition, adaptation and additional business logic. Integration decisions were arrived at in discussion with the business and technical experts, resulting in use of SMTP server for mail services and use of the iCalendar specification for meeting requests.


Realized Through Solution Development…

To develop the solution a team of three, comprising of a Web Dynpro expert, a CAF developer and I was formed. We followed an agile methodology with weekly sprints and built the composite in increments. At the end of every week the solution was reviewed by the business expert, who provided the end-user’s perspective in improving the usability and functionality. This iterative approach of adding the improvements helped in making the application more user-centric and context sensitive.


At the end of development sprints, we had an integration sprint where all the scenarios namely create, change and cancel reservation, were integrated into the application. End-to-end scenario tests were performed.


… And Now Presenting To You

Following are some of the screenshots from the application, related to the creation of recurrent reservations. The below screen flow is arranged as per the process flow depicted in Figure 1, for your quick and easy reference.


Figure 2: Schedule meeting/event screen


Figure 3: Reserve room screen for a recurrent meeting


Figure 4: Order additional services screen for recurrent meeting


Figure 5: Assign cost screen for recurrent meeting


Figure 6: Confirmation screen for creation scenario



I see following as some of the business benefits of the room reservation composite:

  • The composite supports an end to end room booking process for employees without the need to change between systems
  • It improves cost awareness and reduces waste
  • It reduces overall processing time and thus reduces costs
  • It improves customer satisfaction and quality by reducing customer wait time
  • It provides seamless integration to SAP ERP
  • It’s a guided solution with an intuitive and easy-to-use interface. The employees’ process consists of: scheduling meetings, reserving rooms, ordering additional services, assigning the costs to cost centers and confirming the reservation

More information about room reservation composite can be found here.


One of the key characteristics of composites is short time to value. That’s being able to build the application and put it to use quickly. With model driven development capabilities of NetWeaver CE, right skills, choice of right methodology and a good reusable components inventory (as already established in SAP Make-to-order Composition service team), the turnaround time can be as short as 4-6 weeks for medium sized composites.


To identify and build such quick win solutions for your business, leveraging the expertise of SAP Make-to-order Composition Service visit here.

1 Comment
You must be Logged on to comment or reply to a post.
  • Hi Vinay,

    Nice blog!!! The web dynpro screens look amazing. It must have been quite an effort for the web dynpro expert to cope with all the dynamics involved in development 😉