99,894 research outputs found
Automated analysis of feature models: Quo vadis?
Feature models have been used since the 90's to describe software product lines as a way of reusing common parts in a family of software systems. In 2010, a systematic literature review was published summarizing the advances and settling the basis of the area of Automated Analysis of Feature Models (AAFM). From then on, different studies have applied the AAFM in different domains. In this paper, we provide an overview of the evolution of this field since 2010 by performing a systematic mapping study considering 423 primary sources. We found six different variability facets where the AAFM is being applied that define the tendencies: product configuration and derivation; testing and evolution; reverse engineering; multi-model variability-analysis; variability modelling and variability-intensive systems. We also confirmed that there is a lack of industrial evidence in most of the cases. Finally, we present where and when the papers have been published and who are the authors and institutions that are contributing to the field. We observed that the maturity is proven by the increment in the number of journals published along the years as well as the diversity of conferences and workshops where papers are published. We also suggest some synergies with other areas such as cloud or mobile computing among others that can motivate further research in the future.Ministerio de Economía y Competitividad TIN2015-70560-RJunta de Andalucía TIC-186
Potential Errors and Test Assessment in Software Product Line Engineering
Software product lines (SPL) are a method for the development of variant-rich
software systems. Compared to non-variable systems, testing SPLs is extensive
due to an increasingly amount of possible products. Different approaches exist
for testing SPLs, but there is less research for assessing the quality of these
tests by means of error detection capability. Such test assessment is based on
error injection into correct version of the system under test. However to our
knowledge, potential errors in SPL engineering have never been systematically
identified before. This article presents an overview over existing paradigms
for specifying software product lines and the errors that can occur during the
respective specification processes. For assessment of test quality, we leverage
mutation testing techniques to SPL engineering and implement the identified
errors as mutation operators. This allows us to run existing tests against
defective products for the purpose of test assessment. From the results, we
draw conclusions about the error-proneness of the surveyed SPL design paradigms
and how quality of SPL tests can be improved.Comment: In Proceedings MBT 2015, arXiv:1504.0192
A Systematic Review of Tracing Solutions in Software Product Lines
Software Product Lines are large-scale, multi-unit systems that enable
massive, customized production. They consist of a base of reusable artifacts
and points of variation that provide the system with flexibility, allowing
generating customized products. However, maintaining a system with such
complexity and flexibility could be error prone and time consuming. Indeed, any
modification (addition, deletion or update) at the level of a product or an
artifact would impact other elements. It would therefore be interesting to
adopt an efficient and organized traceability solution to maintain the Software
Product Line. Still, traceability is not systematically implemented. It is
usually set up for specific constraints (e.g. certification requirements), but
abandoned in other situations. In order to draw a picture of the actual
conditions of traceability solutions in Software Product Lines context, we
decided to address a literature review. This review as well as its findings is
detailed in the present article.Comment: 22 pages, 9 figures, 7 table
Innovation Initiatives in Large Software Companies: A Systematic Mapping Study
To keep the competitive advantage and adapt to changes in the market and
technology, companies need to innovate in an organised, purposeful and
systematic manner. However, due to their size and complexity, large companies
tend to focus on maintaining their business, which can potentially lower their
agility to innovate. This study aims to provide an overview of the current
research on innovation initiatives and to identify the challenges of
implementing the initiatives in the context of large software companies. The
investigation was performed using a systematic mapping approach of published
literature on corporate innovation and entrepreneurship. Then it was
complemented with interviews with four experts with rich industry experience.
Our study results suggest that, there is a lack of high quality empirical
studies on innovation initiative in the context of large software companies. A
total of 7 studies are conducted in such context, which reported 5 types of
initiatives: intrapreneurship, bootlegging, internal venture, spin-off and
crowdsourcing. Our study offers three contributions. First, this paper
represents the map of existing literature on innovation initiatives inside
large companies. The second contribution is to provide an innovation initiative
tree. The third contribution is to identify key challenges faced by each
initiative in large software companies. At the strategic and tactical levels,
there is no difference between large software companies and other companies. At
the operational level, large software companies are highly influenced by the
advancement of Internet technology. Large software companies use open
innovation paradigm as part of their innovation initiatives. We envision a
future work is to further empirically evaluate the innovation initiative tree
in large software companies, which involves more practitioners from different
companies
Agile, Web Engineering and Capability Maturity ModelI ntegration : A systematic literature review
Context
Agile approaches are an alternative for organizations developing software, particularly for those who develop Web applications. Besides, CMMI (Capability Maturity Model Integration) models are well-established approaches focused on assessing the maturity of an organization that develops software. Web Engineering is the field of Software Engineering responsible for analyzing and studying the specific characteristics of the Web. The suitability of an Agile approach to help organizations reach a certain CMMI maturity level in Web environments will be very interesting, as they will be able to keep the ability to quickly react and adapt to changes as long as their development processes get mature.
Objective
This paper responds to whether it is feasible or not, for an organization developing Web systems, to achieve a certain maturity level of the CMMI-DEV model using Agile methods.
Method
The proposal is analyzed by means of a systematic literature review of the relevant approaches in the field, defining a characterization schema in order to compare them to introduce the current state-of-the-art.
Results
The results achieved after the systematic literature review are presented, analyzed and compared against the defined schema, extracting relevant conclusions for the different dimensions of the problem: compatibility, compliance, experience, maturity and Web.
Conclusion
It is concluded that although the definition of an Agile approach to meet the different CMMI maturity levels goals could be possible for an organization developing Web systems, there is still a lack of detailed studies and analysis on the field
Measuring Software Process: A Systematic Mapping Study
Context: Measurement is essential to reach predictable performance and high capability processes. It provides
support for better understanding, evaluation, management, and control of the development process
and project, as well as the resulting product. It also enables organizations to improve and predict its process’s
performance, which places organizations in better positions to make appropriate decisions. Objective:
This study aims to understand the measurement of the software development process, to identify studies,
create a classification scheme based on the identified studies, and then to map such studies into the scheme
to answer the research questions. Method: Systematic mapping is the selected research methodology for this
study. Results: A total of 462 studies are included and classified into four topics with respect to their focus
and into three groups based on the publishing date. Five abstractions and 64 attributes were identified,
25 methods/models and 17 contexts were distinguished. Conclusion: capability and performance were the
most measured process attributes, while effort and performance were the most measured project attributes.
Goal Question Metric and Capability Maturity Model Integration were the main methods and models used
in the studies, whereas agile/lean development and small/medium-size enterprise were the most frequently
identified research contexts.Ministerio de Economía y Competitividad TIN2013-46928-C3-3-RMinisterio de Economía y Competitividad TIN2016-76956-C3-2- RMinisterio de Economía y Competitividad TIN2015-71938-RED
- …