Dynamic evolution is an important phenomenon in distributed systems that undergo changes without being shut down. Several technologies are available that can support dynamic evolution, but existing software engineering methodologies will need to be extended to fully exploit this process.