This research is investigating specification and design support for software evolution by applying hierarchical abstractions based on intent rather than the aggregation and information-hiding abstractions commonly used in software engineering. Cognitive psychologists have shown that intent abstraction is consistent with human problem-solving processes. The hypothesis being evaluated in this research is that new types of specifications and designs based on this concept can assist in understanding existing software, capture the most important design rationale information in an efficient and economical way, and support the process of identifying and analyzing required changes to minimize the introduction of errors during maintenance. To evaluate these hypotheses, protocol analysis techniques are being used to explore the processes involved in software evolution tasks, and other empirical studies are being used to evaluate the impact of this new form of specification and design on these processes. ***