Browsing by Keyword "Software reuse"
Now showing 1 - 2 of 2
Results Per Page
Sort Options
Item Third international workshop on knowledge-oriented product line engineering (KOPLE 2012)(2012) Hamza, Haitham S.; Martinez, Jabier; Thurimella, Anil Kumar; Deogun, Jitender S.; SWTSoftware Product Line Engineering (PLE) exploits systematic reuse by identifying and methodically reusing software artifacts to develop different but related software systems. Developing Product Lines requires analysis skills to identify, model, and encode domain and product knowledge into artifacts that can be systematically reused across the development life-cycle. As such, Knowledge plays a paramount role in the success of the various activities of PLE. The objective of the KOPLE workshop series is to bring together SPL researchers and practitioners from academia and industry to investigate the role of Knowledge in PLE. Knowledge is usually encapsulated in PL architectures in a tacit or implicit way, and this may appear to be sufficient for industry to implement successful product lines. Nevertheless, KOPLE also aims to become a discussion forum about techniques and methods to convert from tacit to explicit Knowledge in PLE and to process and use this Knowledge for optimizing and innovating PLE processes.Item Variability Debt: A Multi-method Study(Association for Computing Machinery, 2023-11-07) Wolfart, Daniele; Assunção, Wesley K.Guez; Martinez, Jabier; SWTTechnical debt is a metaphor to guide the identification, measurement, and general management of decisions that were mostly appropriate in the short term but created obstacles mainly for the evolution and maintenance of systems. Variability management, which is the ability to create variants of systems to satisfy different needs, is a potential source of technical debt. Variability debt, a term coined in this work, is caused by sub-optimal solutions in the implementation of variability management in software systems. We performed a systematic literature review to characterize variability debt, and conducted a field study in which we report quantitative and qualitative analysis based on documents (e.g., requirements, specifications, source code, and test cases) and a survey with stakeholders. The context is a large company with three different systems, where opportunistic reuse was applied to create variants for each system. We describe and characterize the variability debt phenomenon in this field study, and we assess the validity of the metaphor to create awareness in diverse company stakeholders and to guide technical debt management research related to variability aspects. The analysis of the field study's artifacts show evidences of factors that complicate the evolution of the variants, such as code duplication and non-synchronized artifacts. Time pressure is identified as the main cause for not considering other options than opportunistic reuse. Technical practitioners mostly agree on the creation of usability problems and complex maintenance of multiple independent variants. However, this is not fully perceived by managerial practitioners.