Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

When Plans do not Work Out: How Plans are Used in Software Development Projects

Published: 01 October 2005 Publication History

Abstract

Based on empirical material from the area of software engineering, this article discusses the issue of plans and planning as an integral part of and prerequisite for software development work. It relates observed practices to literature produced by the Computer Supported Cooperative Work community. Empirical studies of software development practice seldom address re-planning. By analyzing the empirical material from one project we are able to show how certain kinds of co-ordination problems arise and how they may be dealt with. The empirical research does not focus primarily on the character of plans; instead, it raises the question `what means are necessary and should be provided in order to cope with situations when plans do not work out__ __ In relation to plans, especial emphasis is on "due process", i.e. how the project plan and the company wide project model are maintained to enable the identification and articulation of deviations from it. On the basis of our empirical analysis we propose to support the articulation and coordination work necessary in situations where plans do not adequately work out.

References

[1]
Bardram, J.E. (1997): Plans as Situated Action: An Activity Theory Approach to Workflow Systems. In J.A. Hughes, W. Prinz, T. Rodden and K. Schmidt (eds.): ECSCW '97. Proceedings of the 5th European Conference on Computer-Supported Cooperative Work , Dordrecht: Kluwer Academic Publishers, pp. 17-32.
[2]
Boehm, B.W. (1988): A Spiral Model of Software Development and Enhancement, In IEEE Computer , May, pp. 61-72.
[3]
Boehm, B., P. Bose, E. Horowitz and M. Lee, (1995): Requirements Negotiations and Renegotiations Aids: A Theory-W Based Spiral Approach, Proceedings of the 17th International Conference on Software Engineering (ICSE-17), Seattle, U.S.A., 23-30 April, pp. 243-254.
[4]
Bowers, J., G. Button and W. Sharrock (1995) Workflow from Within and Without: Technology and Cooperative Work on the Print Industry Shop Floor. In H. Marmolin, Y. Sungblad and K. Schmidt (eds.): Proceedings of European Computer Supported Cooperative Work '95 , Amsterdam: Kluwer.
[5]
Button, G. and W. Sharrock (1994): Occasioned Practices in the Work of Software Engineers. In M. Jirotka and J. Goguen (eds.): Requirements Engineering: Social and Technical Issues . London: Academic Press, pp. 217-240.
[6]
Carstensen, P.H. and C. Sørensen (1996): From the Social to the Systematic. Mechanisms Supporting Coordination in Design. Computer Supported Cooperative Work: The Journal of Collaborative Computing , vol. 5, pp. 387-413.
[7]
Conklin E. (1993): Capturing Organisational Memory. In R. Baecker (ed.): Groupware and CSCW: Assisting Human-Human Collaboration . Readings San Francisco, Morgan Kaufmann (originally in D. Coleman editor, Groupware '92, San Francisco, Morgan Kaufmann).
[8]
Coulon, A. (1995): Ethnomethodology , Sage series Qualitative Research Methods 36th volume, Thousand Oaks: Sage Publication.
[9]
Curtis, B., M.I. Kellner and J. Over (1992): Process Modeling, Communications of the ACM vol. 35, no. 9, pp. 75-90.
[10]
Dittrich, Y. and O. Lindeberg (2004): How Use-Orientated Development can Take Place, Information and Software Technology , vol. 46, pp. 603-617.
[11]
Finkelstein, A. (2000): (ed.) Proceedings of the Future of Software Engineering , New York: ACM.
[12]
Floyd, C. (1987): Outline of a Paradigm Change in Software Engineering. In G. Bjerknes, P. Ehn and M. Kyng (eds.): Computers and Democracy . Aldershot, pp. 192-210.
[13]
Floyd, C., F-M. Reisin G. Schmidt (1989): STEPS to Software Development with Users. In G. Ghezzi and J.A. McDermid (eds.): Proceedings of European Conference on Computer-Supported Cooperative Work (ESEC '89), Lecture Notes in Science, Berlin: Springer-Verlag, vol. 387, pp. 48-64.
[14]
Fuggetta, A. (2000): Software Process: A Roadmap. In A. Finkelstein (ed.): The Future of Software Engineering , New York: ACM, pp. 25-34.
[15]
Gerson, E. and S. Star (1986): Analyzing Due Process in the Workplace. Proceedings of the third ACM-SIGOIS conference on Office automation systems , December, Providence, Rhode Island, United States, vol. 7, no. 2-3, pp. 70-78.
[16]
Grinter, R. (1996): Supporting Articulation Work Using Software Configuration Management Systems. Computer Supported Cooperative Work: The Journal of Collaborative Computing , vol. 5, pp. 447-465.
[17]
Groth, K. and J. Bowers (2001): On Finding Things Out: Situating Organisational Knowledge. Proceedings of European Computer Supported Cooperative Work (ECSCW), 2001, Amsterdam: Kluwer.
[18]
Harper, R., D. Randall and M. Rouncefield (2000): Organisational Change and Retail Finance: An Ethnographic Perspective . London: Routledge.
[19]
Jirotka M. and Goguen J. (eds.) (1994): Requirements Engineering: Social and Technical Issues , London, UK: Academic Press.
[20]
Kovitz, B. (1999): Practical Software Requirements: A Manual of Contents & Style , Manning.
[21]
Lehman, M. (1980): Programs, Life Cycles, and Laws of Software Evolution, Proceedings of the IEEE 68 , pp. 1060-1076.
[22]
Lehman, M. (1987): Process Modelling - Where Next, Most Influential Paper of ICSE 9 Award. Proceedings of the 9th international conference on Software Engineering , March 1987, Monterey, California, U.S.A., pp. 549-552.
[23]
Mathiassen, L., J. Pries-Heje and O. Ngwenyama (2002): Improving Software Organizations. From Principles to Practices . Addison Wesley.
[24]
McDonald, D. and M. Ackermann (1998): Just Talk to Me: A Field Study of Expertise Location. Proceedings of Computer Supported Cooperative Work '98 , New York: ACM Press.
[25]
Mi, P. and Scacchi, W., (1990) A Knowledge Based Environment for Modelling and simulating Software Engineering Processes, IEEE Transaction on Knowledge and Data Engineering , 2(3), pp. 283-294.
[26]
Mi, P. and W. Scacchi (1991): Modelling Articulation Work in Software Engineering Processes. Proceeding of the 1st International Conference on the Software Process , pp. 188- 201.
[27]
Nardi, B. (1996): Studying Context A Comparison of Activity Theory, Situated Action Models, and Distributed Cognition. In B. Nardi (ed.): Context and Consciousness: Activity Theory and Human-Computer Interaction. , Cambridge: IT Press.
[28]
Nuseibeh, B. and S. Easterbrook (2000): Requirements Engineering: A Roadmap. In A. Finkelstein (ed.): The Future of Software Engineering . New York: ACM, pp. 37-46.
[29]
Osterweil, L. (1987): Software Processes are Software too, Most Influential Paper of ICSE 9 Award, Proceedings of the 9th international conference on Software Engineering. March , Monterey, California, U.S.A., pp. 2-13.
[30]
Paulk, M.C., B. Curtis, M.B. Chrissis and C.V. Weber (1993): Capability Maturity Model, Version 1.1, In IEEE Software , July, pp. 18-23.
[31]
Randall, D., M. Rouncefield, J. O'Brien and J. Hughes (1996): Organisational Memory: Supporting the Mavis' phenomenon, Proceedings of OzChi '96 , Hamilton, New Zealand.
[32]
Rönkkö, K. (2005): Making Methods Work in Software Engineering: Method Deployment - as a social Achievement , Blekinge Institute of Technology, School of Engineering, Doctoral Dissertation Series No. 2005:04.
[33]
Rönkkö, K., O. Lindeberg and Y. Dittrich (2002): Bad Practice or Bad Methods: Are Software Engineering and Ethnographic Discourses Incompatible?. Proceedings of The International Symposium on Empirical Software Engineering , 3-4 October, Nara, Japan, pp. 204-210.
[34]
Schmidt, K. (1997): Of Maps and Scripts: The Status of Formal Constructs in Cooperative Work, GROUP'97. In Hayne and W. Prinz (eds.): Proceedings of the ACM SIGGROUP Conference on Supporting Group Work , New York: ACM Press, pp. 138-147.
[35]
Schmidt, K. (2002): Remarks on the Complexity of Cooperative Work. In Pascal Salembier and Tahar Hakim Benchekroun (eds.): Cooperation and Complexity in Sociotechnical Systems, {special issue of} Revue des sciences et technologies de l'information, {série} Revue d'intelligence artificielle (RSTI-RAI), Hermes/Lavoisier, Paris 2002, vol. 16, no. 4-5, pp. 443-483.
[36]
Seaman, C. (1999): Qualitative Methods in Empirical Studies of Software Engineering. IEEE Transactions on Software Engineering , vol. 25, no. 4, pp. 557-572.
[37]
Suchman, L. (1987): Plans and Situated Actions: The Problem of Human-Machine Communication . Cambridge: Cambridge University Press.
[38]
Wittgenstein, L. (1968): Philosophical Investigations . New York, U.S.A: Macmillan Publishing Co.

Cited By

View all
  • (2019)Evaluating the Promise of Human-Algorithm Collaborations in Everyday Work PracticesProceedings of the ACM on Human-Computer Interaction10.1145/33592453:CSCW(1-23)Online publication date: 7-Nov-2019
  • (2019)The lessons software engineers can extract from painters to improve the software development processProceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3338906.3342492(1211-1213)Online publication date: 12-Aug-2019
  • (2018)New Perspectives on PlansComputer Supported Cooperative Work10.1007/s10606-017-9278-927:1(107-148)Online publication date: 1-Feb-2018
  • Show More Cited By

Recommendations

Reviews

James M. Perry

An empirical study of the effect of coordination problems on the execution of software development plans is presented in this paper. It builds on empirical behavioral science work on plans, replanning, and situated actions (informal actions) from the field of computer-supported cooperative work (CSCW), and relates it in novel ways to software engineering work on the use of formal process models for monitoring and controlling plan deviations. The paper presents two case studies from a software tool/method development project that illustrate the use of due process in the identification of deviations from plans, the resulting replanning, and corrective actions. The first case involves a deviation from the project plan and the company project process, caused by changes in the project scope. The second case involves deviations from requirements, caused by a lack of clarity and coherence in the requirements specification. The case studies summarize excerpts from project meetings and informal discussions with project stakeholders, and illustrate how due process was used and updated for corrective action. Software engineering research emphasizes aspects of technology and process; CSCW emphasizes process and people in cooperative work. The contribution of this paper lies in its leveraging of work in both fields to improve software planning. As such, its audience includes those interested in organizational structure and cooperative behavior within a project, those interested in software process improvement, and software project managers who want a deeper perspective on process to solve project problems. Online Computing Reviews Service

Access critical reviews of Computing literature here

Become a reviewer for Computing Reviews.

Comments

Information & Contributors

Information

Published In

cover image Computer Supported Cooperative Work
Computer Supported Cooperative Work  Volume 14, Issue 5
October 2005
105 pages

Publisher

Kluwer Academic Publishers

United States

Publication History

Published: 01 October 2005

Author Tags

  1. articulation work
  2. due process
  3. plans
  4. project management
  5. software engineering

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 30 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2019)Evaluating the Promise of Human-Algorithm Collaborations in Everyday Work PracticesProceedings of the ACM on Human-Computer Interaction10.1145/33592453:CSCW(1-23)Online publication date: 7-Nov-2019
  • (2019)The lessons software engineers can extract from painters to improve the software development processProceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3338906.3342492(1211-1213)Online publication date: 12-Aug-2019
  • (2018)New Perspectives on PlansComputer Supported Cooperative Work10.1007/s10606-017-9278-927:1(107-148)Online publication date: 1-Feb-2018
  • (2017)When Distribution of Tasks and Skills are Fundamentally ProblematicProceedings of the ACM on Human-Computer Interaction10.1145/31393361:CSCW(1-16)Online publication date: 6-Dec-2017
  • (2017)Project Management Practices as a Subject of Research for CSCWProceedings of the ACM on Human-Computer Interaction10.1145/31346601:CSCW(1-25)Online publication date: 6-Dec-2017
  • (2017)Deliberate Individual Change Framework for Understanding Programming Practices in four Oceanography GroupsComputer Supported Cooperative Work10.1007/s10606-017-9285-x26:4-6(663-691)Online publication date: 1-Dec-2017
  • (2016)What does it mean to use a method? Towards a practice theory for software engineeringInformation and Software Technology10.1016/j.infsof.2015.07.00170:C(220-231)Online publication date: 1-Feb-2016
  • (2015)Coordination-Artifacts SuitingProceedings of the 18th ACM Conference on Computer Supported Cooperative Work & Social Computing10.1145/2675133.2675136(165-178)Online publication date: 28-Feb-2015
  • (2014)How social software supports cooperative practices in a globally distributed software projectProceedings of the 7th International Workshop on Cooperative and Human Aspects of Software Engineering10.1145/2593702.2593716(24-31)Online publication date: 2-Jun-2014
  • (2012)Information needs for integration decisions in the release process of large-scale parallel developmentProceedings of the ACM 2012 conference on Computer Supported Cooperative Work10.1145/2145204.2145408(1371-1380)Online publication date: 11-Feb-2012
  • Show More Cited By

View Options

View options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media