Software process modelling is the activity of formalising the production lifecycle of large software systems. Its aim is to formally describe a software development process, which is then effectively used and possibly enacted by an environment able to support the geographically distributed and coordinated activities involved in the process itself. I show that rule-based languages, especially logic programming languages, are an important technology for the specification, modelling, enactment and coordination of software processes. This is because most routine activities in any development process can be defined by rules. Some initial proposals aimed at simply simulating the software process by a Prolog-like program embedding some development rules. A further step toward the integration of rule-based languages in the software process has been taken using a dynamic knowledge base as project database, and a number of special primitives have been introduced to support process programs. Currently there is a trend toward more complex programming environments, called process-centred development environments. I show how some rule-based coordination language have been used to build an environment of this kind.