As new software components become available for an existing system, we can evolve not only the system itself but also its requirements based on the new components. In this paper, we propose a method to support requirements evolution by replacing a component with another component, and by changing the current requirements so as to adapt to the new component. To explore the possibilities of such a replacement, we use the technique of specification matching. To change the current requirements, we modify the structure by following the concept of Design by Contract.