2015
Autores
Albuquerque, D; Cafeo, B; Garcia, A; Barbosa, S; Abrahao, S; Ribeiro, A;
Publicação
JOURNAL OF SYSTEMS AND SOFTWARE
Abstract
A domain-specific language (DSL) aims to support software development by offering abstractions to a particular domain. It is expected that DSLs improve the maintainability of artifacts otherwise produced with general-purpose languages. However, the maintainability of the DSL artifacts and, hence, their adoption in mainstream development, is largely dependent on the usability of the language itself. Unfortunately, it is often hard to identify their usability strengths and weaknesses early, as there is no guidance on how to objectively reveal them. Usability is a multi-faceted quality characteristic, which is challenging to quantify beforehand by DSL stakeholders. There is even less support on how to quantitatively evaluate the usability of DSLs used in maintenance tasks. In this context, this paper reports a study to compare the usability of textual DSLs under the perspective of software maintenance. A usability measurement framework was developed based on the cognitive dimensions of notations. The framework was evaluated both qualitatively and quantitatively using two DSLs in the context of two evolving object-oriented systems. The results suggested that the proposed metrics were useful: (1) to early identify DSL usability limitations, (2) to reveal specific DSL features favoring maintenance tasks, and (3) to successfully analyze eight critical DSL usability dimensions.
2015
Autores
Fischer, S; Hu, Z; Pacheco, H;
Publicação
Sci. China Inf. Sci.
Abstract
2015
Autores
Fischer, S; Hu, Z; Pacheco, H;
Publicação
MPC
Abstract
A lens is an optical device which refracts light. Properly adjusted, it can be used to project sharp images of objects onto a screen— a principle underlying photography as well as human vision. Striving for clarity, we shift our focus to lenses as abstractions for bidirectional programming. By means of standard mathematical terminology as well as intuitive properties of bidirectional programs, we observe different ways to characterize lenses and show exactly how their laws interact. Like proper adjustment of optical lenses is essential for taking clear pictures, proper organization of lens laws is essential for forming a clear picture of different lens classes. Incidentally, the process of understanding bidirectional lenses clearly is quite similar to the process of taking a good picture. By showing that it is exactly the backward computation which defines lenses of a certain standard class, we provide an unusual perspective, as contemporary research tends to focus on the forward computation.
2015
Autores
Daniels, W; Proença, J; Clarke, D; Joosen, W; Hughes, D;
Publicação
2015 18TH INTERNATIONAL ACM SIGSOFT SYMPOSIUM ON COMPONENT-BASED SOFTWARE ENGINEERING (CBSE)
Abstract
This paper proposes the concept of refraction, a principled means to lower the cost of managing reflective meta-data for pervasive systems. While prior work has demonstrated the bene fits of reflective component-based middleware for building open and reconfigurable applications, the cost of using remote reflective operations remains high. Refractive components address this problem by selectively augmenting application data flows with their reflective meta-data, which travels at low cost to reflective pools, which serve as loci of inspection and control for the distributed application. Additionally reflective policies are introduced, providing a mechanism to trigger reconfigurations based on incoming reflective meta-data. We evaluate the performance of refraction in a case-study of automatic con figuration repair for a real-world pervasive application. We show that refraction reduces network overhead in comparison to the direct use of reflective operations while not increasing development overhead. To enable further experimentation with the concept of refraction, we provide RxCom, an open-source refractive component model and supporting runtime environment.
2015
Autores
Daniels, W; Proença, J; Matthys, N; Joosen, W; Hughes, D;
Publicação
M4IoT@Middleware
Abstract
This paper introduces the concept of tomography, a mechanism to lower management overhead for component-based IoT applications. Previous research has shown the advantages of component-based software engineering, wherein applications are built and reconfigured at runtime through the composition of components. While this approach promotes code-reuse and dynamic reconfiguration, the introspection and reconfiguration of distributed applications is cumbersome and inefficient. Tomography addresses this problem by reimagining the visitor design pattern for distributed component based compositions. We evaluate the performance of this approach in a case-study of discovering/introspecting and reconfiguring a real-world IoT application. We show that in comparison to classic management operations, tomography reduces both the number of explicit queries and the volume of network messages. This significantly reduces management effort and energy consumption.
2015
Autores
Cámara, J; Proença, J;
Publicação
Electron. Proc. Theor. Comput. Sci. - Electronic Proceedings in Theoretical Computer Science - EPTCS
Abstract
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.