Conceptualisation: Chapters from Harmonising Enterprise and Software Engineering By
Total Page:16
File Type:pdf, Size:1020Kb
Conceptualisation: Chapters from Harmonising Enterprise and Software Engineering by Robert Pergl A habilitation thesis submitted to the Faculty of Information Technology, Czech Technical University in Prague Prague, September 2018 Department of Software Engineering Faculty of Information Technology Czech Technical University in Prague Th´akurova 9 160 00 Prague 6 Czech Republic Head of Department: Ing. Michal Valenta, Ph.D. Copyright c 2018 Robert Pergl ii Abstract This habilitation thesis deals with leveraging conceptualisation for harmonising software en- gineering in the context of enterprise engineering. It is based on the research and work done in the Centre of Conceptual Modelling and Implementation (CCMi) at the Department of Software Engineering since its foundation by the author in 2012. Theoretical founda- tions and key methodologies are introduced. Past and ongoing research and applications based on them are then elaborated on; These consist of several layers: (i) Methodological Studies, (ii) Methodological Improvements, (iii) Tooling and (iv) Applications. Achieved results at the levels of bachelor and diploma theses, Ph.D. and post-doc research projects are discussed. Key international collaborations, both academic and from practice are also explained. The core of the thesis then consists of chapters being key already-published, peer-reviewed publications. Keywords: conceptual modelling, ontologies, UML, OntoUML, UFO, BPMN, enterprise engineer- ing, business process management, DEMO, model-driven engineering, models transform- ation, evolvability, normalised systems, software engineering, models execution, workflow, CASE. iii Acknowledgements My deep gratitude belongs to my family, especially my wife Hanka, who devotedly supports me in my endeavours both mentally and practically. I wish all professors to have such a wonderful wife! Starting from the beginnings, I would like to express a deep gratitude to a great evange- list doc. Ing. VojtˇechMerunka, Ph.D. for kindling the spark in me to pursue the academic path and opening many wonderful doors to exciting knowledge and opportunities. I am grateful to late prof. RNDr. Jiˇr´ıVan´ıˇcek,CSc. for opening the golden vault of theoretical foundations of computer science to me and being my kind mentor during uneasy explorations. My sincere thanks go to my superior and dear friend, Ing. Michal Valenta, Ph.D., an exemplar of an enlightened leader, whose support, wisdom, understanding and excitement give a unique soul to our family | the Department of Software Engineering. Similarly, my many thanks go to our first Dean, prof. Ing. Pavel Tvrd´ık,CSc.. The immense support and trust of these two outstanding personalities enabled founding of the Centre for Conceptual Modelling and Implementation and its successes. I am happy and grateful that I found the same trust and support in our current Dean, doc. RNDr. Ing. Marcel Jiˇrina,Ph.D.. An immense merit goes then to the members of CCMi | my colleagues, PhD, master and bachelor students who have done a lot of hard work with me (or without me) on the research and projects; many thanks for their enthusiasm and making CCMi great! I would like to namely thank prof. Dr. Ing. Petr Kroha, CSc., my kind mentor and Ing. ZdenˇekRybola, Ph.D., who tirelessly pushed forward our research on OntoUML for software engineering. My thanks also go to our wonderful department assistant, Mgr. Alena Lib´ansk´a, for all her help, smile and warm heart. And there are many more outstanding people at our Faculty who also have my admiration and thanks, the acknowledgements to whom could easily fill the whole text. Now going abroad, my first thoughts go to prof. Giancarlo Guizzardi, an exceptional scientist and person, whose work has been literally the corner-stone of CCMi. Every meeting with Giancarlo is a great pleasure, every talk is life-changing and eyes-opening. Going further in time, the same thanks for bringing an essential and foundational work v then goes to the \father of enterprise engineering", the esteemed prof. Jan L.G. Dietz, whose kindness and trust in our potential laid foundations in many of our successes and his invitation to the CIAO! Network opened a wonderful world of topics, collaborations and friendships. My thanks goes to the wonderful CIAO! community consisting of excellent scientists and professionals, whose enthusiasm and knowledge changes the world. My special thanks go to prof. Jan Verelst for research inspiration and substantial support and belief in our potential that has brought several trails of intensive and fruitful collaboration. Next special thanks go to Dr. Steven van Kervel, the founder of ForMetis Consultants and a person with a golden human character, whose merit is DEMO embedding in practice; we are honoured he took us to sail that ship with him. A substantial funding of ForMetis to CCMi members will also not be forgotten. And arriving to the \implementation" part, we owe a lot to prof. St´ephaneDucasse, a true visionary and the driving force of the Pharo community, who has been helping and supporting us tremendously. Recently, we also found a nice open community in the body of the ELIXIR infrastruc- ture. Here go many thanks to the Head of ELIXIR Czech Node, RNDr. Jiˇr´ıVondr´aˇsek, Ph.D. for accepting us warmly in the community, opening opportunities of contribution to us and giving us much support in the hard beginnings. Also, this would not happen without Dr. Luiz Olavo Bonino, who had persuaded me that we can bring a value to ELIXIR. My thanks also go to Netherlands to amazing prof. Dr. Barend Mons, a vision- ary now changing the data world to a better, FAIR future, who gave us the opportunity to start leveraging our skills for this great purpose. Here, I must not forget Dr. Rob Hooft | it is a real pleasure to cooperate with a genius mind. Last but not least, I would like to acknowledge a place | a cottage built my grand parents near the village Zloukovice,ˇ where my thoughts flow as nicely as the river Berounka. vi Dedication In loving memory of my dear mother, Ing. Bohdanka Perglov´a(1946-2018). My deepest gratitude. ... vii Contents 1 Foreword of the Author 1 2 Structure of the Thesis 3 I Introduction 7 3 Conceptualisation 9 3.1 Introduction . 9 3.2 Formal Foundations . 10 3.3 Modelling . 12 3.4 Ontologies . 13 3.4.1 UFO and OntoUML . 15 3.4.2 Our Contribution and Applications . 16 3.5 Behaviour Conceptualisation . 16 3.5.1 Our Contribution and Applications . 18 3.6 Conceptual Modelling Notations . 19 3.6.1 UML and OCL . 19 3.6.2 BPMN . 21 4 Enterprise Engineering 25 4.1 The Discipline of Enterprise Engineering . 25 4.2 Enterprise Engineering Theories . 26 4.3 The DEMO Methodology . 28 4.3.1 Methodological Foundations of Enterprise Engineering . 28 4.3.2 DEMO Principles . 28 4.3.3 DEMO Diagrams . 32 4.3.4 Our Contribution and Applications . 33 4.4 Business Object Relation Modelling . 35 viii Contents 4.4.1 The Object-Oriented Paradigm Alignment . 35 4.4.2 BORM Object Behaviour Analysis . 35 4.4.3 Process models in OBA . 36 4.4.4 Our Contribution and Applications . 36 4.5 MEMO . 37 5 The Relation of Conceptualisation and Implementation 41 5.1 The Relation of Conceptual Ontological Models and Their Implementation 41 5.1.1 Model-Driven Engineering . 42 5.1.2 Model Execution . 45 5.2 Conceptualisation in Implementation . 46 5.2.1 Interactive Development . 46 5.2.2 Reverse Engineering . 47 5.2.3 Our Contribution and Applications . 48 6 Evolvability and Normalized Systems 51 6.1 Introduction . 51 6.2 Principles . 51 6.3 Elements . 52 6.4 Applications and Research . 52 6.5 Our Contribution and Applications . 53 6.5.1 Component Software Systems Design . 53 6.5.2 Conceptual Modelling of Precise Technical Systems . 54 6.5.3 Evolvability of Documents . 55 6.5.4 Applying the Functional Paradigm for the Normalized Systems Ex- panders . 55 6.5.5 Normalized Systems Conceptual Modeller . 55 7 Software Implementation 57 7.1 The Discipline of Software Engineering . 57 7.2 The Object-Oriented Paradigm . 58 7.2.1 Pharo . 59 7.2.2 Our Contribution and Applications . 60 7.3 The Functional Paradigm . 62 7.3.1 Theoretical Foundations . 62 7.3.2 Practical Relevance . 62 7.3.3 Interactive Development . 63 7.3.4 Challenges of FP in Software Engineering . 63 7.3.5 Our Contribution and Applications . 64 8 Tooling 67 8.1 Computer-Aided Engineering Tools . 67 8.2 Execution Tools . 67 ix Contents 8.2.1 Business Process Management Tools . 67 8.2.2 Workflow Management Systems . 69 8.2.3 Our Contribution and Applications . 70 8.3 A Conceptual Modelling Platform . 71 8.3.1 Our Contribution and Applications: OpenCASE/OpenCABE . 72 8.3.2 Our Contribution and Applications: DynaCASE/OpenPonk . 72 9 Final Thoughts 75 II Chapters 77 10 Supporting Enterprise IS Modelling using Ontological Analysis 79 11 Instance-Level Modelling and Simulation Revisited 97 12 Towards OntoUML for Software Engineering: From Domain Ontology to Implementation Model 115 13 Towards Formal Foundations for BORM ORD Validation and Simu- lation 131 14 The Prefix Machine | a Formal Foundation for the BORM OR Dia- grams Validation and Simulation 141 15 Revisiting the BORM OR Diagram Composition Pattern 161 16 Empirical Study of Applying the DEMO Method for Improving BPMN Process Models in Academic Environment 175 17 Converting DEMO PSI Transaction Pattern into BPMN: A Complete Method 185 18 Modelling and Prototyping of Business Applications Based on Multi- level Domain-Specific Language 203 19 Analysing Functional Paradigm Concepts: The JavaScript Case 223 20 OpenCASE | A Tool for Ontology-Centred Conceptual Modelling 235 21 BORM-II and UML as Accessibility Process in Knowledge and Busi- ness Modelling 245 22 The OpenPonk Modeling Platform 253 x Contents IIIReferences 265 Bibliography 267 Relevant Publications Authored and Co-Authored 283 Relevant Supervised Bachelor's and Master's Theses 289 Relevant Reviewed Bachelor's and Master's Theses 293 xi Chapter 1 Foreword of the Author Software engineering is an ultimate human design endeavour.