Designing Software with Modula-3 P. Klein This paper describes the syntax and semantics of an architecture description language devised for the design specification of arbitrary software systems. The language features a graphical notation showing the system components and their structural and usability relationships, and a textual notation for the description of individual interfaces based on the Modula-3 programming language. On the basis of the architecture language, several important and frequent problems are discussed and some methodological hints are given. Finally, the mapping of a given design onto programming languages in general and Modula-3 in particular is touched.