In the last decade, software components have been of an increased interest in software engineering community. The appealing concepts of building systems from existing components and reusing components, as well as the appearance of new technologies that enabled the separation of component development from system development, attracted researchers and industry to develop and apply principles of component-based software engineering. Today, these concepts are understood as very important in software development, and are a standard part of software engineering approaches.