Abstract
This chapter tackles the challenges of variability identification, modelling and implementation for service-based systems. The DiVA methodology is applied to the Mobile Phone Service Portability case-study to demonstrate its solutions to these challenges. The DiVA methodology utilises concepts of Aspect-Oriented Software Development to encapsulate service variants in distinct modules and uses Model-Driven Development techniques to analyse and transform conceptual designs into executable services. The DiVA approach provides a tool-supported methodology for managing dynamic variability in adaptive systems and taming system complexity.
Keywords
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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Using product line techniques to build adaptive systems (2006). DOI 10.1109/SPLINE.2006.1691586. URL http://dx.doi.org/10.1109/SPLINE.2006.1691586
Ali, R., Chitchyan, R., Giorgini, P.: Context for goal-level product line derivation. 3rd International Workshop on Dynamic Software Product Lines (DSPL09) (2009)
Alves, A., Arkin, A., Askary, S., Bloch, B., Curbera, F., Goland, Y., Kartha, N., Sterling, König, D., Mehta, V., Thatte, S., van der Rijn, D., Yendluri, P., Yiu, A.: Web services business process execution language version 2.0. OASIS Committee Draft (2006)
Batista, T., Joolia, A., Coulson, G.: Managing dynamic reconfiguration in component-based systems. pp. 1–17 (2005). DOI 10.1007/11494713\1. URL http://dx.doi.org/10.1007/11494713\_1
Berry, D.M., Cheng, B.H.C., Zhang, J.: The four levels of requirements engineering for and in dynamic adaptive systems. In: In 11th International Workshop on Requirements Engineering Foundation for Software Quality (REFSQ, p. 05 (2005)
Chitchyan, R., Greenwood, P.: Framework for identifying and modelling of dynamic variability in requirements. DiVA Project, Deliverable D1.2 (2009)
Christensen, E., Curbera, F., Meredith, G., Weerawarana, S.: Web service definition language (wsdl). Tech. rep. (2001). URL http://www.w3.org/TR/wsdl
David, P.C., Ledoux, T.: An aspect-oriented approach for developing self-adaptive fractal components. In: W. Löwe, M. Südholt (eds.) Software Composition, Lecture Notes in Computer Science, vol. 4089, pp. 82–97. Springer (2006)
David, P.C., Ledoux, T.: Safe dynamic reconfigurations of Fractal architectures with FScript. In: Proc. Fractal CBSE Workshop, ECOOP’06. Nantes, France (2006). URL http://www.lina.sciences.univ-nantes.fr/Publications/2006/DL06
Filman, R.E., Elrad, T., Clarke, S., Aks¸it, M. (eds.): Aspect-Oriented Software Development. Addison-Wesley, Boston (2005)
Fleurey, F., Dehlen, V., Bencomo, N., Morin, B., Jézéquel, J.M.: Modeling and validating dynamic adaptation pp. 97–108 (2009). DOI http://dx.doi.org/10.1007/978-3-642-01648-611
Fleurey, F., Solberg, A.: A domain specific modeling language supporting specification, simulation and execution of dynamic adaptive systems. In: A. Schürr, B. Selic (eds.) MoDELS, Lecture Notes in Computer Science, vol. 5795, pp. 606–621. Springer (2009)
Floch, J., Hallsteinsen, S., Stav, E., Eliassen, F., Lund, K., Gjorven, E.: Using architecture models for runtime adaptability. IEEE Software 23, 62–70 (2006). DOI http://doi.ieeecomputersociety.org/10.1109/MS.2006.61
Hallsteinsen, S., Hinchey, M., Park, S., Schmid, K.: Dynamic software product lines. Computer 41(4), 93–95 (2008). DOI 10.1109/MC.2008.123
Keeney, J., Cahill, V.: Chisel: A policy-driven, context-aware, dynamic adaptation framework. Policies for Distributed Systems and Networks, IEEE International Workshop on 0, 3 (2003). DOI http://doi.ieeecomputersociety.org/10.1109/POLICY.2003.1206953
Kephart, J.O., Das, R.: Achieving self-management via utility functions. IEEE Internet Computing 11, 40–48 (2007). DOI http://doi.ieeecomputersociety.org/10.1109/MIC.2007.2
Kishi, T., Noda, N., Katayama, T.: Design verification for product line development. In: J.H. Obbink, K. Pohl (eds.) SPLC, Lecture Notes in Computer Science, vol. 3714, pp. 150–161. Springer (2005)
Lapouchnian, A., Liaskos, S., Mylopoulos, J., Yu, Y.: Towards requirements-driven autonomic systems design. ACM SIGSOFT Software Engineering Notes 30(4), 1–7 (2005). URL http://dblp.uni-trier.de/db/journals/sigsoft/sigsoft30.html#LapouchnianLMY05
Lapouchnian, A., Yu, Y., Liaskos, S., Mylopoulos, J.: Requirements-driven design of autonomic application software. In: CASCON ’06: Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research, p. 7. ACM, New York, NY, USA (2006). DOI http://doi.acm.org/10.1145/1188966.1188976
Morin, B.: Survey and evaluation of approaches for runtime variability management. DiVA Project, Deliverable D3.1 (2009)
Morin, B.: Diva run-time reference architecture. DiVA Project, Deliverable D3.2 (2010)
Morin, B., Barais, O., Nain, G., Jézéquel, J.M.: Taming dynamically adaptive systems using models and aspects. In: ICSE, pp. 122–132. IEEE (2009)
Morin, B., Fleurey, F., Bencomo, N., Jézéquel, J.M., Solberg, A., Dehlen, V., Blair, G.: An aspect-oriented and model-driven approach for managing dynamic variability. In: MoD-ELS ’08: Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems, pp. 782–796. Springer-Verlag, Berlin, Heidelberg (2008). DOI http://dx.doi.org/10.1007/978-3-540-87875-954
Nelly Bencomo Jon Whittle, P.S.A.F., Letier, E.: Requirements reflection: Requirements as runtime entities. ACM/IEE 32nd International Conference on Software Engineering (2010)
Niu, N., Easterbrook, S.: Extracting and modeling product line functional requirements. In: RE ’08: Proceedings of the 16th International Requirements Engineering Conference (2008)
Pohl, K., Metzger, A.: Software product line testing. Commun. ACM 49(12), 78–81 (2006). DOI http://doi.acm.org/10.1145/1183236.1183271
Rayson, P.: Wmatrix: A web-based corpus processing environment. Tech. rep., Computing Department, Lancaster University (2008)
Rouvoy, R.: Requirements of mechanisms and planning algorithms for self-adaptation. MUSIC FP6 Integrated Project D1.1 (2007)
Sampaio, A., Rashid, A., Chitchyan, R., Rayson, P.: Ea-miner: Towards automation in aspectoriented requirements engineering. Transactions on Aspect-Oriented Software Development 3(4), 4–39 (2007)
Svahnberg, M., Bosch, J.: Issues concerning variability in software product lines. In: IW-SAPF-3: Proceedings of the International Workshop on Software Architectures for Product Families, pp. 146–157. Springer-Verlag, London, UK (2000)
Tolchinsky, P.: State of the art. ALIVE FP7 Project D2.1 (2008)
Weston, N., Chitchyan, R., Rashid, A.: A framework for constructing semantically composable feature models from natural language requirements. In: SPLC’09: Proceedings of the 13th International Software Product Line Conference (2009)
Whittle, J., Sawyer, P., Bencomo, N., Cheng, B.H., Bruel, J.M.: Relax: Incorporating uncertainty into the specification of self-adaptive systems. Requirements Engineering, IEEE International Conference on 0, 79–88 (2009). DOI http://doi.ieeecomputersociety.org/10.1109/RE.2009.36
Yu, Y., Lapouchnian, A., Liaskos, S., Mylopoulos, J., Leite, J.: From goals to high-variability software design. pp. 1–16 (2008). DOI 10.1007/978-3-540-68123-6 1. URL http://dx.doi.org/10.1007/978-3-540-68123-6_1
Zhang, J., Cheng, B.H.C.: Specifying adaptation semantics. In: WADS ’05: Proceedings of the 2005 workshop on Architecting dependable systems, pp. 1–7. ACM, New York, NY, USA (2005). DOI http://doi.acm.org/10.1145/1083217.1083220
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag/Wien
About this chapter
Cite this chapter
Greenwood, P. et al. (2011). Modelling Service Requirements Variability: The DiVA Way. In: Service Engineering. Springer, Vienna. https://doi.org/10.1007/978-3-7091-0415-6_3
Download citation
DOI: https://doi.org/10.1007/978-3-7091-0415-6_3
Publisher Name: Springer, Vienna
Print ISBN: 978-3-7091-0414-9
Online ISBN: 978-3-7091-0415-6
eBook Packages: Computer ScienceComputer Science (R0)