FRAME: A Generic Fractal Process Metamodel for Agile Methodologies

  • Mahsa Hasani Sadi
  • Raman Ramsin

Summary

The widespread need for flexibility and adaptability in software development processes has resulted in the emergence of Agile practices and principles. Although different in fine-grained detail, all agile methodologies follow a common approach in their processes. To expose the common paradigm behind the design of agile processes, we have developed FRAME (FRactal Agile MEtamodel), a generic fractal process metamodel for agile process frameworks. Recursive application of FRAME at different levels of process design results in the specification of a configurable process framework; this framework serves as a basis for constructing agile methodologies through paradigm-based Situational Method Engineering (SME). In order to explore how FRAME is manifest in existing agile processes, relevant activity patterns have been extracted from seven prominent agile processes, thus forming a repository of concrete FRAME components.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Ramsin, R., Paige, R.F.: Process-Centered Review of Object Oriented Software Development Methodologies. ACM Computing Surveys 40(1), 1–89 (2008)CrossRefGoogle Scholar
  2. 2.
    Beck, K., et al.: Manifesto for Agile Software Development, http://agilemanifesto.org/
  3. 3.
    Alliance, A.: Agile Principles, http://agileallience.org/
  4. 4.
    Ralyté, J., Brinkkemper, S., Henderson-Sellers, B.: Situational Method Engineering: Fundamentals and Experiences. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  5. 5.
    Schwaber, K., Beedle, M.: Agile Software Development with Scrum. Prentice-Hall, Englewood Cliffs (2001)Google Scholar
  6. 6.
    Beck, K., Andres, C.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley, USA (2004)Google Scholar
  7. 7.
    Palmer, S.R., Felsing, J.M.: A Practical Guide to Feature-Driven Development. Prentice-Hall, Englewood Cliffs (2002)Google Scholar
  8. 8.
    Ambler, S.W.: The agile system development lifecycle (2006), http://www.ambysoft.com/essays/agileLifecycle.html
  9. 9.
    Tasharofi, S., Ramsin, R.: Process Patterns for Agile Methodologies. In: Situational Method Engineering, Fundamentals and Experiences, pp. 222–237. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  10. 10.
    Niknafs, A., Ramsin, R.: Computer-Aided Method Engineering: An analysis of existing environments. In: Bellahsène, Z., Léonard, M. (eds.) CAiSE 2008. LNCS, vol. 5074, pp. 525–540. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  11. 11.
    OMG. Software and Systems Process Engineering Metamodel Specification (v2.0). Object Management Group, OMG (2007)Google Scholar
  12. 12.
    Hasani Sadi, M., Ramsin, R.: APM3: A project management methodology metamodel for agile methodologies. In: Proceedings of the 8th International Conference on Software Methodologies, Tools and Techniques, SoMeT 2009 (to be published 2009)Google Scholar
  13. 13.
    DSDM Consortium. DSDM Business Focused Development, 2nd edn. Addison-Wesley, Reading (2003)Google Scholar
  14. 14.
    Highsmith, J.: Adaptive Software Development: A Collaborative Approach to Managing Complex Systems. Dorset House, Newyork (2000)Google Scholar
  15. 15.
    Cockburn, A.: Crystal Clear: A Human-Powered Methodology for Small Teams. Addison-Wesley, Reading (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Mahsa Hasani Sadi
    • 1
  • Raman Ramsin
    • 1
  1. 1.Department of Computer EngineeringSharif University of TechnologyTehranIran

Personalised recommendations