Agile Principles as Software Engineering Principles: An Analysis

  • Normand Séguin
  • Guy Tremblay
  • Houda Bagane
Part of the Lecture Notes in Business Information Processing book series (LNBIP, volume 111)


Ever since software engineering was born, over 40 years ago, hundreds of “fundamental principles” for software engineering have been proposed. It is hard to believe that such a young discipline—in fact, any discipline—would rest on such a large number of “fundamental” principles. A few years ago, Séguin and Abran indeed showed, through a detailed analysis of the various principles proposed in the software engineering literature during the 1970–2003 period, that many—in fact most!—of the statements proposed as “fundamental principles” could not be considered as software engineering principles. The analysis method proposed by Séguin and Abran provides, among other things, a rigorous definition of term principle along with a set of criteria allowing to verify whether or not a statement is a software engineering principle. In this paper, we apply this method to the agile principles. More specifically, we examine the principles proposed by the Agile Manifesto as well as those from three well-known agile methods: XP, Scrum, and DSDM. Our analysis results show that many of the statements proposed as agile principles are in fact also software engineering principles.


Agile Principles Software Engineering Principles 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abran, A., Moore, J., Bourque, P., Dupuis, R. (eds.): Guide to the Software Engineering Body of Knowledge (2004 Version). IEEE Computer Society Press (2004)Google Scholar
  2. 2.
    Davis, M.: Will software engineering ever be engineering? Commun. ACM 54, 32–34 (2011)CrossRefGoogle Scholar
  3. 3.
    Boehm, B.W.: Seven basic principles of software engineering. Journal of Systems and Software 3(1), 3–24 (1983)MathSciNetCrossRefGoogle Scholar
  4. 4.
    Bourque, P., Dupuis, R., Abran, A., Moore, J.W., Tripp, L., Wolff, S.: Fundamental principles of software engineering—A journey. J. Syst. Softw. 62, 59–70 (2002)CrossRefGoogle Scholar
  5. 5.
    Davis, A.M.: 201 principles of software development. McGraw-Hill, Inc. (1995)Google Scholar
  6. 6.
    Ghezzi, C., Jazayeri, M., Mandrioli, D.: Fundamentals of Software Engineering, 2nd edn. Prentice Hall (2003)Google Scholar
  7. 7.
    Lehman, M.M.: On understanding laws, evolution, and conservation in the large-program life cycle. Journal of Systems and Software 1, 213–221 (1979-1980)CrossRefGoogle Scholar
  8. 8.
    Ross, D., Goodenough, J., Irvine, C.: Software engineering: Process, principles, and goals. Computer 8(5), 17–27 (1975)CrossRefGoogle Scholar
  9. 9.
    Royce, W.W.: Managing the development of large software systems: concepts and techniques. In: Proc. 9th Int’l Conf. on Soft. Eng., pp. 328–338 (1987)Google Scholar
  10. 10.
    Wasserman, A.: Toward a discipline of software engineering. IEEE Software 13(6), 23–31 (1996)CrossRefGoogle Scholar
  11. 11.
    Séguin, N., Abran, A.: Les principes du génie logiciel: une première analyse. Génie Logiciel (80), 45–51 (2007)Google Scholar
  12. 12.
    Beck, K., et al.: Manifesto for Agile Software Development (February 2001),
  13. 13.
    Bagane, H.: Analyse des principes du génie logiciel au niveau du développement agile. Master’s thesis, Dép. d’Informatique, UQAM (March 2011)Google Scholar
  14. 14.
    Bagane, H., Tremblay, G., Séguin, N.: Principes de génie logiciel et développement agile : une analyse. Génie Logiciel (98), 43–51 (2011)Google Scholar
  15. 15.
    Beck, K.: Extreme Programming Explained—Embrace Change. Addison-Wesley (1999)Google Scholar
  16. 16.
    Schwaber, K.: Scrum development process. In: ACM Conf. on Obj. Oriented Progr. Syst., Lang., and Applic. (OOPSLA), pp. 117–134 (1995)Google Scholar
  17. 17.
    Stapleton, J.: DSDM: Dynamic Systems Development Method: The Method in Practice. Addison-Wesley Professional (1997)Google Scholar
  18. 18.
    Séguin, N.: Inventaire, analyse et consolidation des principes fondamentaux du génie logiciel. PhD thesis, École de Technologie Supérieure, Montréal, QC (2006)Google Scholar
  19. 19.
    Oxford English Dictionary Online project team: Oxford English Dictionary (November 2011),
  20. 20.
    Power, G.: Values, practices & principles, (Visited on April 2011)
  21. 21.
    Bunge, M.: Philosophical Dictionnary. Prometheus Book, New York (2003)Google Scholar
  22. 22.
    Aubray, C.: Scrum: le guide pratique de la méthode agile la plus populaire. Dunod (2010)Google Scholar
  23. 23.
    ISO/IEC: Information technology—software life cycle processes. Technical Report ISO/IEC Std 12207: 1995, ISO/IEC (1995)Google Scholar
  24. 24.
    Cohn, M.: User Stories Applied—For Agile Software Development. Addison-Wesley Professional (2004)Google Scholar
  25. 25.
    Schwaber, K., Beedle, M.: Agile Software Development with Scrum. Prentice-Hall (2001)Google Scholar
  26. 26.
    Schwaber, K.: Agile Software Development with Scrum. Microsoft Press (2004)Google Scholar
  27. 27.
    Boehm, B., Turner, R.: Balancing Agility and Discipline—A Guide for the Perplexed. Addison-Wesley (2004)Google Scholar
  28. 28.
    Takeuchi, H., Nonaka, I.: The new new product development game. Harvard Business Review (1986)Google Scholar
  29. 29.
    McConnell, S.: Rapid Development: Taming Wild Software Schedules. Microsoft Press (1996)Google Scholar
  30. 30.
    Shore, J., Warden, S.: The art of agile development. O’Reilly Media (2007)Google Scholar
  31. 31.
    Fowler, M.: Principles of XP (October 2003),

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Normand Séguin
    • 1
  • Guy Tremblay
    • 1
  • Houda Bagane
    • 1
  1. 1.Département d’informatiqueUniversité du Québec à MontréalMontréalCanada

Personalised recommendations