A UPPAAL model consists of a network of processes described as extended timed automata. The description of a model consists of three parts: Declarations, instantiations and a system definition.
In the graphical user interface the declaration section is split into a several textual and graphical parts. The textual parts are used for declaring variables, functions, new types, etc. The graphical part is used for declaring parameterised templates that can be instantiated into processes. UPPAAL provides a rich language for defining templates in the form of extended timed automata. In contrast to classical timed automata, timed automata in UPPAAL can use a rich expression language to test and update clock, variables, record types, call user defined functions, etc.
Templates declared in the declaration section are instantiated in the process assignments sections. At this point, actual arguments are provided for the formal parameters of the templates.
Finally, all processes are composed into a system in the system declaration section.