A Multiple-View Meta-modeling Approach for Variability Management in Software Product Lines
This paper describes a multiple-view meta-modeling approach for managing variability in software product lines using the Unified Modeling Language notation (UML). A multiple-view meta-model for software product lines describes how each view relates semantically to other views. The meta-model depicts life cycle phases, views within each phase, and meta-classes within each view. The relationships between the meta-classes in the different views are described. Consistency checking rules are defined based on the relationships among the meta-classes in the meta-model. This paper briefly describes multiple-view modeling of software product lines before describing the multiple-view meta-modeling approach for software product lines and an approach for consistency checking between meta-model views. The paper then provides a detailed description of the tool support for product line multiple-view meta-modeling, meta-model consistency checking, and product line member configuration from the product line architecture.
KeywordsProduct Line Consistency Check Target System Multiple View Software Product Line
Unable to display preview. Download preview PDF.
- 1.Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Reading (2002)Google Scholar
- 2.Gomaa, H., Kerschberg, L., Sugumaran, V., Bosch, C., Tavakoli, I.: A Knowledge-Based Software Engineering Environment for Reusable Software Requirements and Architectures. J. Automated Software Engineering 3(3/4) (August 1996)Google Scholar
- 3.Gomaa, H., Farrukh, G.A.: Methods and Tools for the Automated Configuration of Distributed Applications from Reusable Software Architectures and Components. IEE Proceedings – Software 146(6) (December 1999)Google Scholar
- 4.Gomaa, H.: Designing Concurrent, Distributed, and Real-Time Applications with UML. Addison-Wesley, Reading (2000)Google Scholar
- 5.Gomaa, H.: Object Oriented Analysis and Modeling for Families of Systems with the UML. In: Proc. International Conference on Software Reuse, Vienna, Austria (June 2000)Google Scholar
- 6.Gomaa, H., Shin, M.E.: Multiple-View Meta-Modeling of Software Product Lines. In: The Eighth IEEE International Conference on Engineering of Complex Computer Systems (ICECCS 2002), Maryland (December 2002)Google Scholar
- 8.Parnas, D.: Designing Software for Ease of Extension and Contraction. IEEE Transactions on Software Engineering (March 1979)Google Scholar
- 9.Rumbaugh, J., Booch, G., Jacobson, I.: The Unified Modeling Language Reference Manual. Addison Wesley, Reading (1999)Google Scholar
- 10.Shin, M.E.: Evolution in Multiple-View Models in Software Product Families. Ph.D. dissertation, George Mason University, Fairfax, VA (2002)Google Scholar
- 11.Weiss, D.M., Lai, C.T.R.: Software Product-Line Engineering: A Family- Based Software Development Process. Addison-Wesley, Reading (1999)Google Scholar