Process Patterns for Component-Based Software Development
Component-Based Development (CBD) has been broadly used in software development, as it enhances reusability and flexibility, and reduces the costs and risks involved in systems development. It has therefore spawned many widely-used approaches, such as Commercial Off-The-Shelf (COTS) and software product lines. On the other hand, in order to gain a competitive edge, organizations need to define custom processes tailored to fit their specific development requirements. This has led to the emergence of process patterns and Method Engineering approaches.
We propose a set of process patterns commonly encountered in component-based development methodologies. Seven prominent component-based methodologies have been selected and reviewed, and a set of high-level process patterns recurring in these methodologies have been identified. A generic process framework for component-based development has been proposed based on these process patterns. The process patterns and the generic framework can be used for developing or tailoring a process for producing component-based systems.
KeywordsComponent-Based Development Software Development Methodologies Situational Method Engineering Process Patterns
Unable to display preview. Download preview PDF.
- 2.Ralyté, J., Brinkkamper, S., Henderson-Sellers, B. (eds.): Situational Method Engineering: Fundamentals and Experiences. In: Proceedings of the IFIP WG 8.1 Working Conference, Geneva, Switzerland, September 12-14. IFIP International Federation for Information Processing, vol. 244. Springer, Boston (2007)Google Scholar
- 3.Coplien, J.O.: A Generative Development Process Pattern Language. In: Pattern Languages of Program Design, pp. 187–196. ACM Press/ Addison-Wesley, New York (1995)Google Scholar
- 4.Ambler, S.W.: Process Patterns: Building Large-Scale Systems Using Object Technology. Cambridge University Press, Cambridge (1998)Google Scholar
- 7.Bergner, K., Rausch, A., Sihling, M., Vilbig, A.: A Componentware Development Methodology based on Process Patterns. In: 5th Annual Conference on the Pattern Languages of Programs, Monticello, Illinois (1998)Google Scholar
- 8.Firesmith, D.G., Henderson-Sellers, B.: The OPEN Process Framework: An Introduction. Addison-Wesley, Reading (2001)Google Scholar
- 9.Object Management Group: Software and Systems Process Engineering Metamodel Specification v2.0 (SPEM), OMG (2007)Google Scholar
- 10.Haumer, P.: Eclipse Process Framework Composer, Eclipse Foundation (2007)Google Scholar
- 11.Cheesman, J., Daniels, J.: UML Components: A Simple Process for Specifying Component-Based Software. Addison-Wesley, Reading (2003)Google Scholar
- 13.Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA (1990)Google Scholar
- 16.Atkinson, C., Bayer, J., Bunse, C., Kamsties, E., Laitenberger, O., Laqua, R., Muthig, D., Paech, B., Wüst, J., Zettel, J.: Component-Based Product-Line Engineering with UML. Addison-Wesley, Reading (2001)Google Scholar
- 17.Atkinson, C., Bayer, J., Laitenberger, O., Zettel, J.: Component-based Software Engineering: The KobrA Approach. In: 22nd International Conference on Software Engineering (ICSE 2000), 3rd International Workshop on Component-based Software Engineering, Limerick, Ireland (2000)Google Scholar