482 research outputs found
towards antifragile software architectures
Abstract: Antifragility is a rising issue in Software Engineering. Due to pervasiveness of software in a growing number of mission critical applications, traditional resilience and recovery systems may not be sufficient. Software has taken over many functionalities which are of vital interest in today and future world. We relay a lot on software applications which may be faulty and cause immense damages. To cope with this scenario, claiming to develop better software is not enough, since unexpected events a.k.a. Black Swans, may disrupt and overcome our system. The purpose of this paper is to propose a new architectural design that responds to the need to build antifragile systems for contemporary complex scenarios. We suggest a system which enhances its strength through experience and errors. It is a self adaptive system architecture improving when facing errors. The most relevant aspect of this approach is that architectures are not only resilient, they extract the intrinsic value of faults. This paper suggests that a fine grained architecture is the key issue to build antifragile systems
How social interactions can affect Modern Code Review
Introduction: Modern Code Review (MCR) is a multistage process where developers evaluate source code written by others to enhance the software quality. Despite the numerous studies conducted on the effects of MCR on software quality, the non-technical issues in the MCR process have not been extensively studied. This study aims to investigate the social problems in the MCR process and to find possible ways to prevent them and improve the overall quality of the MCR process.Methodology: To achieve the research objectives, we applied the grounded theory research shaped by GQM approach to collect data on the attitudes of developers from different teams toward MCR. We conducted interviews with 25 software developers from 13 companies to obtain the information necessary to investigate how social interactions affect the code reviewing process.Results: Our findings show that interpersonal relationships within the team can have significant consequences on the MCR process. We also received a list of possible strategies to overcome these problems.Discussion: Our study provides a new perspective on the non-technical issues in the MCR process, which has not been extensively studied before. The findings of this study can help software development teams to address the social problems in the MCR process and improve the overall quality of their software products.Conclusion: This study provides valuable insights into the non-technical issues in the MCR process and the possible ways to prevent them. The findings of this study can help software development teams to improve the MCR process and the quality of their software products. Future research could explore the effectiveness of the identified strategies in addressing the social problems in the MCR process
Agile methodologies between software development and music production: an empirical study
Over the past 20 years agile methodologies revolutionized Information
Technology, oering tremendous opportunities for the development of Software
Engineering as an independent discipline. More specifically, agile methodologies
contributed to enhancing the eectiveness and the speed of the production
process as well as to improving the productivity and motivations of software
developers organized in high performing teams. The agile philosophy can be
and has been applied in dierent contexts and across several domains. This
work analyses the relationship between Agile methodologies used by software
engineers and the practices pursued by musicians in their daily lives. Our findings
suggests that collaborative, strongly planned software development life cycle
models (such as Waterfall, V-model, iterative, and Spiral) are not adequate models
to describe the daily practices of musical composers. This is because their
work requires a lot of flexibility, which such models intrinsically lack, because
they are oriented to ensuring some form of monitorable progress. Interestingly,
our findings also show that nine out of 12 Agile Principles are consciously or
unconsciously followed by musicians in their practices. This suggests that there
are some deep connections between these two prima facie dierent fields, which
are both very creative. Even though our findings await replication, possibly with
larger statistical samples, they contribute to open up a new strand of research in
the fi
Observing LOD using Equivalent Set Graphs: it is mostly flat and sparsely linked
This paper presents an empirical study aiming at understanding the modeling
style and the overall semantic structure of Linked Open Data. We observe how
classes, properties and individuals are used in practice. We also investigate
how hierarchies of concepts are structured, and how much they are linked. In
addition to discussing the results, this paper contributes (i) a conceptual
framework, including a set of metrics, which generalises over the observable
constructs; (ii) an open source implementation that facilitates its application
to other Linked Data knowledge graphs.Comment: 18 page
A Java Middleware for Guaranteeing Privacy of Distributed Tuple Spaces
The tuple space communication model, such as the one used in Linda, provides great flexibility for modeling concurrent, distributed and mobile processes. In a distributed setting with mobile agents, particular attention is needed for protecting sites and information. We have designed and developed a Java middleware, Klava, for implementing distributed tuple spaces and operations to support agent interaction and mobility. In this paper, we extend the Klava middleware with cryptographic primitives that enable encryption and decryption of tuple fields. We describe the actual implementation of the new primitives and provide a few examples. The proposed extension is general enough to be applied to similar Java frameworks using multiple distributed tuples spaces possibly dealing with mobility
A Reference Software Architecture for Social Robots
Social Robotics poses tough challenges to software designers who are required
to take care of difficult architectural drivers like acceptability, trust of
robots as well as to guarantee that robots establish a personalised interaction
with their users. Moreover, in this context recurrent software design issues
such as ensuring interoperability, improving reusability and customizability of
software components also arise.
Designing and implementing social robotic software architectures is a
time-intensive activity requiring multi-disciplinary expertise: this makes
difficult to rapidly develop, customise, and personalise robotic solutions.
These challenges may be mitigated at design time by choosing certain
architectural styles, implementing specific architectural patterns and using
particular technologies.
Leveraging on our experience in the MARIO project, in this paper we propose a
series of principles that social robots may benefit from. These principles lay
also the foundations for the design of a reference software architecture for
Social Robots. The ultimate goal of this work is to establish a common ground
based on a reference software architecture to allow to easily reuse robotic
software components in order to rapidly develop, implement, and personalise
Social Robots
The practice of self-citations: a longitudinal study
In this article, we discuss the outcomes of an experiment where we analysed whether and to what extent the introduction, in 2012, of the new research assessment exercise in Italy (a.k.a. Italian Scientific Habilitation) affected self-citation behaviours in the Italian research community. The Italian Scientific Habilitation attests to the scientific maturity of researchers and in Italy, as in many other countries, is a requirement for accessing to a professorship. To this end, we obtained from ScienceDirect 35,673 articles published from 1957 to 2016 by the participants to the 2012 Italian Scientific Habilitation, that resulted in the extraction of 1,379,050 citations retrieved through Semantic Publishing technologies. Our analysis showed an overall increment in author self-citations (i.e. where the citing article and the cited article share at least one author) in several of the 24 academic disciplines considered. However, we depicted a stronger causal relation between such increment and the rules introduced by the 2012 Italian Scientific Habilitation in 10 out of 24 disciplines analysed
- …