mdh.sePublikationer
Ändra sökning
Länk till posten
Permanent länk

Direktlänk
BETA
Publikationer (10 of 70) Visa alla publikationer
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
Öppna denna publikation i ny flik eller fönster >>Execution of UML models: a systematic review of research and practice
2019 (Engelska)Ingår i: Software and Systems Modeling, ISSN 1619-1366, E-ISSN 1619-1374, Vol. -3, nr -, s. 2313-2360Artikel i tidskrift (Refereegranskat) 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.

Nyckelord
systematic review, uml, model execution
Nationell ämneskategori
Datorsystem
Identifikatorer
urn:nbn:se:mdh:diva-38967 (URN)10.1007/s10270-018-0675-4 (DOI)000468996100033 ()2-s2.0-85045137014 (Scopus ID)
Projekt
MOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applications
Tillgänglig från: 2018-04-10 Skapad: 2018-04-10 Senast uppdaterad: 2019-06-18Bibliografiskt granskad
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)
Öppna denna publikation i ny flik eller fönster >>Lightweight Consistency Checking for Agile Model-Based Development in Practice
2019 (Engelska)Ingår i: Journal of Object Technology, ISSN 1660-1769, E-ISSN 1660-1769, Vol. 18, nr 2Artikel i tidskrift (Refereegranskat) 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.

Nationell ämneskategori
Data- och informationsvetenskap
Identifikatorer
urn:nbn:se:mdh:diva-44918 (URN)10.5381/jot.2019.18.2.a11 (DOI)000473336200012 ()
Tillgänglig från: 2019-07-18 Skapad: 2019-07-18 Senast uppdaterad: 2019-07-18Bibliografiskt granskad
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)
Öppna denna publikation i ny flik eller fönster >>Managing diversity in distributed software development education: a longitudinal case study
Visa övriga...
2019 (Engelska)Ingår i: ACM Transactions on Computing Education, ISSN 1946-6226, E-ISSN 1946-6226, Vol. 19, nr 2Artikel i tidskrift (Refereegranskat) 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.

Nyckelord
software engineering education, collaborative learning, distributed software development
Nationell ämneskategori
Datorsystem
Identifikatorer
urn:nbn:se:mdh:diva-38961 (URN)10.1145/3218310 (DOI)000458016600004 ()2-s2.0-85059869983 (Scopus ID)
Projekt
MOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applications
Anmärkning

Special Issue on Global Software Engineering Education TOCE

Tillgänglig från: 2018-04-10 Skapad: 2018-04-10 Senast uppdaterad: 2019-04-10Bibliografiskt granskad
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
Öppna denna publikation i ny flik eller fönster >>Resilience of distributed student teams to stress factors: A longitudinal case-study
2019 (Engelska)Ingår i: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 114, s. 258-274Artikel i tidskrift (Refereegranskat) 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.

Ort, förlag, år, upplaga, sidor
ELSEVIER, 2019
Nyckelord
Resilience, Stress factors, Global software engineering education, Collaboration patterns
Nationell ämneskategori
Data- och informationsvetenskap
Identifikatorer
urn:nbn:se:mdh:diva-45109 (URN)10.1016/j.infsof.2019.05.011 (DOI)000480669200016 ()
Tillgänglig från: 2019-08-29 Skapad: 2019-08-29 Senast uppdaterad: 2019-08-29Bibliografiskt granskad
Granholm, A. & Ciccozzi, F. (2018). A Generic Approach to Efficiently Parallelize Legacy Sequential Software. In: 15th International Conference on Information Technology : New Generations ITNG'18: . Paper presented at 15th International Conference on Information Technology : New Generations ITNG'18, 16 Apr 2018, Las Vegas, United States (pp. 451-458).
Öppna denna publikation i ny flik eller fönster >>A Generic Approach to Efficiently Parallelize Legacy Sequential Software
2018 (Engelska)Ingår i: 15th International Conference on Information Technology : New Generations ITNG'18, 2018, s. 451-458Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

Multi-core processing units have been the answer to ever increasing demand of computational power of modern software. One of the main issues with the adoption of new hardware is portability of legacy software. In this specific case, in order for legacy sequential software to maximize the exploitation of the computational benefits brought by multi-core processors, it has to undergo a parallelization effort. Although there is a common agreement and well-specified support for parallelizing sequential algorithms, there is still a lack in supporting software engineers in identifying and assessing parallelization potentials in a legacy sequential application. In this work we provide a generic parallelization approach which supports the engineering in maximizing performance gain through parallelization while minimizing the cost of the parallelization effort. We evaluate the approach on an industrial use-case at ABB Robotics.

Serie
Advances in Intelligent Systems and Computing, ISSN 2194-5357 ; 738
Nyckelord
parallelization, legacy, CUDA, OpenMP
Nationell ämneskategori
Datorsystem
Identifikatorer
urn:nbn:se:mdh:diva-38623 (URN)10.1007/978-3-319-77028-4_59 (DOI)2-s2.0-85045844568 (Scopus ID)9783319770277 (ISBN)
Konferens
15th International Conference on Information Technology : New Generations ITNG'18, 16 Apr 2018, Las Vegas, United States
Projekt
MOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applications
Tillgänglig från: 2018-03-06 Skapad: 2018-03-06 Senast uppdaterad: 2018-11-28Bibliografiskt granskad
Bucaioni, A., Cicchetti, A., Ciccozzi, F., Kodali, M. & Sjödin, M. (2018). Alignment of Requirements and Testing in Agile: An Industrial Experience. Advances in Intelligent Systems and Computing, 738, 225-232
Öppna denna publikation i ny flik eller fönster >>Alignment of Requirements and Testing in Agile: An Industrial Experience
Visa övriga...
2018 (Engelska)Ingår i: Advances in Intelligent Systems and Computing, ISSN 2194-5357, E-ISSN 2194-5365, Vol. 738, s. 225-232Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

Agile development aims at switching the focus from processes to interactions between stakeholders, from heavy to minimalistic documentation, from contract negotiation and detailed plans to customer collaboration and prompt reaction to changes. With these premises, requirements traceability may appear to be an overly exigent activity, with little or no return-of-investment. However, since testing remains crucial even when going agile, the developers need to identify at a glance what to test and how to test it. That is why, even though requirements traceability has historically faced a firm resistance from the agile community, it can provide several benefits when promoting precise alignment of requirements with testing. This paper reports on our experience in promoting traceability of requirements and testing in the data communications for mission-critical systems in an industrial Scrum project. We define a semi-automated requirements tracing mechanism which coordinates four traceability techniques. We evaluate the solution by applying it to an industrial project aiming at enhancing the existing Virtual Router Redundancy Protocol by adding Simple Network Management Protocol support. 

Ort, förlag, år, upplaga, sidor
Springer Verlag, 2018
Nationell ämneskategori
Datorsystem
Identifikatorer
urn:nbn:se:mdh:diva-39196 (URN)10.1007/978-3-319-77028-4_33 (DOI)2-s2.0-85045853502 (Scopus ID)
Tillgänglig från: 2018-05-11 Skapad: 2018-05-11 Senast uppdaterad: 2018-05-11Bibliografiskt granskad
Masud, A. N., Lisper, B. & Ciccozzi, F. (2018). Automatic Inference of Task Parallelism in Task-graph-based Actor Models. IEEE Access, 6, 78965-78991
Öppna denna publikation i ny flik eller fönster >>Automatic Inference of Task Parallelism in Task-graph-based Actor Models
2018 (Engelska)Ingår i: IEEE Access, E-ISSN 2169-3536, Vol. 6, s. 78965-78991Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

Automatic inference of task level parallelism is fundamental for ensuring many kinds of safety and liveness properties of parallel applications. For example, two tasks running in parallel may be involved in data races when they have conflicting memory accesses, or one is affecting the termination of another by updating shared variables. In this article, we have considered a task-graph-based actor model, used in signal processing applications (e.g., baseband processing in wireless communication, LTE uplink processing) that are deployed on many-core platforms, in which actors, task-graphs and tasks are the active entities running in parallel. Actors invoke task graphs, which in turn invoke tasks, and they communicate through message passing, thus creating different kinds of dependencies and parallelism in the application. We introduce a novel May Happen in Parallel (MHP) analysis for complex parallel applications based on our computational model. The MHP analysis consists of (i) data-flow analysis applicable to parallel control-flow structures inferring MHP facts representing pairs of tasks running in parallel, (ii) identification of all direct and indirect communication by generating a context-free grammar and enumerating valid strings representing parallelism and dependencies among active entities, and (iii) inferring MHP facts when multiple task-graphs communicate. Our analysis is applicable to other computational models (e.g. Cilk or X10) too. We have fully implemented our analysis and evaluated it on signal processing applications consisting of a maximum of 36.57 million lines of code representing 232 different tasks. The analysis approximately 7 minutes to identify all communication information and 10.5 minutes to identify 12052 executable parallel task-pairs (to analyse for concurrency bugs) proving that our analysis is scalable for industrial-sized code-bases.

Nyckelord
May happen in parallel, data flow analysis, actor model, parallel task graph, graph reachability, UML profile
Nationell ämneskategori
Teknik och teknologier Datorsystem
Identifikatorer
urn:nbn:se:mdh:diva-41748 (URN)10.1109/ACCESS.2018.2885705 (DOI)000454857600001 ()2-s2.0-85058163957 (Scopus ID)2169-3536 (ISBN)
Projekt
Static Program Analysis for Complex Embedded systemsMOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applications
Tillgänglig från: 2018-12-18 Skapad: 2019-01-25 Senast uppdaterad: 2019-01-17Bibliografiskt granskad
Franke, U. & Ciccozzi, F. (2018). Characterization of trade-off preferences between non-functional properties. Information Systems, 74(2), 86-102
Öppna denna publikation i ny flik eller fönster >>Characterization of trade-off preferences between non-functional properties
2018 (Engelska)Ingår i: Information Systems, ISSN 0306-4379, E-ISSN 1873-6076, Vol. 74, nr 2, s. 86-102Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

Efficient design and evolution of complex software intensive systems rely on the ability to make informed decisions as early as possible in the life cycle. Such informed decisions should take both the intended functional and non-functional properties into account. Especially regarding the latter, it is both necessary to be able to predict properties and to prioritize them according to well-defined criteria. In this paper we focus on the latter problem, that is to say how to make trade-offs between non-functional properties of software intensive systems. We provide an approach based on the elicitation of utility functions from stake-holders and subsequent checks for consistency among these functions. The approach is exploitable through an easy-to-use GUI, which is also presented. Moreover, we describe the setup and the outcome of our two-fold validation based on exploratory elicitations with students and practitioners.

Ort, förlag, år, upplaga, sidor
Elsevier, 2018
Nyckelord
Non-functional properties, Decision-making, Trade-offs, Utility functions
Nationell ämneskategori
Datorsystem
Identifikatorer
urn:nbn:se:mdh:diva-37079 (URN)10.1016/j.is.2017.07.004 (DOI)000430030800002 ()2-s2.0-85029007979 (Scopus ID)
Projekt
ORION - Decision Support for Component-Based Software Engineering of Cyber-Physical SystemsMOMENTUM: analysis of models towards compilation to predictable embedded real-time and safety-critical applications
Tillgänglig från: 2017-10-26 Skapad: 2017-10-26 Senast uppdaterad: 2018-04-26Bibliografiskt granskad
Jongeling, R., Carlson, J., Cicchetti, A. & Ciccozzi, F. (2018). Continuous integration support in modeling tools. In: CEUR Workshop Proceedings: . Paper presented at 2018 MODELS Workshops: ModComp, MRT, OCL, FlexMDE, EXE, COMMitMDE, MDETools, GEMOC, MORSE, MDE4IoT, MDEbug, MoDeVVa, ME, MULTI, HuFaMo, AMMoRe, PAINS, MODELS-WS 2018, 14 October 2018 through 19 October 2018 (pp. 268-276). CEUR-WS, 2245
Öppna denna publikation i ny flik eller fönster >>Continuous integration support in modeling tools
2018 (Engelska)Ingår i: CEUR Workshop Proceedings, CEUR-WS , 2018, Vol. 2245, s. 268-276Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

Continuous Integration (CI) and Model-Based Development (MBD) have both been hailed as practices that improve the productivity of software development. Their combination has the potential to boost productivity even more. The goal of our research is to identify impediments to realizing this combination in industrial collaborative modeling practices. In this paper, we examine certain specific features of modeling tools that, due to their immaturity, may represent impediments to combining CI and MBD. To this end, we identify features of modeling tools that are relevant to enabling CI practices in MBD processes and we review modeling tools with respect to their level of support for each of these features.

Ort, förlag, år, upplaga, sidor
CEUR-WS, 2018
Nyckelord
Belt drives, Industrial research, Productivity, Collaborative model, Continuous integrations, Model based development, Modeling tool, Software design
Nationell ämneskategori
Elektroteknik och elektronik
Identifikatorer
urn:nbn:se:mdh:diva-42980 (URN)2-s2.0-85063092120 (Scopus ID)
Konferens
2018 MODELS Workshops: ModComp, MRT, OCL, FlexMDE, EXE, COMMitMDE, MDETools, GEMOC, MORSE, MDE4IoT, MDEbug, MoDeVVa, ME, MULTI, HuFaMo, AMMoRe, PAINS, MODELS-WS 2018, 14 October 2018 through 19 October 2018
Tillgänglig från: 2019-03-28 Skapad: 2019-03-28 Senast uppdaterad: 2019-04-04Bibliografiskt granskad
Ciccozzi, F., Lambers, L., Pierantonio, A., Taentzer, G., Famelis, M., Mosser, S., . . . Wimmer, M. (2018). How do we teach modelling and model-driven engineering?: A survey. In: 21st ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings, MODELS-Companion 2018. Paper presented at 21st ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2018, 14 October 2018 through 19 October 2018 (pp. 122-129). Association for Computing Machinery, Inc
Öppna denna publikation i ny flik eller fönster >>How do we teach modelling and model-driven engineering?: A survey
Visa övriga...
2018 (Engelska)Ingår i: 21st ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings, MODELS-Companion 2018, Association for Computing Machinery, Inc , 2018, s. 122-129Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

Understanding the experiences of instructors teaching modelling and model-driven engineering is of great relevance to determining how MDE courses should be managed in terms of content, assessment, and teaching methods. In this paper, we report the results of a survey of 47 instructors in this field. Questions address course content, tools and technologies used, as well as positive and negative factors affecting learning outcomes. We analyse the results and summarise key findings with the potential of improving the state of teaching and learning practices. The survey is a preliminary effort in giving a structured overview on the state-of-the-practice within teaching modeling and model-driven engineering (from the point of view of the instructor).

Ort, förlag, år, upplaga, sidor
Association for Computing Machinery, Inc, 2018
Nyckelord
Education, Model-driven engineering, Modelling, Curricula, Models, Surveys, Course contents, Learning outcome, State of the practice, Teaching and learning, Teaching methods, Teaching model, Tools and technologies, Teaching
Nationell ämneskategori
Elektroteknik och elektronik
Identifikatorer
urn:nbn:se:mdh:diva-41441 (URN)10.1145/3270112.3270129 (DOI)2-s2.0-85056884349 (Scopus ID)9781450359658 (ISBN)
Konferens
21st ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2018, 14 October 2018 through 19 October 2018
Tillgänglig från: 2018-11-29 Skapad: 2018-11-29 Senast uppdaterad: 2018-11-29Bibliografiskt granskad
Organisationer
Identifikatorer
ORCID-id: ORCID iD iconorcid.org/0000-0002-0401-1036

Sök vidare i DiVA

Visa alla publikationer