Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Andrea Janes is active.

Publication


Featured researches published by Andrea Janes.


Information Sciences | 2006

Identification of defect-prone classes in telecommunication software systems using design metrics

Andrea Janes; Marco Scotto; Witold Pedrycz; Barbara Russo; Milorad Stefanovic; Giancarlo Succi

The goal of this paper is to investigate the relation between object-oriented design choices and defects in software systems, with focus on a real-time telecommunication domain. The design choices are measured using the widely accepted metrics suite proposed by Chidamber and Kemerer for object oriented languages [S.R. Chidamber, C.F. Kemerer, A metrics suite for object oriented design, IEEE Transactions on Software Engineering 20 (6) (1994) 476-493]. This paper reports the results of an extensive case study, which strongly reinforces earlier, mainly anecdotal, evidence that design aspects related to communication between classes can be used as indicators of the most defect-prone classes. Statistical models applicable for the non-normally distributed count data are used, such as Poisson regression, negative binomial regression, and zero-inflated negative binomial regression. The performances of the models are assessed using correlations, dispersion coefficients and Alberg diagrams. The zero-inflated negative binomial regression model based on response for a class shows the best overall ability to describe the variability of the number of defects in classes.


Archive | 2014

The Experience Factory

Andrea Janes; Giancarlo Succi

Writing software is not like producing cars: its production process has a high degree of variability. To gain insights on how to improve a software development process, an approach is needed that systematically collects, organizes, and reuses experience. In this chapter we explore the concept of the Experience Factory, a way to create a knowledge infrastructure.


Journal of Systems Architecture | 2004

Measures for mobile users: an architecture

Alberto Sillitti; Andrea Janes; Giancarlo Succi; Tullio Vernazza

Software measures are important to evaluate software properties like complexity, reusability, maintainability, effort required, etc. Collecting such data is difficult because of the lack of tools that perform acquisition automatically. It is not possible to implement a manual data collection because it is error prone and very time expensive. Moreover, developers often work in teams and sometimes in different places using laptops. These conditions require tools that collect data automatically, can work offiine and merge data from different developers working in the same project. This paper presents PROM (PRO Metrics), a distributed Java based tool designed to collect automatically software measures. This tool uses a distributed architecture based on plug-ins, integrated in most popular development tools, and the SOAP communication protocol.


Journal of Systems and Software | 2016

What recommendation systems for software engineering recommend

Marko Gasparic; Andrea Janes

RSSEs mainly output source code artifacts and experts, other types are less explored.RSSEs providing a comprehensive support for testing phase were not identified.RSSEs are very task specific, but not environment specific. A recommendation system for software engineering (RSSE) is a software application that provides information items estimated to be valuable for a software engineering task in a given context. Present the results of a systematic literature review to reveal the typical functionality offered by existing RSSEs, research gaps, and possible research directions. We evaluated 46 papers studying the benefits, the data requirements, the information and recommendation types, and the effort requirements of RSSE systems. We include papers describing tools that support source code related development published between 2003 and 2013. The results show that RSSEs typically visualize source code artifacts. They aim to improve system quality, make the development process more efficient and less expensive, lower developers cognitive load, and help developers to make better decisions. They mainly support reuse actions and debugging, implementation, and maintenance phases. The majority of the systems are reactive. Unexploited opportunities lie in the development of recommender systems outside the source code domain. Furthermore, current RSSE systems use very limited context information and rely on simple models. Context-adapted and proactive behavior could improve the acceptance of RSSE systems in practice.


international conference on software engineering | 2003

An empirical analysis on the discontinuous use of pair programming

Andrea Janes; Barbara Russo; Paolo Zuliani; Giancarlo Succi

Pair Programming has been shown to increase communication and teamwork skills and to provide better code. The aim of this work is to show the efficacy of Pair Programming in transferring knowledge and skills over an environment where people met only occasionally. In a quasi experiment, we find that Pair Programming is effective in sharing knowledge among 15 students who met once a week for a half day, and did their internship individually or in couple for the remaining 4 half days.


cooperative and human aspects of software engineering | 2013

Cooperation wordle using pre-attentive processing techniques

Andrea Janes; Alberto Sillitti; Giancarlo Succi; Stefano Trebeschi

Developer turnover can result in a major problem when developing software. Senior developers leaving the team cause a loss of knowledge; on the other hand, new developers need some time to become fully productive. In this paper, we propose to use a wordle to visualize quickly the level of cooperation of the team in the project. Each word is the name of a class; the size of the word depends on the total effort spent by the team on the corresponding class, and the color is determined by the percentage of team working on the class. We applied pre-attentive processing techniques in the designing phase, so that the user can find out quickly those classes requiring high effort of a small part of the team. This information allows to take corrective actions, such as re-allocating some resources. Thus, this visualization can help in mitigating the knowledge loss and the slowing down due to turnover. On the base of our wordle, we describe four possible cases of development activities. A sample application of our visualization, in the context of a multi-developer project, shows concretely its potentials. We checked, through simulations, that the interpretation of our wordles remains the same for color blind users.


instrumentation and measurement technology conference | 2006

A Perspective on Non Invasive Software Management

Andrea Janes; Marco Scotto; Alberto Sillitti; Giancarlo Succi

Measurement in software production is essential for understanding, controlling, and improving the software development process. Past research has emphasized the importance of a disciplined data collection process as a prerequisite for a sound, solid, and useful analysis. This article proposes non-invasive, i.e. automatic measurement techniques to instill a continuous and consistent framework to support software project management and to overcome the drawbacks of manual data collection


international conference on information technology coding and computing | 2004

Monitoring the development process with Eclipse

Alberto Sillitti; Andrea Janes; Giancarlo Succi; Tullio Vernazza

Monitoring the development process is a complex task due to the amount of resources required (i.e. time and money), moreover the correctness of collected data is not guaranteed if the required tasks are performed manually. This paper describes an extension of the Eclipse IDE environment to allow developers to collect data regarding the development process without any effort.


open source systems | 2012

Using the Eclipse C/C++ Development Tooling as a Robust, Fully Functional, Actively Maintained, Open Source C++ Parser

Danila Piatov; Andrea Janes; Alberto Sillitti; Giancarlo Succi

Open Source parsers that support contemporary C/C++, can recover from errors, include a preprocessor, and that are actively maintained, are rare. This work describes how to use the parser contained in the Eclipse C/C++ Development Tooling (CDT) as a Java library. Such parser provides not only the abstract syntax tree of the parsed file but also the semantics, i.e., type information and bindings. The authors used the same approach to obtain Java and JavaScript parsers.


international conference on agile software development | 2017

Comparing Requirements Decomposition Within the Scrum, Scrum with Kanban, XP, and Banana Development Processes

Davide Taibi; Valentina Lenarduzzi; Andrea Janes; Kari Liukkunen; Muhammad Ovais Ahmad

Context: Eliciting requirements from customers is a complex task. In Agile processes, the customer talks directly with the development team and often reports requirements in an unstructured way. The requirements elicitation process is up to the developers, who split it into user stories by means of different techniques. Objective: We aim to compare the requirements decomposition process of an unstructured process and three Agile processes, namely XP, Scrum, and Scrum with Kanban. Method: We conducted a multiple case study with a replication design, based on the project idea of an entrepreneur, a designer with no experience in software development. Four teams developed the project independently, using four different development processes. The requirements were elicited by the teams from the entrepreneur, who acted as product owner and was available to talk with the four groups during the project. Results: The teams decomposed the requirements using different techniques, based on the selected development process. Conclusion: Scrum with Kanban and XP resulted in the most effective processes from different points of view. Unexpectedly, decomposition techniques commonly adopted in traditional processes are still used in Agile processes, which may reduce project agility and performance. Therefore, we believe that decomposition techniques need to be addressed to a greater extent, both from the practitioners’ and the research points of view.

Collaboration


Dive into the Andrea Janes's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Alberto Sillitti

Free University of Bozen-Bolzano

View shared research outputs
Top Co-Authors

Avatar

Saulius Astromskis

Free University of Bozen-Bolzano

View shared research outputs
Top Co-Authors

Avatar

Valentina Lenarduzzi

Free University of Bozen-Bolzano

View shared research outputs
Top Co-Authors

Avatar

Barbara Russo

Free University of Bozen-Bolzano

View shared research outputs
Top Co-Authors

Avatar

Davide Taibi

Kaiserslautern University of Technology

View shared research outputs
Top Co-Authors

Avatar

Luis Corral

Free University of Bozen-Bolzano

View shared research outputs
Top Co-Authors

Avatar

Marko Gasparic

Free University of Bozen-Bolzano

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Tadas Remencius

Free University of Bozen-Bolzano

View shared research outputs
Researchain Logo
Decentralizing Knowledge