The researcher’s role is to understand the nature of processes and products, and the relationship between them. The practitioner’s role is to build “improved” systems, using the knowledge available. Even more than in the other disciplines, these roles are symbiotic. The researcher needs ‘laboratories’; they only exist where practitioners build software systems. The practitioner needs to understand how to build better systems; the researcher can provide the models to make this happen.