esf and software process modeling  the esf project (eureka software factory) is a european multinational research effort funded under the eureka programme. this european programme is funding projects in the most important high technology areas. esf started in september 1986 and is intended to last for 10 years. the esf consortium currently includes three research institutions and ten industrial partners from france, norway, sweden, the united kingdom, and west germany.  the esf project aims at a factory support environment (fse) which is capable both of being configured for specific industries and of evolving with the innovation which arises from worldwide research and development. this will be achieved by providing a reference architecture for the dual purposes of customization and evolution. this reference architecture is built around particular subsystems present in any customized factory, and their standard interfaces. this will enable a high degree of independence from any particular set of software engineering (or case) tools and computer systems. for the producers of such tools the esf project intends to create a market for independently made products which can be easily combined into complete environments.  the main components of this reference architecture are a set of so-called service components, a set of user interaction components, the software bus, and the factory process engine. the service components in general consist of two parts, namely a functionality part and an underlying object management system. functions provided by service components include, for example, project planning, design and program development, variant and version control. user interaction components provide the functionality to present different kinds of data to the end user and to edit these data. their functionality also covers part of the interaction logic, i.e. managing the dialogue between the system and the end user. the software bus provides the communication mechanisms for global integration, it allows components to be implemented and executed on different machines and different operating systems which are essentially connected via lans and/or wans, thus making the functionality provided by the different components useful in large software development projects involving many people at different sites. communication in a very sophisticated way, i.e. by a high-level protocol, between the different service and user interaction components is supported by the services of the software bus. those services are in the area of the upper iso/osi layers.  the factory process engine (fpe) is the heart of the architecture. it makes the fse programmable or adjustable to particular users' or organizations' needs. it provides essentially a process programming language support system or environment (editor, debugger, run-time system, etc.).  the goal of the subproject specimen (software process specification management environment) within esf is to develop such an fpe for the esf-fse. based on an extensive evaluation of existing approaches done at the beginning of the project during summer/fall '88, specimen has chosen to take a so-called multi- paradigm approach for the definition of the process modeling language. this language enables as a basis a petri-net like description of software processes. however, complex objects (i.e. the structure of the software documents and the persons participating in the process) are being described in an object-oriented style ex  w. schäfer p. broekman l. hubert j. scott