소프트웨어 제품라인의 출시 계획을 위한 최적해법
An Exact Solution Approach for Release Planning of Software Product Lines
0
조회
0
다운로드
2
인용
0
참고문헌
키워드
초록
Software release planning model of software product lines was formulated as a precedence-constrained multiple 0-1knapsack problem. The purpose of the model was to maximize the total profit of an entire set of selected features in a software product line over a multi-release planning horizon. The solution approach is a dynamic programming procedure. Feasible solutions at each stage in dynamic programming are determined by using backward dynamic programming approach while dynamic programming for multi-release planning is forward approach. The pre-processing procedure with a heuristic and reduction algorithm was applied to the single-release problems corresponding to each stage in multi-release dynamic programming in order to reduce the problem size. The heuristic algorithm is used to find a lower bound to the problem. The reduction method makes use of the lower bound to fix a number of variables at either 0 or 1. Then the reduced problem can be solved easily by the dynamic programming approaches. These procedures keep on going until release t = T. A numerical example was developed to show how well the solution procedures in this research works on it. Future work in this area could include the development of a heuristic to obtain lower bounds closer to the optimal solution to the model in this article, as well as computational test of the heuristic algorithm and the exact solution approach developed in this paper. Also, more constraints reflecting the characteristics of software product lines may be added to the model. For instance, other resources such as multiple teams, each developing one product or a platform in a software product line could be added to the model.
Abstract
Software release planning model of software product lines was formulated as a precedence-constrained multiple 0-1knapsack problem. The purpose of the model was to maximize the total profit of an entire set of selected features in a software product line over a multi-release planning horizon. The solution approach is a dynamic programming procedure. Feasible solutions at each stage in dynamic programming are determined by using backward dynamic programming approach while dynamic programming for multi-release planning is forward approach. The pre-processing procedure with a heuristic and reduction algorithm was applied to the single-release problems corresponding to each stage in multi-release dynamic programming in order to reduce the problem size. The heuristic algorithm is used to find a lower bound to the problem. The reduction method makes use of the lower bound to fix a number of variables at either 0 or 1. Then the reduced problem can be solved easily by the dynamic programming approaches. These procedures keep on going until release t = T. A numerical example was developed to show how well the solution procedures in this research works on it. Future work in this area could include the development of a heuristic to obtain lower bounds closer to the optimal solution to the model in this article, as well as computational test of the heuristic algorithm and the exact solution approach developed in this paper. Also, more constraints reflecting the characteristics of software product lines may be added to the model. For instance, other resources such as multiple teams, each developing one product or a platform in a software product line could be added to the model.
참고문헌 (6)
- Morin, T. L., "An algorithm for nonlinear knapsack problems", Management science, 22(10), pp.1147~1158 (1976)
- Penny, D., "An Estimation-Based Management Framework for Enhancive Maintenance in Commercial Software Products", Proceedings of the International Conference on Software Maintenance, pp.122~130 (2002)
- Samphaiboon, N., "Heuristic and exact algorithm for the precedence-constrained knapsack problem", Journal of optimization theory and applications, 105(3), pp.659~676 (2000)
- Taborda, L., "Generalized Release Planning for Product Line Architectures", Proceedings of the SPLC, The Third Software Product Lines Conference, pp.238~254 (2004)
- Ullah, M., "Towards Comprehensive Release Planning for Software Product Lines", Proceedings of the First International Workshop on Software Product Management, pp.55~59 (2006)
