ABSTRACT
Software Product Lines are a strategic long-term investment and must evolve to meet new requirements over many years. In previous work, we have shown a model-driven approach (called EvoPL [21]) for planning and managing long-term evolution of product lines. It allows specifying historic and planned future evolution in terms of changes on feature model level. It provides benefits like abstraction, efficiency through automation, and the capability to perform analysis based on models.
In this paper, we argue that specifying changes alone is beneficial but not sufficient. This is because for strategic evolution planning "decision drivers" like goals, requirements, and rationale are essential information as well.
Hence, we propose a modeling approach that represents such decision drivers and their interrelationships. The approach is based on concepts from literature (e.g., QOC and goal-oriented requirements engineering) and combines and extends them to address the specific needs of model-driven long-term evolution management. Beyond the basic usage for documentation, the suggested models can be used for systematic future planning and tool-supported analysis, e.g., to evaluate the consistency of planned evolutionary changes.
- S. Ajila and B. A. Kaba. Using traceability mechanisms to support software product line evolution. In IRI, pages 157--162, 2004.Google ScholarCross Ref
- M. A. Babar, I. Gorton, and R. Jeffery. Toward a framework for capturing and using architecture design knowledge. Technical report, UNSW-CSE University of New South Wales, School of Computer Science and Software Engineering, 2005.Google Scholar
- L. Bass, P. Clements, and R. Kazman. Software architecture in practice. SEI series in software engineering. Addison-Wesley, Boston, MA, USA, 2nd edition, 2003. Google ScholarDigital Library
- J. Bosch. Maturity and evolution in software product lines: Approaches, artefacts, and organization. In SPLC 2002, pages 257--271, 2002. Google ScholarDigital Library
- Y. Chen. A process-centric approach for software product line evolution management. In SPLYR 2004, pages 9--18, August 2004.Google Scholar
- A. Dardenne, A. van Lamsweerde, and S. Fickas. Goal-directed requirements acquisition. Sci. Comput. Program., 20:3--50, April 1993. Google ScholarDigital Library
- J. M. DeBaud and K. Schmid. A systematic approach to derive the scope of software product lines. In Proceedings of the 21 st International Conference on Software Engineering (ICSE'99), pages 34--43, Los Angeles, CA, USA, May 1999. Google ScholarDigital Library
- A. H. Dutoit, R. McCall, I. Mistrik, and B. Paech. Rationale Management in Software Engineering. Springer-Verlag New York, Inc., Secaucus, NJ, USA, 2006. Google ScholarDigital Library
- A. H. Dutoit and B. Paech. Supporting evolution: Using rationale in use case driven software development. In Driven Software Development?. Sixth International Workshop on Requirements Engineering: Foundation for Software Quality, 2000.Google Scholar
- G. Fischer, A. C. Lemke, R. McCall, and A. I. Morch. Making argumentation serve design. Hum.-Comput. Interact., 6:393--419, September 1991. Google ScholarDigital Library
- P. Gruenbacher. Collaborative requirements negotiation with EasyWinWin. In Proceedings of the 11th International Workshop on Database and Expert Systems Applications, DEXA '00, pages 954--958, Washington, DC, USA, 2000. IEEE Computer Society. Google ScholarDigital Library
- M. E. C. Hull, K. Jackson, and J. Dick. Requirements engineering (2. ed.). Springer, 2005. Google ScholarDigital Library
- K. Kang, S. Cohen, J. Hess, W. Novak, and S. Peterson. Feature oriented domain analysis (FODA) feasibility study. SEI Technical Report CMU/SEI-90-TR-21, 1990.Google Scholar
- W. Lam and M. Loomes. Requirements evolution in the midst of environmental change: A managed approach. In CSMR, pages 121--127, 1998. Google ScholarDigital Library
- J. Lee and K.-Y. Lai. What's in design rationale? Hum.-Comput. Interact., 6:251--280, September 1991. Google ScholarDigital Library
- E. Letier. Reasoning about Agents in Goal-Oriented Requirements Engineering. PhD thesis, Université catholique de Louvain, 2001.Google Scholar
- A. MacLean, R. M. Young, V. M. E. Bellotti, and T. P. Moran. Questions, options, and criteria: elements of design space analysis. Hum.-Comput. Interact., 6:201--250, September 1991. Google ScholarDigital Library
- T. P. Moran. Design Rationale: Concepts, Techniques, and Use. L. Erlbaum Associates Inc., Hillsdale, NJ, USA, 1996. Google ScholarDigital Library
- J. Mostow. Toward better models of the design process. AI Magazine, 6(1):44--57, 1985.Google ScholarDigital Library
- X. Peng, Y. Yu, and W. Zhao. Analyzing evolution of variability in a software product line: From contexts and requirements to features. Information & Software Technology, 53(7):707--721, 2011. Google ScholarDigital Library
- A. Pleuss, G. Botterweck, D. Dhungana, A. Polzer, and S. Kowalewski. Model-driven support for product line evolution on feature level. Journal of Systems and Software (JSS) - Special Issue on "Automated Software Evolution" (in press), 2011. http://dx.doi.org/10.1016/j.jss.2011.08.008. Google ScholarDigital Library
- C. Potts. Scenic: A strategy for inquiry-driven requirements determination. In Proceedings of the 4th IEEE International Symposium on Requirements Engineering, pages 58--65, Washington, DC, USA, 1999. IEEE Computer Society. Google ScholarDigital Library
- S. R. Schach and A. Tomer. Development/maintenance/reuse: Software evolution in product lines. In SPLC 2000, pages 437--450, 2000. Google ScholarDigital Library
- A. Tang, M. A. Babar, I. Gorton, and J. Han. A survey of architecture design rationale. Journal of Systems and Software, 79(12):1792--1804, 2006. Google ScholarDigital Library
- A. K. Thurimella and B. Bruegge. Evolution in product line requirements engineering: A rationale management approach. In Proc. 15th IEEE Int. Requirements Engineering Conf. RE '07, pages 254--257, 2007.Google ScholarCross Ref
- A. Van Lamsweerde. Goal-oriented requirements engineering: A guided tour. In Proceedings of the Fifth IEEE International Symposium on Requirements Engineering, RE '01, pages 249--, Washington, DC, USA, 2001. IEEE Computer Society. Google ScholarDigital Library
- T. Wolf. Rationale-based Unified Software Engineering Model. VDM Verlag, Saarbrcken, Germany, 2008. Google ScholarDigital Library
- Y. Yu, J. C. S. do Prado Leite, A. Lapouchnian, and J. Mylopoulos. Configuring features with stakeholder goals. In SAC, pages 645--649, 2008. Google ScholarDigital Library
Recommendations
Model-driven support for product line evolution on feature level
Highlights We model the evolution of a product line on feature model level. Our approach supports both modeling of historic evolution and proactively planning of future evolution. The initial evolution model can be derived automatically from a given ...
Software product line evolution: the Selecta system
PLEASE '10: Proceedings of the 2010 ICSE Workshop on Product Line Approaches in Software EngineeringThe current technology gives little room for the different kinds of evolution needed for any software product line (SPL): evolution of the associated engineering environment, evolution of the market and SPL scope, evolution of the products and ...
Rationale-supported mixed-initiative case-based planning
AAAI'97/IAAI'97: Proceedings of the fourteenth national conference on artificial intelligence and ninth conference on Innovative applications of artificial intelligenceMixed-initiative planning envisions a framework in which automated and human planners interact to jointly construct plans that satisfy specific objectives. In this paper, we report on our work engineering a robust mixed-initiative planning system. Human ...
Comments