Experience-Based Approach for Adoption of Agile Practices in Software Development Projects

  • Iva Krasteva
  • Sylvia Ilieva
  • Alexandar Dimov
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6051)


The agile approach for software development has attracted a great deal of interest in both academic and industry communities in the last decade. Nevertheless the wide adoption of agile methods in ever growing number of software development projects, shifting the development process of an organization to an agile one is not straightforward. Certain considerations for the applicability of agile practices should be taken into account when this transition is performed. In this paper, an approach for situational engineering of agile methods is proposed. The approach is based on the experience gained in adopting agile practices in both internal and external projects of organizations. A knowledge-base supporting the selection of agile practices that are suitable for certain project is introduced. Automated generation of appropriate software development process is included as well. Particular realization of the approach supported by SPEM-based tools is also presented in the paper.


agile practices method engineering project situation context SPEM 


  1. 1.
    Hodgetts, P.: Refactoring the development process: experiences with the incremental adoption of agile practices. In: Agile Development Conference, Salt Lake City, pp. 106–113 (2004)Google Scholar
  2. 2.
    Krasteva, I., Ilieva, S.: Adopting an Agile Methodology - Why It Didn’t Work. In: ICSE: International workshop on Scrutinizing agile practices or shoot-out at the agile corral, pp. 33–36 (2008)Google Scholar
  3. 3.
    Kruchten, P.: Keynote: Situated Agility. In: 9th International Conference on Agile Processes and eXtreme Programming in Software Engineering (2008)Google Scholar
  4. 4.
    Koch, A.: Agile Software Development Evaluating the Methods for Your Organization. Artech House Publishers (2004)Google Scholar
  5. 5.
    Beck, K.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley Professional, Reading (2004)Google Scholar
  6. 6.
    Cockburn, A.: Agile Software Development: The Cooperative Game, 2nd edn. Addison-Wesley Professional, Reading (2006)Google Scholar
  7. 7.
    Highsmith, J.: Agile Software Development Ecosystems. Addison-Wesley Professional, Reading (2002)Google Scholar
  8. 8.
    Software process engineering metamodel. Version 2.0. formal/2008-04-01, OMG (2008)Google Scholar
  9. 9.
    EPF Composer. In: Eclipse Process Framework,
  10. 10.
    Brinkkemper, S.: Method engineering: engineering of information systems development. Information and Software Technology 38(7), 275–280 (1996)CrossRefGoogle Scholar
  11. 11.
    Butcher, T., Klesse, M., Kurpjuweit, S., Winter, R.: Situational Method Engineering on the Differentiation of “Context” and “Project Type”. In: Ralyte, J., Brinkkernper, S., Henderson-Sellers, B. (eds.) IFIP International Federation for Information Processing, Situational Method Engineering: Fundamentals and Experiences, vol. 244, pp. 33–48 (2007)Google Scholar
  12. 12.
    Ralyté, J., Deneckère, R., Rolland, C.: Towards a Generic Model for Situational Method Engineering. In: Eder, J., Missikoff, M. (eds.) CAiSE 2003. LNCS, vol. 2681, pp. 95–110. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  13. 13.
    Nehan, Y.-R., Deneckere, R.: Component-based Situational Methods A framework for understanding SME. In: IFIP International Federation for Information Processing, Situational Method Engineering: Fundamentals and Experiences, vol. 244, pp. 161–175 (2007)Google Scholar
  14. 14.
    Bajek, M., Vavpotic, D., Krisper, M.: Practice-driven approach for creating project-specific software developmnet methods. Information and Software technology (49), 345–365 (2007)CrossRefGoogle Scholar
  15. 15.
    Karlsson, F., Agerfalk, P.: Towards structured flexibility in information systems development: Devising a method for method configuration. Journal of Database Management 20(3), 51–75 (2009)Google Scholar
  16. 16.
    Seidita, V., Cossentino, M., Gaglio, S.: Using and Extending the SPEM Specifications to Represent Agent Oriented Methodologies. In: Luck, M., Gomez-Sanz, J.J. (eds.) AOSE 2008. LNCS, vol. 5386, pp. 46–59. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  17. 17.
    Cossentino, M., Gaglio, S., Henderson-Sellers, B., Seidita, V.: A Metamodelling-based Approach for Method Fragment Comparison. In: International Workshop on Exploring Modeling Methods in Systems Analysis and Design at CAISE 2006, pp. 419–432 (2006)Google Scholar
  18. 18.
    Klooster, M., Brinkkemper, S., Harmsen, F., Wijers, G.: Intranet facilitated knowledge management: a theory and tool for defining situational methods. In: Conference on Advanced Information Systems Engineering, Barcelona, Spain, pp. 303–317 (1997)Google Scholar
  19. 19.
    Qumer, A., Henderson-Sellers, B.: A framework to support the evaluation, adoption and improvement of agile methods in practice. The Journal of Systems and Software (81), 1899–1919 (2008)CrossRefGoogle Scholar
  20. 20.
    Firesmith, D.G., Henderson-Sellers, B.: The OPEN Process Framework. Pearson Education, London (2002)Google Scholar
  21. 21.
    Qumer, A., Henderson-Sellers, B.: Agile software solution framework: An analysis of practitioners’ perspectives. In: Information Systems: Modeling Development and Integration: Third International United Information Systems Conference, UNISCON 2009, pp. 41–52 (2009)Google Scholar
  22. 22.
    Henderson-Sellers, B., Serour, M.K.: Creating a Dual-Agility Method: The Value of Method Engineering. Journal of Database Management 4(14), 1–16 (2005)Google Scholar
  23. 23.
    Jones, C.: Software Assessments Benchmarks and Best Practices. Addison-Wesley Professional, Reading (2000)Google Scholar
  24. 24.
    Turk, D., France, R., Rumpe, B.: Assumptions underlying agile software-development processes. Journal of Database Management 16(4), 62–87 (2005)Google Scholar
  25. 25.
    Cockburn, A., Highsmith, J.: Agile software development, the people factor. Computer 34(11), 131–133 (2001)CrossRefGoogle Scholar
  26. 26.
    Krasteva, I., Ilieva, S.: Characterizing Agile Projects. Internal Report, Sofia Uniresity ‘St. Kliemnt Ohridski’, Sofia (2009)Google Scholar
  27. 27.
    Krasteva, I., Ilieva, S.: Rush into Agile- Analytical Framework for Agile Practices Applicability. In: IET Conference Publications (528 CP), Durham, pp. 229–237 (2007)Google Scholar
  28. 28.
    Krasteva, I., Branger, P., Land, R.: Challenges for agile development of COTS components and COTS-based systems A theoretical examination. In: International Conference on Evaluation of Novel Approaches to Software Engineering, Funchal, Madeira, pp. 99–106 (2008)Google Scholar
  29. 29.
    Dyba, T., Dingsyr, T.: Empirical studies of agile software development: A systematic review. Information and Software Technology 50(9-10), 833–859 (2008)CrossRefGoogle Scholar
  30. 30.
    Manifesto for Agile Software Development,
  31. 31.
    Tasharofi, S., Ramsin, R.: Process Patterns for Agile Methodologies. In: IFIP International Federation for Information Processing, Situational Method Engineering: Fundamentals and Experiences, vol. 244, pp. 222–237 (2007)Google Scholar
  32. 32.
    Krasteva, I., Land, R., Sajeev, A.S.M.: Being Agile when Developing Software Components and Component-Based Systems- Experience from Industry. In: EuroSPI Conference, vol. Industrial Proceedings, pp. 8.7-8.17 (2009)Google Scholar
  33. 33.
    Causevic, A., Krasteva, I., Land, R., Sajeev, A.S.M., Sundmark, D.: An Industrial Survey on Software Process Practices, Preferences and Methods. Malardalen University, Sweden (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Iva Krasteva
    • 1
  • Sylvia Ilieva
    • 1
  • Alexandar Dimov
    • 1
  1. 1.Sofia University St.Kliment OhriskiSofiaBulgaria

Personalised recommendations