[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
research-article

A method to optimize the scope of a software product platform based on end-user features

Published: 01 December 2014 Publication History

Abstract

A novel method to optimize the scope of a software product platform is proposed.The method is supported with a mathematical formulation and an optimization solver.Depending on the input parameters and the objectives, competing scopes can exist.The method shows how trade-off analysis can be performed among competing scopes.The results of the method were validated as "satisfiable" to "very satisfiable". ContextDue to increased competition and the advent of mass customization, many software firms are utilizing product families - groups of related products derived from a product platform - to provide product variety in a cost-effective manner. The key to designing a successful software product family is the product platform, so it is important to determine the most appropriate product platform scope related to business objectives, for product line development. AimThis paper proposes a novel method to find the optimized scope of a software product platform based on end-user features. MethodThe proposed method, PPSMS (Product Platform Scoping Method for Software Product Lines), mathematically formulates the product platform scope selection as an optimization problem. The problem formulation targets identification of an optimized product platform scope that will maximize life cycle cost savings and the amount of commonality, while meeting the goals and needs of the envisioned customers' segments. A simulated annealing based algorithm that can solve problems heuristically is then used to help the decision maker in selecting a scope for the product platform, by performing tradeoff analysis of the commonality and cost savings objectives. ResultsIn a case study, PPSMS helped in identifying 5 non-dominated solutions considered to be of highest preference for decision making, taking into account both cost savings and commonality objectives. A quantitative and qualitative analysis indicated that human experts perceived value in adopting the method in practice, and that it was effective in identifying appropriate product platform scope.

References

[1]
F. Ahmed, L.F. Capretz, Managing the business of software product line: an empirical investigation of key business factors, Inf. Softw. Technol., 49 (2007) 194-208.
[2]
M.S. Ali, M.A. Babar, K. Schmid, A comparative survey of economic models for software product lines, in: SEAA'09. 35th Euromicro Conference on Software Engineering and Advanced Applications, IEEE, 2009.
[3]
L. Angelis, I. Stamelos, A simulation tool for efficient analogy based cost estimation, 2000.
[4]
M.A. Ardis, D.M. Weiss, Defining families: the commonality analysis (tutorial), in: Proceedings of the 19th International Conference on Software Engineering, ACM, 1997.
[5]
M. Arros, A.D. Neto, Threats to Validity in Search-based Software Engineering Empirical Studies, UNIRIO, 2011.
[6]
H.P. In, J. Baik, S. Kim, Y. Yang, B. Boehm, A quality-based cost estimation model for the product line life cycle, CACM, 49 (2006) 85-88.
[7]
S. Bandinelli, G.S. Mendieta, Domain potential analysis: calling the attention on business issues of product-lines, Springer, 2000.
[8]
C. Berger, R. Blauth, D. Boger, C. Bolster, G. Burchill, W. DuMouchel, D. Walden, Kano's methods for understanding customer-defined quality, Center Qual. Manage. J., 2 (1993) 3-36.
[9]
C. Berger, H. Rendel, B. Rumpe, Measuring the ability to form a product line for a set of existing products, in: 4th Int. VAMOS, 2010.
[10]
G. Böckle, P. Clement, J.D. McGregor, D. Muthing, K. Schmid, A cost model for software product lines, Springer, 2004.
[11]
G. Böckle, P. Clement, J.D. McGregor, D. Muthing, K. Schmid, Calculating ROI for software product lines, Softw. IEEE, 21 (2004) 23-31.
[12]
B. Boehm, A.W. Brown, R. Mandachy, Y. Yang, A software product line life cycle cost estimation model, in: Proceedings. 2004 International Symposium on Empirical Software Engineering, ISESE'04, IEEE, 2004.
[13]
E. Capra, C. Francalanci, Cost implications of software commonality and reuse, in: Third International Conference on Information Technology: New Generations, ITNG, IEEE, 2006.
[14]
J. Coplien, D. Hoffman, D. Weiss, Commonality and variability in software engineering, Softw. IEEE, 15 (1998) 37-45.
[15]
M.B.S. de Moraes, E.S. de Almeida, S. Romero, A systematic review on software product lines scoping, in: Proceedings of 6th Experimental Software Engineering Latin American Workshop (ESELAW 2009), 2009.
[16]
J.-M. DeBaud, K. Schmid, A systematic approach to derive the scope of software product lines, in: Proceedings of the International Conference on Software Engineering (ICSE'21), ACM Press, 1999, pp. 34-43.
[17]
G. Douta, H. Talib, O. Nierstrasz, F. Langlotz, A.S. Comp, A new approach to commonality and variability analysis with applications in computer assisted orthopaedic surgery, Inf. Softw. Technol., 51 (2009) 448-459.
[18]
C. Fritsch, R. Hahn, Product line potential analysis, Springer, 2004.
[19]
B. Geppert, D.M. Weiss, Goal-oriented assessment of product-line domains, in: Proceedings. Ninth International Software Metrics Symposium, IEEE, 2003.
[20]
J. Gillain, S. Faulkner, P. Heymans, I. Jureta, M. Snoeck, Product portfolio scope optimization based on features and goals, in: Proceedings of the 16th International Software Product Line Conference, vol. 1, ACM, 2012.
[21]
J. Guo, J. White, G. Wang, J. Li, Y. Wang, A genetic algorithm for optimized feature selection with resource constraints in software product lines, J. Syst. Softw., 84 (2011) 2208-2221.
[22]
M. Harman, The current state and future of search based software engineering, in: 2007 Future of Software Engineering, IEEE Computer Society, 2007.
[23]
A. Helferich, G. Herzwurm, S. Schockert, QFD-PPP: product line portfolio planning using quality function deployment, Springer, 2005.
[24]
A. Helferich, K. Schmid, G. Herzwurm, Product management for software product lines: an unsolved problem?, CACM, 49 (2006) 66-67.
[25]
J.S. Her, J.H. Kim, S.H. Oh, S.Y. Rhew, S.D. Kim, A framework for evaluating reusability of core asset in product line engineering, Inf. Softw. Technol., 49 (2007) 740-760.
[26]
http://www.sei.cmu.edu/cmmi/tools/dev/index.cfm (accessed 12.08.13).
[27]
M. Inoki, Y. Fukazawa, Core Asset scoping method: product line positioning based on levels of coverage and consistency, in: First International Workshop on Management and Economics of Software Product Lines (MESPUL 07), 2007.
[28]
I. John, M. Eisenbarth, A decade of scoping: a survey, in: Proceedings of the 13th International Software Product Line Conference, 2009.
[29]
I. John, J. Knodel, T. Lehner, D. Muhing, A practical guide to product line scoping, in: 10th International Software Product Line Conference, 2006.
[30]
D.S. Johnson, A theoretician's guide to the experimental analysis of algorithms, in: Data Structures, Near Neighbor Searches, and Methodology: Proceedings of 5th & 6th DIMACS Implementation Challenges, American Mathematical Society, Providence, 2002, pp. 215-250.
[31]
M. Johnson, R. Kirchain, Developing and assessing commonality metrics for product families: a process-based cost-modeling approach, IEEE Trans. Eng. Manage., 57 (2010) 634-648.
[32]
H. Jung, Optimizing value and cost in requirements analysis, IEEE Softw., 15 (1998) 74.
[33]
K.C. Kang, P. Donohoe, E. Koh, J. Lee, K. Lee, Using a marketing and product plan as a key driver for product line asset development, Springer, 2002.
[34]
N. Kano, N. Seraku, F. Takahashi, S. Tsuji, Attractive quality and must-be quality, J. Jpn. Soc. Qual. Control, 14 (1984) 39-48.
[35]
J. Karlsson, K. Ryan, A cost-value approach for prioritizing requirements, IEEE Softw. (1997) 67-74.
[36]
R. Kazman, J. Asundi, M. Klien, Making architecture design decisions: An economic approach. No. CMU/SEI-2002-TR-035, Software Engineering Institute, Carnegie-Mellon University, Pittsburgh, PA, 2002.
[37]
T. Kishi, N. Noda, T. Katayama, A method for product line scoping based on a decision-making framework, Springer, 2002.
[38]
J. Lee, S. Kang, C. Kim, Software architecture evaluation methods based on cost benefit analysis and quantitative decision making, Empir. Softw. Eng., 14 (2009) 453-475.
[39]
J. Lee, S. Kang, D. Lee, A comparison of software product line scoping approaches, Int. J. Softw. Eng. Knowl. Eng., 20 (2010) 637-663.
[40]
K. Matzler, H.H. Hinterhuber, How to make product development projects more successful by integrating Kano's model of customer satisfaction into quality function deployment, Technovation, 18 (1998) 25-38.
[41]
K.S. Moorthy, Market segmentation: self-selection, and product line design, Market. Sci., 3 (1984) 288-307.
[42]
J. Muller, Value-based portfolio optimization for software product lines, in: 15th International Software Product Line Conference (SPLC), IEEE, 2011.
[43]
D. Nam, C.H. Park, Multiobjective simulated annealing: a comparative study to evolutionary algorithms, Int. J. Fuzzy Syst., 2 (2000) 87-97.
[44]
L. Nilsson-Witell, A. Fundin, Dynamics of service attributes: a test of Kano's theory of attractive quality, Int. J. Serv. Ind. Manage., 16 (2005) 152-168.
[45]
M.A. Noor, R. Rabiser, P. Grünbacher, Agile product line planning: a collaborative approach and a case study, J. Syst. Softw., 81 (2008) 868-882.
[46]
L. Northrop, P.C. Clements, A Framework for Software Product Line Practice, Version 5.0, SEI - 2007, 2007. http://www.sei.cmu.edu/productlines/index.html
[47]
B.J. Oates, Researching Information Systems and Computing, Sage, 2005.
[48]
S.Y. Park, S.D. Kim, A systematic method for scoping core assets in product line engineering, in: 12th Asia-Pacific Software Engineering Conference. APSEC'05, IEEE, 2005.
[49]
J. Peña, M.G. Hinchey, A. Ruiz-Cortés, P. Trinidad, Building the core architecture of a NASA multiagent system product line, Springer, 2007.
[50]
D.R. Peterson, Economics of software product lines, Springer, 2004.
[51]
K. Pohl, G. Böckle, F. Van Der Linden, Software product line engineering: foundations, principles and techniques, Springer, 2005.
[52]
J.S. Poulin, Measuring Software Reuse: Principles, Practices, and Economic Models, 1997.
[53]
J.S. Poulin, J.M. Caruso, A reuse metrics and return on investment model, in: Proceedings of Advances in Software Reuse, Selected Papers from the Second International Workshop on Software Reusability, IEEE, 1993.
[54]
M. Riebisch, D. Streitferdt, I. Philippow, Feature scoping for product lines, Proc. PLEES, 3 (2001).
[55]
E.M. Rogers, Diffusion of Innovations, Free Press, New York, 2010.
[56]
E. Rommes, A people oriented approach to product line scoping, PLEES, 3 (2003) 23-27.
[57]
K. Schmid, A comprehensive product line scoping approach and its validation, in: Proceedings of the 24th International Conference on Software Engineering, ACM, 2002.
[58]
K. Schmid, M. Schank, PuLSE-BEAT - a decision support tool for scoping product lines, Springer, 2000.
[59]
Y. Sireli, P. Kauffmann, E. Ozan, Integration of Kano's model into QFD for multiple product design, IEEE Trans. Eng. Manage., 54 (2007) 380-390.
[60]
A. Sundararajan, Nonlinear pricing of information goods, Manage. Sci., 50 (2004) 1660-1673.
[61]
L.J. Taborda, Generalized release planning for product line architectures, Springer, 2004.
[62]
M.I. Ullah, G. Ruhe, V. Garousi, Decision support for moving from a single product to a product portfolio in evolving software systems, J. Syst. Softw., 83 (2010) 2496-2512.
[63]
M.I. Ullah, X. Wei, B.R. Nault, G. Ruhe, Balancing business and technical objectives for supporting software product evolution, Int. J. Softw. Eng. Comput., 2 (2010) 75-93.
[64]
F.J. van der Linden, K. Schmid, E. Rommes, Software Product Lines in Action, Springer, 2007.
[65]
P.J. Van Laarhoven, E.H. Aarts, Simulated Annealing, Springer, 1987.
[66]
J. White, B. Dougherty, D.C. Schmidt, Selecting highly optimal architectural feature sets with Filtered Cartesian Flattening, J. Syst. Softw., 82 (2009) 1268-1284.
[67]
J. Withey, Investment Analysis of Software Assets for Product Lines, 1996.
[68]
Q. Xu, R.J. Jiao, X. Yang, M. Helander, H.M. Khalid, A. Opperud, An analytical Kano model for customer need analysis, Design Stud., 30 (2009) 87-110.
[69]
M.V. Zelkowitz, D.R. Wallace, Experimental models for validating technology, Computer, 31 (1998) 23-31.

Cited By

View all
  • (2023)Unleashing the Power of Implicit Feedback in Software Product Lines: Benefits AheadProceedings of the 22nd ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3624007.3624058(113-121)Online publication date: 22-Oct-2023
  • (2022)Software product line scopingJournal of Systems and Software10.1016/j.jss.2021.111189186:COnline publication date: 1-Apr-2022
  • (2021)SPLReePlan - Automated Support for Software Product Line Reengineering PlanningProceedings of the 15th Brazilian Symposium on Software Components, Architectures, and Reuse10.1145/3483899.3483902(1-10)Online publication date: 27-Sep-2021
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Journal of Systems and Software
Journal of Systems and Software  Volume 98, Issue C
December 2014
208 pages

Publisher

Elsevier Science Inc.

United States

Publication History

Published: 01 December 2014

Author Tags

  1. Commonality decision
  2. Product platform scope
  3. Software product line engineering

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 09 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Unleashing the Power of Implicit Feedback in Software Product Lines: Benefits AheadProceedings of the 22nd ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3624007.3624058(113-121)Online publication date: 22-Oct-2023
  • (2022)Software product line scopingJournal of Systems and Software10.1016/j.jss.2021.111189186:COnline publication date: 1-Apr-2022
  • (2021)SPLReePlan - Automated Support for Software Product Line Reengineering PlanningProceedings of the 15th Brazilian Symposium on Software Components, Architectures, and Reuse10.1145/3483899.3483902(1-10)Online publication date: 27-Sep-2021
  • (2020)Enhancing the Feature Retrieval Process with Scoping and Tool SupportProceedings of the 24th ACM International Systems and Software Product Line Conference - Volume B10.1145/3382026.3425767(29-36)Online publication date: 19-Oct-2020
  • (2017)Evolutionary robust optimization for software product line scopingComputer Languages, Systems and Structures10.1016/j.cl.2016.07.00747:P2(189-210)Online publication date: 1-Jan-2017

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media