Patterns for evolving frameworks