Handle component's specification and implementation separately