term paper for component-based development