Challenges and industry practices for managing software variability in small and medium sized enterprises

Tuomas Ihme, Minna Pikkarainen (Corresponding Author), Susanna Teppola, Jukka Kääriäinen, O. Biot

Research output: Contribution to journalArticleScientificpeer-review

9 Citations (Scopus)

Abstract

Software variability is an ability to change (configure, customize, extend) software artefacts (e.g. code, product, domain requirements, models, design, documentation, test cases) for a specific context. Optimized variability management can lead a software company to 1) shorter development lead time, 2) improved customer and improved user satisfaction, 3) reduced complexity of product management (more variability, same $) and 4) reduced costs (same variability, less $). However, it is not easy for software companies, especially small and medium size of enterprises to deal with variability. In this paper we present variability challenges and used practices collected from five SMEs. Our study indicates that increased product complexity can lead growing SMEs to the time-consuming decision-making. Many of the analyzed medium size of companies also expect improved tool support to help them to boost their productivity when managing increasingly complex products and increasing amount of variants In fact, in many of the analysed SMEs, a high level of automation in design, release management and testing are or become a key factor for market success By introducing the challenges and used practices related to variability the paper deepens understanding of this highly relevant but relatively under-researched phenomenon and contributes to the literature on software product line engineering.
Original languageEnglish
Pages (from-to)1144-1168
JournalEmpirical Software Engineering
Volume19
Issue number4
DOIs
Publication statusPublished - 2014
MoE publication typeA1 Journal article-refereed

Fingerprint

Industry
Automation
Productivity
Decision making
Testing
Costs

Keywords

  • software variability challenges
  • variability practices

Cite this

@article{778cca5a7fff49a48ab8d5c463c18808,
title = "Challenges and industry practices for managing software variability in small and medium sized enterprises",
abstract = "Software variability is an ability to change (configure, customize, extend) software artefacts (e.g. code, product, domain requirements, models, design, documentation, test cases) for a specific context. Optimized variability management can lead a software company to 1) shorter development lead time, 2) improved customer and improved user satisfaction, 3) reduced complexity of product management (more variability, same $) and 4) reduced costs (same variability, less $). However, it is not easy for software companies, especially small and medium size of enterprises to deal with variability. In this paper we present variability challenges and used practices collected from five SMEs. Our study indicates that increased product complexity can lead growing SMEs to the time-consuming decision-making. Many of the analyzed medium size of companies also expect improved tool support to help them to boost their productivity when managing increasingly complex products and increasing amount of variants In fact, in many of the analysed SMEs, a high level of automation in design, release management and testing are or become a key factor for market success By introducing the challenges and used practices related to variability the paper deepens understanding of this highly relevant but relatively under-researched phenomenon and contributes to the literature on software product line engineering.",
keywords = "software variability challenges, variability practices",
author = "Tuomas Ihme and Minna Pikkarainen and Susanna Teppola and Jukka K{\"a}{\"a}ri{\"a}inen and O. Biot",
year = "2014",
doi = "10.1007/s10664-013-9253-0",
language = "English",
volume = "19",
pages = "1144--1168",
journal = "Empirical Software Engineering",
issn = "1382-3256",
publisher = "Springer",
number = "4",

}

Challenges and industry practices for managing software variability in small and medium sized enterprises. / Ihme, Tuomas; Pikkarainen, Minna (Corresponding Author); Teppola, Susanna; Kääriäinen, Jukka; Biot, O.

In: Empirical Software Engineering, Vol. 19, No. 4, 2014, p. 1144-1168.

Research output: Contribution to journalArticleScientificpeer-review

TY - JOUR

T1 - Challenges and industry practices for managing software variability in small and medium sized enterprises

AU - Ihme, Tuomas

AU - Pikkarainen, Minna

AU - Teppola, Susanna

AU - Kääriäinen, Jukka

AU - Biot, O.

PY - 2014

Y1 - 2014

N2 - Software variability is an ability to change (configure, customize, extend) software artefacts (e.g. code, product, domain requirements, models, design, documentation, test cases) for a specific context. Optimized variability management can lead a software company to 1) shorter development lead time, 2) improved customer and improved user satisfaction, 3) reduced complexity of product management (more variability, same $) and 4) reduced costs (same variability, less $). However, it is not easy for software companies, especially small and medium size of enterprises to deal with variability. In this paper we present variability challenges and used practices collected from five SMEs. Our study indicates that increased product complexity can lead growing SMEs to the time-consuming decision-making. Many of the analyzed medium size of companies also expect improved tool support to help them to boost their productivity when managing increasingly complex products and increasing amount of variants In fact, in many of the analysed SMEs, a high level of automation in design, release management and testing are or become a key factor for market success By introducing the challenges and used practices related to variability the paper deepens understanding of this highly relevant but relatively under-researched phenomenon and contributes to the literature on software product line engineering.

AB - Software variability is an ability to change (configure, customize, extend) software artefacts (e.g. code, product, domain requirements, models, design, documentation, test cases) for a specific context. Optimized variability management can lead a software company to 1) shorter development lead time, 2) improved customer and improved user satisfaction, 3) reduced complexity of product management (more variability, same $) and 4) reduced costs (same variability, less $). However, it is not easy for software companies, especially small and medium size of enterprises to deal with variability. In this paper we present variability challenges and used practices collected from five SMEs. Our study indicates that increased product complexity can lead growing SMEs to the time-consuming decision-making. Many of the analyzed medium size of companies also expect improved tool support to help them to boost their productivity when managing increasingly complex products and increasing amount of variants In fact, in many of the analysed SMEs, a high level of automation in design, release management and testing are or become a key factor for market success By introducing the challenges and used practices related to variability the paper deepens understanding of this highly relevant but relatively under-researched phenomenon and contributes to the literature on software product line engineering.

KW - software variability challenges

KW - variability practices

U2 - 10.1007/s10664-013-9253-0

DO - 10.1007/s10664-013-9253-0

M3 - Article

VL - 19

SP - 1144

EP - 1168

JO - Empirical Software Engineering

JF - Empirical Software Engineering

SN - 1382-3256

IS - 4

ER -