2018
DOI: 10.1016/j.cl.2017.07.003
|View full text |Cite
|
Sign up to set email alerts
|

μ -DSU: A Micro-Language Based Approach to Dynamic Software Updating

Abstract: Today software systems play a critical role in society's infrastructures and many are required to provide uninterrupted services in their constantly changing environments. As the problem domain and the operational context of such software changes, the software itself must be updated accordingly. In this paper we propose to support dynamic software updating through language semantic adaptation; this is done through use of micro-languages that confine the effect of the introduced change to specific application f… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
10
0

Year Published

2019
2019
2024
2024

Publication Types

Select...
6
1

Relationship

1
6

Authors

Journals

citations
Cited by 11 publications
(10 citation statements)
references
References 53 publications
0
10
0
Order By: Relevance
“…Current techniques to define statesA number of studies have demonstrated 12 techniques to define states in DSU including state transformer [45, 73, 83, 95, 115 ], formalise as state machine [9, 61, 83, 120 ], adaptation [41, 65 ], prepare ready tainted states [101 ], state convergence algorithm [126 ], state‐based specification language [83 ], enforcing restrictions [116 ], model checkers [83 ], using check points [37 ], custom state transfer [116 ], convert states bi‐directionally [42 ], and event‐based [66 ]. C. Existing techniques to transfer states in DSUBefore we list the identified states transformations techniques, it is interesting to mention number of techniques utilised in DSU to assist in states transformations in the selected primary studies, the techniques are including wrappers [16, 22, 43, 46, 52, 77, 94, 95 ], adaptation [4, 38, 41, 43, 59, 100, 129 ], refactoring [47, 50, 55, 74, 86, 99, 123 ], proxies [41, 46, 53, 113, 119, 131 ], class loaders [55, 85, 86, 123 ], in‐Place Proxification [43, 55, 91 ], adjustment [41, …”
Section: Resultsmentioning
confidence: 99%
See 2 more Smart Citations
“…Current techniques to define statesA number of studies have demonstrated 12 techniques to define states in DSU including state transformer [45, 73, 83, 95, 115 ], formalise as state machine [9, 61, 83, 120 ], adaptation [41, 65 ], prepare ready tainted states [101 ], state convergence algorithm [126 ], state‐based specification language [83 ], enforcing restrictions [116 ], model checkers [83 ], using check points [37 ], custom state transfer [116 ], convert states bi‐directionally [42 ], and event‐based [66 ]. C. Existing techniques to transfer states in DSUBefore we list the identified states transformations techniques, it is interesting to mention number of techniques utilised in DSU to assist in states transformations in the selected primary studies, the techniques are including wrappers [16, 22, 43, 46, 52, 77, 94, 95 ], adaptation [4, 38, 41, 43, 59, 100, 129 ], refactoring [47, 50, 55, 74, 86, 99, 123 ], proxies [41, 46, 53, 113, 119, 131 ], class loaders [55, 85, 86, 123 ], in‐Place Proxification [43, 55, 91 ], adjustment [41, …”
Section: Resultsmentioning
confidence: 99%
“…Also, number of authors have highlighted additional DSU approaches including dynamic replacement [22, 54, 66, 75, 86, 92, 93 ], dynamic instrumentation [52, 59, 60, 74, 84, 94 ], dynamic linking [37, 39, 53, 75, 83, 85 ], lust‐in‐time compilation [30, 44, 55, 58, 76, 95 ], wrapper [4, 40, 42, 44, 52 ], dynamic aspect‐oriented [35, 41, 50, 96, 97 ], extension of features [98, 99 ], dynamic adaptation [43, 59 ], rolling update [84 ], object transformer [49 ], data‐driven programming [92 ], distributed DSU [38 ], dynamic core library update [56 ], using run time to support DSU [92 ], procedure‐oriented [30 ], micro‐language‐based [100 ], and dynamic rebinding [5 ].…”
Section: Resultsmentioning
confidence: 99%
See 1 more Smart Citation
“…Systems where there is no compiler at run time will only support instrumentation before run time, or rely 5:9 on a hot code update mechanism. Hot update techniques are nowadays available for many languages such as, for example, C [38], Java [41] or Pharo [63], as well as for a large variety of systems [2,5,24,57,67,68].…”
Section: Cross-cuttingmentioning
confidence: 99%
“…Cazzola et al [70] recently proposed to move the evolution from the application level to the programming language level to support direct dynamic adaptations. They use Neverlang [71], a micro-language framework for modular language development.…”
Section: Dynamic Adaptationsmentioning
confidence: 99%