logolpt fri_logo

Method engineering

Method engineering (ME) is an approach to create software development methods that are specifically attuned to organisations or projects. In general, the idea lies in the conceptualisation, construction and adaptation of methods and tools for the development of information systems. ME has a long tradition in the systems development research. An excellent review of the past research work can be found in Ralyte´ et al [1] while for the more recent effort you should check the Proceedings of the 4th IFIP WG 8.1 Working Conference on Method Engineering [2].

 

[1] J. Ralyte´, R. Denecke`re, C. Rolland, Towards a generic model for situational method engineering, Proceedings of the 15th Conference on Advanced Information Systems Engineering, CAISE’03, Velden, Austria, June 2003, pp. 16–20

[2] Engineering Methods in the Service-Oriented Context, 4th IFIP WG 8.1 Working Conference on Method Engineering, ME 2011, Paris, France, April 20-22, 2011, Proceedings Series: IFIP Advances in Information and Communication Technology, Vol. 351, Ralyté, Jolita; Mirbel, Isabelle; Deneckère, Rébecca (Eds.), 1st Edition., 2011, XI, 231 p.

OUR CONTRIBUTIONS

Process Configuration Approach

Our work with ME started back in 2004 when we were hired from five software companies to develop an approach for making their software development methods more flexible. All the companies were facing the same problem, their methods wouldn’t allow them to adapt to circumstances of a particular project. Neither they had knowledge to do that nor had they time to make rapid changes to their methods once new projects ware lunched.

While there were several approaches proposed in the past that suggest how to create methods on-the-fly, their use in practice is somewhat low, which seems to be a result of their inherent complexity. In our research we tried to avoid the problems that hinder the use of traditional assembly-based method engineering in practice by introducing some limitations. We developed an approach (Process Configuration Approach - PCA) that helps a company to automatically configure its method to suite best to circumstances of a particular project. The PCA is part of an Agile Methodology Framework (AMF) which we developed to facilitate software companies in improving their software development practice.

The AMF and PCA were both developed as a part of the MasterProc project which was carried out under the umbrella of the Centre of Excellence for Information and Telecommunication Technologies (http://coict.fe.uni-lj.si/). For more information please consider Bajec et al (2007).

Measuring socio-technical suitability of a particular software development method  

One of the problems that hinder the use of methods in everyday practice is their social and/or technical inappropriateness. In particular social factors have been traditionally neglected leading into software methods and processes that were refused by the development teams. As a part of the aforementioned MasterProc project we were full y aware of this fact and consequently developed an approach for concurrent evaluation of social and technical aspects of a particular method (to be more exact, of their elements). In our case studies, we employed this approach to continuously measure the suitability of method elements to a particular project/development team and to suggest improvements. For more information please see Vavpotič & Bajec (2009).

IT process construction 

The success we had with the application of ME principles in software development arena made us believe that the same approaches could be used also outside the software development field, let say for the construction of an arbitrary business process. In 2008, we started a new research project aimed at testing the aforementioned on the IT processes. We studied both, social and technical characteristics of organizations and demonstrated that PCA and thus ME principles are useful not only for software development processes but also for any IT process. Based on that it is fair to anticipate the ME can be used to facilitate the construction of an arbitrary business process. More details can be found in Žvanut & Bajec (2010).

CURRENT WORK  

Semi-automatic knowledge acquisition through monitoring the in-action software development methods  

The survey that has been done after using the AMF for a few years in practice has shown that the application of PCA on real projects is still difficult, since it requires considerable involvement of developers or/and IT managers, while the process for creating or tailoring an organization-specific method is too time-consuming. Based on the survey results we are now working on the development of the so-called Intelligent AMF (iAMF) which in contrast to AMF will require only marginal user involvement.

The main idea of iAMF lies in transparent observation of inaction methods performed in an organisation. Based on that, its base method can be inferred and continuously improved. With iAMF, inaction method can be compared automatically with corresponding base method, providing necessary guidance and control over its enactment.