Deployment Variability in Delta-Oriented Models

  • Einar Broch Johnsen
  • Rudolf Schlatte
  • S. Lizeth Tapia Tarifa
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8802)

Abstract

Software engineering increasingly emphasizes variability by developing families of products for a range of application contexts or user requirements. ABS is a modeling language which supports variability in the formal modeling of software by using feature selection to transform a delta-oriented base model into a concrete product model. ABS also supports deployment models, with a separation of concerns between execution cost and server capacity. This allows the model-based assessment of deployment choices on a product’s quality of service. This paper combines deployment models with the variability concepts of ABS, to model deployment choices as features when designing a family of products.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Agha, G.A.: ACTORS: A Model of Concurrent Computations in Distributed Systems. The MIT Press (1986)Google Scholar
  2. 2.
    Albert, E., Arenas, P., Genaim, S., Gómez-Zamalloa, M., Puebla, G.: COSTABS: A cost and termination analyzer for ABS. In: PEPM 2012, pp. 151–154. ACM (2012)Google Scholar
  3. 3.
    Albert, E., de Boer, F.S., Hähnle, R., Johnsen, E.B., Schlatte, R., Tapia Tarifa, S.L., Wong, P.Y.H.: Formal modeling and analysis of resource management for cloud architectures. an industrial case study using Real-Time ABS. J. of Service-Oriented Computing and Applications (to appear, 2014)Google Scholar
  4. 4.
    Albert, E., Genaim, S., Gómez-Zamalloa, M., Johnsen, E.B., Schlatte, R., Tarifa, S.L.T.: Simulating concurrent behaviors with worst-case cost bounds. In: Butler, M., Schulte, W. (eds.) FM 2011. LNCS, vol. 6664, pp. 353–368. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  5. 5.
    Armstrong, J.: Programming Erlang: Software for a Concurrent World. Pragmatic Bookshelf (2007)Google Scholar
  6. 6.
    Bettini, L., Damiani, F., Schaefer, I.: Compositional type checking of delta-oriented software product lines. Acta Inf. 50(2), 77–122 (2013)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Bjørk, J., de Boer, F.S., Johnsen, E.B., Schlatte, R., Tapia Tarifa, S.L.: User-defined schedulers for real-time concurrent objects. Innovations in Systems and Software Engineering 9(1), 29–43 (2013)CrossRefGoogle Scholar
  8. 8.
    Caromel, D., Henrio, L.: A Theory of Distributed Object. Springer (2005)Google Scholar
  9. 9.
    Clarke, D., Diakov, N., Hähnle, R., Johnsen, E.B., Schaefer, I., Schäfer, J., Schlatte, R., Wong, P.Y.H.: Modeling spatial and temporal variability with the HATS abstract behavioral modeling language. In: Bernardo, M., Issarny, V. (eds.) SFM 2011. LNCS, vol. 6659, pp. 417–457. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  10. 10.
    Clarke, D., Helvensteijn, M., Schaefer, I.: Abstract delta modeling. In: GPCE 2010, pp. 13–22. ACM (2010)Google Scholar
  11. 11.
    Clarke, D., Muschevici, R., Proença, J., Schaefer, I., Schlatte, R.: Variability modelling in the ABS language. In: Aichernig, B.K., de Boer, F.S., Bonsangue, M.M. (eds.) FMCO 2010. LNCS, vol. 6957, pp. 204–224. Springer, Heidelberg (2011)Google Scholar
  12. 12.
    Dean, J., Ghemawat, S.: MapReduce: Simplified data processing on large clusters. In: OSDI 2004, pp. 137–150. USENIX (2004)Google Scholar
  13. 13.
    Garcia-Alonso, J., Olmeda, J.B., Murillo, J.M.: Architectural variability management in multi-layer web applications through feature models. In: FOSD 2012, pp. 29–36. ACM (2012)Google Scholar
  14. 14.
    Gomaa, H.: Designing Software Product Lines with UML. Addison-Wesley (2005)Google Scholar
  15. 15.
    Haber, A., Kutz, T., Rendel, H., Rumpe, B., Schaefer, I.: Delta-oriented architectural variability using Monticore. In: European Conference on Software Architecture (ECSA 2011), Companion, Workshop on Software Architecture Variability (SAVA), p. 6. ACM (2011)Google Scholar
  16. 16.
    Haber, A., Rendel, H., Rumpe, B., Schaefer, I., van der Linden, F.: Hierarchical variability modeling for software architectures. In: SPLC, pp. 150–159. IEEE (2011)Google Scholar
  17. 17.
    Haller, P., Odersky, M.: Scala actors: Unifying thread-based and event-based programming. Theoretical Computer Science 410(2-3), 202–220 (2009)MathSciNetCrossRefMATHGoogle Scholar
  18. 18.
    Hendrickson, S.A., van der Hoek, A.: Modeling product line architectures through change sets and relationships. In: ICSE 2007, pp. 189–198. IEEE (2007)Google Scholar
  19. 19.
    Jain, R.: The Art of Computer Systems Performance Analysis. Wiley (1991)Google Scholar
  20. 20.
    Johnsen, E.B., Hähnle, R., Schäfer, J., Schlatte, R., Steffen, M.: ABS: A core language for abstract behavioral specification. In: Aichernig, B.K., de Boer, F.S., Bonsangue, M.M. (eds.) FMCO 2010. LNCS, vol. 6957, pp. 142–164. Springer, Heidelberg (2011)Google Scholar
  21. 21.
    Johnsen, E.B., Owe, O.: An asynchronous communication model for distributed concurrent objects. Software and Systems Modeling 6(1), 35–58 (2007)CrossRefGoogle Scholar
  22. 22.
    Johnsen, E.B., Owe, O., Schlatte, R., Tapia Tarifa, S.L.: Dynamic resource reallocation between deployment components. In: Dong, J.S., Zhu, H. (eds.) ICFEM 2010. LNCS, vol. 6447, pp. 646–661. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  23. 23.
    Broch Johnsen, E., Owe, O., Schlatte, R., Tapia Tarifa, S.L.: Validating timed models of deployment components with parametric concurrency. In: Beckert, B., Marché, C. (eds.) FoVeOOS 2010. LNCS, vol. 6528, pp. 46–60. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  24. 24.
    Johnsen, E.B., Schlatte, R., Tapia Tarifa, S.L.: Modeling resource-aware virtualized applications for the cloud in Real-Time ABS. In: Aoki, T., Taguchi, K. (eds.) ICFEM 2012. LNCS, vol. 7635, pp. 71–86. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  25. 25.
    Kattepur, A., Sen, S., Baudry, B., Benveniste, A., Jard, C.: Variability modeling and QoS analysis of web services orchestrations. In: ICWS, pp. 99–106. IEEE (2010)Google Scholar
  26. 26.
    Lämmel, R.: Google’s MapReduce programming model - revisited. Sci. Comput. Program. 70(1), 1–30 (2008)CrossRefMATHGoogle Scholar
  27. 27.
    Loughran, N., Sánchez, P., Garcia, A., Fuentes, L.: Language support for managing variability in architectural models. In: Pautasso, C., Tanter, É. (eds.) SC 2008. LNCS, vol. 4954, pp. 36–51. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  28. 28.
    Ono, K., Hirai, Y., Tanabe, Y., Noda, N., Hagiya, M.: Using Coq in specification and program extraction of Hadoop MapReduce applications. In: Barthe, G., Pardo, A., Schneider, G. (eds.) SEFM 2011. LNCS, vol. 7041, pp. 350–365. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  29. 29.
    Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer (2005)Google Scholar
  30. 30.
    Schaefer, I.: Variability modelling for model-driven development of software product lines. In: VaMoS 2010, ICB-Res. Rep. 37, pp. 85–92. Univ. Duisburg-Essen (2010)Google Scholar
  31. 31.
    Schaefer, I., Bettini, L., Bono, V., Damiani, F., Tanzarella, N.: Delta-oriented Programming of Software Product Lines. In: Bosch, J., Lee, J. (eds.) SPLC 2010. LNCS, vol. 6287, pp. 77–91. Springer, Heidelberg (2010)Google Scholar
  32. 32.
    Schaefer, I., Bettini, L., Damiani, F.: Compositional type-checking for delta-oriented programming. In: AOSD 2011, pp. 43–56. ACM (2011)Google Scholar
  33. 33.
    Schaefer, I., Damiani, F.: Pure delta-oriented programming. In: FOSD 2010, pp. 49–56. ACM (2010)Google Scholar
  34. 34.
    Schaefer, I., Hähnle, R.: Formal methods in software product line engineering. IEEE Computer 44(2), 82–85 (2011)CrossRefGoogle Scholar
  35. 35.
    Schaefer, I., Rabiser, R., Clarke, D., Bettini, L., Benavides, D., Botterweck, G., Pathak, A., Trujillo, S., Villela, K.: Software diversity: state of the art and perspectives. Software Tools for Technology Transfer (STTT) 14(5), 477–495 (2012)CrossRefGoogle Scholar
  36. 36.
    Schobbens, P.-Y., Heymans, P., Trigaux, J.-C.: Feature diagrams: A survey and a formal semantics. In: Intl. Conf. on Requirements Engineering (RE2006), pp. 136–145. IEEE (2006)Google Scholar
  37. 37.
    van Ommering, R.C., van der Linden, F., Kramer, J., Magee, J.: The Koala component model for consumer electronics software. IEEE Computer 33(3), 78–85 (2000)CrossRefGoogle Scholar
  38. 38.
    Wagelaar, D., Jonckers, V.: Explicit platform models for MDA. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 367–381. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  39. 39.
    Yang, F., Su, W., Zhu, H., Li, Q.: Formalizing MapReduce with CSP. In: Intl. Conf. on Engineering of Computer-Based Systems, pp. 358–367. IEEE (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Einar Broch Johnsen
    • 1
  • Rudolf Schlatte
    • 1
  • S. Lizeth Tapia Tarifa
    • 1
  1. 1.Department of InformaticsUniversity of OsloNorway

Personalised recommendations