mdh.sePublications
Change search
Link to record
Permanent link

Direct link
BETA
Publications (10 of 75) Show all publications
Ciccozzi, F., Tichy, M., Vangheluwe, H. & Weyns, D. (2019). Blended modelling - What, why and how. In: Proceedings - 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion, MODELS-C 2019: . Paper presented at 22nd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion, MODELS-C 2019, 15 September 2019 through 20 September 2019 (pp. 425-430). Institute of Electrical and Electronics Engineers Inc.
Open this publication in new window or tab >>Blended modelling - What, why and how
2019 (English)In: Proceedings - 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion, MODELS-C 2019, Institute of Electrical and Electronics Engineers Inc. , 2019, p. 425-430Conference paper, Published paper (Refereed)
Abstract [en]

Empirical studies indicate that user experience can significantly be improved in model-driven engineering. Blended modelling aims at mitigating this by enabling users to interact with a single model through different notations. Blended modelling contributes to various modelling qualities, including comprehensibility, analysability, and acceptability. In this paper, we define the notion of blended modelling and propose a set of dimensions that characterise blended modelling. The dimensions are grouped in two classes: user-oriented dimensions and realisation-oriented dimensions. Each dimension describes a facet that is relevant to blended modelling together with its domain (i.e., the range of values for that dimension). The dimensions offer a basic vocabulary to support tool developers with making well-informed design decisions as well as users to select appropriate tools and configure them according to the needs at hand. We illustrate how the dimensions apply to different cases relying on our experience with blended modelling. We discuss the impact of blended modelling on usability and user experience and sketch metrics to measure it. Finally, we outline a number of core research directions in this increasingly important modelling area.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2019
Keywords
Abstract syntax, Blended modelling, Concrete syntax, Modelling, Notations, Tools, User experience, Models, Syntactics, Design decisions, Empirical studies, Model-driven Engineering, Single models, C (programming language)
National Category
Computer and Information Sciences
Identifiers
urn:nbn:se:mdh:diva-46530 (URN)10.1109/MODELS-C.2019.00068 (DOI)2-s2.0-85075926513 (Scopus ID)9781728151250 (ISBN)
Conference
22nd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion, MODELS-C 2019, 15 September 2019 through 20 September 2019
Projects
MOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applicationsMINEStrA: Model Integration for Early Simulation and AnalysisHERO: Heterogeneous systems - software-hardware integration
Available from: 2019-12-17 Created: 2019-12-17 Last updated: 2019-12-19Bibliographically approved
Burgueño, L., Ciccozzi, F., Famelis, M., Kappel, G., Lambers, L., Mosser, S., . . . Wimmer, M. (2019). Contents for a Model-Based Software Engineering Body of Knowledge. Software and Systems Modeling, 18(6), 3193-3205
Open this publication in new window or tab >>Contents for a Model-Based Software Engineering Body of Knowledge
Show others...
2019 (English)In: Software and Systems Modeling, ISSN 1619-1366, E-ISSN 1619-1374, Vol. 18, no 6, p. 3193-3205Article in journal (Refereed) Published
Abstract [en]

Although Model-Based Software Engineering (MBE) is a widely accepted Software Engineering (SE) discipline, no agreed upon core set of concepts and practices (i.e., a Body of Knowledge) has been defined for it yet. With the goals of characterizing the contents of the MBE discipline, promoting a global consistent view of it, clarifying its scope with regard to other SE disciplines, and defining a foundation for the development of educational curricula on MBE, this paper proposes the contents for a Body of Knowledge for MBE. We also describe the methodology that we have used to come up with the proposed list of contents, as well as the results of a survey study that we conducted to sound out the opinion of the community on the importance of the proposed topics and their level of coverage in existing SE curricula.

Keywords
Model-Based Software EngineeringBodyof KnowledgeCore ConceptsEducation
National Category
Engineering and Technology Computer Systems
Identifiers
urn:nbn:se:mdh:diva-45051 (URN)10.1007/s10270-019-00746-9 (DOI)000485320600002 ()2-s2.0-85069478287 (Scopus ID)
Projects
MOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applicationsMINEStrA: Model Integration for Early Simulation and AnalysisHERO: Heterogeneous systems - software-hardware integration
Available from: 2019-08-22 Created: 2019-08-22 Last updated: 2019-12-12Bibliographically approved
Addazi, L., Ciccozzi, F. & Lisper, B. (2019). Executable modelling for highly parallel accelerators. In: Proceedings - 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion, MODELS-C 2019: . Paper presented at 22nd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion, MODELS-C 2019, 15 September 2019 through 20 September 2019 (pp. 318-321). Institute of Electrical and Electronics Engineers Inc., Article ID 8904827.
Open this publication in new window or tab >>Executable modelling for highly parallel accelerators
2019 (English)In: Proceedings - 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion, MODELS-C 2019, Institute of Electrical and Electronics Engineers Inc. , 2019, p. 318-321, article id 8904827Conference paper, Published paper (Refereed)
Abstract [en]

High-performance embedded computing is developing rapidly since applications in most domains require a large and increasing amount of computing power. On the hardware side, this requirement is met by the introduction of heterogeneous systems, with highly parallel accelerators that are designed to take care of the computation-heavy parts of an application. There is today a plethora of accelerator architectures, including GPUs, many-cores, FPGAs, and domain-specific architectures such as AI accelerators. They all have their own programming models, which are typically complex, low-level, and involve explicit parallelism. This yields error-prone software that puts the functional safety at risk, unacceptable for safety-critical embedded applications. In this position paper we argue that high-level executable modelling languages tailored for parallel computing can help in the software design for high performance embedded applications. In particular, we consider the data-parallel model to be a suitable candidate, since it allows very abstract parallel algorithm specifications free from race conditions. Moreover, we promote the Action Language for fUML (and thereby fUML) as suitable host language.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2019
Keywords
Alf, Data-parallelism, Executable models, FUML, High-performance computing, Modelling languages, Parallel programming, UML, Application programs, Modeling languages, Program processors, Safety engineering, Software design, Accelerator architectures, Data parallelism, Domain specific architectures, Embedded application, Executable model, Heterogeneous systems, High performance computing, C (programming language)
National Category
Electrical Engineering, Electronic Engineering, Information Engineering
Identifiers
urn:nbn:se:mdh:diva-46529 (URN)10.1109/MODELS-C.2019.00049 (DOI)2-s2.0-85075931548 (Scopus ID)9781728151250 (ISBN)
Conference
22nd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion, MODELS-C 2019, 15 September 2019 through 20 September 2019
Available from: 2019-12-17 Created: 2019-12-17 Last updated: 2019-12-19Bibliographically approved
Ciccozzi, F., Malavolta, I. & Selic, B. (2019). Execution of UML models: a systematic review of research and practice. Software and Systems Modeling, -3(-), 2313-2360
Open this publication in new window or tab >>Execution of UML models: a systematic review of research and practice
2019 (English)In: Software and Systems Modeling, ISSN 1619-1366, E-ISSN 1619-1374, Vol. -3, no -, p. 2313-2360Article in journal (Refereed) Published
Abstract [en]

Several research efforts from different areas have focused on the execution of UML models, resulting in a diverse and complex scientific body of knowledge. With this work, we aim at identifying, classifying, and evaluating existing solutions for the execution of UML models. We conducted a systematic review in which we selected 63 research studies and 19 tools among over 5400 entries by applying a systematic search and selection process. We defined a classification framework for characterizing solutions for UML model execution, and we applied it to the 82 selected entries. Finally, we analyzed and discussed the obtained data. From the analyzed data, we drew the following conclusions: (i) There is a growing scientific interest on UML model execution; (ii) solutions providing translational execution clearly outnumber interpretive solutions; (iii) model-level debugging is supported in very few cases; (iv) only a few research studies provide evidence of industrial use, with very limited empirical evaluations; (v) the most common limitation deals with coverage of the UML language. Based on these observations, we discuss potential research challenges and implications for the future of UML model execution. Our results provide a concise overview of states of the art and practice for UML model execution intended for use by both researchers and practitioners.

Keywords
systematic review, uml, model execution
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-38967 (URN)10.1007/s10270-018-0675-4 (DOI)000468996100033 ()2-s2.0-85045137014 (Scopus ID)
Projects
MOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applications
Available from: 2018-04-10 Created: 2018-04-10 Last updated: 2019-06-18Bibliographically approved
Jongeling, R., Ciccozzi, F., Cicchetti, A. & Carlson, J. (2019). Lightweight Consistency Checking for Agile Model-Based Development in Practice. Journal of Object Technology, 18(2)
Open this publication in new window or tab >>Lightweight Consistency Checking for Agile Model-Based Development in Practice
2019 (English)In: Journal of Object Technology, ISSN 1660-1769, E-ISSN 1660-1769, Vol. 18, no 2Article in journal (Refereed) Published
Abstract [en]

In model-based development projects, models at different abstraction levels capture different aspects of a software system, e.g., specification or design. Inconsistencies between these models can cause inefficient and incorrect development. A tool-based framework to assist developers creating and maintaining models conforming to different languages (i.e. heterogeneous models) and consistency between them is not only important but also much needed in practice. In this work, we focus on assisting developers bringing about multi-view consistency in the context of agile model-based development, through frequent, lightweight consistency checks across views and between heterogeneous models. The checks are lightweight in the sense that they are easy to create, edit, use and maintain, and since they find inconsistencies but do not attempt to automatically resolve them. With respect to ease of use, we explicitly separate the two main concerns in defining consistency checks, being (i) which modelling elements across heterogeneous models should be consistent with each other and (ii) what constitutes consistency between them. We assess the feasibility and illustrate the potential usefulness of our consistency checking approach, from an industrial agile model-based development point-of-view, through a proof-of-concept implementation on a sample project leveraging models expressed in SysML and Simulink. A continuous integration pipeline hosts the initial definition and subsequent execution of consistency checks, it is also the place where the user can view results of consistency checks and reconfigure them.

National Category
Computer and Information Sciences
Identifiers
urn:nbn:se:mdh:diva-44918 (URN)10.5381/jot.2019.18.2.a11 (DOI)000473336200012 ()
Available from: 2019-07-18 Created: 2019-07-18 Last updated: 2019-07-18Bibliographically approved
Bosnic, I., Ciccozzi, F., Crnkovic, I., Cavrak, I., Di Nitto, E., Mirandola, R. & Zagar, M. (2019). Managing diversity in distributed software development education: a longitudinal case study. ACM Transactions on Computing Education, 19(2)
Open this publication in new window or tab >>Managing diversity in distributed software development education: a longitudinal case study
Show others...
2019 (English)In: ACM Transactions on Computing Education, ISSN 1946-6226, E-ISSN 1946-6226, Vol. 19, no 2Article in journal (Refereed) Published
Abstract [en]

Teaching Distributed Software Development with real distributed settings is a challenging and rewarding task. Distributed courses are idiosyncratically more challenging than standard local courses.We have experienced this during our distributed course, which has been run for 14 consecutive years. In this paper, we present and analyze the emerging diversities specific to distributed project-based courses. We base our arguments on our experience and we exploit a three-layered distributed course model, which we use to analyze several course elements throughout the 14-years lifetime of our distributed project-based course. In particular, we focus on the changes that the course underwent throughout the years, combining findings obtained from the analyzed data with our own teaching perceptions. Additionally, we propose insights on how to manage the various diversity aspects.

Keywords
software engineering education, collaborative learning, distributed software development
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-38961 (URN)10.1145/3218310 (DOI)000458016600004 ()2-s2.0-85059869983 (Scopus ID)
Projects
MOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applications
Note

Special Issue on Global Software Engineering Education TOCE

Available from: 2018-04-10 Created: 2018-04-10 Last updated: 2019-04-10Bibliographically approved
Cicchetti, A., Ciccozzi, F. & Pierantonio, A. (2019). Multi-view approaches for software and system modelling: a systematic literature review. Software and Systems Modeling, 18(6), 3207-3233
Open this publication in new window or tab >>Multi-view approaches for software and system modelling: a systematic literature review
2019 (English)In: Software and Systems Modeling, ISSN 1619-1366, E-ISSN 1619-1374, Vol. 18, no 6, p. 3207-3233Article, review/survey (Refereed) Published
Abstract [en]

Over the years, a number of approaches have been proposed on the description of systems and software in terms of multiple views represented by models. This modelling branch, so-called multi-view software and system modelling, praises a differentiated and complex scientific body of knowledge. With this study, we aimed at identifying, classifying, and evaluating existing solutions for multi-view modelling of software and systems. To this end, we conducted a systematic literature review of the existing state of the art related to the topic. More specifically, we selected and analysed 40 research studies among over 8600 entries. We defined a taxonomy for characterising solutions for multi-view modelling and applied it to the selected studies. Lastly, we analysed and discussed the data extracted from the studies. From the analysed data, we made several observations, among which: (i) there is no uniformity nor agreement in the terminology when it comes to multi-view artefact types, (ii) multi-view approaches have not been evaluated in industrial settings and (iii) there is a lack of support for semantic consistency management and the community does not appear to consider this as a priority. The study results provide an exhaustive overview of the state of the art for multi-view software and systems modelling useful for both researchers and practitioners.

Keywords
Model-driven engineering, Multi-view modelling, Viewpoints, Views, Consistency
National Category
Computer and Information Sciences
Identifiers
urn:nbn:se:mdh:diva-45372 (URN)10.1007/s10270-018-00713-w (DOI)000485320600003 ()2-s2.0-85061733132 (Scopus ID)
Available from: 2019-10-03 Created: 2019-10-03 Last updated: 2019-10-11Bibliographically approved
Cavrak, I., Bosnic, I., Ciccozzi, F. & Mirandola, R. (2019). Resilience of distributed student teams to stress factors: A longitudinal case-study. Information and Software Technology, 114, 258-274
Open this publication in new window or tab >>Resilience of distributed student teams to stress factors: A longitudinal case-study
2019 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 114, p. 258-274Article in journal (Refereed) Published
Abstract [en]

Context: Teaching global software engineering is continuously evolving and improving to prepare future software engineers adequately. Geographically distributed work in project-oriented software development courses is both demanding and rewarding for student teams, who are susceptible to various risks stemming from different internal and external factors, being the sources of stress and impacting team performance. Objective: In this paper, we analyze the resilience of teams of students working in a geographically fully distributed setting. Resilience is analyzed in relation to two representative stress factors: non-contributing team members and changes to customer project requirements. We also reason on team collaboration patterns and analyze potential dependencies among these collaboration patterns, team resilience and stress factors. Method: We conduct a longitudinal case-study over five years on our Distributed Software Development (DSD) course. Based on empirical data, we study team resilience to two stress factors by observing their impact on process and product quality aspects of team performance. The same performance aspects are studied for identified collaboration patterns, and bidirectional influence between patterns and resilience is investigated. Results: Teams with up to two non-contributing members experience graceful degradation of performance indicators. A large number of non-contributing students almost guarantees the occurrence of educationally undesirable collaboration patterns. Exposed to requirements change stress, less resilient teams tend to focus on delivering the functional product rather than retaining a proper development process. Conclusions: Practical recommendations to be applied in contexts similar to our case have been provided at the end of the study. They include suggestions to mitigate the sources of stress, for example, by careful planning the team organization and balancing the number of regular and exchange students, or by discussing the issue of changing requirements with the external customers before the start of the project.

Place, publisher, year, edition, pages
ELSEVIER, 2019
Keywords
Resilience, Stress factors, Global software engineering education, Collaboration patterns
National Category
Computer and Information Sciences
Identifiers
urn:nbn:se:mdh:diva-45109 (URN)10.1016/j.infsof.2019.05.011 (DOI)000480669200016 ()2-s2.0-85066427653 (Scopus ID)
Available from: 2019-08-29 Created: 2019-08-29 Last updated: 2019-10-11Bibliographically approved
Ciccozzi, F., Hochgeschwender, N., Malavolta, I. & Wortmann, A. (Eds.). (2019). RoSE 2019 Organizing Committee. Paper presented at 2nd IEEE/ACM International Workshop on Robotics Software Engineering, RoSE 2019; Montreal; Canada; 27 May 2019 through. Institute of Electrical and Electronics Engineers Inc., Article ID 8823780.
Open this publication in new window or tab >>RoSE 2019 Organizing Committee
2019 (English)Conference proceedings (editor) (Refereed)
Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2019
National Category
Electrical Engineering, Electronic Engineering, Information Engineering
Identifiers
urn:nbn:se:mdh:diva-45832 (URN)10.1109/RoSE.2019.000-1 (DOI)2-s2.0-85073162016 (Scopus ID)
Conference
2nd IEEE/ACM International Workshop on Robotics Software Engineering, RoSE 2019; Montreal; Canada; 27 May 2019 through
Available from: 2019-10-25 Created: 2019-10-25 Last updated: 2019-12-18Bibliographically approved
Masud, A. N. & Ciccozzi, F. (2019). Towards constructing the SSA form using reaching definitions over dominance frontiers. In: Proceedings - 19th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2019: . Paper presented at 19th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2019; Cleveland; United States; 30 September 2019 through 1 October 2019 (pp. 23-33). Institute of Electrical and Electronics Engineers Inc.
Open this publication in new window or tab >>Towards constructing the SSA form using reaching definitions over dominance frontiers
2019 (English)In: Proceedings - 19th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2019, Institute of Electrical and Electronics Engineers Inc. , 2019, p. 23-33Conference paper, Published paper (Refereed)
Abstract [en]

The Static Single Assignment (SSA) form is an intermediate representation used for the analysis and optimization of programs in modern compilers. The φ-function placement is the most computationally expensive part of converting any program into its SSA form. The most widely-used φ-function placement algorithms are based on computing dominance frontiers. However, this kind of algorithms works under the limiting assumption that all variables are defined at the beginning of the program, which is not the case for local variables. In this paper, we introduce an innovative algorithm based on computing reaching definitions, only assuming that global variables and formal parameters are defined at the beginning of the program. We implemented our algorithm and compared it to a well-known dominance frontiers-based algorithm in the Clang/LLVM compiler framework by performing experiments on a benchmarking suite for Perl. The results of our experiments show that, besides a few computationally expensive cases, our algorithm is fairly efficient, and most notably it produces up to 169% and on an average 74% fewer φ-functions than the reference dominance frontiers-based algorithm. 

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2019
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-46796 (URN)10.1109/SCAM.2019.00012 (DOI)2-s2.0-85077814605 (Scopus ID)9781728149370 (ISBN)
Conference
19th IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2019; Cleveland; United States; 30 September 2019 through 1 October 2019
Available from: 2020-01-23 Created: 2020-01-23 Last updated: 2020-01-23Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-0401-1036

Search in DiVA

Show all publications