Introduction to the special issue on engineering context-aware software systems

2021 ◽  
Vol 132 ◽  
pp. 106509
Author(s):  
Domenico Amalfitano ◽  
Santiago Matalonga ◽  
Guilherme Horta Travassos
2021 ◽  
Vol 35 (2) ◽  
Author(s):  
Matteo Baldoni ◽  
Federico Bergenti ◽  
Amal El Fallah Seghrouchni ◽  
Michael Winikoff

Author(s):  
Stephan Reiff-Marganiec ◽  
Yi Hong ◽  
Hong Qing Yu ◽  
Schahram Dustdar ◽  
Christoph Dorn ◽  
...  

Collaborative Work Environments are software systems that allow teams, which are nowadays often distributed in location and organization to which they belong, to achieve certain projects or activities. In recent years, the available computer tools that can support such activities have grown; however, their integration is not necessarily achieved. Furthermore, users of such systems need to typically provide a large amount of setup information as the systems are not context-aware and hence cannot gather information about user activities in a simple way, and almost certainly will falter when the context of users changes. This chapter describes the inContext approach: a collection of novel techniques and a reference architecture to support integration of tools and context information to provide collaborative work environments for the mobile worker of today. We will explore in detail how collaborative services are selected and how context is modeled, and consider the details of team forms.


Author(s):  
Iaakov Exman

The unrelenting trend of larger and larger sizes of Software Systems and data has made software comprehensibility an increasingly difficult problem. However, a tacit consensus that human understanding of software is essential for most software related activities, stimulated software developers to embed comprehensibility in their systems’ design. On the other hand, recent empirical successes of Deep Learning neural networks, in several application areas, seem to challenge the tacit consensus: is software comprehensibility a necessity, or just superfluous? This introductory paper, to the 2020 special issue on Theoretical Software Engineering, offers reasons justifying our standpoint on the referred controversy. This paper also points out to specific techniques enabling Human Understanding of software systems relevant to this issue’s papers.


2017 ◽  
Vol 38 ◽  
pp. 444-445 ◽  
Author(s):  
Luis Omar Colombo-Mendoza ◽  
Rafael Valencia-García ◽  
Giner Alor-Hernández ◽  
Paolo Bellavista

2011 ◽  
Vol 28 (2) ◽  
pp. 249-250
Author(s):  
Chiara Renso ◽  
Vania Bogorny ◽  
Hui Xiong

Algorithms ◽  
2021 ◽  
Vol 14 (11) ◽  
pp. 335
Author(s):  
Hongwei Wei ◽  
Guanjun Lin ◽  
Lin Li ◽  
Heming Jia

Exploitable vulnerabilities in software systems are major security concerns. To date, machine learning (ML) based solutions have been proposed to automate and accelerate the detection of vulnerabilities. Most ML techniques aim to isolate a unit of source code, be it a line or a function, as being vulnerable. We argue that a code segment is vulnerable if it exists in certain semantic contexts, such as the control flow and data flow; therefore, it is important for the detection to be context aware. In this paper, we evaluate the performance of mainstream word embedding techniques in the scenario of software vulnerability detection. Based on the evaluation, we propose a supervised framework leveraging pre-trained context-aware embeddings from language models (ELMo) to capture deep contextual representations, further summarized by a bidirectional long short-term memory (Bi-LSTM) layer for learning long-range code dependency. The framework takes directly a source code function as an input and produces corresponding function embeddings, which can be treated as feature sets for conventional ML classifiers. Experimental results showed that the proposed framework yielded the best performance in its downstream detection tasks. Using the feature representations generated by our framework, random forest and support vector machine outperformed four baseline systems on our data sets, demonstrating that the framework incorporated with ELMo can effectively capture the vulnerable data flow patterns and facilitate the vulnerability detection task.


Author(s):  
Sahar Elshafei ◽  
◽  
Ehab Hassanein ◽  
Hanan Elazhary ◽  
◽  
...  

Context-awareness enables systems to be tailored to the needs of users and their real circumstances at certain times. A noteworthy trend in software development is that an increasing number of software systems are being developed by individuals with expert knowledge in other sectors. Because most of the current context-aware development toolkits are intended for software developers, these types of systems cannot be easily developed by non-technical consumers. The development of tools for designing context-aware frameworks by consumers who are not programming experts but are specialists in the area of implementation would result in faster adoption of such services by businesses. This paper provides a cloud-based framework for people without programming experience to create context-aware mobile applications. The platform can provide a lightweight distribution of packaged applications that allows experts to send specified information to mobile users based on their context data without overlapping between the rules of the application. An energy-efficient mobile application was developed to acquire contextual information from the user device and to create quality data accordingly. The framework adopts Platform as a Service (PaaS) and containerization to facilitate development of context-aware mobile applications by experts in various domains rather than developing a tool for each domain in isolation, while considering multitenancy.


Sign in / Sign up

Export Citation Format

Share Document