Formalising Behaviour Trees with CSP Kirsten Winter School of Information Technology and Electrical Engineering University of Queensland 4072, Australia phone: +61 7 3365 1625 fax: +61 7 3365 4999 kirsten@svrc.uq.edu.au Abstract. Behaviour Trees is a novel approach for requirements engi- neering. It advocates a graphical tree notation that is easy to use and to understand. Individual requirements are modelled as single trees which later on are integrated into a model of the system as a whole. We develop a formal semantics for a subset of Behaviour Trees using CSP. This work, on one hand, provides tool support for Behaviour Trees. On the other hand, it builds a front-end to a subset of the CSP notation and gives CSP users a new modelling strategy which is well suited to the challenges of requirements engineering. Keywords: Requirements engineering, model checking, Behaviour Trees, CSP. 1 Introduction Modelling system requirements in a complete and traceable manner is an es- sential step in system design. Usually, this step has to bridge the gap between a natural language description and a formal or informal notation. To ease the task, the notation should support the most direct translation from the given de- scription. It should be easily understood by customers who are not familiar with mathematical notations. Ideally, it would also provide a means to trace back the ingredients in the resulting model to parts of the given text. Analysing the requirements model is a crucial step toward early error detection. Gaps and inconsistencies in the requirements discovered in the early phase of modelling can still be rectified easily. For larger systems, this analysis should be supported by tools. Tool support suggests the use of a formal modelling notation. However, formal notations are usually not very close to informally given requirements and for customers are often hard to read and to understand. Addressing this twofold need, we suggest the integration of a graphical notation that supports require- ments engineering, with a formal notation that provides a formal semantics and tool support for the analysis. We are aiming at integrating Behaviour Trees and CSP. The Behaviour Tree Notation [Dro03] is a graphical notation that allows the user to first model individual requirements that are subsequently integrated into a system design model. This integration is based on the tree structure: individual requirements are modelled by simple tree structures and are integrated by graft- ing one tree, A, onto a node, B, of another tree when the root node of A matches