Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

Multidimensional context modeling applied to non-functional analysis of software

Published: 01 June 2019 Publication History

Abstract

Context awareness is a first-class attribute of today software systems. Indeed, many applications need to be aware of their context in order to adapt their structure and behavior for offering the best quality of service even in case the software and hardware resources are limited. Modeling the context, its evolution, and its influence on the services provided by (possibly resource constrained) applications are becoming primary activities throughout the whole software life cycle, although it is still difficult to capture the multidimensional nature of context. We propose a framework for modeling and reasoning on the context and its evolution along multiple dimensions. Our approach enables (1) the representation of dependencies among heterogeneous context attributes through a formally defined semantics for attribute composition and (2) the stochastic analysis of context evolution. As a result, context can be part of a model-based software development process, and multidimensional context analysis can be used for different purposes, such as non-functional analysis. We demonstrate how certain types of analysis, not feasible with context-agnostic approaches, are enabled in our framework by explicitly representing the interplay between context evolution and non-functional attributes. Such analyses allow the identification of critical aspects or design errors that may not emerge without jointly taking into account multiple context attributes. The framework is shown at work on a case study in the eHealth domain.

References

[1]
Afanasov, M., Mottola, L., Ghezzi, C.: Towards context-oriented self-adaptation in resource-constrained cyberphysical systems. In: Proceedings of IEEE 38th International Computer Software and Applications Conference Workshops (COMPSACW), pp. 372---377 (2014)
[2]
Alti, A., Boukerram, A., Roose, P.: Context-aware quality model-driven approach: a new approach for quality control in pervasive computing environments. In: Proceedings of the 4th European Conference on Software Architecture, ECSA'10, pp. 441---448, Springer, Berlin (2010)
[3]
Amundsen, S.L., Eliassen, F.: A resource and context model for mobile middleware. Pers Ubiquitous Comput 12(2), 143---153 (2008)
[4]
Baier, C., Katoen, J.-P.: Principles of Model Checking. The MIT Press, Cambridge (2008)
[5]
Balsamo, S., Bernardo, M., Simeoni, M.: Combining stochastic process algebras and queueing networks for software architecture analysis. In: Proceedings of the 3rd International Workshop on Software and Performance, pp. 190---202. ACM (2002)
[6]
Balsamo, S., Di Marco, A., Inverardi, P., Simeoni, M.: Model-based performance prediction in software development: a survey. IEEE Trans. Softw. Eng. 30(5), 295---310 (2004)
[7]
Bencomo, N.: Supporting the modelling and generation of reflective middleware families and applications using dynamic variability. Ph.D. thesis, Computing Department, Lancaster University (2008)
[8]
Berardinelli, L., Cortellessa, V., Di Marco, A.: Performance modeling and analysis of context-aware mobile software systems. In: Rosenblum, D.S., Taentzer, G. (eds.) Fundamental approaches to software engineering: 13th international conference, FASE 2010, Paphos, Cyprus, vol. LNCS 6013, pp. 353---367. Springer, Berlin (2010)
[9]
Berardinelli, L., Di Marco, A., Di Paolo, F.: MICE: monitoring and modeling the context evolution. In: SASO workshops, pp. 139---144. IEEE Computer Society (2012)
[10]
Bernardi, S., Merseguer, J., Petriu, D.C.: A dependability profile within MARTE. Softw. Syst. Model. 10(3), 313---336 (2011)
[11]
Bernardo, M., Bravetti, M.: Performance measure sensitive congruences for markovian process algebras. Theor. Comput. Sci. 290, 117---160 (2003)
[12]
Bernardo, M., Ciancarini, P., Donatiello, L.: ÆMPA: a process algebraic description language for the performance analysis of software architectures. In: Workshop on software and performance, pp 1---11 (2000)
[13]
Bettini, C., Brdiczka, O., Henricksen, K., Indulska, J., Nicklas, D., Ranganathan, A., Riboni, D.: A survey of context modelling and reasoning techniques. Pervasive Mob. Comput. 6(2), 161---180 (2010)
[14]
Brambilla, M., Cabot, J., Wimmer, M.: Model-Driven Software Engineering in Practice. Morgan & Claypool (2012)
[15]
Bures, T., Hnetynka, P., Kofron, J., Al Ali, R., Skoda, D.: Statistical approach to architecture modes in smart cyber physical systems, In: WICSA and COMPARCH (2016)
[16]
Chung, L., do Prado Leite, J.: On non-functional requirements in software engineering. In: Borgida, A., Chaudhri, V., Giorgini, P., Eric, Y. (eds) Conceptual Modeling: Foundations and Applications. Lecture Notes in Computer Science, vol. 5600, pp. 363---379. Springer, Berlin (2009)
[17]
Cortellessa, V., Mirandola, R.: PRIMA-UML: a performance validation incremental methodology on early UML diagrams. Sci. Comput. Program. 44(1), 101---129 (2002)
[18]
Cortellessa, V., Singh, H., Cukic, B.: Early reliability assessment of UML based software models. In: Workshop on Software and Performance, pp. 302---309 (2002)
[19]
Cover, T.M., Thomas, J.A.: Elements of Information Theory. Wiley, London (2012)
[20]
Di Marco, A., Mascolo, C.: Performance analysis and prediction of physically mobile systems. In Proceedings of the 6th International Workshop on Software and Performance, WOSP '07, pp. 129---132, New York (2007). ACM
[21]
DiVA Project. DynamIc VAriability in complex adaptive systems Research Project (2011)
[22]
Dobson, S., Ye, J.: Using fibrations for situation identification. In: Pervasive 2006 Workshop Proceedings, pp. 645---651. Springer, London (2006)
[23]
Grassi, V., Mirandola, R., Randazzo, E.: Model-driven assessment of QoS-aware self-adaptation. In: Cheng, B., de Lemos, R., Giese, H., Inverardi, P., Magee, J. (eds.) Software Engineering for Self-Adaptive Systems. Lecture Notes in Computer Science, vol. 5525, pp. 201---222. Springer, Berlin (2009)
[24]
Grassi, V., Mirandola, R., Sabetta, A.: A model-driven approach to performability analysis of dynamically reconfigurable component-based systems. In: Proceedings of the 6th International Workshop on Software and Performance, WOSP '07, pp. 103---114, ACM, New York (2007)
[25]
Grassi, V., Mirandola, R., Sabetta, A.: A UML profile to model mobile systems. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S.J. (eds) UML 2004 The Unified Modeling Language. Modeling Languages and Applications, vol. 3273 of Lecture Notes in Computer Science, pp. 128---142. Springer, Berlin (2004)
[26]
Harel, D.: Statecharts: a visual formalism for complex systems. Sci. Comput. Program. 8(3), 231---274 (1987)
[27]
Hillston, J.: A Compositional Approach to Performance Modelling. Cambridge University Press, Cambridge (1996)
[28]
Hirsch, D., Kramer, J., Magee, J., Uchitel, S.: Modes for software architectures. In: Gruhn, V., Oquendo, F. (eds.) Software Architecture. Lecture Notes in Computer Science, vol. 4344, pp. 113---126. Springer, Berlin (2006)
[29]
Hirschfeld, R., Costanza, P., Nierstrasz, O.: Context-oriented programming. J. Object Technol. 7(3), 125---151 (2008)
[30]
Hong, J.-Y., Suh, E.-H., Kim, S.-J.: Context-aware systems: a literature review and classification. Expert Syst. Appl. 36(4), 8509---8522 (2009)
[31]
Inc Object Management Group. UML 2.4.1 Superstructure Specification, formal/2011-08-06 (2011)
[32]
Inc Object Management Group. UML Profile for MARTE, ptc/08-06-09 (2008)
[33]
Inverardi, P., Mancinelli, F., Nesi, M.: A declarative framework for adaptable applications in heterogeneous environments. In: Proceedings of the 2004 ACM Symposium on Applied Computing, SAC '04, pp. 1177---1183, ACM, New York (2004)
[34]
Inverardi, P., Tivoli, M.: The future of software: adaptation and dependability. In: De Lucia, A., Ferrucci, F. (eds.) Software Engineering. Lecture Notes in Computer Science, vol. 5413, pp. 1---31. Springer, Berlin (2009)
[35]
IST-MUSIC Project. Middleware Support for Self-Adaptation in Ubiquitous and Service-Oriented Environments (2013)
[36]
Kiukkonen, N., Blom, J., Dousse, O., Gatica-Perez, D., Laurila, J.: Towards rich mobile phone datasets: Lausanne data collection campaign. In: Proceedings of the 7th International Conference on Pervasive Services (2010)
[37]
Kleppe, A.G., Warmer, J., Bast, W.: MDA Explained: The Model Driven Architecture: Practice and Promise. Addison-Wesley Longman Publishing Co., Inc., Boston (2003)
[38]
Koziolek, H.: Performance evaluation of component-based software systems: a survey. Perform. Eval. 67(8), 634---658 (2010)
[39]
Liptchinsky, V., Khazankin, R., Schulte, S., Satzger, B., Truong, H.-L., Dustdar, S.: On modeling context-aware social collaboration processes. Inf. Syst. 43, 66---82 (2014)
[40]
Lundesgaard, S.A., Lund, K., Eliassen, F.: Service plans for context- and qos-aware dynamic middleware. In: ICDCS Workshops 2006. 26th IEEE International Conference on Distributed Computing Systems Workshops, 2006., p. 70, July 2006
[41]
Morin, B., Fleurey, F., Bencomo, N., Jézéquel, J.-M., Solberg, A., Delhen, V., Blair, G.: An aspect-oriented and model-driven approach for managing dynamic variability. In: MODELS'08, vol. 5301 of LNCS, pp. 782---796 (2008)
[42]
Neuts, M.F.: Matrix-Geometric Solutions in Stochastic Models: An Algorithmic Approach. Courier Corporation (1981)
[43]
Rouvoy, R., Barone, P., Ding, Y., Eliassen, F., Hallsteinsen, S.O., Lorenzo, J., Mamelli, A., Scholz, U.: MUSIC: middleware support for self-adaptation in ubiquitous and service-oriented environments. In: Software Engineering for Self-Adaptive Systems, pp. 164---182 (2009)
[44]
Smith, C.U., Williams, L.G.: Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software. Addison Wesley Longman Publishing Co., Inc., Redwood City (2002)
[45]
Stewart, W.J.: Introduction to the Numerical Solution of Markov Chains. Princeton University Press, Princeton (1994)
[46]
Strang, T., Linnhoff-Popien, C.: A context modeling survey. In: Workshop on Advanced Context Modelling, Reasoning, and Management, UbiComp 2004--The Sixth International Conference on Ubiquitous Computing, Nottingham/England (2004)
[47]
Trivedi, K.S., Sahner, R.A.: SHARPE at the age of twenty two. SIGMETRICS Perform. Eval. Rev. 36(4), 52---57 (2009)
[48]
Warrendale International Society of Automotive Engineers. SAE-AS5506: SAE Architecture Analysis and Design Language AADL (2004)

Cited By

View all
  • (2019)Empirical study on the effectiveness and efficiency of model-driven architecture techniquesSoftware and Systems Modeling (SoSyM)10.1007/s10270-018-00711-y18:5(3083-3096)Online publication date: 2-Aug-2019
  1. Multidimensional context modeling applied to non-functional analysis of software

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image Software and Systems Modeling (SoSyM)
    Software and Systems Modeling (SoSyM)  Volume 18, Issue 3
    June 2019
    772 pages

    Publisher

    Springer-Verlag

    Berlin, Heidelberg

    Publication History

    Published: 01 June 2019

    Author Tags

    1. Context evolution
    2. Context modeling
    3. Performance
    4. Reliability
    5. Transient and steady-state analysis

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 02 Feb 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)Empirical study on the effectiveness and efficiency of model-driven architecture techniquesSoftware and Systems Modeling (SoSyM)10.1007/s10270-018-00711-y18:5(3083-3096)Online publication date: 2-Aug-2019

    View Options

    View options

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media