Specification and Collaboration Driven Software Component Selection by Lei Wang