Service-oriented architeture

Service Oriented Architecture (SOA) is an architecture style for business applications. SOA aims at aligning software with business processes of a company. Therefore, systems are divided into services. Services are small, loosely coupled software components. By combining those services a system is created which is easily adaptable and modifiable. To that, software engineering processes and the culture have to be flexible, too. Hence, our research focuses on software engineering aspects. Primary interests are user integration and interaction, testing and project management.

Generierung von Software aus Geschäftsprozessbeschreibungen.	 
Generierung von Software aus Geschäftsprozessbeschreibungen.

Generating User Interfacese

A central part of a SOA is the flexibility: Every time a business process is changed the modification can be adopted to the software. However, Service are only able to provide functionality. But user need to work with the systems, which means user interfaces have to be implemented and maintained. This increases the change effort and reduces the speed of reaction significantly.

To tackle this problem, we aim at generating user interfaces at runtime based on the business processes. Therefore, business process need a simple annotation only which contains the semantic of the user interface. The client generates suitable user interfaces at runtime when ever they are needed. This approach has has major advantages:

User Feedback

Abbildung 1: Integration von Benutzerfeedback in SOA-Projekten 
Figure 1: Integration von Benutzerfeedback in SOA-Projekten

Especially, if systems are developed with a large and distributed user base, getting feedback is difficult. To lead the project to success, it is important that developers understand the users' requirements and way of working. To solve that problem we propose to integrate an experience forum into the client application which can be used to exchange experience and information. Additionally, the experience forum can provide a basis for a Community of Practice. Taken as whole, ideas can be exchanged easier and faster. The fundamental structure is illustrated in Figure 1.


Services are combined in compositions. A composition is a business process having additional technical details: For instance, which services are when invoked. Hence, a composition is a program written in a very high programming language. As a software product it has to be tested to ensure the fulfilment of the requirements. Because compositions address many distributed systems, namely the services, test suites need much time for execution. Additionally, it has to be ensured that the test suites cover all relevant functions. BPELUnit as an open source unit testing framework for BPEL compositions provides the technical foundations and is the foundation of our ongoing research. BPELUnit provides a front-end for eclipse and is able to interact with different BPEL server.

Service oriented architecture is an area where much research is done. All big companies offer SOA products. Nevertheless, SOA is a relatively new phenomena and many questions are still open. We would therefore be pleased to address such questions together with industrial partners and to use our research results.


  • 2004
  • [1] Jorge Marx Gómez, Oliver Krüger, Daniel Lübke: An ERP system based on Peer-to-Peer-Networks and Web Services, In IRMA International Conference - Innovations Through Information Technology, 2004, Bibtex.
  • 2005
  • [2] Daniel Lübke, Jorge Marx Gómez, Kurt Schneider: Serviceorientierte Architekturen und Prozessmanagement - Chancen durch die Verbindung zweier Welten, In ERP Management, volume 1, pages 42-47, 2005, Bibtex.
  • 2006
  • [3] Daniel Lübke, Jorge Marx Gómez, Kurt Schneider: Transformation of Use Cases to EPC Models, In Proceedings of the EPK 2006 Workshop, Vienna, Austria, 2006, Bibtex.
  • [4] Lübke, Daniel, Schneider, Kurt, Denis Beßen, Daniel Lübke, Andreas Röpke, Kurt Schneider, Beate Strüber, Joachim Trütken, Christian Trump, Martin Willmann: Leveraging Feedback on Processes in SOA Projects, In EuroSPI, pages 194-205, Joensuu. Springer-Verlag Berlin-Heidelberg, 2006, Bibtex.
  • [5] Mayer, Philip, Lübke, Daniel: Towards a BPEL unit testing framework, In Workshop on testing, analysis and verification of web services and applications, 2006, Bibtex. Link
  • [6] Daniel Lübke, Tim Lüecke, Jorge Marx Gómez: Using Event-Driven Process Chains for Model-Driven Development of Business Applications, In Multikonferenz Wirtschaftsinformatik 2006, Workshop XML4BPM, 2006, Bibtex.
  • [7] Daniel Lübke, Tim Lüecke, Kurt Schneider, Jorge Marx Gómez: Model-driven Development of Business Applications using Event-driven Process Chains, In 2006 GITMA International Conference, 2006, Bibtex. Abstract.
  • [8] Jorge Marx Gómez, Nico Brehm, Björn Sönnichsen, Daniel Lübke: Generierung von ERP-Bedienoberflächen aus erweiterten Prozessbeschreibungen, In ERP Management, volume 3/2006, pages 25-30, 2006, Bibtex.
  • 2007
  • [9] Daniel Lübke, Jorge Marx Gómez: Unit Testing BPEL Compositions, In Luciano Baresi and Elisabetta Di Nitto, Test and Analysis of Service-oriented Systems. Springer, 2007, Bibtex. Abstract. Link
  • [10] Nico Brehm, Daniel Lübke, Jorge Marx Gómez: Federated Enterprise Resource Planning (FERP) Systems, Pallab Saha: Handbook of Enterprise Systems Architecture in Practice. Idea Group Inc., Hershey, USA, 290-305, 2007, Bibtex.
  • 2008
  • [11] Eric Knauss, Daniel Lübke: Using the Friction between Business Processes and Use Cases in SOA Requirements, In Proceedings of the 32nd Annual IEEE International Computer Software and Applications Conference (COMPSAC), Workshop on Requirements Engineering For Services, pages 601-606, Turku, Finland, 2008, Bibtex. Abstract.
  • [12] Daniel Lübke, Matthias Weidlich, Kurt Schneider: Visualizing Use Case Sets as BPMN Processes, In REV'08: Requirements Engineering Visualization Workshop, 2008, Bibtex.
  • [13] Jorge Marx Gómez, Daniel Lübke: Konzept und Support für das Testen von Services, In ERP Management, GITO Verlag, volume 1, pages 2008, 2008, Bibtex. Link
  • 2009
  • [14] Matthias Weidlich, Alexander Grosskopf, Daniel Lübke, Kurt Schneider, Eric Knauss, Leif Singer: Verzahnung von Requirements Engineering und Geschäftsprozessdesign, In Workshop Proceedings of the SE 2009 - REBPM, Kaiserslautern, Germany, 2009, Bibtex. Abstract. PDF herunterladen
  • [15] Daniel Lübke, Leif Singer, Alex Salnikow: Calculating BPEL Test Coverage through Instrumentation, In Workshop on Automated Software Testing (AST 2009), ICSE 2009, 2009, Bibtex. Abstract. PDF herunterladen