Skip to main content
Log in

Cooperative method development

Combining qualitative empirical research with method, technique and process improvement

  • Published:
Empirical Software Engineering Aims and scope Submit manuscript

Abstract

The development of methods tools and process improvements is best to be based on the understanding of the development practice to be supported. Qualitative research has been proposed as a method for understanding the social and cooperative aspects of software development. However, qualitative research is not easily combined with the improvement orientation of an engineering discipline. During the last 6 years, we have applied an approach we call ‘cooperative method development’, which combines qualitative social science fieldwork, with problem-oriented method, technique and process improvement. The action research based approach focusing on shop floor software development practices allows an understanding of how contextual contingencies influence the deployment and applicability of methods, processes and techniques. This article summarizes the experiences and discusses the further development of this approach based on several research projects in cooperation with industrial partners.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1

Similar content being viewed by others

References

  • Anderson R (1997) Work, ethnography, and system design. In: Kent A, Williams J (eds) Encyclopedia of microcomputing. Marcel Decker, New York, 20, pp 159–183

  • Basili V (1996) The role of experimentation in software engineering: past, current, and future. Proceedings of the ICSE ‘96, pp 442–449

  • Basili V, Green S (1994) Software process evolution at the SEL. IEEE Software, pp 58–66

  • Basili VR, Caldieri G, Rombach HD (1994) Experience factory. In: Marciniak J (ed) Encyclopedia of software engineering vol. Wiley, New York, pp 528–532

    Google Scholar 

  • Blomberg J, Suchman L, Trigg RH (1996) Reflections on a work-oriented design project. Hum Comput Interact 11(3):237–265

    Article  Google Scholar 

  • Bødker K, Kensing F, Simonsen J (2004) Participatory IT design: designing for business and workplace realities. MIT Press, Cambridge

    Google Scholar 

  • Brooks FP (1987) No silver bullet: essence and accidents of software engineering. Computer 20(4):10–19 (Apr)

    Article  MathSciNet  Google Scholar 

  • Checkland P, Holwell S (1998) Action research: its nature and validity. Syst Pract Action Res 11:9–21

    Article  Google Scholar 

  • Christensen M, Crabtree A, Damm CH, Hansen KM, Madsen OL, Marqvardsen P, Mogensen P, Sandvad E, Sloth L, Thomsen M (1998) The M.A.D. experience: multiperspective application development in evolutionary prototyping. In: Jul E (ed) Proceedings of the 12th European Conference on Object-Oriented Programming (July 20–24, 1998). Lecture Notes In Computer Science, vol 1445. Springer, London, pp 13–40.

  • Cockburn A (2002) Agile software development. Addison-Wesley, Boston

    Google Scholar 

  • Cooper A (1999) The inmates are running the asylum. Macmillan, Indianapolis

    Google Scholar 

  • Coulon A (1995) Ethnomethodology. Sage series qualitative research methods 36. Sage Publication, Thousand Oaks

    Google Scholar 

  • Curtis B, Krasner H, Iscoe N (1988) A field study of the software design process for large systems. Communications of the ACM 31:1268–1287

    Article  Google Scholar 

  • Diestelkamp W, Lundberg L (2000) Performance evaluation of a generic database system. Int J Comput Appl 7(3):122–129 (Sept)

    Google Scholar 

  • Dittrich Y (2002) Doing empirical research in software engineering—finding a path between understanding, intervention and method development. In: Dittrich Y, Floyd C, Klischewski R (eds) Social thinking—software practice. MIT Press, Cambridge, pp 243–262

    Google Scholar 

  • Dittrich Y, Lindeberg O (2001) Can software development be too use oriented? ‘Going Native’ as an issue for participatory design. In: Bjornestad S, Moe RE, Morch AI, Opdahl AL (eds) Proceedings of the 24th Information Systems Research Seminar in Scandinavia, Ulvik in Hardanger, Norway (11th–14th August 2001). University of Bergen, Department of Information Science

  • Dittrich Y, Lindeberg O (2002) Designing for changing work and business practices. In: Patel N (ed) Evolutionary and adaptive information systems. Idea Group Publishing, USA, pp 152–171

    Google Scholar 

  • Dittrich Y, Lindeberg O (2004) How use-orientated development can take place. Inf Softw Technol 46:603–617

    Article  Google Scholar 

  • Dittrich Y, John M, Singer J, Tessem B (2007) Editorial: for the special issue on qualitative software engineering research. Inf Softw Technol 49(6):531–539 (Jun)

    Article  Google Scholar 

  • Ehn P (1990) Work-oriented design of computer artifacts. Erlbaum, NJ

  • Eriksson J, Dittrich Y (2007) Combining tailoring and evolutionary software development for rapidly changing business systems. Journal of Organizational and End-User Computing 19(2):47–64

    Google Scholar 

  • Floyd C (1992) Software development as reality construction. In: Floyd C, Züllighoven H, Budde R, Keil-Slawik R (eds) Software development and reality construction. Springer, Berlin

    Google Scholar 

  • Floyd C, Reisin F-M, Schmidt G (1989) STEPS to software development with users. In: Ghezzi, G, McDermid JA (eds) Proceedings of European Conference on Computer-Supported Cooperative Work (ESEC ‘89). Lecture Notes in Science Nr. 387. Springer, Berlin, pp 48–64

  • Frederiksen HD, Mathiassen L (2005) Information-centric assessment of software metrics practices. IEEE Trans Eng Manage 52:350–362

    Article  Google Scholar 

  • Fuggetta A (2000) Software process: a roadmap. In: Finkelstein A (ed) The future of software engineering. ACM, New York, pp 25–34

    Google Scholar 

  • Grønbæk K, Mogensen P (1997) Informing General CSCW Product Development through Cooperative Design in Specific Work Domains. Comput Supported Coop Work 6(4):275–304 (Dec)

    Article  Google Scholar 

  • Hansson C, Dittrich Y, Randall D (2004) Agile processes enhancing user participation for small providers of off-the-shelf software. Proceedings of the 5th International Conference on Extreme Programming and Agile Processes in Software Engineering, XP 2004. Garmisch-Partenkirchen, Germany

  • Hansson C, Dittrich Y, Gustafsson B, Zarnak S (2006) How agile are industrial software development practices? J Syst Softw 79:1295–1311

    Article  Google Scholar 

  • Harper R (2000) The organisation in ethnography: a discussion of ethnographic fieldwork programs. Comput Support Coop Work 9:239–264

    Article  Google Scholar 

  • Hastrup K (1995) The ethnographic present, in A passage to anthropology: between experience and theory. Routledge, London, pp 1–22

    Google Scholar 

  • Iversen J, Mathiassen L (2003) Cultivation and engineering of a software metrics program. Inf Syst J 13(1):3–21

    Article  Google Scholar 

  • Iversen JK, Nielsen PA, Norbjerg J (1998) Problem diagnosis software process improvement. In: Larsen TJ, Levine L, DeGross JI (eds) Information systems: current issues and future changes. IFIP 1998

  • John M, Maurer F, and Tessem B (2005) Human and social factors of software engineering. Proceedings of the 27th international Conference on Software Engineering (St. Louis, MO, USA, May 15–21, 2005). ICSE ‘05

  • Lanzara GF, Mathiassen L (1985) Mapping situations within a system development project. Information and Management 8, pp 3–20 (reprinted as Mathiassen 1997, chapter 5)

  • Lewin K (1947) Frontiers in group dynamics 11: channels of group life; social planning and action research. Hum Relat 1:143–153

    Article  Google Scholar 

  • Lindeberg O, Diestelkamp W (2001) How much adaptability do you need? Evaluating meta-modeling techniques for adaptable special purpose systems. Proceedings of the Fifth IASTED, pp 7–12

  • Mathiassen L (1997) Reflective systems development. Dr. Techn. thesis, Aalborg University (http://www.cs.auc.dk/~larsm/rsd.html)

  • Mathiassen L (1998) Reflective systems development. Scand J Inf Sys 10(1 and 2):67–118

    Google Scholar 

  • Mathiassen L (2002) Collaborative practice research. Information, Technology & People 15(4):321–345

    Article  Google Scholar 

  • Mathiassen L, Pries Heje J, Ngwenyama O (2002) Improving software organizations. Addison-Wesley, Boston

    Google Scholar 

  • Mumford E (2001) Advice for an action researcher. Inf Technol People 14(1):12–27

    Article  MathSciNet  Google Scholar 

  • Naur P (1985) Programming as theory building. Microprocess Microprogram 15:253–261. Reprinted in Naur P. 1991. Computing: a human activity. Addison-Wesley, Boston

    Article  Google Scholar 

  • Nunamaker J, Chen M, Purdin T (1991) System development in information systems research. J Manage Inf Sys 7:89–106

    Google Scholar 

  • Nygaard K (1986) Program Development as a Social Activity. In: Kugler HJ (ed) Information processing 86. IFIP 1986, pp 189–198

  • Pruitt J, Grudin J (2003) Personas: practice and theory. Proceedings of the 2003 Conference on Designing for User Experiences (San Francisco, California, June 06–07, 2003). DUX ‘03. ACM Press, New York, NY, pp 1–15

  • Robson C (2002) Real world research, 2nd edn. Blackwell Publishing, UK

    Google Scholar 

  • Rönkkö K (2005a) An empirical study demonstrating how different design constraints, project organization and contexts limited the utility of personas. Proceedings of the 38th Annual Hawaii International Conference on System Sciences (HICSS), January 3–6

  • Rönkkö K (2005b) Making methods work in software engineering: method deployment as a social achievement. Doctoral thesis, dissertation series no. 2005:04, School of Engineering, Blekinge Institute of Technology

  • Rönkkö K (2007) Interpretation, interaction and reality construction in software engineering: an explanatory model. Inf Softw Technol 49(6):682–693 (Jun)

    Article  Google Scholar 

  • Rönkkö K, Dittrich Y, Lindeberg O (2002) “Bad practice” or ‘‘bad methods”—are software engineering and ethno-graphic discourses incompatible? Proceedings 1st International Symposium on Empirical Software Engineering (ISESE’02), Nara, Japan, pp 204–210

  • Rönkkö K, Kilander B, Hellman M, Dittrich Y (2004) Personas is not applicable: local remedies interpreted in a wider context. Proceedings of the PDC 2004, Toronto, pp 112–120

  • Rönkkö K, Dittrich Y, Randall D (2005) When plans do not work out: how plans are used in software development projects. J Comput Support Coop Work 5(14):433–468

    Article  Google Scholar 

  • Schön DA (1983) The reflective practitioner. how professionals think in action. Basic Books, New York

    Google Scholar 

  • Seaman C (1999) Qualitative methods in empirical studies of software engineering. IEEE Trans Softw Eng 25(4):557–572 (July/August)

    Article  Google Scholar 

  • Seaman C, Basili V (1997a) Communication and organization: an empirical study of discussion in inspection meetings. IEEE Trans Softw Eng 24(6):559–572 (June)

    Google Scholar 

  • Seaman C, Basili V (1997b) An empirical study of communication in code inspections. Proceedings International Conference on Software Engineering, Boston, May, pp 96–106

  • Sim S, Singer J, Storey M (2000) Beg, borrow, or steal: using multidisciplinary approaches in empirical software engineering research. Workshop Proceedings, W05, ICSE 2000 June 4–11, Limerick Ireland

  • Singer JA, Vinson NG (2002) Ethical issues in empirical studies of software engineering. IEEE Trans Softw Eng 28:1171–1180

    Article  Google Scholar 

  • Suchman LA (1983) Office procedure as practical action: models of work and system design. ACM Transactions on Office Information Systems 1(4):320–328 (October)

    Article  Google Scholar 

  • Suchman LA (1995) Making work visible. Communications of the ACM 38(9):56–64

    Article  Google Scholar 

  • Unphon H, Dittrich Y (2008) Organisation matters: how the organisation of software development influences the introduction of a product line architecture. Accepted for the IASTED International Conference on Software Engineering, SE 2008

  • Wenger E (1998) Communities of practice. learning, meaning and identity. Cambridge University Press, Cambridge

    Google Scholar 

Download references

Acknowledgments

Thanks to our industrial and public cooperation partners who made the research possible. The Knowledge Foundation in Sweden, under a research grant for the software development project “Blekinge - Engineering Software Qualities” (http://www.bth.se/besq), Rådet för Arbetslivsforskning, and the European Commission sponsored the different projects this article reflects on. The reviewers of this article contributed with their constructive critique to a substantial improvement.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yvonne Dittrich.

Additional information

Editor: Tore Dybå

Rights and permissions

Reprints and permissions

About this article

Cite this article

Dittrich, Y., Rönkkö, K., Eriksson, J. et al. Cooperative method development. Empir Software Eng 13, 231–260 (2008). https://doi.org/10.1007/s10664-007-9057-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10664-007-9057-1

Keywords

Categories and Subject Descriptors

Navigation