Skip to main content

Using Process Definitions to Support Reasoning about Satisfaction of Process Requirements

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6195))

Abstract

This paper demonstrates how a precise definition of a software development process can be used to determine whether the process definition satisfies certain of its requirements. The paper presents a definition of a Scrum process written in the Little-JIL process definition language. The definition’s details facilitate understanding of this specific Scrum process (while also suggesting the possibility of many variants of the process). The paper also shows how these process details can support the use of analyzers to draw inferences that can then be compared to requirements specifications. Specifically the paper shows how finite state verification can be used to demonstrate that the process protects the team from requirements changes during a sprint, and how analysis of a fault tree derived from the Little-JIL Scrum definition can demonstrate the presence of a single point of failure in the process, suggesting that this particular Scrum process may fail to meet certain process robustness requirements. A new Scrum process variant is then presented and shown to be more robust in that it lacks the single of point failure.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Osterweil, L.J.: Software processes are software too. In: 9th International Conference on Software Engineering (ICSE 1987), Monterey, CA, March 1987, pp. 2–13 (1987)

    Google Scholar 

  2. Osterweil, L.J.: Software processes are software too, revisited. In: 19th International Conference on Software Engineering (ICSE 1997), Boston, MA, May 1987, pp. 540–548 (1997)

    Google Scholar 

  3. Wise, A.: Little-JIL 1.5 language report. Technical Report UM-CS-2006-51, Department of Computer Science, University of Massachusetts, Amherst, MA (2006)

    Google Scholar 

  4. CMMI Product Team: CMMI for development, version 1.2. Technical Report CMU/SEI-2006-TR-008, Software Engineering Institute, Carnegie Mellon University, Pittsburg, PA (August 2006)

    Google Scholar 

  5. Highsmith, J., Fowler, M.: The agile manifesto. Software Development Magazine 9(8), 29–30 (2001)

    Google Scholar 

  6. Schwaber, K., Beedle, M.: Agile Software Development with Scrum. Prentice Hall, Upper Saddle River (2002)

    Google Scholar 

  7. Schwaber, K.: Agile Project Management with Scrum. Microsoft Press, Redmond (2004)

    Google Scholar 

  8. Cohn, M.: Succeeding with Agile: Software Development Using Scrum. Pearson Education, Inc., Boston (2010)

    Google Scholar 

  9. Scrum Alliance, Inc., http://www.scrumalliance.org/

  10. Schwaber, K.: http://www.controlchaos.com/

  11. Chen, B., Avrunin, G.S., Clarke, L.A., Osterweil, L.J.: Automatic fault tree derivation from little-jil process definitions. In: Wang, Q., Pfahl, D., Raffo, D.M., Wernick, P. (eds.) SPW 2006 and ProSim 2006. LNCS, vol. 3966, pp. 150–158. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  12. Chen, B., Avrunin, G.S., Henneman, E.A., Clarke, L.A., Osterweil, L.J., Henneman, P.L.: Analyzing medical processes. In: ACM SIGSOFT/IEEE 30th International Conference on Software Engineering (ICSE 2008), Leipzig, Germany, May 2008, pp. 623–632 (2008)

    Google Scholar 

  13. Dwyer, M.B., Clarke, L.A., Cobleigh, J.M., Naumovich, G.: Flow analysis for verifying properties of concurrent software systems. ACM Transactions on Software Engineering and Methodology (TOSEM) 13(4), 359–430 (2004)

    Article  Google Scholar 

  14. Cobleigh, R.L., Avrunin, G.S., Clarke, L.A.: User guidance for creating precise and accessible property specifications. In: ACM SIGSOFT 14th International Symposium on Foundations of Software Engineering (FSE14), Portland, OR, November 2006, pp. 208–218 (2006)

    Google Scholar 

  15. International Conference on Software Process, http://www.icsp-conferences.org/

  16. Dami, S., Estublier, J., Amiour, M.: Apel: A graphical yet executable formalism for process modeling. Automated Software Engineering 5(1) (1998)

    Google Scholar 

  17. Katayama, T.: A hierarchical and functional software process description and its enaction. In: Proceedings of the 11th international conference on Software engineering, Pittsburgh, PA, pp. 343–352 (1989)

    Google Scholar 

  18. Kaiser, G., Barghouti, N., Sokolsky, M.: Experience with process modeling in the marvel software development environment kernel. In: 23rd Annual Hawaii Internationall Conference on System Sciences, pp. 131–140 (1990)

    Google Scholar 

  19. OMG: Software & systems process engineering meta-model specification. Technical Report formal/2008-04-01, Object Management Group (2008)

    Google Scholar 

  20. Jacobson, I., Booch, G., Rumbaugh, J.: The Unified Software Development Process. Addison-Wesley Longman, Inc., Reading (1999)

    Google Scholar 

  21. Christov, S., Avrunin, G., Clarke, L.A., Osterweil, L.J., Henneman, E.: A benchmark for evaluating software engineering techniques for improving medical processes. In: International Conference on Software Engineering, Workshop on Software Engineering in Health Care (SEHC 2010), Cape Town, South Africa (May 2010)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Osterweil, L.J., Wise, A. (2010). Using Process Definitions to Support Reasoning about Satisfaction of Process Requirements. In: Münch, J., Yang, Y., Schäfer, W. (eds) New Modeling Concepts for Today’s Software Processes. ICSP 2010. Lecture Notes in Computer Science, vol 6195. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-14347-2_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-14347-2_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-14346-5

  • Online ISBN: 978-3-642-14347-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics