Object-oriented modeling and design
Object-oriented modeling and design
A generative development-process pattern language
Pattern languages of program design
Process patterns: building large-scale systems using object technology
Process patterns: building large-scale systems using object technology
UML components: a simple process for specifying component-based software
UML components: a simple process for specifying component-based software
Component-based product line engineering with UML
Component-based product line engineering with UML
Feature-Oriented Project Line Engineering
IEEE Software
Method engineering for OO systems development
Communications of the ACM - Service-oriented computing
Situational method engineering: combining assembly-based and roadmap-driven approaches
Requirements Engineering
Process-centered review of object oriented software development methodologies
ACM Computing Surveys (CSUR)
Situational Method Engineering: Fundamentals and Experiences
Situational Method Engineering: Fundamentals and Experiences
Hi-index | 0.00 |
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.