mdh.sePublications
Change search
Link to record
Permanent link

Direct link
BETA
Alternative names
Publications (10 of 135) Show all publications
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
Gaetana, S., Sentilles, S., Crnkovic, I. & Seceleanu, T. (2016). Extra-Functional Properties Composability for Embedded Systems Partitioning. In: Proceedings - 2016 19th International ACM SIGSOFT Symposium on Component-Based Software Engineering, CBSE 2016: . Paper presented at 19th International ACM SIGSOFT Symposium on Component-Based Software Engineering, CBSE 2016, 5 April 2016 through 8 April 2016 (pp. 69-78).
Open this publication in new window or tab >>Extra-Functional Properties Composability for Embedded Systems Partitioning
2016 (English)In: Proceedings - 2016 19th International ACM SIGSOFT Symposium on Component-Based Software Engineering, CBSE 2016, 2016, p. 69-78Conference paper, Published paper (Refereed)
Abstract [en]

Modern embedded systems utilize the advances in heterogeneous platforms that enable implementing functions in software (SW) and hardware (HW) components. A proper configuration of SW and HW components can significantly improve the values of the extra-functional properties such as performance and energy savings. However, due to increasing application complexity, it is difficult to find the best combination of HW and SW components. The problem basically boils down to calculate, for a given architecture, the system properties from the components' ones. In this paper, we address the problem of composability of EFPs at system level. Although in general this is not a solvable problem, we present that, under strictly specified constraints, it is possible to compose the system EFPs starting from the component ones. We start by detailing constraints related to the system architecture, platform and process development and, based on these constraints, we provide composition rules for different types of EFPs. We demonstrate the results through an industrial example.

Keywords
Composability, Embedded Systems, Extra-Functional Properties, Partitioning, Computer architecture, Energy conservation, Problem solving, Software engineering, Application complexity, Heterogeneous platforms, Modern embedded systems, System architectures, Systems partitioning
National Category
Embedded Systems
Identifiers
urn:nbn:se:mdh:diva-32912 (URN)10.1109/CBSE.2016.19 (DOI)000390946500009 ()2-s2.0-84981485900 (Scopus ID)9781509025695 (ISBN)
Conference
19th International ACM SIGSOFT Symposium on Component-Based Software Engineering, CBSE 2016, 5 April 2016 through 8 April 2016
Available from: 2016-08-25 Created: 2016-08-25 Last updated: 2017-01-26Bibliographically approved
Sapienza, G., Dodig-Crnkovic, G. & Crnkovic, I. (2016). Inclusion of Ethical Aspects in Multi-criteria Decision Analysis. In: Proceedings - 2016 1st International Workshop on Decision Making in Software ARCHitecture, MARCH 2016: . Paper presented at 1st International Workshop on Decision Making in Software ARCHitecture, MARCH 2016, 5 April 2016 (pp. 1-8).
Open this publication in new window or tab >>Inclusion of Ethical Aspects in Multi-criteria Decision Analysis
2016 (English)In: Proceedings - 2016 1st International Workshop on Decision Making in Software ARCHitecture, MARCH 2016, 2016, p. 1-8Conference paper, Published paper (Refereed)
Abstract [en]

Decision process is often based on multi-faceted and mutually opposing criteria. In order to provide rigorous techniques for problem structuring and criteria aggregation used for classification and ranking of alternatives, Multiple Criteria Decision Analysis (MCDA) has been used as a method to achieve architectural decisions. Even though it has already been argued in literature that MCDA essentially depends on value systems of decision-makers, it is a question how the decision result reflects a particular criterion, requirement or a particular decision. This is especially true if a criterion is not precisely specified. In this paper we analyse the ethical aspects of MCDA. In our analysis we argue that it is in the long run necessary to make value basis of decision-making and ethical considerations explicit and subject for scrutiny. As a support to encourage introduction of transparent value-based deliberation we propose an extended MCDA scheme that would explicitly take into account ethical analysis. As an illustration, we present an industrial case study for the Software (SW)/Hardware (HW) partitioning of a wind turbine application in which different decisions can be taken, depending on the ethical aspects. 

Keywords
Embedded Systems, Ethical Aspects, Ethics, Multiple Criteria Decision Analysis, Application programs, Decision theory, Operations research, Philosophical aspects, Software architecture, Wind turbines, Architectural decision, Ethical considerations, Industrial case study, Multi-criteria decision analysis, Ranking of alternatives, Decision making
National Category
Embedded Systems
Identifiers
urn:nbn:se:mdh:diva-32524 (URN)10.1109/MARCH.2016.8 (DOI)000382526100001 ()2-s2.0-84979519277 (Scopus ID)9781509025732 (ISBN)
Conference
1st International Workshop on Decision Making in Software ARCHitecture, MARCH 2016, 5 April 2016
Available from: 2016-08-18 Created: 2016-08-18 Last updated: 2016-09-29Bibliographically approved
Crnkovic, I., Malavolta, I., Muccini, H. & Sharaf, M. (2016). On the Use of Component-Based Principles and Practices for Architecting Cyber-Physical Systems. In: Proceedings - 2016 19th International ACM SIGSOFT Symposium on Component-Based Software Engineering, CBSE 2016: . Paper presented at 19th International ACM SIGSOFT Symposium on Component-Based Software Engineering, CBSE 2016, 5 April 2016 through 8 April 2016 (pp. 23-32).
Open this publication in new window or tab >>On the Use of Component-Based Principles and Practices for Architecting Cyber-Physical Systems
2016 (English)In: Proceedings - 2016 19th International ACM SIGSOFT Symposium on Component-Based Software Engineering, CBSE 2016, 2016, p. 23-32Conference paper, Published paper (Refereed)
Abstract [en]

By focussing on Cyber Physical Systems (CPS), this paper investigates how component-based principles and practices are used and support the activity of architecting CPS. For doing so, by running a systematic process, we selected 49 primary studies from the most important publishers search engines. Those papers have been analyzed and their contents classified according to the Classification Framework for Component Models proposed in our previous work. The results show that the main concerns handled by CPS component models are those of integration, performance, and maintainability. The instruments to satisfy those concerns, while architecting CPS, are ad-hoc software/system architecture, model-based approaches, architectural and component languages, and design. The IEC 61499 standard with its functions block is remarkably used to drive the work on six papers. Java is the most frequently used programming language used for implementing the components. Components are deployed mostly at compile time. Interfaces are almost equally distributed into port-based and operation-based. Overall, the results show a transition of technologies and approaches used in Embedded Systems to CPS, but still lacking methods for integrated architecting, in particular in incremental development.

Keywords
Component-Based Software Engineering, Cyber-Physical Systems, Systematic Literature Review, Computational linguistics, Java programming language, Search engines, Software engineering, Standards, Classification framework, Cyber physical systems (CPSs), Cyber-physical systems (CPS), Incremental development, Model based approach, Principles and practices, Embedded systems
National Category
Computer and Information Sciences
Identifiers
urn:nbn:se:mdh:diva-32913 (URN)10.1109/CBSE.2016.9 (DOI)000390946500004 ()2-s2.0-84981492693 (Scopus ID)9781509025695 (ISBN)
Conference
19th International ACM SIGSOFT Symposium on Component-Based Software Engineering, CBSE 2016, 5 April 2016 through 8 April 2016
Available from: 2016-08-25 Created: 2016-08-25 Last updated: 2018-01-10Bibliographically approved
Potena, P., Crnkovic, I., Marinelli, F. & Cortellessa, V. (2016). Software architecture quality of service analysis based on optimization models. In: Intell. Syst. Ref. Libr.: (pp. 421-446).
Open this publication in new window or tab >>Software architecture quality of service analysis based on optimization models
2016 (English)In: Intell. Syst. Ref. Libr., 2016, p. 421-446Conference paper, Published paper (Refereed)
Abstract [en]

The ability to predict Quality of Service (QoS) of a software architecture supports a large set of decisions across multiple lifecycle phases that span from design through implementation-integration to adaptation phase. However, due to the different amount and type of information available, different prediction approaches can be introduced in each phase. A major issue in this direction is that QoS attribute cannot be analyzed separately, because they (sometime adversely) affect each other. Therefore, approaches aimed at the tradeoff analysis of different attributes have been recently introduced (e.g., reliability versus cost, security versus performance). In this chapter we focus on modeling and analysis of QoS tradeoffs of a software architecture based on optimization models. A particular emphasis will be given to two aspects of this problem: (i) the mathematical foundations of QoS tradeoffs and their dependencies on the static and dynamic aspects of a software architecture, and (ii) the automation of architectural decisions driven by optimization models for QoS tradeoffs.

Keywords
Medical informatics system, Optimization, Quality of service, Software architecture
National Category
Computer and Information Sciences
Identifiers
urn:nbn:se:mdh:diva-31599 (URN)10.1007/978-3-319-24499-0_14 (DOI)2-s2.0-84946059734 (Scopus ID)
Available from: 2016-05-23 Created: 2016-05-19 Last updated: 2018-01-10Bibliographically approved
T., V., Ivica, C., E.S., D. A., P.A.D.M., S. N., Y.C., C. & S.R.D.L., M. (2016). Twenty-eight years of component-based software engineering. Journal of Systems and Software, 111, 128-148
Open this publication in new window or tab >>Twenty-eight years of component-based software engineering
Show others...
2016 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 111, p. 128-148Article in journal (Refereed) Published
Abstract [en]

The idea of developing software components was envisioned more than forty years ago. In the past two decades, Component-Based Software Engineering (CBSE) has emerged as a distinguishable approach in software engineering, and it has attracted the attention of many researchers, which has led to many results being published in the research literature. There is a huge amount of knowledge encapsulated in conferences and journals targeting this area, but a systematic analysis of that knowledge is missing. For this reason, we aim to investigate the state-of-the-art of the CBSE area through a detailed literature review. To do this, 1231 studies dating from 1984 to 2012 were analyzed. Using the available evidence, this paper addresses five dimensions of CBSE: main objectives, research topics, application domains, research intensity and applied research methods. The main objectives found were to increase productivity, save costs and improve quality. The most addressed application domains are homogeneously divided between commercial-off-the-shelf (COTS), distributed and embedded systems. Intensity of research showed a considerable increase in the last fourteen years. In addition to the analysis, this paper also synthesizes the available evidence, identifies open issues and points out areas that call for further research. 

Keywords
Component-based software development, Component-based software engineering, Software component, Systematic mapping study, Embedded systems, Software engineering, Commercial off-the shelves, Literature reviews, State of the art, Systematic analysis, Systematic mapping studies, Software design
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-30648 (URN)10.1016/j.jss.2015.09.019 (DOI)000370462800008 ()2-s2.0-84949744952 (Scopus ID)
Available from: 2015-12-30 Created: 2015-12-30 Last updated: 2017-12-01Bibliographically approved
Feljan, J., Ciccozzi, F., Carlson, J. & Crnkovic, I. (2015). Enhancing model-based architecture optimization with monitored system runs. In: 41st Euromicro Conference on Software Engineering and Advanced Applications SEAA15: . Paper presented at 41st Euromicro Conference on Software Engineering and Advanced Applications SEAA15, 26 Aug 2015, Funchal, Portugal (pp. 216-233).
Open this publication in new window or tab >>Enhancing model-based architecture optimization with monitored system runs
2015 (English)In: 41st Euromicro Conference on Software Engineering and Advanced Applications SEAA15, 2015, p. 216-233Conference paper, Published paper (Refereed)
Abstract [en]

Typically, architecture optimization searches for good architecture candidates based on analyzing a model of the system. Model-based analysis inherently relies on abstractions and estimates, and as such produces approximations which are used to compare architecture candidates. However, approximations are often not sufficient due to the difficulty of accurately estimating certain extra-functional properties. In this paper, we present an architecture optimization approach where the speed of model-based optimization is combined with the accuracy of monitored system runs. Model-based optimization is used to quickly find a good architecture candidate, while optimization based on monitored system runs further refines this candidate. Using measurements assures a higher accuracy of the metrics used for optimization compared to using performance predictions. We demonstrate the feasibility of the approach by implementing it in our framework for optimizing the allocation of software tasks to the processing cores of a multicore embedded system.

Keywords
architecture optimization, model-based analysis, model simulation, monitored system execution, embedded systems, multicore, task allocation, performance, end-to-end response time
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-28162 (URN)10.1109/SEAA.2015.14 (DOI)000380478300031 ()2-s2.0-84958260528 (Scopus ID)978-1-4673-7585-6 (ISBN)
External cooperation:
Conference
41st Euromicro Conference on Software Engineering and Advanced Applications SEAA15, 26 Aug 2015, Funchal, Portugal
Projects
RALF3 - Software for Embedded High Performance ArchitecturesSMARTCore: Model-driven support for deployment optimization of embedded systems on multicoreORION - Decision Support for Component-Based Software Engineering of Cyber-Physical Systems
Available from: 2015-06-12 Created: 2015-06-08 Last updated: 2016-09-01Bibliographically approved
Pei-Breivold, H. & Crnkovic, I. (2015). Experiences and Reflections on Cloud Computing Course for Second and Third Cycle Education. In: ECSAW '15 Proceedings of the 2015 European Conference on Software Architecture Workshops: . Paper presented at 2015 European Conference on Software Architecture Workshops (pp. Article No. 29).
Open this publication in new window or tab >>Experiences and Reflections on Cloud Computing Course for Second and Third Cycle Education
2015 (English)In: ECSAW '15 Proceedings of the 2015 European Conference on Software Architecture Workshops, 2015, p. Article No. 29-Conference paper, Published paper (Refereed)
Abstract [en]

The evolution of Cloud Computing motivates teaching this subject to computer science senior students and graduate students so that they can gain broad exposure to the main body of knowledge of Cloud Computing and get prepared for occupations in industry. We started the development of such a course from the end of 2013. To efficiently develop a course that introduces a new technology and has a good balance of a theoretical base and practical experience, we have designed such a course in two steps, by giving a course to the third cycle education and then to the second cycle education after refinement. In this paper, we report on our experiences gained from giving the course to the third cycle education and our reflections from the experience. We also discuss what we can improve on the next course occasion and for the second cycle education on this subject.

Keywords
Cloud Computing course experiences
National Category
Engineering and Technology Software Engineering
Identifiers
urn:nbn:se:mdh:diva-29247 (URN)10.1145/2797433.2797463 (DOI)2-s2.0-84958550133 (Scopus ID)978-1-4503-3393-1 (ISBN)
Conference
2015 European Conference on Software Architecture Workshops
Projects
InCloud - Industrial Systems Cloud Computing
Available from: 2015-10-06 Created: 2015-09-29 Last updated: 2018-01-11Bibliographically approved
Martinović, G., Karić, M. & Crnković, I. (2015). Simulation and evaluation of multiple sporadic servers rescheduling. In: IFAC-PapersOnLine: . Paper presented at 2nd IFAC Conference on Embedded Systems, Computer Intelligence and Telematics, CESCIT 2015; Maribor; Slovenia; 22 June 2015 through 24 June 2015 (pp. 270-275). , 28:10
Open this publication in new window or tab >>Simulation and evaluation of multiple sporadic servers rescheduling
2015 (English)In: IFAC-PapersOnLine, 2015, Vol. 28:10, p. 270-275Conference paper, Published paper (Refereed)
Abstract [en]

This paper deals with task scheduling in heterogeneous distributed embedded computer environments of renewable and timing variable resources. Real-time application performance can be considerably influenced by unexpected events in the environment. The predictive-reactive rescheduling procedure can enable significant improvements. The rescheduling procedure based on multiple server tasks enables usage of one's own resources, but also a fast connection to nodes with appropriate performance that will soften the influence of disturbances. We developed a tool that enables simulation of application execution conditions for a given environment and extraction of better scheduling parameter settings. Numerous scheduling parameters are improved with an increase in the number of nodes available for rescheduling. We also investigate cost-effectiveness of the method based on rescheduling time cost. The results demonstrate a possibility of achieving performance improvement by tuning cost parameters.

Keywords
Adaptive scheduling; Distributed computing; Real-time systems; Rescheduling; Simulation
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-30807 (URN)10.1016/j.ifacol.2015.08.143 (DOI)2-s2.0-84992503731 (Scopus ID)
Conference
2nd IFAC Conference on Embedded Systems, Computer Intelligence and Telematics, CESCIT 2015; Maribor; Slovenia; 22 June 2015 through 24 June 2015
Available from: 2016-01-21 Created: 2016-01-21 Last updated: 2019-01-28Bibliographically approved
Gruenbacher, P., Chechik, M. & Crnkovic, I. (Eds.). (2014). ACM/IEEE International Conference on Automated Software Engineering, ASE '14: Västerås, Sweden - September 15 - 19, 2014. Västerås, Sweden: ACM - The Association for Computing Machinery
Open this publication in new window or tab >>ACM/IEEE International Conference on Automated Software Engineering, ASE '14: Västerås, Sweden - September 15 - 19, 2014
2014 (English)Conference proceedings (editor) (Refereed)
Abstract [en]

It is our great pleasure to welcome you to the 29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014). This conference publication contains the proceedings of ASE 2014, held in Västerås, Sweden, on September 15-19, 2014. The ASE Conference series is the premier research forum for automating software engineering. Each year, it brings together researchers and practitioners from academia and industry to discuss foundations, techniques and tools for automating the analysis, design, implementation, testing, and maintenance of large software systems. It is a wonderful time to do research in automated software engineering! Everything is becoming programmable -- phones, TVs, tablets, cars, and even watches and glasses. Software engineers are the ones who bring life to these programmable devices by writing systems and applications software. As software engineering researchers, we are the ones who are tasked with developing techniques and tools that will help software engineers in meeting the exploding demand in software production. We are facing an endless list of research problems that not only bring many challenges, but also bring many opportunities for contribution and impact. ASE 2014 was located in Vsterås, Sweden's sixth largest city with a 1000-year-old history. Vsterås is a cultural, educational, and industrial city located by the beautiful Lake Mälaren. The city is the home of ABB's largest research center and it hosts other major companies like Bombardier Transportation, Westinghouse Electric Sweden, Alstom Power Sweden, Luvata Sweden, Enics Sweden, and nearby placed Volvo Construction Equipment. The exciting program of this year's ASE conference consisted of high quality contributions in this vibrant research area that were selected from a record number of submissions after a careful, thorough and selective reviewing process. This year, for the main track of the ASE conference, we invited three categories of submissions: (1) Technical Research Papers that describe innovative research in automating software development activities or automated support to users engaged in such activities; (2) Experience Papers that describe a significant experience in applying automated software engineering technologies and identify and discuss important lessons learned so that other researchers and/or practitioners can benefit from the experience; and (3) New Ideas Papers that describe novel research directions in automated software engineering that are in an early stage of investigation. We received 337 paper submissions this year -- a record for the ASE conference series! Thirteen submissions were desk rejected without review since they failed to follow the instructions given in the call for papers or were clearly out of scope of the conference. One paper was rejected as a double submission with another conference. The remaining 323 submissions -- 276 full papers and 48 new idea papers -- were reviewed by the members of the Program Committee and the Expert Review Panel, with each paper receiving at least 3 reviews. We also had a very active online discussion phase, with many long and detailed discussions among the members of the Program Committee and the Expert Review Panel. During a two-day physical PC meeting held at the University of Toronto on June 25--26, 2014, the members of the Program Committee compiled the final selection of papers to be presented at ASE 2014. This careful and thorough reviewing process resulted in selection of 50 technical research papers, 5 experience papers, and 27 new ideas papers (many of these were recategorized full papers). In addition to the papers presented in the main track, the ASE conference program also included 12 tool demonstration papers selected by the Tools Program Committee, and 10 doctoral symposium papers, selected by the Doctoral Symposium Committee. Two workshops and three tutorials were selected by the Tutorials and Workshops Program Committee and were co-located with the conference. Several other events were co-located with the ASE conference: the 7th International Conference on Software Language Engineering (SLE) and the 13th International Conference on Generative Programming: Concepts & Experiences (GPCE'14), together with their workshops, and the Working Meeting of Industrial Research School in Embedded Software and Systems (ITS-EASY). The ASE conference program was enriched by three keynote talks: Prof. Luciano Floridi from the University of Oxford on the logic of information design; Prof. Andrei Voronkov from the University of Manchester on the EasyChair system; and Dr. Magnus Larsson, Head of ABB's India Development Center, on experiences from developing industrial software systems with long lifecycles.

Place, publisher, year, edition, pages
Västerås, Sweden: ACM - The Association for Computing Machinery, 2014
National Category
Engineering and Technology
Identifiers
urn:nbn:se:mdh:diva-29244 (URN)978-1-4503-3013-8 (ISBN)
Projects
RALF3 - Software for Embedded High Performance Architectures
Available from: 2015-10-06 Created: 2015-09-29 Last updated: 2015-10-06Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-5278-755X

Search in DiVA

Show all publications