TY - JOUR A1 - Leopold, Henrik A1 - Mendling, Jan A1 - Guenther, Oliver T1 - Learning from Quality Issues of BPMN Models from Industry JF - IEEE software N2 - Many organizations use business process models to document business operations and formalize business requirements in software-engineering projects. The Business Process Model and Notation (BPMN), a specification by the Object Management Group, has evolved into the leading standard for process modeling. One challenge is BPMN's complexity: it offers a huge variety of elements and often several representational choices for the same semantics. This raises the question of how well modelers can deal with these choices. Empirical insights into BPMN use from the practitioners' perspective are still missing. To close this gap, researchers analyzed 585 BPMN 2.0 process models from six companies. They found that split and join representations, message flow, the lack of proper model decomposition, and labeling related to quality issues. They give five specific recommendations on how to avoid these issues. KW - process model quality KW - modeling guidelines KW - Business Process Model and Notation KW - BPMN KW - industry study KW - software engineering KW - software development Y1 - 2016 U6 - https://doi.org/10.1109/MS.2015.81 SN - 0740-7459 SN - 1937-4194 VL - 33 SP - 26 EP - 33 PB - Inst. of Electr. and Electronics Engineers CY - Los Alamitos ER - TY - JOUR A1 - Rein, Patrick A1 - Ramson, Stefan A1 - Lincke, Jens A1 - Felgentreff, Tim A1 - Hirschfeld, Robert T1 - Group-Based Behavior Adaptation Mechanisms in Object-Oriented Systems JF - IEEE software N2 - Dynamic and distributed systems require behavior adaptations for groups of objects. Group-based behavior adaptation mechanisms scope adaptations to objects matching conditions beyond class membership. The specification of groups can be explicit or implicit. KW - group-based behavior adaptation KW - lively groups KW - ContextErlang KW - entity-component-system KW - predicated generic functions KW - active layers KW - reactive object queries KW - context groups KW - implied methods KW - object-oriented languages KW - software engineering KW - software development KW - contextual-variability modeling Y1 - 2017 U6 - https://doi.org/10.1109/MS.2017.4121224 SN - 0740-7459 SN - 1937-4194 VL - 34 IS - 6 SP - 78 EP - 82 PB - Inst. of Electr. and Electronics Engineers CY - Los Alamitos ER - TY - JOUR A1 - Mattis, Toni A1 - Beckmann, Tom A1 - Rein, Patrick A1 - Hirschfeld, Robert T1 - First-class concepts BT - Reified architectural knowledge beyond dominant decompositions JF - Journal of object technology : JOT / ETH Zürich, Department of Computer Science N2 - Ideally, programs are partitioned into independently maintainable and understandable modules. As a system grows, its architecture gradually loses the capability to accommodate new concepts in a modular way. While refactoring is expensive and not always possible, and the programming language might lack dedicated primary language constructs to express certain cross-cutting concerns, programmers are still able to explain and delineate convoluted concepts through secondary means: code comments, use of whitespace and arrangement of code, documentation, or communicating tacit knowledge.
Secondary constructs are easy to change and provide high flexibility in communicating cross-cutting concerns and other concepts among programmers. However, such secondary constructs usually have no reified representation that can be explored and manipulated as first-class entities through the programming environment.
In this exploratory work, we discuss novel ways to express a wide range of concepts, including cross-cutting concerns, patterns, and lifecycle artifacts independently of the dominant decomposition imposed by an existing architecture. We propose the representation of concepts as first-class objects inside the programming environment that retain the capability to change as easily as code comments. We explore new tools that allow programmers to view, navigate, and change programs based on conceptual perspectives. In a small case study, we demonstrate how such views can be created and how the programming experience changes from draining programmers' attention by stretching it across multiple modules toward focusing it on cohesively presented concepts. Our designs are geared toward facilitating multiple secondary perspectives on a system to co-exist in symbiosis with the original architecture, hence making it easier to explore, understand, and explain complex contexts and narratives that are hard or impossible to express using primary modularity constructs. KW - software engineering KW - modularity KW - exploratory programming KW - program KW - comprehension KW - remodularization KW - architecture recovery Y1 - 2022 U6 - https://doi.org/10.5381/jot.2022.21.2.a6 SN - 1660-1769 VL - 21 IS - 2 SP - 1 EP - 15 PB - ETH Zürich, Department of Computer Science CY - Zürich ER - TY - JOUR A1 - Ullrich, André A1 - Teichmann, Malte A1 - Gronau, Norbert T1 - Fast trainable capabilities in software engineering-skill development in learning factories JF - Ji suan ji jiao yu = Computer Education / Qing hua da xue N2 - The increasing demand for software engineers cannot completely be fulfilled by university education and conventional training approaches due to limited capacities. Accordingly, an alternative approach is necessary where potential software engineers are being educated in software engineering skills using new methods. We suggest micro tasks combined with theoretical lessons to overcome existing skill deficits and acquire fast trainable capabilities. This paper addresses the gap between demand and supply of software engineers by introducing an actionoriented and scenario-based didactical approach, which enables non-computer scientists to code. Therein, the learning content is provided in small tasks and embedded in learning factory scenarios. Therefore, different requirements for software engineers from the market side and from an academic viewpoint are analyzed and synthesized into an integrated, yet condensed skills catalogue. This enables the development of training and education units that focus on the most important skills demanded on the market. To achieve this objective, individual learning scenarios are developed. Of course, proper basic skills in coding cannot be learned over night but software programming is also no sorcery. KW - learning factory KW - programming skills KW - software engineering KW - training Y1 - 2021 U6 - https://doi.org/10.16512/j.cnki.jsjjy.2020.12.002 SN - 1672-5913 IS - 12 SP - 2 EP - 10 PB - [Verlag nicht ermittelbar] CY - Bei jing shi ER -