Daniel LübkeLeibniz Universität Hannover · Software Engineering Group
Daniel Lübke
Dr.-Ing.
About
73
Publications
49,960
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
1,094
Citations
Introduction
Daniel Lübke currently works at the Software Engineering Group, Leibniz Universität Hannover. Daniel does research in Information Systems (Business Informatics) and Software Engineering. His current project is 'Executable BPMN Testing'.
Publications
Publications (73)
This paper presents the process integration platform Terravis as a Software Architecture Showcase. We will describe the current architecture as well as challenges and lessons learned, which we encountered.KeywordsSoftware ArchitectureIndustry Case DescriptionBusiness Process Automation
Proven Patterns for Designing Evolvable High-Quality APIs--For Any Domain, Technology, or Platform
APIs enable breakthrough innovation and digital transformation in organizations and ecosystems of all kinds. To create user-friendly, reliable and well-performing APIs, architects, designers, and developers need expert design guidance. This practical...
Business process modeling is an important activity for developing software systems—especially within digitization projects and when realizing digital business models. Specifying requirements and building executable workflows is often done by using BPMN 2.0 process models. Although there are several style guides available for BPMN, e.g., by Silver a...
Calculating business process metrics and correlating them to quality attributes is an important part of empirical research in the area of business process modeling.
BPEL is a standardized modeling language for executable business processes for which many metrics have been proposed. However, no publication offers a reference implementation.
This lea...
The Microservice API Patterns (MAP) language and supporting website premiered under this name at Microservices 2019. MAP distills proven, platform-and technology-independent solutions to recurring (micro-)service design and interface specification problems such as finding well-fitting service granularities, rightsizing message representations, and...
Regression Testing is an important quality assurance activity for combating unwanted side-effects, which might have been introduced in a new software release. Selecting and prioritizing regression test cases is a challenge in practice – especially in a world of ever increasing complexity, distribution, and size of the software solutions. Current ap...
Perhaps one of the reasons BPM research concentrates on analytical modeling of business processes is that BPMN is standardized fully in this regard and modeling tools support the notation very well. In this book, we focus instead on empirical research in executable process models. This requires a complete and precise specification of process models...
Empirical research is becoming increasingly important for understanding the practical uses of and problems with business processes technology in the field. However, no standardization on how to report observations and findings exists. This sometimes leads to research outcomes which report partial or incomplete data and makes published results of re...
Executable business processes contain complex business rules, control flow, and data transformations, which makes designing good tests difficult and, in current practice, requires extensive expert knowledge. In order to reduce the time and errors in manual test design, we investigated using automatic combinatorial test design (CTD) instead. CTD is...
Service orchestrations are frequently used to assemble software components along business processes. Despite much research and empirical studies into the use of control-flow structures of these specialized languages, like BPEL and BPMN2, no empirical evaluation of data-flow structures and languages, like XPath, XSLT, and XQuery, has been made yet....
Remote Application Programming Interfaces (APIs) are technology enablers for distributed systems and cloud-native application development. API providers find it hard to design their remote APIs so that they can be evolved easily; refactoring and extending an API while preserving backward compatibility is particularly challenging. If APIs are evolve...
BPMN Process Models are the basis for implementing and optimizing business processes in the era of digitization. Good layouts of BPMN diagrams help readers to better understand them. In order to improve the quality of automatic layouting, we need to identify subjective and objective characteristics of diagram layouts. While research into objective...
This book collects essential research on the practical application of executable business process modeling in real-world projects, i.e., model-driven solutions for the support and automation of digital business processes that are created using languages such as BPEL or BPMN. It mainly focuses on empirical research, but also includes an up-to-date c...
With today's requirement of quickly developing dig-itization solutions, companies often use specialized workflow languages like the BPEL or BPMN 2.0, which orchestrate services along the process flow. Because process models are of critical importance to the functioning of the organization, high quality and reliability of the implementations are man...
Microservice APIs represent the client perspective on microservice-based software architecture design and related practices. Major issues in API design concern the quality aspects of the API. However, it is not well understood today what the established practices related to those quality aspects are, how these practices are related, and what the ma...
The design and evolution of Application Programming Interfaces (APIs) in microservices architectures is challenging. General design issues in integration and programming have been covered in great detail in many pattern languages since the beginnings of the patterns movement, and service-oriented infrastructure design patterns have also been publis...
Microservices have been one of the fastest-rising trends in the development of enterprise applications and enterprise application landscapes. Even though various mapping studies investigated the open challenges around microservices from literature, it is difficult to have a clear view of existing challenges in designing, developing, and maintaining...
Today more and more business processes are digitized
by implementing them in specialized workflow languages like
the Business Process Execution Language (BPEL) or Business
Process Model and Notation (BPMN 2.0), which orchestrate
services along the process flow. Because these process models are
software artefacts of critical importance to the functi...
Empirical Research is becoming increasingly important for understanding the practical uses and problems with business processes technology in the field. However, no standardization on how to report observations and findings exists. This sometimes leads to research outcomes which report partial or incomplete data and make published results of replic...
Remote Application Programming Interfaces (APIs) are technology enablers for major distributed system trends such as mobile and cloud computing and the Internet of Things. In such settings, message-based APIs dominate over procedural and object-oriented ones. It is hard to design such APIs so that they are easy and efficient to use for client devel...
Executable Business Processes realized in WS-BPEL and BPMN2 are used more and more for automating digitalized core processes in organizations. Due to their critical nature for the organization, these processes need to be developed with high quality standards. Existing literature concentrates on testing such processes, but do not offer integration i...
Because executable business processes are an important and critical software asset of organizations because they control and integrate critical information systems. Thus, testing them thoroughly is a very important task within the software development process. However, failures due to implementation defects still occur in production, which in turn...
Testing large-scale process integration solutions is complex and cumbersome. To tackle this problem, researchers employed behavior-driven development. They used the Business Process Model and Notation language to model domain-specific test cases. These test cases can be understood by both developers and business stakeholders and can be executed aut...
Supply Chain Management is a very popular and already mature topic between companies in which business processes are coordinated across company borders. However, there are also business processes that span not only companies but also public services. One example is the mortgage business in which banks and insurances are involved as private partners...
Im ersten Teil dieser Artikelserie wurde eine BPEL-Orchestrierung
für einen fiktiven Führererscheinprozess entwickelt. Im zweiten
Teil wurden für diesen Prozess drei Testfälle entworfen. In diesem
Teil werden wir zunächst, dem Test-First-Paradigma folgend, einen
vierten Testfall definieren, mit dem ein funktionales Problem
identifiziert wird. Darau...
Im ersten Teil unserer Open-Source-Serie haben wir den BPEL Designer
und Apache ODE als BPEL Engine kennen gelernt. Doch was kommt, wenn
im Designer alles gut anzusehen ist, es aber in der Ausführung
hakt? Wie jede andere Software muss auch der BPEL-Prozess getestet
werden. Dies verleiht nicht nur dem Kunden sondern auch Ihnen als
Komponisten das g...
Small and Medium Enterprises (SMEs) are the most important drivers in many economies. Due to their flexibility and willingness to innovate they can stand up to larger industry players. However, SMEs – as every other company – need to further reduce costs and optimize their business in order to stay competitive. Larger enterprises utilize ERP system...
Enterprise resource planning (ERP) systems consist of many software components, which provide specific functionality. As ERP systems become more complex, the financial expenditures that are associated with the application of such systems dramatically increase. Furthermore, ERP system development of nowadays is product-oriented and coordinated by on...
Small and Medium Enterprises (SMEs) are the most important drivers in many economies. Due to their flexibility and willingness to innovate they can stand up to larger industry players. However, SMEs – as every other company – need to further reduce costs and optimize their business in order to stay competitive. Larger enterprises utilize ERP system...
SOA projects normally influence the work of many people - especially in large organizations. The software will alter the way people will work in the future and it will hopefully support the accomplishment of their tasks. However, for building a SOA, business processes need to be formalized. Using wrong process descriptions is going to hinder instea...
Small and Medium Enterprises (SMEs) are the most important drivers in many economies. Due to their flexibility and willingness to innovate they can stand up to larger industry players. However, SMEs - as every other company - need to further reduce costs and optimize their business in order to stay competitive. Larger enterprises utilize ERP system...
Badly and inconsistently layouted business processes are hard to read for humans and therefore lack comprehensibility. Furthermore, processes generated by software have no layout at all. If stakeholders cannot comprehend the process descriptions, they are unable to validate them and find mistakes. By offering a fully automatic layout algorithm for...
Designing a good architecture for an application is a wicked problem.
Therefore, experience and knowledge are considered crucial for informing
work in software architecture. However, many organizations do not pay
sufficient attention to experience exploitation and architectural
learning. Many users of information systems are not aware of the option...
Assessing the quality of tests for BPEL processes is a difficult task in projects following SOA principles. Since insufficient testing can lead to unforeseen defects that can be extremely costly in complex and mission critical environments, this problem needs to be addressed. By using formally defined test metrics that can be evaluated automaticall...
Advantages and shortcomings of different process modeling languages are heavily debated, both in academia and industry, but
little evidence is presented to support judgements. With this paper we aim to contribute to a more rigorous, theoretical discussion
of the topic by drawing a link to well-established research on program comprehension. In parti...
The complexity of today's software systems is constantly increasing. As a result, requirements for these systems become more comprehensive and complicated. In this setting, requirements engineers struggle to capture consistent and complete requirements of high quality. We propose a feedback-centric requirements editor to help analysts controlling t...
WS-BPEL ist ein Standard zur Beschreibung von ausführbaren
Geschäftsprozessen. Während zeitgleich zum Erscheinen des
Standards schon erste kommerzielle Software für WS-BPEL verfügbar
war, ist es erst seit kurzem möglich, den kompletten Lebenszyklus
eines BPEL-Geschäftsprozesses (von der Modellierung über die
Ausführung bis hin zum Test) mittels Ope...
The goal of many software projects is the support of business processes. A typical business process spans multiple Use Cases. This poses the difficulty of making the set of encompassing Use Cases consistent with each other and functionality-wise complete with regards to the overall business process. Manual arrangements and reviews of Use Cases are...
ABSTRACT Teaching (and therefore learning) eXtreme Programming,(XP) in auniversity setting is difficult because of course,time limitations and the soft nature of XP that requires ,first-hand experience in order to see and really learn the methods. For example, iterations are either shorter or fewer ,than appropriate. In this paper we present the ,p...
Web services provide a standardized way of accessing functionality over networks. Most beneficial is their use if many Web services are composed in order to develop an application. Due to their nature, Web services can be used to support businesses if their composition matches the underlying business processes. However, the activities related to co...
Service-oriented architecture (SOA) is an emerging architectural style for developing and structuring business applications, especially enterprise resource planning (ERP) systems. SOA applications are composed of small, independent, and network-accessible software components, named services. The service composition is normally based on the enterpri...
When developing a service-oriented architecture (SOA), analyzing the business process is even more important than in normal software projects. Nevertheless, most of the requirements artifacts used in normal software projects apply to SOA-projects, too. This results in competing requirement models (like use cases and business processes) that duplica...
Seit 2004 kommen namhafte Unternehmen der Region Hannover an der Leibniz Universität Hannover im Software Engineering Erfahrungskreis (SEEk) zusammen. Verschiedene Themen rund um die Softwareent-wicklung werden diskutiert. Impulsvorträge aus dem Fachgebiet Software Engineering oder von den Teilnehmern aus der Industrie leiten die Gespräche ein; der...
Reference processes are supposed to be the basis for collaboration and mature cooperation in software development. Large business
organizations need large and diverse reference processes. However, process conformance is a constant concern. There are many
explanations why a project may deviate from its reference process. This is especially true in l...
During the ongoing development of software the implemen-tation drifts away from the initial design due to the changing requirements (known as moving targets), lack of communica-tion and unforeseen difficulties. This drift is unacceptable as the design represents the common picture and is the basis for further development and maintenance of the soft...
Enterprise resource planning (ERP) systems consist of many software components, which provide specific functionality. As ERP systems become more complex, the financial expenditures that are associated with the application of such systems dramatically increase. Furthermore, ERP system development of nowadays is product-oriented and coordinated by on...
Service-Oriented Architecture is a new emerging architectural style for developing distributed business applications. Those applications are often realized using Web services. These services are grouped into BPEL compositions.
However, these applications need to be tested. For achieving better software quality, testing has to be done along the who...
Within this chapter, we present the requirements and a possible conception of a framework, which provides a platform and starting point for the development of mobile agents in peer-to-peer networks. Peer-to-peer networks like Kazaa, Gnutella, and so forth have reached a widespread use on the Internet. By deploying mobile agents that can travel betw...
Within this chapter, we present the requirements and a possible conception of a framework, which provides a platform and starting point for the development of mobile agents in peer-to-peer networks. Peer-to-peer networks like Kazaa, Gnutella, and so forth have reached a widespread use on the Internet. By deploying mobile agents that can travel betw...
The development of large, business-critical software systems often requires several improvement cycles. There are many users
and stakeholders involved, as well as a variety of large and complex business processes. However, such an iterative or evolutionary
development process can be costly and time-consuming, when problems are reported slowly and c...
The Business Process Execution Language (BPEL) is emerging as the new standard in Web service composition. As more and more workflows are modelled using BPEL, unit-testing these compositions becomes increasingly important. However, little research has been done in this area and no frameworks comparable to the xUnit family are available. In this pap...
Software Engineering (SE) Group at the University of Hannover in Germany present their experience from a simulated software project, driven by Quality Gates (QG). A virtual company in which nine student-teams should develop different projects was 'created' , for teaching classical project setups in software project. The teams had to obey certain ru...
Within the requirements phase of many projects, functional requirements are often documented as Use Cases. Within SOA projects, however, these Use Cases are not sufficient since they do not represent a global control flow resembling the one of a business process- an integral aspect of a SOA. Instead they are written from the point of view of a sing...
In software projects, it is important to determine the right amount of requirements documentation. If the documentation is not detailed enough, it is an insufficient base for contracts. If it is too long, it is expensive to maintain. Therefore the amount of documentation should be adjusted for each project. Often this step is omitted, partly to avo...
Agile Methods, like Extreme Programming, have increasingly become a viable alternative for conducting software projects, especially
for projects with a very short time-to-market or uncertain customer-requirements. Using a technique called Agile Hours it
is possible to convey many feelings associated with an Extreme Programming project. Within 70 mi...
Many universities are trying to convey practical experiences to students by conducting software projects. There are many variations of these projects but often the main focus is teaching programming skills and other technical aspects. Most often, the development process is neglected. Because of this, students often experience a ”shock of practice”...
Peer-to-peer-networking has lately become one of the most popular applications used in the Internet. Today's applications allow users to share files, offer processing power to other entities and do collaboration by using software which is relatively easy to use. This paper studies possible applications of mobile agents within peer-to-peer-networks...
The topic of mobile agents has been of great interest to researchers in the last years. However, research concentrated on academic systems, like simulation or other applications in the area of artificial intelligence, or on systems with central authorities and in a trustworthy environment. This paper shows how a framework suitable for open (and the...
Much research effort has been put into the development of mobile agent systems based on peer-to-peer network technology. However, not a very strong focus has yet been on the security of these systems. Only rudimen-tary security measures have been implemented which are not suited for developing open and anonymous networks which are very popular toda...