Author_Institution :
Dept. of Inf. & Comput. Sci., California Univ., Irvine, CA, USA
Abstract :
As software projects evolve, possibly differing in size, complexity, scope and purpose, the development processes that support the project must evolve to reflect these changes. For a distributed project, maintaining proper communications, coordinating between project stakeholders, and maintaining managerial control become increasingly important and, unfortunately, increasingly difficult. The Endeavors system is an open, distributed process modeling and execution infrastructure that addresses communication, coordination, and control issues. Complex processes may require: (a) distribution of people and processes; event based and intermediate format integration of external tools; a low entry barrier through ease of use and incremental adoption; ability to customize and reuse objects, tools, and policies; and dynamic change of runtime processes, objects, and behaviors. Endeavors´ solution architecture achieves these goals through application of five key design strategies: (1) maintaining multiple object model layers; (2) implementing the architecture as a set of highly componentized, lightweight, transportable, concurrent elements; (3) providing customization capabilities for each layer of the object model; (4) using a reflexive object model to support dynamic change; and (5) allowing dynamic loading and changing of objects including loading of executable handlers, new object types, and extensions. We discuss these goals and design strategies, describe the architecture, and describe the current status of the project and its relevance to its own development
Keywords :
distributed processing; object-oriented methods; object-oriented programming; open systems; project management; software tools; Endeavors; concurrent elements; customization capabilities; development processes; distributed project; dynamic loading; executable handlers; external tools; incremental adoption; intermediate format integration; low entry barrier; managerial control; multiple object model layers; open distributed process modeling infrastructure; process system integration infrastructure; project stakeholders; reflexive object model; runtime processes; software projects evolution; solution architecture; Communication system control; Computer architecture; Computer science; Contracts; Government; Laboratories; Object oriented modeling; Project management; Runtime; Software architecture;