mdh.sePublications
Change search
Refine search result
1 - 31 of 31
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Rows per page
  • 5
  • 10
  • 20
  • 50
  • 100
  • 250
Sort
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
Select
The maximal number of hits you can export is 250. When you want to export more records please use the Create feeds function.
  • 1.
    Breivold, Hongyu
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Cloud Computing education strategies2014In: 2014 IEEE 27th Conference on Software Engineering Education and Training, CSEE and T 2014 - Proceedings, 2014, p. 29-38Conference paper (Refereed)
    Abstract [en]

    Cloud Computing is changing the services consumption and delivery platform as well as the way businesses and users interact with IT resources. It represents a major conceptual shift that introduces new elements in programming models and development environments that are not present in traditional technologies. The evolution of Cloud Computing motivates teaching Cloud Computing 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. There is thus a strong need for having a Cloud Computing education course that (i) has a broad coverage of different roles interacting with a cloud; and (ii) leverages Cloud Computing concepts, technology and architecture topics at both introductory and advanced level. In this paper, we describe the demand for understanding the impact of Cloud Computing in computer science higher education. We propose education strategies for teaching Cloud Computing, including key knowledge areas for an enduring Cloud Computing course. © 2014 IEEE.

  • 2.
    Breivold, Hongyu Pei
    et al.
    ABB Corp Res.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Larsson, Magnus
    ABB Corp Res.
    Software architecture evolution through evolvability analysis2012In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 85, no 11, p. 2574-2592Article in journal (Refereed)
    Abstract [en]

    Software evolvability is a multifaceted quality attribute that describes a software system's ability to easily accommodate future changes. It is a fundamental characteristic for the efficient implementation of strategic decisions, and the increasing economic value of software. For long life systems, there is a need to address evolvability explicitly during the entire software lifecycle in order to prolong the productive lifetime of software systems. However, designing and evolving software architectures are the challenging task. To improve the ability to understand and systematically analyze the evolution of software system architectures, in this paper, we describe software architecture evolution characterization, and propose an architecture evolvability analysis process that provides replicable techniques for performing activities to aim at understanding and supporting software architecture evolution. The activities are embedded in: (i) the application of a software evolvability model; (ii) a structured qualitative method for analyzing evolvability at the architectural level; and (iii) a quantitative evolvability analysis method with explicit and quantitative treatment of stakeholders' evolvability concerns and the impact of potential architectural solutions on evolvability. The qualitative and quantitative assessments manifested in the evolvability analysis process have been applied in two large-scale industrial software systems at ABB and Ericsson, with experiences and reflections described. (c) 2012 Elsevier Inc. All rights reserved.

  • 3.
    Crnkovic, Ivica
    et al.
    Mälardalen University, Department of Computer Science and Electronics.
    Pei-Breivold, Hongyu
    Mälardalen University, Department of Computer Science and Electronics.
    Tutorial: Emerging Technologies in Industrial Context - Component-Based and Service-Oriented Software Engineering2007Conference paper (Refereed)
    Abstract [en]

    In recent years new paradigms of software development have emerged in many industrial and application domains: component-based and service-based software engineering.Component-based software engineering (CBSE) provides support for building systems through the composition and assembly of software components. CBSE is an established approach in many engineering domains, such as distributed and web based systems, desktop and graphical applications and recently in embedded systems domains. CBSE technologies facilitate effective management of complexity, significantly increase reusability and shorten time-to-market. On the other hand, the growing demands for Internet computing and emerging network-based business applications and systems are the driving forces for the evolvement of service-oriented software engineering (SOSE) . SOSE utilizes services as fundamental elements for developing applications and software solutions. SOSE technologies offer great feasibility in integrating distributed systems that are built on various platforms and technologies and further push focus on reusability and development efficiency.CBSE and SOSE are similar paradigms; they use similar approaches and technologies. Both CBSE and SOSE have a common source: Software Architecture with its basic concept that have been further developed and specialized. SOSE has evolved from CBSE frameworks and object oriented computing to face the challenges of open environments. Still CBSE and SOSE have continued developing in parallel, keeping different foci, which also has resulted in confusion in developing and applying similar concepts, or the same concepts designated differently. For example there is a general misunderstanding in what a component and a service are. This leads to less efficient utilization and combination of these approaches. For this reason, it is important to bring these worlds together and make researchers and practitioners aware of both sides; how can we take advantages of the strengths of these two paradigms, how can we adapt and integrate the component-based and service oriented technologies, concepts and their strengths to overcome the weaknesses in each separate technology.The aim of this tutorial is to show an integrated approach in utilization of CBSE and SOSE. The tutorial will start with providing an overview of software architecture with emphasis on architecture modeling and analysis, including CBSE and SOSE techniques from software architecture perspective. Subsequently, the tutorial will present analyses of the two techniques from multiple perspectives, such as their correlation from software architecture perspective, quality attribute analysis in respective technique, advantages and disadvantages of the two techniques, the possible directions in the adaptation of the two techniques and an indication on how to combine the strengths of both techniques. During the tutorial, some industrial context examples will be presented to illustrate CBSE and SOSE approaches and their integration.

  • 4.
    Goldschmidt, Thomas
    et al.
    ABB Corporate Research, Sweden.
    Jansen, Anton
    ABB Corporate Research, Sweden.
    Koziolek, Heiko
    ABB Corporate Research, Sweden.
    Doppelhamer, Jens
    ABB Corporate Research, Sweden.
    Pei-Breivold, Hongyu
    ABB Corporate Research, Sweden.
    Scalability and Robustness of Time-Series Databases for Cloud-Native Monitoring of Industrial Processes2014In: Proceedings 2014 IEEE Seventh International Conference on Cloud Computing CLOUD 2014, Alaska, United States, 2014, p. 602-609Conference paper (Refereed)
    Abstract [en]

    Today’s industrial control systems store large amounts of monitored sensor data in order to optimize industrial processes. In the last decades, architects have designed such systems mainly under the assumption that they operate in closed, plant-side IT infrastructures without horizontal scalability. Cloud technologies could be used in this context to save local IT costs and enable higher scalability, but their maturity for industrial applications with high requirements for responsiveness and robustness is not yet well understood. We propose a conceptual architecture as a basis to designing cloud-native monitoring systems. As a first step we benchmarked three open source timeseries databases (OpenTSDB, KairosDB and Databus) on cloud infrastructures with up to 36 nodes with workloads from realistic industrial applications. We found that at least KairosDB fulfills our initial hypotheses concerning scalability and reliability.

  • 5.
    Mubeen, Saad
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Abbaspour Asadollah, Sara
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Papadopoulos, Alessandro
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Ashjaei, Seyed Mohammad Hossein
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Pei-Breivold, Hongyu
    ABB Corporate Research, Sweden.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. IS (Embedded Systems).
    Management of Service Level Agreements for Cloud Services in IoT: A Systematic Mapping Study2017In: IEEE Access, E-ISSN 2169-3536, no 99Article in journal (Refereed)
    Abstract [en]

    Cloud computing and Internet of Things (IoT) are computing technologies that provide services to consumers and businesses, allowing organizations to become more agile and flexible. Therefore, ensuring Quality of Service (QoS) through Service Level Agreements (SLAs) for such cloud-based services is crucial for both the service providers and service consumers. As SLAs are critical for cloud deployments and wider adoption of cloud services, the management of SLAs in cloud and IoT has thus become an important and essential aspect. This paper investigates the existing research on the management of SLAs in IoT applications that are based on cloud services. For this purpose, a Systematic Mapping study (a well-defined method) is conducted to identify the published research results that are relevant to SLAs. The paper identifies 328 primary studies and categorizes them into seven main technical classifications: SLA management, SLA definition, SLA modeling, SLA negotiation, SLA monitoring, SLA violation and trustworthiness, and SLA evolution. The paper also summarizes the research types, research contributions, and demographic information in these studies. The evaluation of the results show that most of the approaches for managing SLAs are applied in academic or controlled experiments with limited industrial settings rather than in real industrial environments. Many studies focus on proposal models and methods to manage SLAs, and there is a lack of focus on the evolution perspective and a lack of adequate tool support to facilitate practitioners in their SLA management activities. Moreover, the scarce number of studies focusing on concrete metrics for qualitative or quantitative assessment of QoS in SLAs urges the need for in-depth research on metrics definition and measurements for SLAs.

  • 6.
    Mubeen, Saad
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Nikolaidis, Pavlos
    Mälardalen University.
    Didic, Alma
    Mälardalen University.
    Pei Breivold, Hongyu
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. ABB Corporate Research, Västerås, Sweden .
    Sandström, Kristian
    Swedish Institute of Computer Science, Kista, Sweden .
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Delay Mitigation in Offloaded Cloud Controllers in Industrial IoT2017In: IEEE Access, E-ISSN 2169-3536, ISSN 21693536, Vol. 5, p. 4418-4430, article id 7879156Article in journal (Refereed)
    Abstract [en]

    This paper investigates the interplay of cloud computing, fog computing, and Internet of Things (IoT) in control applications targeting the automation industry. In this context, a prototype is developed to explore the use of IoT devices that communicate with a cloud-based controller, i.e., the controller is offloaded to cloud or fog. Several experiments are performed to investigate the consequences of having a cloud server between the end device and the controller. The experiments are performed while considering arbitrary jitter and delays, i.e., they can be smaller than, equal to, or greater than the sampling period. This paper also applies mitigation mechanisms to deal with the delays and jitter that are caused by the networks when the controller is offloaded to the fog or cloud.

  • 7.
    Mubeen, Saad
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Pei-Breivold, Hongyu
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. ABB Corporate Research, Sweden.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Ensuring Quality of Service through Modeling of Service-level Agreements in Industrial IoT2016In: 12th Swedish National Computer Networking Workshop SNCNW 2016, Sundsvall, Sweden, 2016Conference paper (Refereed)
    Abstract [en]

    Cloud computing and Internet of Things (IoT) are computing technologies that provide services to consumers and businesses, allowing organizations to become more agile and flexible. Therefore, ensuring the quality of service through service-level agreements for such cloud-based services is crucial for both the service providers and service consumers. Within the context of industrial IoT applications, modeling of the service-level agreements has not received much attention in the existing literature. In this paper, we discuss ongoing work on modeling of service-level agreements to ensure quality of service in industrial IoT applications. The modeling approach aims to consider the agreements between an end device and the cloud; between a service provider and a service user; and among cloud services. The approach also aims to model the service-level agreements when a company assumes a double role, being the provider as well as the user of the services. We aim to provide a proof of concept by developing a prototype in an industrial setup. Using the prototype, we plan to show usability of the approach.

  • 8.
    Nikolaidis, Pavlos
    et al.
    Mälardalen University.
    Didic, Alma
    Mälardalen University.
    Mubeen, Saad
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Pei-Breivold, Hongyu
    ABB Corporate Research, Sweden.
    Sandström, Kristian
    ABB Corporate Research, Sweden.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Applying Mitigation Mechanisms for Cloud-based Controllers in Industrial IoT Applications2015In: Internet-of-Things Symposium IoT Symposium'15, 2015Conference paper (Refereed)
    Abstract [en]

    Cloud computing and Internet of Things (IoT) are two notable concepts that have evolved significantly over the past few years. In the automation industry, clouds are often used for monitoring vast amounts of data generated on the shop floor. Whereas, IoT is used to simplify the end devices and their connections to the rest of the system. In this paper we investigate the interplay of these two concepts and their use in the control applications in the automation industry. We develop a prototype in the industrial setup to explore the use of IoT devices that communicate with a cloud-based controller. Using the prototype, we perform a number of experiments to investigate the consequences of having a cloud server between the end device and the controller. Within this context we consider arbitrary jitter and delays, i.e., they can be smaller, equal or greater than the sampling periods. Moreover, we apply mitigation mechanisms to deal with the delays and jitter that are caused by the local and wide area networks (LAN and WAN).

  • 9.
    Papadopoulos, Alessandro
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Abbaspour Asadollah, Sara
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Ashjaei, Seyed Mohammad Hossein
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. Arcticus Systems AB, Järfälla, Sweden.
    Mubeen, Saad
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. Arcticus Systems AB, Järfälla, Sweden.
    Pei Breivold, Hongyu
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. ABB Corporate Research, Sweden.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    SLAs for Industrial IoT: Mind the Gap2017In: The 4th International Symposium on Inter-cloud and IoT (ICI 2017) ICI'17, 2017, p. 75-78Conference paper (Refereed)
    Abstract [en]

    Cloud computing and Internet of Things (IoT) are computing technologies that provide services to consumers and businesses, allowing organizations to become more agile and flexible. The potential business values that cloud consumers can achieve depend a lot on the quality of service in the provided cloud services. Therefore, ensuring the quality of service through service-level agreements (SLA) for such cloud-based services is crucial for both the service providers and service consumers. As SLA is critical for cloud deployments and wider adoption of cloud services, the management of SLA in cloud and IoT has thus become an important and essential issue. In this paper we provide an understanding of the current status and maturity level of SLA management in industrial IoT and academic efforts in this field. We also conduct a preliminary survey of current research on SLA management in order to identify open challenges and gaps that need to be addressed in future research directions. In particular, we investigate how to provide useful SLA management support adapted to the maturity level and current industrial practices, and shorten the gap between academia and industry.

  • 10.
    Pei Breivold, Hongyu
    Mälardalen University, School of Innovation, Design and Engineering.
    Software Architecture Evolution and Software Evolvability2009Licentiate thesis, comprehensive summary (Other academic)
    Abstract [en]

    Software is characterized by inevitable changes and increasing complexity, which in turn may lead to huge costs unless rigorously taking into account change accommodations. This is in particular true for long-lived systems. For such systems, there is a need to address evolvability explicitly during the entire lifecycle, carry out software evolution efficiently and reliably, and prolong the productive lifetime of the software systems.

    In this thesis, we study evolution of software architecture and investigate ways to support this evolution.           The central theme of the thesis is how to analyze software evolvability, i.e. a system’s ability to easily accommodate changes. We focus on several particular aspects: (i) what software characteristics are necessary to constitute an evolvable software system; (ii) how to assess evolvability in a systematic manner; (iii) what impacts need to be considered given a certain change stimulus that results in potential requirements the software architecture needs to adapt to, e.g. ever-changing business requirements and advances of technology.

    To improve the capability in being able to on forehand understand and analyze systematically the impact of a change stimulus, we introduce a software evolvability model, in which subcharacteristics of software evolvability and corresponding measuring attributes are identified. In addition, a further study of one particular measuring attribute, i.e. modularity, is performed through a dependency analysis case study.

    We introduce a method for analyzing software evolvability at the architecture level. This is to ensure that the implications of the potential improvement strategies and evolution path of the software architecture are analyzed with respect to the evolvability subcharacteristics. This method is proposed and piloted in an industrial setting.

    The fact that change stimuli come from both technical and business perspectives spawns two aspects that we also look into in this research, i.e. to respectively investigate the impacts of technology-type and business-type of change stimuli.

  • 11.
    Pei Breivold, Hongyu
    Mälardalen University, School of Innovation, Design and Engineering.
    Software Architecture Evolution through Evolvability Analysis2011Doctoral thesis, monograph (Other academic)
    Abstract [en]

    In this thesis, we study evolution of software architecture and investigate ways to support this evolution.     The central theme of the thesis is how to analyze software evolvability, i.e., a system’s ability to easily accommodate changes. We focus on two main aspects: (i) what software characteristics are necessary for an evolvable software system; and (ii) how to assess evolvability of long-lived proprietary systems in a systematic manner. A secondary focus is to investigate how evolvability is addressed in open source software evolution.

    We have performed a systematic review of architecture evolution research, and proposed a software evolvability model, in which subcharacteristics of software evolvability and corresponding measuring attributes are identified. Based on this model, we have proposed the softwarearchitectureevolvabilityanalysis (AREA) process which provides repeatable techniques for supporting software architecture evolution:

    a)                  Qualitative evolvability analysis method that focuses on improving the capability of being able to understand and analyze systematically the impact of change stimuli on software architecture evolution;

    b)                  Quantitative evolvability analysis method that provides quantifications of stakeholders’ evolvability concerns and potential architectural solutions’ impacts on evolvability.

    These techniques have been validated in industrial settings of different domains, and can be used as an integral part of software development and evolution process. This is to ensure that the implications of the potential improvement strategies and evolution path of software architectures are analyzed with respect to the evolvability subcharacteristics.

    As a supplementary research contribution, we have conducted a systematic review of the existing studies in open source software (OSS) evolution, and performed a comprehensive analysis which describes how software evolvability is addressed during the development and evolution of OSS, and identified challenges and future research directions in OSS evolution.

  • 12.
    Pei Breivold, Hongyu
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Eriksson, Peter
    ABB AB.
    Analyzing Software Evolvability2008In: Proceedings - International Computer Software and Applications Conference, 2008, p. 327-330Conference paper (Refereed)
    Abstract [en]

    Software evolution is characterized by inevitable changes of software and increasing software complexities, which in turn may lead to huge costs unless rigorously taking into account change accommodations. This is in particular true for long-lived systems in which changes go beyond maintainability. For such systems, there is a need to address evolvability explicitly during the entire lifecycle. Nevertheless, there is a lack of a model that can be used for analyzing, evaluating and comparing software systems in terms of evolvability. In this paper, we describe the initial establishment of an evolvability model as a framework for analysis of software evolvability. We motivate and exemplify the model through an industrial case study of a software-intensive automation system.

  • 13.
    Pei Breivold, Hongyu
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Land, Rikard
    Mälardalen University, School of Innovation, Design and Engineering.
    Larsson, Stig
    Mälardalen University, School of Innovation, Design and Engineering.
    Using Dependency Model to Support Software Architecture Evolution2008In: Automated Software Engineering - Workshops, 2008. ASE Workshops 2008. 23rd IEEE/ACM International Conference on, 2008, p. 82-91Conference paper (Refereed)
    Abstract [en]

    Evolution of software systems is characterized by inevitable changes of software and increasing software complexity, which in turn may lead to huge maintenance and development costs.  For long-lived systems, there is a need to address and maintain evolvability (i.e. a system’s ability to easily accommodate changes) during the entire lifecycle. As designing software for ease of extension and contraction depends on how well the software structure is organized, this paper explores the relationships between evolvability, modularity and inter-module dependency. Through a case study of an industrial power control and protection system, we describe our work in managing its software architecture evolution, guided by the dependency analysis at the architectural level.  The paper includes also the main analysis results, our experiences and reflections during the dependency analysis process in the case study.

  • 14.
    Pei Breivold, Hongyu
    et al.
    ABB AB, Corporate Research, Västerås, Sweden.
    Larsson, Magnus
    ABB AB, Corporate Research, Västerås, Sweden.
    Component-Based and Service-Oriented Software Engineering: Key Concepts and Principles2007In: EUROMICRO 2007 - Proceedings of the 33rd EUROMICRO Conference on Software Engineering and Advanced Applications, SEAA 200, 2007, Vol. Article number 4301060Conference paper (Refereed)
    Abstract [en]

    Component-based software engineering (CBSE) and service-oriented software engineering (SOSE) are two of the most dominant engineering paradigms in current software community and industry. Although they have continued their development tracks in parallel and have different focus, both paradigms have similarities in many senses, which also have resulted in confusion in understanding and applying similar concepts or the same concepts designated differently. In this paper, we present a comparison analysis framework of CBSE and SOSE and analyze them from a variety of perspectives. We discuss as well the possibility of combining the strengths of the two paradigms to meet non-functional requirements.

    The contribution of this paper is to clarify the characteristics of CBSE and SOSE, shorten the gap between them and bring the two worlds together so that researchers and practitioners become aware of essential issues of both paradigms, which may serve as inputs for further utilizing them in a reasonable and complementary way.

  • 15.
    Pei Breivold, Hongyu
    et al.
    Mälardalen University, School of Innovation, Design and Engineering. ABB Corporate Research.
    Larsson, Stig
    Mälardalen University, School of Innovation, Design and Engineering. ABB Corporate Research.
    Land, Rikard
    Mälardalen University, School of Innovation, Design and Engineering.
    Migrating Industrial Systems towards Software Product Lines: Experiences and Observations through Case Studies2008In: EUROMICRO 2008 - Proceedings of the 34th EUROMICRO Conference on Software Engineering and Advanced Applications, SEAA 2008, 2008, p. 232-239Conference paper (Refereed)
    Abstract [en]

    Software product line engineering has emerged as one of the dominant paradigms for developing variety of software products based on a shared platform and shared software artifacts. An important and challenging type of software maintenance and evolution is how to cost-effectively manage the migration of legacy systems towards product lines. This paper presents a structured migration method and describes our experiences in migrating industrial legacy systems into product lines. In addition, we present a number of specific recommendations for the transition process which will be of value to organizations that are considering a product line approach to their business. The recommendations cover four perspectives: business, organization, product development processes and technology.

  • 16.
    Pei-Breivold, Hongyu
    Mälardalen University, School of Innovation, Design and Engineering.
    A Systematic Review of Software Evolvability2009Conference paper (Refereed)
    Abstract [en]

    For long-lived systems, there is a need to address evolvability (i.e. a system’s ability to easily accommodate changes) explicitly during the entire lifecycle. In this paper, we undertake a systematic review to obtain an overview of the existing studies in promoting software evolvability at architectural level. The search strategy identified 58 studies that were catalogued as primary studies for this review after using multi-step selection process. The studies are classified into five main categories of themes, including techniques that support quality considerations during software architecture design, architectural quality evaluation, economic valuation, architectural knowledge management and modeling techniques. The review investigates what is currently known about software evolvability architecting at architecture level. Implications for research and practice are presented.

  • 17.
    Pei-Breivold, Hongyu
    et al.
    ABB Corporate Research.
    Chauhan, Muhammad Aufeef
    Mälardalen University, School of Innovation, Design and Engineering.
    Ali Babar, Muhammad
    IT University of Copenhagen.
    A Systematic Review of Studies of Open Source Software Evolution2010In: Proceedings - Asia-Pacific Software Engineering Conference, APSEC, 2010, 2010, p. 356-365Conference paper (Refereed)
    Abstract [en]

    Software evolution relates to how software systems evolve over time. With the emergence of the open source paradigm, researchers are provided with a wealth of data for open source software evolution analysis. In this paper, we present a systematic review of open source software (OSS) evolution. The objective of this review is to obtain an overview of the existing studies in open source software evolution, with the intention of achieving an understanding of how software evolvability (i.e., a software system's ability to easily accommodate changes) is addressed during development and evolution of open source software. The primary studies for this review were identified based on a pre-defined search strategy and a multi-step selection process. Based on their research topics, we have identified four main categories of themes: software trends and patterns, evolution process support, evolvability characteristics addressed in OSS evolution, and examining OSS at software architecture level. A comprehensive overview and synthesis of these categories and related studies is presented as well.

  • 18.
    Pei-Breivold, Hongyu
    et al.
    ABB Corporate Research, Industrial Software Systems.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    A Survey of Software Architecture Evolvability2009Report (Other academic)
    Abstract [en]

    For long-lived systems, there is a need to address evolvability (i.e. a system’s ability to easily accommodate changes) explicitly during the entire lifecycle. In this report, we undertake a systematic review to obtain an overview of the existing studies in promoting software evolvability at architectural level. The search strategy identified 3036 studies, of which 54 were catalogued as primary studies for this review after using multi-step selection process. The studies are classified into five main categories of themes, including techniques that support quality considerations during software architecture design, architectural quality evaluation, economic valuation, architectural knowledge management and modeling techniques. Four dimensions of factors are identified that exert influence on software evolvability. To cope with these diverse influencing factors, combination of appropriate techniques becomes necessary.

  • 19.
    Pei-Breivold, Hongyu
    et al.
    ABB.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    A Systematic Review on Architecting for Software Evolvability2010In: Proceedings of the Australian Software Engineering Conference, ASWEC 2010, 2010, p. 13-22Conference paper (Refereed)
    Abstract [en]

    For long-lived systems, there is a need to address evolvability (i.e. a system’s ability to easily accommodate changes) explicitly during the entire lifecycle. In this paper, we undertake a systematic review to obtain an overview of the existing studies in promoting software evolvability at architectural level. The search strategy identified 58 studies that were catalogued as primary studies for this review after using multi-step selection process. The studies are classified into five main categories of themes, including techniques that support quality considerations during software architecture design, architectural quality evaluation, economic valuation, architectural knowledge management and modeling techniques. The review investigates what is currently known about architecting software evolvability at architecture level. Implications for research and practice are presented.

  • 20.
    Pei-Breivold, Hongyu
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    An Extended Quantitative Analysis Approach for Architecting Evolvable Software Systems2010In: Computing Professionals Conference Workshop on Industrial Software Evolution and Maintenance Processes (WISEMP'10), IEEE, MontrEal, QuEbec, Canada, 2010Conference paper (Refereed)
    Abstract [en]

    For long-lived systems, there is a need to address evolvability, i.e. a system's ability to easily accommodate changes, explicitly during the entire lifecycle. To improve the capability in being able to understand and analyze systematically software architecture evolution, we introduced in our earlier work a software evolvability model and a structured qualitative method for analyzing evolvability at the architectural level - the ARchitecture Evolvability Analysis (AREA) method. As architecture is influenced by system stakeholders representing different concerns and goals, the business and technical decisions that articulate the architecture tend to exhibit tradeoffs and need to be negotiated and resolved. To avoid intuitive choice of architectural solutions, we propose to extend the AREA method and strengthen its tradeoff analysis with explicit and quantitative treatment of stakeholders' prioritization of evolvability subcharacteristics and their preferences on design solutions. Finally, an example is used to illustrate the concept and applicability of the proposed approach.

  • 21.
    Pei-Breivold, Hongyu
    et al.
    ABB.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Analysis of Software Evolvability in Quality Models2009In: 35th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Software Process and Product Improvement (SPPI) Track, IEEE, 2009, p. 279-282Conference paper (Refereed)
    Abstract [en]

    For long-lived systems, there is a need to address evolvability explicitly. For this purpose, we have in our earlier work developed a software evolvability framework based on industrial case studies. With this as input in this paper we analyze several existing quality models for the purpose of evaluating how software evolvability is addressed in these models. The goal of the analysis is to investigate if the elements of the evolvability framework can be systematically managed or integrated into different existing quality models. Our conclusion is that although none of the existing quality models is dedicated to the analysis of software evolvability, we can enrich respective quality model through integrating the missing elements, and adapt each quality model for software evolvability analysis purpose.

  • 22.
    Pei-Breivold, Hongyu
    et al.
    ABB Corporate Research, Sweden.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Experiences and Reflections on Cloud Computing Course for Second and Third Cycle Education2015In: ECSAW '15 Proceedings of the 2015 European Conference on Software Architecture Workshops, 2015, p. Article No. 29-Conference 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.

  • 23.
    Pei-Breivold, Hongyu
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Software Architecture Evolution –: An Integrated Approach in Industry (Extended Abstract)2010In: Australian Software Engineering Conference (ASWEC), Bulletin of Applied Computing and Information Technology, 2010Conference paper (Refereed)
    Abstract [en]

    To improve the capability in being able to understand and analyze systematically software architecture evolution, we introduced in our earlier work a software evolvability model and software architecture evolvability analysis method. This extended abstract reports the integration of the evolvability model and evolvability analysis method in an industrial context.

  • 24.
    Pei-Breivold, Hongyu
    et al.
    ABB Corporate Research, Västerås.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Using Software Evolvability Model for Evolvability Analysis2008Report (Other academic)
    Abstract [en]

    Software evolution is characterized by inevitable changes of software and increasing software complexities, which in turn may lead to huge costs unless rigorously taking into account change accommodations. This is in particular true for long-lived systems in which changes go beyond maintainability. For such systems, there is a need to address evolvability explicitly in the requirements and early design phases and maintain it during the entire lifecycle. Nevertheless, there is a lack of a model that can be used for analyzing, evaluating and comparing software systems in terms of evolvability. In this paper, we describe the initial establishment of an evolvability model as a framework for analysis of software evolvability. We motivate and exemplify the model through an industrial case study of a software-intensive automation system.

  • 25.
    Pei-Breivold, Hongyu
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Land, Rikard
    Mälardalen University, School of Innovation, Design and Engineering.
    Larsson, Magnus
    Mälardalen University, School of Innovation, Design and Engineering.
    Analyzing Software Evolvability of an Industrial Automation Control System: A Case Study2008In: Proceedings - The 3rd International Conference on Software Engineering Advances, ICSEA 2008, 2008, p. 205-213Conference paper (Refereed)
  • 26.
    Pei-Breivold, Hongyu
    et al.
    ABB Corporate Research.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Larsson, Magnus
    ABB Corporate Research.
    A systematic review of software architecture evolution research2012In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 54, no 1, p. 16-40Article in journal (Refereed)
    Abstract [en]

    Context: Software evolvability describes a software system's 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.

  • 27.
    Pei-Breivold, Hongyu
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Jansen, Anton
    ABB.
    Sandström, Kristian
    Mälardalen University, School of Innovation, Design and Engineering.
    Crnkovic, Ivica
    Mälardalen University, School of Innovation, Design and Engineering.
    Virtualize for Architecture Sustainability in Industrial Automation2013In: : Technology, 2013Conference paper (Refereed)
    Abstract [en]

    The technique of virtualization and cloud computing to manage system functionality and resources regardless of their physical locations is changing the way businesses and users interact with IT resources. Although several commercially available virtualization solutions already exist in the market, both for server and embedded real-time based systems, the deployment of virtualization and cloud-based technologies into the industrial automation domain is new. In this paper, we will first present the emerging trends of industrial automation domain and identify the architectural sustainability challenges that follow. Based on these challenges, we will then analyze how virtualization technology can contribute to cope with them, as well as the additional opportunities that it brings to industrial automation domain. The contributions of this paper are (1) to communicate the main trends happening in industrial automation, (2) clarify the architecture sustainability challenges that the automation domain is facing, and (3) identify the potentials of further utilizing virtualization technology in the industry domain.

  • 28.
    Pei-Breivold, Hongyu
    et al.
    ABB AB, Corporate Research.
    Larsson, Magnus
    ABB AB, Corporate Research.
    Component-Based and Service-Oriented Software Engineering: Key Concepts and Principles2007In: EUROMICRO 2007 - Proceedings of the 33rd EUROMICRO Conference on Software Engineering and Advanced Applications, SEAA 2007, 2007, p. 13-20Conference paper (Refereed)
    Abstract [en]

    Component-based software engineering (CBSE) and service-oriented software engineering (SOSE) are two of the most dominant engineeringparadigms in current software community and industry. Although they have continued their development tracks in parallel and have different focus, both paradigms have similarities in many senses, which also have resulted in confusion in understanding and applying similar concepts or the same concepts designated differently. In this paper, we present a comparison analysis framework of CBSE and SOSE and analyze them from a variety of perspectives. We discuss as well the possibility of combining the strengths of the two paradigms to meet non-functional requirements. The contribution of this paper is to clarify the characteristics of CBSE and SOSE, shorten the gap between them and bring the two worlds together so that researchersand practitioners become aware of essential issues of both paradigms, which may serve as inputs for further utilizing them in a reasonable andcomplementary way.

  • 29.
    Pei-Breivold, Hongyu
    et al.
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Sandström, Kristian
    Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Internet of Things for Industrial Automation - Challenges and Technical2015In: 2015 IEEE International Conference on Data Science and Data Intensive Systems, DSDIS 2015, 2015, p. 532-539Conference paper (Refereed)
    Abstract [en]

    Using internet of things (IoT) to connect things, service, and people for intelligent operations has been discussed and deployed in many industry domains such as smart city, smart energy, healthcare, food and water tracking, logistics and retail, and transportation. However, scarce information is available for IoT usage in industrial automation domain for reliable and collaborative automation with respect to e.g., enabling scalable collaboration between heterogeneous devices and systems, offering predictable and fault-tolerant real-time closed-loop control, and inclusion of intelligent service features from edge devices to the cloud. In this paper, we will clarify the specific quality attribute constraints within industrial automation, present specific industrial IoT challenges due to these constraints, and discuss the potentials of utilizing some technical solutions to cope with these challenges.

  • 30.
    Pei-Breivold, Hongyu
    et al.
    ABB Corporate Research, Sweden.
    Sandström, Kristian
    ABB Corporate Research, Sweden.
    Virtualize for Test Environment in Industrial Automation2014In: 20th IEEE International Conference on Emerging Technologies and Factory Automation ETFA'15, 2014Conference paper (Refereed)
    Abstract [en]

    Performing system test for large-scale industrial systems is a challenging activity due to the complexity involved in managing the variety of distributed hardware systems in general, and the hardware-related challenges in test environment in particular. Virtualization technology opens up the possibility to address these challenges, e.g., with respect to cost efficient scalability. In this paper, we identify hardware-related challenges in the test environment for industrial automation systems, identify relevant research studies that address these issues using virtualization technology, and analyze their applicability in the industry domain. In addition, we analyze the impacts of virtualization on essential industrial system requirements with respect to performance, timing, reliability, availability, and safety in the industrial automation domain, and we discuss further limitations in the virtualized test environment.

  • 31.
    Pei-Breivold, Hongyu
    et al.
    ABB Corporate Research.
    Sundmark, Daniel
    Mälardalen University, School of Innovation, Design and Engineering.
    Wallin, Peter
    Mälardalen University, School of Innovation, Design and Engineering.
    Larsson, Stig
    Mälardalen University, School of Innovation, Design and Engineering.
    What Does Research Say About Agile and Architecture?2010In: Proceedings - 5th International Conference on Software Engineering Advances, ICSEA 2010, 2010, p. 32-37Conference paper (Refereed)
    Abstract [en]

    Agile has been used to refer to a software development paradigm that emphasizes rapid and flexible development. In the meanwhile, we have through our practical experiences in scaling up agile methods, noticed that architecture plays an important role. Due to the inter-relationship between agile methods and architecture, as well as divergent perceptions on their correlation stated in numerous sources, we are motivated to find out how these perceptions are supported by findings in the research community in general and in empirical studies in particular. To fully benefit from agile practices and architectural disciplines, we need empirical data on the perceived and experienced impacts of introducing agile methods to existing software development process, as well as correlations between agile and architecture. In this paper, we survey the research literature for statements made regarding the relationship between agile development and software architecture. The main findings are that there is a lack of scientific support for many of the claims that are concerned with agile and architecture, and more empirical studies are needed to fully reveal the benefits and drawbacks implied by an agile software development method.

1 - 31 of 31
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf