This substantial and highly significant publication provides a detailed review that focuses on the development processes of existing object-oriented software development methodologies. After an introduction and basic definitions, there is a brief history of object-oriented methodologies that includes: seminal methodologies (first and second generation), unified modeling language (UML), integrated methodologies (third generation), agile methodologies, and the role of process patterns and process metamodels.
The in-depth coverage and analysis of seminal methodologies includes: Schlaer-Mellor, Coad-Yourdon, responsibility-driven design (RDD), Booch, the object modeling technique (OMT), object-oriented systems analysis (OSA), object-oriented software engineering (OOSE), business object notation (BON), Hodge-Mock, Syntropy, and Fusion. The in-depth coverage of integrated methodologies includes: object-process methodology (OPM); Catalysis; object-oriented process, environment, and notation (OPEN); rational unified process/unified software development process (RUP/USDP); enterprise unified process (EUP); and functional and object-oriented methodology (FOOM). The in-depth coverage of agile methodologies includes: the dynamic systems development method (DSDM), Scrum, extreme programming (XP), adaptive software development (ASD), dX, Crystal, and feature-driven development (FDD). A brief section addresses Ambler’s process patterns approach, and another brief section addresses the software process engineering metamodel (SPEM).
The analysis uses a process-centered template that is intended to expose the core philosophies, processes, and internal activities for the various methodologies. A final section on observations and conclusions provides insightful commentary that pulls together the good, the bad, and the ugly regarding the current state of object-oriented software development methodologies, as well as informed suggestions to guide their future development and refinement. The paper is carefully and consistently written. It is a long paper (89 pages including 118 references), but is well worth the time to read and digest.