FlexSPMF: A Framework for Modelling and Learning Flexibility in Software Processes

  • Ricardo Martinho
  • João Varajão
  • Dulce Domingos
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5736)


Software processes are dynamic entities that are often changed and evolved by skillful knowledge workers such as software development team members. Consequently, flexibility is one of the most important features within software process representations and related tools. However, in the everyday practice, team members do not wish for total flexibility. They rather prefer to learn about and follow previously defined advices on which, where and how they can change/adapt process representations. In this paper we present FlexSPMF: a framework for modelling controlled flexibility in software processes. It comprises three main contributions: 1) identifying a core set of flexibility concepts; 2) extending a Process Modelling Language (PML)’s metamodel with these concepts; and 3) providing modelling resources to this extended PML. This enables process engineers to define and publish software process models with additional (textual/graphical) flexibility information. Other team members can then visualise and learn about this information, and change processes accordingly.


Process Element Software Process Process Engineer Object Management Group Change Operation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Cugola, G.: Tolerating Deviations in Process Support Systems via Flexible Enactment of Process Models. IEEE Transactions on Software Engineering 24(11), 982–1001 (1998)CrossRefGoogle Scholar
  2. 2.
    Reichert, M., Rinderle-Ma, S., Dadam, P.: Flexibility in process-aware information systems. LNCS Transactions on Petri Nets and Other Models of Concurrency (ToPNoC) 2, 115–135 (2009)CrossRefzbMATHGoogle Scholar
  3. 3.
    Bider, I.: Masking Flexibility Behind Rigidity: Notes on How Much Flexibility People are Willing to Cope With. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 7–8. Springer, Heidelberg (2005)Google Scholar
  4. 4.
    Borch, S.E., Stefansen, C.: On Controlled Flexibility. In: Proc. of the 7th Workshop on Business Process Modeling, Development and Support (BPMDS), pp. 121–126 (2006)Google Scholar
  5. 5.
    Cass, A.G., Osterweil, L.J.: Process Support to Help Novices Design Software Faster and Better. In: Proc. of the 20th IEEE/ACM Intl. Conference on Automated Software Engineering (ASE), pp. 295–299 (2005)Google Scholar
  6. 6.
    OMG: Software Process Engineering Metamodel Specification, v2.0. Technical report, Object Management Group (2007)Google Scholar
  7. 7.
    Novak, J.D., Cañas, A.J.: The theory underlying concept maps and how to construct and use them. Technical report, IHMC CmapTools, 2006-01 Rev 2008-01, Florida Institute for Human and Machine Cognition (2008)Google Scholar
  8. 8.
    Razmerita, L., Lytras, M.D.: Ontology-based user modelling personalization: Analyzing the requirements of a semantic learning portal. In: Lytras, M.D., Carroll, J.M., Damiani, E., Tennyson, R.D. (eds.) WSKS 2008. LNCS (LNAI), vol. 5288, pp. 354–363. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  9. 9.
    Martinho, R., Domingos, D., Varajão, J.: On a concept map for the modelling of controlled flexibility in software processes. Technical report TR-2009-12. Dep. de Informática, Faculdade de Ciências da Universidade de Lisboa (May 2009)Google Scholar
  10. 10.
    Jacobson, I., Booch, G., Rumbaugh, J.: The Unified Software Development Process. Addison-Wesley Longman Publishing Co., Inc, Boston (1999)Google Scholar
  11. 11.
    Regev, G., Soffer, P., Schmidt, R.: Taxonomy of Flexibility in Business Processes. In: Input to the 7th Workshop on Business Process Modeling, Development and Support (BPMDS 2006) (June 2006),
  12. 12.
    Schonenberg, H., Mans, R., Russell, N., Mulyar, N., van der Aalst, W.M.P.: Towards a taxonomy of process flexibility. In: CAiSE 2008, pp. 81–84 (2008)Google Scholar
  13. 13.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)zbMATHGoogle Scholar
  14. 14.
    Martinho, R., Domingos, D., Varajão, J.: FlexUML: A UML Profile for Flexible Process Modelling. In: Proc. of the 19th Intl. Conference of Software Engineering and Knowledge Engineering (SEKE), pp. 215–220 (2007)Google Scholar
  15. 15.
    OMG: Unified Modeling Language: Superstructure, version 2.0. Technical report, Object Management Group (2005)Google Scholar
  16. 16.
    Martinho, R., Varajão, J., Domingos, D.: A two-step approach for modelling flexibility in software processes. In: Proc. of the 23rd IEEE/ACM Intl. Conference on Automated Software Engineering, ASE (2008)Google Scholar
  17. 17.
    Wörzberger, R., Kurpick, T., Heer, T.: On correctness, compliance, and consistency of process models. In: Proc. of the 17th IEEE Intl. Workshops on Enabling Technologies: Infrastructures for Collaborative Enterprises, WETICE 2008 (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Ricardo Martinho
    • 1
  • João Varajão
    • 2
  • Dulce Domingos
    • 3
  1. 1.School of Technology and ManagementPolytechnic Institute of LeiriaPortugal
  2. 2.Department of EngineeringUniversity of Trás-os-Montes e Alto DouroPortugal
  3. 3.Department of Informatics, Faculty of SciencesUniversity of LisboaPortugal

Personalised recommendations