software engineering & business process management: …€¦ · business process management:...

29
Software Engineering & Business Process Management: Interpretatio, Imitatio, Aemulatio Prof.dr.ir. Hajo Reijers 1st IEEE International Workshop on Communicating Business Process and Software Models, September 23 rd 2013

Upload: others

Post on 20-Oct-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

  • Software Engineering & Business Process Management: Interpretatio, Imitatio, Aemulatio Prof.dr.ir. Hajo Reijers 1st IEEE International Workshop on Communicating Business Process and Software Models, September 23rd 2013

  • Some context

    • Arno Reiff. “Interpretatio, imitatio, aemulatio: Begriff und Vorstellung literarischer Abha ̈ngigkeit bei den Ro ̈mern”, dissertation, Universita ̈t zu Köln, 1959.

    PAGE 2 26-09-2013

    Pindarus (522 BC – 443 BC) Horatius (65 BC – 8 BC) Vergilius (70 BC – 19 BC) Homerus (around 850 BC)

  • Software programs & business processes

    • Design-time vs. run-time

    • Information processing

    • Compositional structure

    • Humans in vs. out-of-the-loop

    • Artifacts: design, maintenance, sense-making PAGE 3 26-09-2013

    I. Vanderfeesten, H.A. Reijers, and W.M.P. van der Aalst. Evaluating Workflow Process Designs using Cohesion and Coupling Metrics. Computers in Industry, 59(5), 420-437, 2008.

  • Some reflections

    Software engineering Business process management

    PAGE 4 26-09-2013 Note: in neither domain are models the only or even the main artifact.

  • Design principles

    PAGE 5 26-09-2013

  • Design principles

    Loose coupling, tight cohesion

    PAGE 6 26-09-2013

  • Law of Demeter:

    1. Your method can call other methods in its class directly

    2. Your method can call methods on its own fields directly (but not on the fields' fields)

    3. When your method takes parameters, your method can call methods on those parameters directly.

    4. When your method creates local objects, that method can call methods on the local objects.

    Translated:

    1. You can play with yourself.

    2. You can play with your own toys (but you can't take them apart)

    3. You can play with toys that were given to you.

    4. And you can play with toys you've made yourself.

    PAGE 7 26-09-2013 http://c2.com/cgi/wiki?LawOfDemeter

    Design principles

  • PAGE 8 26-09-2013

    Design principles

  • PAGE 9 26-09-2013

    Design principles

  • PAGE 10 26-09-2013

    Design principles

  • Design principles

    PAGE 11 26-09-2013

  • PAGE 12 26-09-2013

    Design principles

  • “Cyclomatic complexity (CC), another widely used industry indicator of software quality, represents the number of independent paths through the program source code. The CC number for individual modules or units can be calculated using one of several commercial tools. Best industry practice seeks to limit the complexity of individual code units to 10 or less because software modules having a CC greater than 10 have a higher risk of defects and a higher risk of "bad fixes" in which attempts to correct a defect result in new defects being inadvertently created. Typically. CC values exceeding 20 should be considered as alarming. While the percent of UCMS software modules with a CC greater than 10 is small, about 1,600 modules have a CC value greater than 20 which indicates a moderate to high risk. Of those with a CC greater than 20, almost 100 have a value of 50 or greater which means that they are not testable in a practical sense. The discovery of defects in User Acceptance Test may be, at least in part, the result of the high CC factor in these modules.”

    PAGE 13 26-09-2013

    C. Bennett et al. (2013). Independent Assessment of the Commonwealth of Pennsylvania Unemployment Compensation Modernization System Program (UCMS). SPECIAL REPORT CMU/SEI 2013-SR-020 - RESTRICTED USE

    Design principles

    What is the scientific basis for this?

    “CC can be said to have absolutely no explanatory power of its own”

    J. Software Engineering & Applications, 2009, 2: 137-143 doi:10.4236/jsea.2009.23020

  • Correctness

    PAGE 14 26-09-2013

  • Correctness

    PAGE 15 26-09-2013

  • Correctness

    PAGE 16 26-09-2013

  • Correctness

    PAGE 17 26-09-2013

  • / name of department PAGE 18 26-09-2013

    Correctness

  • Correctness

    PAGE 19 26-09-2013

    i o

    Liveness and boundedness of short-circuited net

    ⇔ Soundness of net

  • Correctness

    PAGE 20 26-09-2013

    W.M.P. van der Aalst, K.M. van Hee, A.H. ter Hofstede, N/ Sidorova,, H.M.W. Verbeek, M. Voorhoeve, M., & M.T. Wynn. (2011). Soundness of workflow nets: classification, decidability, and analysis. Formal Aspects of Computing, 23(3), 333-363.

  • Correctness

    PAGE 21 26-09-2013

    S. Rinderle, M. Reichert, P. Dadam. Correctness Criteria for Dynamic Changes in Workflow Systems – a Survey. Data and Knowledge Engineering, Special Issue on Advances in Business Process Management 50(1):9–34 (2004)

  • Experimentation

    PAGE 22 26-09-2013

  • Experimentation

    PAGE 23 26-09-2013

  • Experimentation

    / name of department PAGE 24 26-09-2013

  • Experimentation

    • Factor and factor levels • Subjects • Objects • Tasks • Response variables • Hypotheses • Parameters • Design • Instrumentation • Data collection

    PAGE 25 26-09-2013

  • Experimentation

    PAGE 26 26-09-2013

  • Experimentation

    PAGE 27 26-09-2013

    a randomized 2x2 factorial experiment

    P. Pichler, B. Weber, S. Zugal, J. Pinggera, J. Mendling and H.A. Reijers. Imperative versus Declarative Process Modeling Languages: An Empirical Investigation. In F. Daniel, K. Barkaoui and S. Dustdar, editors, Proceedings of the BPM Workshops 2011, Lecture Notes in Business Information Processing 99, 383–394, 2012.

  • Experimentation

    “Model interpretation occurs in two stages (Newell & Simon, 1972), these being perceptual processing (seeing) and cognitive processing (understanding). During perceptual processing, computational offloading effects can occur that can aid the subsequent cognitive processing. Model elements that can be perceptually discriminated reduce the processing burden of the cognitive system because the parsing of model elements to different semantic components is performed by the perceptual sensors (Treisman & Gelade, 1980). Several studies suggest that perceptual processing largely explains differences in the effectiveness of the subsequent cognitive processes (Larkin & Simon, 1987; Petre, 1995). These considerations suggest that the perceptual discriminability effect of an explicit visual syntax of Gateway constructs will be stronger when model complexity is increased.”

    PAGE 28 26-09-2013

    Recker, J. (2012). Empirical investigation of the usefulness of Gateway constructs in process models. European Journal of Information Systems. doi:10.1057/ejis.2012.50

    Exemplary research where theory feeds hypotheses and where results are

    assessed on theoretical contribution.

  • Summary

    • Illustration of areas where: • SE clearly source of inspiration for BPM • SE and BPM go head-to-head • BPM improves upon SE

    • It sounds like a nice marriage.

    Hajo Reijers [email protected] http://www.reijers.com Twitter: @profBPM

    Software Engineering & �Business Process Management:�Interpretatio, Imitatio, Aemulatio��Some contextSoftware programs & business processesSome reflectionsSlide Number 5Design principlesDesign principlesDesign principlesDesign principlesDesign principlesDesign principlesDesign principlesDesign principlesSlide Number 14CorrectnessCorrectnessCorrectnessCorrectnessCorrectnessCorrectnessCorrectnessSlide Number 22Experimentation ExperimentationExperimentationExperimentationExperimentationExperimentationSummary