Traditionally, software engineering processes are based on a formalist model that emphasizes strict documentation, procedural and validation standards. Although this is a poor fit for multidisciplinary research and development communities, such groups can benefit from common practices and standards. We have approached this dilemma through a process model derived from theories of collaborative work rather than formal process control. This paper describes this model and our experiences in applying it in software development. Keywords Software process, agile methods, case study, situated cognition, activity theory, distributed cognition. ACM Classification Keywords D.2.0 Software Engineering - General, D.2.9 Management, D.2.10 Design.