Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Ivica Crnkovic is active.

Publication


Featured researches published by Ivica Crnkovic.


IEEE Transactions on Software Engineering | 2011

A Classification Framework for Software Component Models

Ivica Crnkovic; Séverine Sentilles; Aneta Vulgarakis; Michel R. V. Chaudron

In the last decade, a large number of different software component models have been developed, with different aims and using different principles and technologies. This has resulted in a number of models which have many similarities, but also principal differences, and in many cases unclear concepts. Component-based development has not succeeded in providing standard principles, as has, for example, object-oriented development. In order to increase the understanding of the concepts and to differentiate component models more easily, this paper identifies, discusses, and characterizes fundamental principles of component models and provides a Component Model Classification Framework based on these principles. Further, the paper classifies a large number of component models using this framework.


Software Focus | 2001

Component-based software engineering — new challenges in software development

Ivica Crnkovic

The primary role of component-based software engineering is to address the development of systems as an assembly of parts (components), the development of parts as reusable entities, and the maintenance and upgrading of systems by customising and replacing such parts. This requires established methodologies and tool support covering the entire component and system lifecycle including technological, organisational, marketing, legal, and other aspects. The traditional disciplines from software engineering need new methodologies to support component-based development. IVICA CRNKOVIC assesses the challenges of this emerging technology and discusses its implications for the software development process. Copyright


component based software engineering | 2008

A Component Model for Control-Intensive Distributed Embedded Systems

Séverine Sentilles; Aneta Vulgarakis; Tomáš Bureš; Jan Carlson; Ivica Crnkovic

In this paper we focus on design of a class of distributed embedded systems that primarily perform real-time controlling tasks. We propose a two-layer component model for design and development of such embedded systems with the aim of using component-based development for decreasing the complexity in design and providing a ground for analyzing them and predict their properties, such as resource consumption and timing behavior. The two-layer model is used to efficiently cope with different design paradigms on different abstraction levels. The model is illustrated by an example from the vehicular domain.


Proceedings. 30th Euromicro Conference, 2004. | 2004

SaveCCM - a component model for safety-critical real-time systems

Hans Hansson; M. AAkerholm; Ivica Crnkovic; Martin Törngren

Component-based development has proven effective in many engineering domains, and several general component technologies are available. Most of these are focused on providing an efficient software-engineering process. However for the majority of embedded systems, run-time efficiency and prediction of system behaviour are as important as process efficiency. This calls for specialized technologies. There is even a need for further specialized technologies adapted to different types of embedded systems, due to the heterogeneity of the domain and the close relation between the software and the often very application specific system. This work presents the SaveCCM component model, intended for embedded control applications in vehicular systems. SaveCCM is a simple model in which flexibility is limited to facilitate analysis of real-time and dependability. We present and motivate the model, and provide examples of its use.


Communications of The ACM | 2002

Specification, implementation, and deployment of components

Ivica Crnkovic; Brahim Hnich; Torsten Jonsson; Zeynep Kiziltan

Clarifying common terminology and exploring component-based relationships.


Information & Software Technology | 2012

A systematic review of software architecture evolution research

Hongyu Pei Breivold; Ivica Crnkovic; Magnus Larsson

Context: Software evolvability describes a software systems ability to easily accommodate future changes. It is a fundamental characteristic for making strategic decisions, and increasing economic value of software. For long-lived systems, there is a need to address evolvability explicitly during the entire software lifecycle in order to prolong the productive lifetime of software systems. For this reason, many research studies have been proposed in this area both by researchers and industry practitioners. These studies comprise a spectrum of particular techniques and practices, covering various activities in software lifecycle. However, no systematic review has been conducted previously to provide an extensive overview of software architecture evolvability research. Objective: In this work, we present such a systematic review of architecting for software evolvability. The objective of this review is to obtain an overview of the existing approaches in analyzing and improving software evolvability at architectural level, and investigate impacts on research and practice. Method: The identification of the primary studies in this review was based on a pre-defined search strategy and a multi-step selection process. Results: Based on research topics in these studies, we have identified five main categories of themes: (i) techniques supporting quality consideration during software architecture design, (ii) architectural quality evaluation, (iii) economic valuation, (iv) architectural knowledge management, and (v) modeling techniques. A comprehensive overview of these categories and related studies is presented. Conclusion: The findings of this review also reveal suggestions for further research and practice, such as (i) it is necessary to establish a theoretical foundation for software evolution research due to the fact that the expertise in this area is still built on the basis of case studies instead of generalized knowledge; (ii) it is necessary to combine appropriate techniques to address the multifaceted perspectives of software evolvability due to the fact that each technique has its specific focus and context for which it is appropriate in the entire software lifecycle.


international conference on software engineering | 2005

Component-based software engineering for embedded systems

Ivica Crnkovic

Although attractive, CBD has not been widely adopted in domains of embedded systems. The main reason is inability of these technologies to cope with the important concerns of embedded systems, such as resource constraints, real-time or dependability requirements. However, an increasing understanding of principles of CBD makes it possible to utilize these principles in implementation of different component-based models more appropriate for embedded systems. The aim of this tutorial is to point to the opportunity of applying this approach for development and maintenance of embedded systems. The tutorial gives insights into basic principles of CBD, the main concerns and characteristics of embedded systems and possible directions of adaptation of component-based approach for these systems. Different types of embedded systems and approaches for applying CBD are presented and illustrated by examples from research and practices. Also, challenges and research directions of CBD for embedded systems are discussed.


Journal of Systems and Software | 2002

Challenges of component-based development

Ivica Crnkovic; Magnus Larssom

It is generally understood that building software systems with components has many advantages but the difficulties of this approach should not be ignored. System evolution, maintenance, migration and compatibilities are some of the challenges met with when developing a component-based software system. Since most systems evolve over time, components must be maintained or replaced. The evolution of requirements affects not only specific system functions and particular components but also component-based architecture on all levels. Increased complexity is a consequence of different components and systems having different life cycles. In component-based systems it is easier to replace part of system with a commercial component. This process is however not straightforward and different factors such as requirements management, marketing issues, etc., must be taken into consideration. In this paper we discuss the issues and challenges encountered when developing and using an evolving component-based software system. An industrial control system has been used as a case study.


ACM Transactions in Embedded Computing Systems | 2005

Guidelines for a graduate curriculum on embedded software and systems

Paul Caspi; Alberto L. Sangiovanni-Vincentelli; Luis Almeida; Albert Benveniste; Bruno Bouyssounouse; Giorgio C. Buttazzo; Ivica Crnkovic; Werner Damm; J. Engblom; G. Folher; Marisol García-Valls; Hermann Kopetz; Y. Lakhnech; François Laroussinie; Luciano Lavagno; Giuseppe Lipari; F. Maraninchi; Ph. Peti; J. De La Puente; N. Scaife; Joseph Sifakis; R. De Simone; Martin Törngren; P. Verissimo; Andy J. Wellings; Reinhard Wilhelm; Tim A. C. Willemse; Wang Yi

The design of embedded real-time systems requires skills from multiple specific disciplines, including, but not limited to, control, computer science, and electronics. This often involves experts from differing backgrounds, who do not recognize that they address similar, if not identical, issues from complementary angles. Design methodologies are lacking in rigor and discipline so that demonstrating correctness of an embedded design, if at all possible, is a very expensive proposition that may delay significantly the introduction of a critical product. While the economic importance of embedded systems is widely acknowledged, academia has not paid enough attention to the education of a community of high-quality embedded system designers, an obvious difficulty being the need of interdisciplinarity in a period where specialization has been the target of most education systems. This paper presents the reflections that took place in the European Network of Excellence Artist leading us to propose principles and structured contents for building curricula on embedded software and systems.


international conference on software engineering | 2000

A case study: demands on component-based development

Ivica Crnkovic; Magnus Larsson

Building software systems with reusable components brings many advantages. The development becomes more efficient, the reliability of the products is enhanced, and the maintenance requirement is significantly reduced. Designing, developing and maintaining components for reuse is, however, a very complex process which places high requirements not only on the component functionality and flexibility, but also on the development organization. The authors discuss the different levels of component reuse, and certain aspects of component development, such as component generality and efficiency, compatibility problems, the demands on development environment, maintenance, etc. The evolution of requirements for products generates new requirements for components, if components are not general and mature enough. This dynamism determines the component life cycle where the component first reaches its stability and later degenerates in an asset that is difficult to use, difficult to adapt and maintain. When reaching this stage, the component becomes an obstacle for efficient reuse and should be replaced. Questions related to use of standard and de-facto standard components are addressed specifically. As an illustration of reuse issues, we present a successful implementation of a component based system which is widely used for industrial process control.

Collaboration


Dive into the Ivica Crnkovic's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Magnus Larsson

Mälardalen University College

View shared research outputs
Top Co-Authors

Avatar

Rikard Land

Mälardalen University College

View shared research outputs
Top Co-Authors

Avatar

Stig Larsson

Mälardalen University College

View shared research outputs
Top Co-Authors

Avatar

Jan Carlson

Mälardalen University College

View shared research outputs
Top Co-Authors

Avatar

Séverine Sentilles

Mälardalen University College

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Kurt C. Wallnau

Carnegie Mellon University

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge