Methodical support for model-driven software engineering with enterprise models

A central research goal in information systems science is to achieve a close alignment between business processes, structures of organizations, and the functionality offered by enterprise information systems (EISs), which are used to support the work of organizations. Traditionally, there is a methodical gap between describing organizational incidents and software functionality, because organizations and software systems are understood and constructed with different terminology and on different levels of abstractions, typically also by differently educated groups of people. In enterprise models (EMs), dedicated modeling language elements are used to express knowledge about processes in organizations, e. g., about who is responsible for performing actions, what resources are involved, and what strategic goals are intended to be realized by organizational means. The work at hand shows, how EISs can be created based on this knowledge, which serve as supporting software for performing these tasks. Software development traditionally has to face a distinction between people who work with software, and people who create software. With the use of EMs, a chance opens up to closer involve the users of software systems into the process of developing and configuring the software. Building software from enterprise models is desirable, because once a dedicated relationship between enterprise models and software functionality has been established by a development method, involved users and responsible stakeholders can adapt the software according to their business needs, without having to deal with programming or technical details. This increases efficiency both in developing and operating the software, because software functionality is derived from requirements implicitly stated in EMs. Such a development procedure also promises to more efficiently adapt EIS to dynamic changes in organizations and their environment. Trust in the developed software system is also increased by involving users and responsible stakeholders into specifying the resulting software functionality. The following research work elaborates a software development method to create EISs from EMs. The method is designed as a generic framework to work with any enterprise modeling language, and to generate software for any target system platforms, after appropriate configuration. Fundamental challenges in methodically transforming conceptual models to implementation artifacts, are faced by involving auxiliary models into the software creation process, and splitting up the transformation procedure into multiple dedicated phases. Using this approach, the abstraction gap between conceptual enterprise models and technical implementation artifacts gets systematically bridged by introduced methodical concepts, in order to perform an ontological turn from the bird’s-eye-view description perspective of enterprise models, to an internal system perspective describing technical details of a software system. The elaborated method provides means for efficiently guiding modelers and software developers through the software engineering process. It can be configured at multiple points, to choose the degree of automation on a continuum between a manually supervised development process with methodically scheduled manual development steps, and a zero-coding 100% code generation approach. To clarify the theoretically introduced concepts, prototypical implementation examples are included in the present work. They demonstrate how to configure the method with model-transformations, validity checks, and domain-specific modeling languages, and serve as initial example cases for enterprise model driven software development using the Software Engineering with Enterprise Models (SEEM) method.

[1]  Thomas Barth,et al.  Supporting Distributed Decision Making Using Secure Distributed User Interfaces , 2011, Distributed User Interfaces.

[2]  H. Putnam Representation and Reality , 1993 .

[3]  August-Wilhelm Scheer,et al.  ARIS — Architecture of Integrated Information Systems , 1992 .

[4]  James R. Lewis,et al.  Integrated office software benchmarks: A case study , 1990, INTERACT.

[5]  Jan Mendling,et al.  Towards a Methodology for Semantic Business Process Modeling and Configuration , 2009, ICSOC Workshops.

[6]  Michaël Petit,et al.  Modeling Competition-Driven Business Strategy for Business IT Alignment , 2011, CAiSE Workshops.

[7]  Wil vanderAalst,et al.  Workflow Management: Models, Methods, and Systems , 2004 .

[8]  Richard C. Gronback Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit , 2009 .

[9]  Andrew S. Tanenbaum,et al.  Distributed systems: Principles and Paradigms , 2001 .

[10]  August-Wilhelm Scheer,et al.  ARIS Architecture and Reference Models for Business Process Management , 2000, Business Process Management.

[11]  John C. Henderson,et al.  Strategic Alignment: Leveraging Information Technology for Transforming Organizations , 1993, IBM Syst. J..

[12]  Ulrich Frank,et al.  Multi-perspective enterprise modeling: foundational concepts, prospects and future research challenges , 2014, Software & Systems Modeling.

[13]  Jean-Baptiste Waldner,et al.  CIM: Principles of Computer-Integrated Manufacturing , 1992 .

[14]  Volker Gruhn,et al.  Adopting the Cognitive Complexity Measure for Business Process Models , 2006, 2006 5th IEEE International Conference on Cognitive Informatics.

[15]  Kevin Williams,et al.  Professional XML Databases , 2000 .

[16]  Tony Clark,et al.  Applied Metamodelling: A Foundation for Language Driven Development (Third Edition) , 2015, ArXiv.

[17]  Jan Mendling,et al.  On the Translation between BPMN and BPEL , 2006, EMMSAD.

[18]  John Krogstie,et al.  Modelling of the People, by the People, for the People , 2007 .

[19]  Ulrich Frank,et al.  Multi-perspective enterprise modeling (MEMO) conceptual framework and modeling languages , 2002, Proceedings of the 35th Annual Hawaii International Conference on System Sciences.

[20]  Steven Kelly,et al.  Defining Domain-Specific Modeling Languages: Collected Experiences , 2004 .

[21]  John Berge,et al.  The Edifact Standards , 1994 .

[22]  Raghu Ramakrishnan,et al.  Database Management Systems , 1976 .

[23]  David Sun,et al.  Leveraging single-user applications for multi-user collaboration: the coword approach , 2004, CSCW.

[24]  Ulrich Frank MEMO Organisation Modelling Language (2): Focus on business processes , 2011 .

[25]  Stephen R. Schach,et al.  Object-oriented and classical software engineering , 1995 .

[26]  Ulrich Frank,et al.  Towards a pluralistic conception of research methods in information systems research , 2006 .

[27]  M. Hatch Organization Theory: Modern, Symbolic, and Postmodern Perspectives , 1997 .

[28]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[29]  Anneke Kleppe,et al.  Software Language Engineering: Creating Domain-Specific Languages Using Metamodels , 2008 .

[30]  Lars Rasmusson,et al.  Decentralized Coordination for Open Distributed Systems , 1997 .

[31]  Donald F. Ferguson,et al.  ITML: A domain-specific modeling language for supporting business driven IT management , 2009, OOPSLA 2009.

[32]  Richard L. Daft,et al.  Organization Theory and Design , 1983 .

[33]  Jan Mendling,et al.  Beyond Soundness: On the Semantic Consistency of Executable Process Models , 2008, 2008 Sixth European Conference on Web Services.

[34]  W. Lockhart Enterprise application integration , 2002 .

[35]  Rolf T. Wigand,et al.  Introduction to Business Information Systems , 2003 .

[36]  Mathias Weske,et al.  Business Process Management: Concepts, Languages, Architectures , 2007 .

[37]  Michael zur Muehlen,et al.  Resource Modeling in Workflow Applications , 1999 .

[38]  Ravi S. Sandhu,et al.  The NIST model for role-based access control: towards a unified standard , 2000, RBAC '00.

[39]  Yongsun Choi,et al.  Web Service Based Universal Management of Workflow Resources , 2004, ICEB.

[40]  Weimin Du,et al.  Enterprise workflow resource management , 1999, Proceedings Ninth International Workshop on Research Issues on Data Engineering: Information Technology for Virtual Enterprises. RIDE-VE'99.

[41]  Janis Stirna,et al.  Bringing Enterprise Modeling Closer to Model-Driven Development , 2011, PoEM.

[42]  Jan Mendling,et al.  Verification of Forbidden Behavior in EPCs , 2006, Modellierung.

[43]  Ulrich Frank,et al.  Multi-perspective enterprise modelling: Background and terminological foundation , 2011 .

[44]  Hongyan Ma,et al.  Process-aware information systems: Bridging people and software through process technology , 2007, J. Assoc. Inf. Sci. Technol..

[45]  Vijayalakshmi Atluri,et al.  Role-based Access Control , 1992 .

[46]  Bernhard Thalheim,et al.  Entity-relationship modeling - foundations of database technology , 2010 .

[47]  B. Shneiderman,et al.  Flowchart techniques for structured programming , 1973, SIGP.

[48]  Wil M. P. van der Aalst,et al.  Bridging The Gap Between Business Models And Workflow Specifications , 2004, Int. J. Cooperative Inf. Syst..

[49]  Ahmad Shuja,et al.  IBM Rational Unified Process Reference and Certification Guide: Solution Designer , 2007 .

[50]  Matthias Jarke,et al.  Metamodeling for Method Engineering , 2009 .

[51]  Jan Mendling,et al.  Structural Patterns for Soundness of Business Process Models , 2006, 2006 10th IEEE International Enterprise Distributed Object Computing Conference (EDOC'06).

[52]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[53]  Jan Mendling Business Process Execution Language for Web Service (BPEL) , 2006 .

[54]  Robin Williams,et al.  Software and Organisations: The Biography of the Enterprise-Wide System or How SAP Conquered the World , 2008 .

[55]  D. Mattfeld,et al.  Erhöhung der Sicherheit von Lebensmittel-warenketten durch Modell-getriebene Prozess-Implementierung , 2012, MKWI 2012.

[56]  Bernd Bruegge,et al.  Object-Oriented Software Engineering Using UML, Patterns, and Java , 2009 .

[57]  Jan Mendling,et al.  From business process models to process-oriented software systems , 2009, TSEM.

[58]  Ulrich Frank,et al.  MEMOCenterNG - A Full-featured Modeling Environment for Organization Modeling and Model-driven Software Development , 2010, CAiSE Forum.

[59]  van der Wmp Wil Aalst,et al.  Evaluation of the BPEL4People and WS-HumanTask extensions to WS-BPEL 2.0 using the workflow resource patterns , 2007 .

[60]  Jens Gulden Minimal-invasive generative Entwicklung von Modellierungswerkzeugen mit dem Eclipse Graphical Modeling Framework (GMF) , 2009, GI Jahrestagung.

[61]  Nenad Stojanovic,et al.  Using Control Patterns in Business Processes Compliance , 2007, WISE Workshops.

[62]  Jan Mendling,et al.  Beyond soundness: on the verification of semantic business process models , 2010, Distributed and Parallel Databases.

[63]  Chris Marshall,et al.  Enterprise modeling with UML: designing successful software through business analysis , 2000 .

[64]  Jan Stage,et al.  Method Engineering. Principles of Method Construction and Tool Support , 1996 .

[65]  Giancarlo Guizzardi,et al.  A Semantic Foundation for Role-Related Concepts in Enterprise Modelling , 2008, 2008 12th International IEEE Enterprise Distributed Object Computing Conference.

[66]  Juha-Pekka Tolvanen,et al.  Domain-Specific Modeling: Enabling Full Code Generation , 2008 .

[67]  P. Krutchen,et al.  The Rational Unified Process: An Introduction , 2000 .

[68]  Asbjørn Rolstadås,et al.  Enterprise modeling : improving global industrial competitiveness , 2000 .

[69]  Jan Mendling,et al.  On the transformation of control flow between block-oriented and graph-oriented process modelling languages , 2008, Int. J. Bus. Process. Integr. Manag..

[70]  Peter Rittgen,et al.  Enterprise Modeling And Computing With UML , 2006 .

[71]  Marc M. Lankhorst,et al.  Enterprise Architecture at Work - Modelling, Communication and Analysis, 2nd Edition , 2005, The Enterprise Engineering Series.

[72]  Michel Diaz,et al.  Petri Nets: Fundamental Models, Verification and Applications , 2009 .

[73]  Alexander Pretschner,et al.  Distributed usage control , 2006, CACM.

[74]  Ulrich Frank MEMO Organisation Modelling Language: Requirements and core diagram types , 2011 .

[75]  John A. Zachman,et al.  A Framework for Information Systems Architecture , 1987, IBM Syst. J..

[76]  Dirk Fahland,et al.  Analysis on demand: Instantaneous soundness checking of industrial business process models , 2011, Data Knowl. Eng..

[77]  Ulrich Frank MEMO Organisation Modelling Language (1): Focus on organisational structure , 2011 .

[78]  August-Wilhelm Scheer,et al.  ARIS — Vom Geschäftsprozess zum Anwendungssystem , 1998 .

[79]  Ulrich Frank,et al.  Outline of a method for designing domain-specific modelling languages , 2010 .

[80]  Mark Strembeck,et al.  Detecting and Resolving Conflicts of Mutual-Exclusion and Binding Constraints in a Business Process Context , 2011, OTM Conferences.

[81]  Volker Gruhn Process-Centered Software Engineering Environments, A Brief History and Future Challenges , 2002, Ann. Softw. Eng..

[82]  Steven De Haes,et al.  Enterprise Governance of IT, Alignment and Value , 2015 .

[83]  Stefan Strecker,et al.  MetricM: a modeling method in support of the reflective design and use of performance measurement systems , 2012, Inf. Syst. E Bus. Manag..

[84]  R. Winter,et al.  Business Strategy Modelling in the Information Age , 2002 .

[85]  Martin Bichler,et al.  Design science in information systems research , 2006, Wirtschaftsinf..

[86]  Bernd Freisleben,et al.  Model-Driven Process Development Incorporating Human Tasks in Service-Oriented Grid Environments , 2008, Multikonferenz Wirtschaftsinformatik.

[87]  Eric Clayberg,et al.  Eclipse: Building Commercial-Quality Plug-ins , 2004 .

[88]  Andreas Schaad,et al.  Visualizing security in business processes , 2011, SACMAT '11.

[89]  François Vernadat,et al.  Enterprise modeling and integration : principles and applications , 1996 .

[90]  Jan Mendling,et al.  Model-Driven Enterprise Systems Configuration , 2006, CAiSE.