Software & Systems Modeling

, Volume 13, Issue 1, pp 433–456 | Cite as

Requirements-driven deployment

Customizing the requirements model for the host environment
Regular Paper

Abstract

Deployment is a main development phase which configures a software to be ready for use in a certain environment. The ultimate goal of deployment is to enable users to achieve their requirements while using the deployed software. However, requirements are not uniform and differ between deployment environments. In one environment, certain requirements could be useless or redundant, thereby making some software functionalities superfluous. In another environment, instead, some requirements could be impossible to achieve and, thus, additional functionalities would be required. We advocate that ensuring fitness between requirements and the system environment is a basic and critical step to achieve a comprehensive deployment process. We propose a tool-supported modelling and analysis approach to tailor a requirements model to each environment in which the system is to be deployed. We study the case of a contextual goal model, which is a requirements model that captures the relationship between the variability of requirements (goal variability space) and the varying states of a deployment environment (context variability space). Our analysis relies on sampling a deployment environment to discover its context variability space and use it to identify loci in the contextual goal model where a modification has to take place. Finally, we apply our approach in practice and report on the obtained results.

Keywords

Requirements engineering Contextual requirements Deployment Context-sensitive systems modelling 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Finkelstein, A., Savigni, A.: A Framework for requirements engineering for context-aware services. In: Proceedings of the 1st International Workshop From Software Requirements to Architectures (STRAW 01) (2001)Google Scholar
  2. 2.
    Yu, E.: Modelling strategic relationships for process reengineering. Ph.D. Thesis, University of Toronto (1995)Google Scholar
  3. 3.
    Bresciani P., Perini A., Giorgini P., Giunchiglia F., Mylopoulos J.: Tropos: an agent-oriented software development methodology. Auton. Agents Multi-Agent Syst. 8(3), 203–236 (2004)CrossRefGoogle Scholar
  4. 4.
    Castro J., Kolp M., Mylopoulos J.: Towards requirements-driven information systems engineering: the tropos project. Inf. Syst. 27(6), 365–389 (2002)CrossRefMATHGoogle Scholar
  5. 5.
    Dardenne A., van Lamsweerde A., Fickas S.: Goal-directed requirements acquisition. Sci. Comput. Program. 20(1–2), 3–50 (1993)CrossRefMATHGoogle Scholar
  6. 6.
    International Telecommunication Union (ITU-T): User Requirements Notation (URN)—Language Definition. Recommendation Z.151 (11/08), Geneva, Switzerland (2008)Google Scholar
  7. 7.
    Mylopoulos J., Chung L., Yu E.: From object-oriented to goal-oriented requirements analysis. Commun. ACM 42(1), 31–37 (1999)CrossRefGoogle Scholar
  8. 8.
    Fickas, S., Feather, M.: Requirements monitoring in dynamic environments. In: Proceedings of the 2nd IEEE International Symposium on Requirements Engineering, pp. 140–147 (1995)Google Scholar
  9. 9.
    Sykes, D., Heaven, W., Magee, J., Kramer, J.: From goals to components: a combined approach to self-management. In: Proceedings of the 2008 International Workshop on Software Engineering for Adaptive and Self-managing Systems, pp. 1–8 (2008)Google Scholar
  10. 10.
    Hui, B., Liaskos, S., Mylopoulos, J.: Requirements analysis for customizable software: a goals-skills-preferences framework. In: Proceedings of the 11th IEEE International Conference on Requirements Engineering (RE’03), pp. 117–126 (2003)Google Scholar
  11. 11.
    Liaskos S., McIlraith S.A, Sohrabi S., Mylopoulos J.: Representing and reasoning about preferences in requirements engineering. Requir. Eng. 16, 227–249 (2011). doi:10.1007/s00766-011-0129-9 CrossRefGoogle Scholar
  12. 12.
    Liaskos, S., McIlraith, S., Mylopoulos, J.: Representing and reasoning with preference requirements using goals. Technical report, Dept. of Computer Science, University of Toronto (2006). ftp://ftp.cs.toronto.edu/pub/reports/csrg/542
  13. 13.
    Baresi, L., Pasquale, L., Spoletini, P.: Fuzzy goals for requirements-driven adaptation. In: The 18th IEEE International Requirements Engineering Conference (RE), pp. 125–134, 27 Oct 2010 (2010)Google Scholar
  14. 14.
    Pourshahid A., Amyot D., Peyton L., Ghanavati S., Chen P., Weiss M., Forster A.: Business process management with the user requirements notation. Electron. Commerce Res. 9, 269–316 (2009). doi:10.1007/s10660-009-9039-z CrossRefGoogle Scholar
  15. 15.
    Ali, R., Dalpiaz, F., Giorgini, P.: Location-based variability for mobile information systems. In: Proceedings of the 20th International Conference on Advanced Information Systems Engineering (CAiSE’08). LNCS, vol. 5074, pp. 575–578. Springer, Berlin (2008)Google Scholar
  16. 16.
    Ali, R., Dalpiaz, F., Giorgini, P.: Location-based software modeling and analysis: tropos-based Approach. In: Proceedings of the 27th International Conference on Conceptual Modeling (ER 2008). LNCS, vol. 5231, pp. 169–182. Springer, Berlin (2008)Google Scholar
  17. 17.
    Ali, R., Dalpiaz, F., Giorgini, P.: A goal modeling framework for self-contextualizable software. In: Proceedings of the 14th International Conference on Exploring Modeling Methods in Systems Analysis and Design (EMMSAD 2009). LNBIP, vol. 29, pp. 326–338. Springer, Berlin (2009)Google Scholar
  18. 18.
    Ali R., Dalpiaz F., Giorgini P.: A goal-based framework for contextual requirements modeling and analysis. Requir. Eng. 15(4), 439–458 (2010)CrossRefGoogle Scholar
  19. 19.
    Ali, R., Dalpiaz, R., Giorgini, P.: Reasoning with contextual requirements: detecting inconsistency and conflicts. Inf. Softw. Tech. (2012). doi:10.1016/j.infsof.2012.06.013
  20. 20.
    Ali, R., Dalpiaz, F., Giorgini, P.: Goal-based self-contextualization. In: Proceedings of the Forum of the 21st International Conference on Advanced Information Systems (CAiSE 09-Forum), vol. 453, pp. 37–42. CEUR-WS (2009)Google Scholar
  21. 21.
    Lapouchnian, A., Yu, Y., Mylopoulos, J.: Requirements-driven design and configuration management of business processes. In: Proceedings of the 5th International Conference on Business Process Management (BPM 2007). LNCS, vol. 4714, pp. 246–261. Springer, Berlin (2007)Google Scholar
  22. 22.
    Rolland C., Souveyet C., Achour C.B.: Guiding goal modeling using scenarios. IEEE Trans. Softw. Eng. 24(12), 1055–1071 (1998)CrossRefGoogle Scholar
  23. 23.
    Liaskos, S., Lapouchnian, A., Yu, Y., Yu, E., Mylopoulos, J.: On goal-based variability acquisition and analysis. In: Proceedings of the 14th IEEE International Conference on Requirements Engineering (RE’06), pp. 76–85 (2006)Google Scholar
  24. 24.
    Henricksen, K., Indulska, J.: A software engineering framework for context-aware pervasive computing. In: Proceedings of the 2nd IEEE International Conference on Pervasive Computing and Communications (PerCom’04), pp. 77–86 (2004)Google Scholar
  25. 25.
    Yau, S.S., Liu, J.: Hierarchical situation modeling and reasoning for pervasive computing. In: Proceedings of the 4th IEEE Workshop on Software Technologies for Future Embedded and Ubiquitous Systems (SEUS’06), pp. 5–10 (2006)Google Scholar
  26. 26.
    Wang, X.H., Zhang, D.Q., Gu, T., Pung, H.K.: Ontology based context modeling and reasoning using OWL. In: Proceedings of the 2nd IEEE Annual Conference on Pervasive Computing and Communications Workshops, pp. 18–22 (2004)Google Scholar
  27. 27.
    Chaari T., Ejigu D., Laforest F., Scuturici V.-M.: A comprehensive approach to model and use context for adapting applications in pervasive environments. J. Syst. Softw. 80(12), 1973–1992 (2007)CrossRefGoogle Scholar
  28. 28.
    Salifu, M., Yu, Y., Nuseibeh, B.: Specifying monitoring and switching problems in context. In: Proceedings of the 15th International Conference on Requirements Engineering (RE’07), pp. 211–220 (2007)Google Scholar
  29. 29.
    Salifu, M., Nuseibeh, B., Rapanotti, L., Tun, T.T.: Using problem descriptions to represent variabilities for context-aware applications. In: Proceedings of the 1st International Workshop on Variability Modelling of Software-Intensive Systems (VaMoS 2007), pp. 149–156 (2007)Google Scholar
  30. 30.
    Lapouchnian, A., Mylopoulos, J.: Modeling domain variability in requirements engineering with contexts. In: Proceedings of the 28th International Conference on Conceptual Modeling (ER 2009). LNCS, vol. 5829, pp. 115–130. Springer, Berlin (2009)Google Scholar
  31. 31.
    Cheng, B., Sawyer, P., Bencomo, N., Whittle, J.: A goal-based modeling approach to develop requirements of an adaptive system with environmental uncertainty. In: Model Driven Engineering Languages and Systems. LNCS, vol. 5795, pp. 468–483. Springer, Berlin (2009)Google Scholar
  32. 32.
    Amyot, D., Becha, H., Braek, R., Rossebo, J.E.Y.: Next generation service engineering. In: Proceedings of the 1st ITU-T Kaleidoscope Academic Conference on Innovations in NGN: Future Network and Services (K-INGN 2008), pp. 195–202 (2008)Google Scholar
  33. 33.
    Pohl K., Böckle G., van der Linden F.: Software Product Line Engineering: Foundations, Principles, and Techniques. Springer, Berlin (2005)Google Scholar
  34. 34.
    Kang K.C., Kim S., Lee J., Kim K., Shin E., Huh M.: FORM: a feature-oriented reuse method with domain-specific reference architectures. Ann. Softw. Eng. 5, 143–168 (1998)CrossRefGoogle Scholar
  35. 35.
    Hartmann, H., Trew, T.: Using feature diagrams with context variability to model multiple product lines for software supply chains. In: Proceedings of the 12th International Software Product Line Conference (SPLC’08), pp. 12–21. IEEE Computer Society (2008)Google Scholar
  36. 36.
    Acher, M., Collet, P., Fleurey, F., Lahire, P., Moisan, S., Rigault, J.-P.: Modeling context and dynamic adaptations with feature models. In: 4th International Workshop Models@run.time (MRT’09) (2009)Google Scholar
  37. 37.
    Parra, C., Blanc, X., Duchien, L.: Context awareness for dynamic service-oriented product lines. In: Proceedings of the 13th International Software Product Line Conference (SPLC’09), pp. 131–140 (2009)Google Scholar
  38. 38.
    Yu, Y., do Prado Leite, J.C.S., Lapouchnian, A., Mylopoulos, J.: Configuring features with stakeholder goals. In: Proceedings of the 2008 ACM Symposium on Applied Computing (SAC’08), pp. 645–649 (2008)Google Scholar
  39. 39.
    Ramachandran M., Allen P.: Commonality and variability analysis in industrial practice for product line improvement. Softw. Process: Improvement Practice 10(1), 31–40 (2005)CrossRefGoogle Scholar
  40. 40.
    Bagheri, E., Di Noia, T., Ragone, A., Gasevic, D.: Configuring software product line feature models based on stakeholders’ soft and hard requirements. In: Software Product Lines: Going Beyond. LNCS, vol. 6287, pp. 16-31. Springer, Berlin (2010)Google Scholar
  41. 41.
    Feather, M., Fickas, S., Van Lamsweerde, A., Ponsard, C.: Reconciling system requirements and runtime behavior. In: Proceedings of the 9th International Workshop on Software Specification and Design (IWSSD’98) (1998)Google Scholar
  42. 42.
    Cohen, D., Feather, M.S., Narayanaswamy, K., Fickas, S.S.: Automatic monitoring of software requirements. In: Proceedings of the 19th International Conference on Software Engineering (ICSE’97), pp. 602–603 (1997)Google Scholar
  43. 43.
    Wang, Y., McIlraith, S., Yu, Y., Mylopoulos, J.: An automated approach to monitoring and diagnosing requirements. In: Proceedings of the 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE’07), pp. 293–302 (2007)Google Scholar
  44. 44.
    Giorgini, P., Mylopoulos, J., Nicchiarelli, E., Sebastiani, R.: Reasoning with goal models. In: Proceedings of the 21st International Conference on Conceptual Modeling (ER’02), pp. 167–181 (2002)Google Scholar
  45. 45.
    Weiss M., Amyot D.: Business process modeling with urn. Int. J. E-Bus. Res. 1(3), 63–90 (2005)CrossRefGoogle Scholar
  46. 46.
    Kronz, A.: Managing of process key performance indicators as part of the aris methodology. Corporate Performance Management, pp. 31–44 (2006)Google Scholar
  47. 47.
    Pourshahid A., Mussbacher G., Amyot D., Weiss M.: Toward an aspect-oriented framework for business process improvement. Int. J. Electron. Bus. 8(3), 233–259 (2010)CrossRefGoogle Scholar
  48. 48.
    Robertson, S., Robertson, J.: Reliable requirements through the quality gateway. In: Proceedings of the 10th International Workshop on Database & Expert Systems Applications (DEXA’99), pp. 357–363 (1999)Google Scholar
  49. 49.
    Robertson, S.: An early start to testing: how to test requirements. In: Proceedings of the EuroSTAR Conference (1996)Google Scholar
  50. 50.
    Bencomo, N., Whittle, J., Sawyer, P., Finkelstein, A., Letier, E.: Requirements reflection: requirements as runtime entities. In: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering (ICSE 2010), pp. 199–202 (2010)Google Scholar

Copyright information

© Springer-Verlag 2012

Authors and Affiliations

  1. 1.School of Design, Engineering and ComputingBournemouth UniversityBournemouthUK
  2. 2.Department of Information Engineering and Computer ScienceUniversity of TrentoTrentoItaly

Personalised recommendations