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.
Engineering Method engineering involves a learning process in which the current level of expertise and the situation influence the outcomes (Hughes and Reviron 1996). Thus, any organisation that develops systems not only delivers them but also learns how to perform system development and to mobilise associated knowledge (methods), but also improves their development capabilities (learning by doing). The development organisation builds its knowledge about how its methods work in certain.
‘choreography’ metamodel that includes a domain metamodel, an analysis metamodel (illustrated in Fig. 4.3) and a design metamodel. 4.1.2 Steps Towards Formalisation As we saw briefly in Chap. 1, in order to introduce more formalisms into modelling and metamodelling, several attempts have been made to add rules to the informal multilayering shown in Fig. 1.8. One description, briefly introduced in Chap. 1 and widely adopted, is that of four-level (MOF2) architecture shown in Fig. 1.11. The.
Both object technology and agent technology (Henderson-Sellers and GonzalezPerez 2011). At the same time, an overall Construct the model using the selected technology/ paradigm Activity (conformant to the ISO/IEC 24744 Process meta class) was created. Such a ‘promotion’ is in line with the philosophy underpinning the MDA and model transformations as well as the use of metonymy for creating a granularity abstraction hierarchy. This new activity then consists of a large number of tasks, these tasks.
5.4 List of tasks ‘carved out’ of the original OPF construct the object model task (details given in Henderson-Sellers and Gonzalez-Perez 2011) Identify classes and objects Identify roles to be played by objects Identify responsibilities of each class Add stereotypesa Implement responsibilities as class operations/methods and attributes Identify class–class relationships including possible meronymic (whole-part) representations Identify inheritance hierarchies Add constraints such as.
Fitzgerald et al. (2003) identified two types of tailoring at the project level: up front (recorded as part of the project plan) and dynamic (more ad hoc in light of modified perceptions of the project as it proceeds). In both cases, they found that capture and definition of tailoring criteria were essential in risk management and in terms of the overall success of the project. In the context of manufacturing processes, Rupprecht et al. (2000) discuss tailoring as ‘process individualisation’,.