Situational Method Engineering
Pär J. Ågerfalk
Format: PDF / Kindle (mobi) / ePub
While previously available methodologies for software – like those published in the early days of object technology – claimed to be appropriate for every conceivable project, situational method engineering (SME) acknowledges that most projects typically have individual characteristics and situations. Thus, finding the most effective methodology for a particular project needs specific tailoring to that situation. Such a tailored software development methodology needs to take into account all the bits and pieces needed for an organization to develop software, including the software process, the input and output work products, the people involved, the languages used to describe requirements, design, code, and eventually also measures of success or failure.
The authors have structured the book into three parts. Part I deals with all the basic concepts, terminology and overall ideas underpinning situational method engineering. As a summary of this part, they present a formal meta-model that enables readers to create their own quality methods and supporting tools. In Part II, they explain how to implement SME in practice, i.e., how to find method components and put them together and how to evaluate the resulting method. For illustration, they also include several industry case studies of customized or constructed processes, highlighting the impact that high-quality engineered methods can have on the success of an industrial software development. Finally, Part III summarizes some of the more recent and forward-looking ideas.
This book presents the first summary of the state of the art for SME. For academics, it provides a comprehensive conceptual framework and discusses new research areas. For lecturers, thanks to its step-by-step explanations from basics to the customization and quality assessment of constructed methods, it serves as a solid basis for comprehensive courses on the topic. For industry methodologists, it offers a reference guide on features and technologies to consider when developing in-house software development methods or customising and adopting off-the-shelf ones.
(after Henderson-Sellers and Unhelkar 2000) #Pearson Education Limited 23 M3 (MOF) Meta-metamodel instance of M2 Metamodel instance of M1 Model instance of M0 Data ‘abstraction levels’, e.g., Jørgensen (2004); OMG (2007), it should be remembered that, as noted above (Sect. 1.4.1), abstraction primarily focusses on the removal of detail and it is perfectly possible to have abstraction relationships (between two sets or classes) that are not the type–instance (classification) relationship
this information hiding rationale that is viewed as critical for OO programming, for the SME chunk approach, there is no information that needs to be hidden—both body and interface need to be visible to the method engineer. Consequently, in our discussion here, we need to note that the terms body and 34 2 Method Chunks, Method Fragments and Method Components ChunkID: CH01, ChunkName: Use Case Model, Type: Aggregate; Origin: OOSE Method; … … Reuse situation: Application domain->Application
associated with parallel sections and aggregates them into a new guideline. Similarly, the consecutive sections discovery strategy assists in identifying the IAG associated with consecutive map sections and in integrating them appropriately to give the guideline for the new aggregate chunk. Finally, Define a method part has two strategies, similar in character to those of Define a guideline. Following method 122 5 Identification and Construction of Individual Method Chunks/Fragments Start
new method to obtain situational methods. The method thus constructed (or, rather, the process part of it) can also be readily visualised using activities in an AD. However, ADs are most useful for depicting the workflow of the process model once the fragments have been both selected and put together and seem to offer less support in fragment selection and assembly, wherein the method engineer’s expertise plays a more important part. Saeki (2003a) and Van de Weerd et al. (2006) both use a
project and product to be developed After Gonzalez-Perez et al., table 5, 2009 (With kind permission of Springer Science + Business Media) identified difference between present and desired states; Apply the selected procedure and update the current state” (Henderson-Sellers et al. 2004a). Contributions analysis helps to identify goals that may contribute towards the partial fulfilment of the final goal and is sometimes used as an alternative to means-ends analysis, particularly useful for soft