An existing system is being extensively enhanced by extracting and reusing design and program components. This is an example of: A、reverse engineering. B、prototyping. C、software reuse. D、reengineering.