Contributions
AI: What are methods and
representations that can produce
explanations of complex systems?
Software engineering: How do designers
think about their programs?
Design rationale:  What should
documentation be trying to capture?