Paolo Ciancarini

Paolo Ciancarini
University of Bologna | UNIBO · Department of Computer Science and Engineering DISI

PhD in Computer Science

About

364
Publications
52,670
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
4,930
Citations
Additional affiliations
November 1992 - present
University of Bologna
Position
  • Professor

Publications

Publications (364)
Article
Full-text available
Over the past 20 years agile methodologies revolutionized Information Technology, offering tremendous opportunities for the development of Software Engineering as an independent discipline. More specifically, agile methodologies contributed to enhancing the effectiveness and the speed of the production process as well as to improving the productivi...
Chapter
Computational Thinking is a skill related to problem solving: it is the competence necessary for applying, assessing, producing an algorithmic solution, and implementing it. Agile values and principles are both an ethic framework and a practical reference for teams of contemporary software developers. We study the combination of Computational Think...
Article
Full-text available
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 soc...
Article
Full-text available
Storytelling has always been a crucial, perhaps constitutive part of our lives. All communities have told stories. In recent years, software development is becoming increasingly recognized as a creative process that has a lot in common with the process of writing or telling a story. Aim: The objectives of this paper are: (a) to review and aptly cla...
Conference Paper
This paper explores the incorporation of Agile practices in our undergraduate courses leveraging the Essence approach, a meta-notation for describing software processes, roles, and best practices. Exposing students and young developers to the Agile mindset and related methods is important to let them to cope with the challenges of modern software d...
Chapter
During the fall 2020 we observed and tracked several student teams working remotely and independently to develop a non-trivial software product as the capstone project for a course of Software Engineering in our university. The teams used an integrated open-source development environment that we designed to be useful to support and measure Agile de...
Article
Full-text available
Communication among humans consists of both verbal and non verbal components. The latter may sometimes express concepts or ideas not conveyable by the former. This is also true in Software Engineering. This paper first analyses theoretically the role of non verbal communication in software development teams, using the framework provided by distribu...
Chapter
It has been more than two decades since the formulation of the values and principles for the enactment of Agile methods. Since then, the software development industry increasingly began using such methods, that are various. At the core of all Agile methods, however, lies an assumption: it is the interactions between people, not just processes and p...
Chapter
During the 2020 pandemic a new modality for the capstone project in Software Engineering was introduced to our third-year students in Computer Science. They have been tasked with the development of a non trivial software product - a Twitter client capable of visual analytics - using some Agile practices, exploiting a Scrum-like process model, and u...
Book
This volume constitutes selected papers presented at the First International Conference on Frontiers in Software Engineering, ICFSE 2021, hekd in Innopolis, Russia, in June 2021. The 13 presented full papers were thoroughly reviewed and selected from 37 submissions. The papers present discussion on such topics as software engineering tools and en...
Conference Paper
This paper reports on an observational analysis of how the current COVID-19 pandemic and the consequent move to home-based online work have affected the development of software. 50 software engineers and developers, mostly in their twenties, all with a university degree and working for 35 different companies, in the Russian IT city of Innopolis, ha...
Chapter
Computational Thinking is a competence in computational problem solving. Cooperative Thinking (CooT) is an enhancement of Computational Thinking, supporting team-based computational problem solving. CooT is actually grounded on both Computational Thinking (CT) and Agile Values (AV) competencies, which focus respectively on the individual capability...
Preprint
Full-text available
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, imp...
Chapter
Full-text available
Increasing development complexity in software applications raises major concerns about technical debt management, also in Open Source environments. A strategic management perspective provides organizations with an action map to pursue business’ targets with limited resources. This article presents the Strategic Technical Debt Management Model (STDM...
Chapter
Full-text available
Tools are of paramount importance in automating software engineering tasks; although the Agile Manifesto prefers “individuals and their interactions over processes and tools”, some agile development activities make no exception and can be automated effectively and successfully. In process frameworks like Scrum or similar ones some activities are in...
Article
Full-text available
Quality, architecture, and process are considered the keystones of software engineering. ISO defines them in three separate standards. However, their interaction has been scarcely studied, so far. The SQuAP model (Software Quality, Architecture, Process) describes twenty-eight main factors that impact on software quality in banking systems, and eac...
Article
Full-text available
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...
Chapter
Full-text available
Computational Thinking has been introduced as a fundamental skill to acquire, just like basic skills like reading, writing, and numeracy. The reason is that Computational Thinking is one of the most important skills for XXI century citizens, in particular for programmers and scientists at large. Currently, Computer Science teaching practices focus...
Book
SEDA 2018 was held at the premises of the Italian Defence General Secretariat (Segretariato Generale della Difesa) and the main military body actively supporting the conference was the Land Armament Directorate (Direzione Armamenti Terrestri). This is an important evolution of the Italian SEDA military community, as it shows that the interest for t...
Chapter
Full-text available
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 p...
Chapter
Tools are of paramount importance in supporting software development methods, Agile ones included. In this paper, we aim to identify the most popular tools used by the Agile developers community, studying whether there are shared opinions or there are discrepancies, that could be related to cultural or geographical differences. The study is based o...
Preprint
Full-text available
Quality, architecture, and process are considered the keystones of software engineering. ISO defines them in three separate standards. However, their interaction has been scarcely studied, so far. The SQuAP model (Software Quality, Architecture, Process) describes twenty-eight main factors that impact on software quality in banking systems, and eac...
Article
Full-text available
Background: The 2010 reform of the Italian university system introduced the National Scientific Habilitation (ASN) as a requirement for applying to permanent professor positions. Since the CVs of the 59,149 candidates and the results of their assessments have been made publicly available, the ASN constitutes an opportunity to perform analyses abou...
Preprint
Full-text available
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 p...
Preprint
Full-text available
In this work, we discuss the result of an experiment that wants to track how authors use self-citations in their articles. In particular, we have analysed a subset of all the articles published between 1959 and 2016 in ScienceDirect written by the participants to the 2012-2013 Italian Scientific Habilitation so as to see if their citation habits ha...
Preprint
Full-text available
Background. The 2010 reform of the Italian university system introduced the National Scientific Habilitation (ASN) as a requirement for applying to permanent professor positions. Since the CVs of the 59149 candidates and the results of their assessments have been made publicly available, the ASN constitutes an opportunity to perform analyses about...
Preprint
Background. The 2010 reform of the Italian university system introduced the National Scientific Habilitation (ASN) as a requirement for applying to permanent professor positions. Since the CVs of the 59149 candidates and the results of their assessments have been made publicly available, the ASN constitutes an opportunity to perform analyses about...
Chapter
Full-text available
This chapter describes success stories. The MANTIS architecture (Chapter 3) was implemented for a number of use cases on real pilots, and the techniques described in Chapters 4, 5, and 6 were experimented with in real settings. Results on the techniques were already presented in previous chapters. This chapter, on the other hand, describes the pilo...
Preprint
Full-text available
Alternative metrics (aka altmetrics) are gaining increasing interest in the scientometrics community as they can capture both the volume and quality of attention that a research work receives online. Nevertheless, there is limited knowledge about their effectiveness as a mean for measuring the impact of research if compared to traditional citation-...
Article
Full-text available
Information Systems Quality (ISQ) is a critical source of competitive advantages for organizations. In a scenario of increasing competition on digital services, ISQ is a competitive differentiation asset. In this regard, managing, maintaining, and evolving IT infrastructures have become a primary concern of organizations. Thus, a technical perspect...
Chapter
Full-text available
This chapter explains how a mission critical Knowledge-Based System (KBS) has been designed and implemented within a real case study of a governamental organization. Moreover, the KBS has been developed using a novel agile software development methodology. Due to fast changing operational scenarios and volatile requirements, traditional procedural...
Conference Paper
Full-text available
The Web and its Semantic extension (i.e. Linked Open Data) contain open global-scale knowledge and make it available to potentially intelligent machines that want to benefit from it. Nevertheless, most of Linked Open Data lack ontological distinctions and have sparse axiomatisation. For example, distinctions such as whether an entity is inherently...
Preprint
Full-text available
Information Systems Quality (ISQ) is a critical source of competitive advantages for organizations. In a scenario of increasing competition on digital services, ISQ is a competitive differentiation asset. In this regard, managing, maintaining, and evolving IT infrastructures has become a primary concern of organizations. Thus, a technical perspecti...
Cover Page
Full-text available
Software Engineering aims at modeling, managing and implementing software development products and processes in a structured and supportable way, these aspects in the Defense & Security compartment assume high level of importance/criticism, where are required high reliability/quality levels, not comparable with commercial standards. DSSEA , The Ita...
Conference Paper
Full-text available
Training computer scientists to address wicked problems means to focus respectively on the individual capability to think in a computational-oriented way (i.e., Computational Thinking), and on the social dimension of coding (i.e., Agile Values). In this study we propose the conceptual model of Cooperative Thinking, a new education construct of team...
Conference Paper
Full-text available
Although Agile is a well established software development paradigm, major concerns arise when it comes to contracting issues between a software consumer and a software producer. How to contractualize the Agile production of software, especially for security & mission critical organizations, which typically outsource software projects, has been a ma...
Conference Paper
Full-text available
Railway switches operate in harsh environmental conditions; still, their reliability requirements are high due to safety and economic factors. Once deployed, their maintenance depends on the data collected on their status, and the decisions on due corrective actions. The more regular this data collection and decision cycle is, the better confidence...
Conference Paper
Non-functional requirements are the main drivers behind the design choices that shape a software architecture. Self-adaptive systems blur the boundary between design-time and run-time allowing the dynamic re-shaping of a running system to better accommodate changes in the execution context or in stakeholders' expectations. When these expectations a...
Article
Full-text available
A main difference between pre-Web artificial intelligence and the current one is that the Web and its Semantic extension (i.e. Web of Data) contain open global-scale knowledge and make it available to potentially intelligent machines that may want to benefit from it. Nevertheless, most of the Web of Data lacks ontological distinctions and has a spa...
Chapter
In the last 10 years CPUs have evolved focusing on performance improvements based on the introduction of multi-core architectures forcing developers to build software in a completely different way. Concurrent programming is now the main approach to improve performances in any software product. Unfortunately, this paradigm is prone to bugs which are...
Chapter
Full-text available
Even if Agile is a well established software development paradigm, major concerns rise when it comes to contracting issues. How to contractualize the Agile production of software, especially for security and mission critical public organizations, is a major concern. In literature, little has been done, from a foundational point of view regarding th...
Chapter
Full-text available
Complex and ephemeral software requirements, short time-to-market plans and fast changing information technologies have a deep impact on the design of software architectures, especially in Agile/DevOps projects where micro-services are integrated rapidly and incrementally. In this context, the ability to analyze new software requirements and unders...
Chapter
ScholarlyData is the reference linked dataset of the Semantic Web community about papers, people, organisations, and events related to its academic conferences. In this paper we present an extension of such a linked dataset and its associated ontology (i.e. the conference ontology) in order to represent research impact indicators. The latter includ...
Book
This book presents high-quality original contributions on new software engineering models, approaches, methods, and tools and their evaluation in the context of defence and security applications. In addition, important business and economic aspects are discussed, with a particular focus on cost/benefit analysis, new business models, organizational...
Article
Full-text available
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...
Chapter
Full-text available
Digital technologies and their applications are systematically altering established practices and making new ones emerge in different realms of society. Research in social sciences in general and management in particular is no exception, and several examples that span a variety of fields are coming into the spotlight not only from scholarly communi...
Conference Paper
Scholarly publishing has seen an ever increasing interest in Linked Open Data (LOD). However, most of the existing datasets are designed as flat translation of legacy data sources into RDF. Although that is a crucial step to address, a lot of useful information is not expressed in RDF, and humans are still required to infer relevant knowledge by re...
Article
Full-text available
Background Software systems are relying more and more on multi-core hardware requiring a parallel approach to address the problems and improve performances. Unfortunately, parallel development is error prone and many developers are not very experienced with this paradigm also because identifying, reproducing, and fixing bugs is often difficult. Obj...
Chapter
This chapter describes our experience of adopting agile project management in a software development project in the defense context. Adopting an agile approach for both software development and the management of the consequent project is becoming increasingly more relevant in many domains, and the defense domain is no exception. However, this relev...
Conference Paper
Full-text available
Un esperimento su base nazionale mette a confronto due metodologie di sviluppo di programmi radicalmente opposte. La scelta influenza significativamente il prodotto degli studenti, favorendo aspetti funzionali nel caso di Scrum e quelli non funzionali nel caso Waterfall. Non traspare un decisivo vantaggio didattico a favore dell'uno o l'altro metod...
Article
The need of handling semantic heterogeneity of resources is a key problem of the Semantic Web. State of the art techniques for ontology matching are the key technology for addressing this issue. However, they only partially exploit the natural lan- guage descriptions of ontology entities and they are mostly unable to find correspondences between en...
Article
This paper presents a novel approach to Linked Data exploration that uses Encyclopedic Knowledge Patterns (EKPs) as relevance criteria for selecting, organising, and visualising knowledge. EKP are discovered by mining the linking structure of Wikipedia and evaluated by means of a user-based study, which shows that they are cognitively sound as mode...
Book
This book contains the best selected papers of two Satellite Events held at the 20th International Conference on Knowledge Engineering and Knowledge Management, EKAW 2016, in November 2016 in Bologna, Italy: The Second International Workshop on Educational Knowledge Management, EKM 2016, and the First Workshop: Detection, Representation and Managem...
Article
Full-text available
The disruptive nature of the antifragile approach for open and complex systems is of greatest importance and needs to be systematized, especially for software systems. In fact, antifragile software design is becoming a research issue in the software engineering community. We got inspired by the Agile Manifesto which set an important reference point...
Article
Full-text available
The Agile paradigm, as intended in the 2001 “Agile Manifesto,” brought a disruptive software development methodology. However, with regard to mission- and security-critical organizations, traditional Agile methodologies are quite ineffective because they do not clearly address issues of (1) quality and (2) security. Within the Italian Army General...
Conference Paper
In this paper we present an approach to add self-adaptive features to software systems not initially designed to be self-adaptive. Rapid changes in users needs, available resources, and types of system faults are everyday concerns in operating complex systems. The ability to face these issues in a (semi-)automatic fashion is a welcome feature. MAPE...
Conference Paper
Today’s software systems increasingly work in changing environments, where rapid modifications in user needs, resource variabilities and system faults require remarkable administrative efforts. In order to mitigate the costs for governing these activities, software systems are expected to dynamically self-adapt. The problem of supporting auto-adapt...
Article
Full-text available
Un esperimento su base nazionale mette a confronto due metodologie di sviluppo di programmi radicalmente opposte. La scelta influenza significativamente il prodotto degli studenti, favorendo aspetti funzionali nel caso di Scrum e quelli non funzionali nel caso Waterfall. Non traspare un decisivo vantaggio didattico a favore dell’uno o l’altro metod...
Conference Paper
Full-text available
Context: Empirical investigations regarding using Agile programming methodologies in high schools are scarce in the literature. Objective: This paper evaluates (i) the performance, (ii) the code quality, and (iii) the satisfaction of both students and teachers in using Agile practices in education. Method: this study includes an experiment, adminis...
Conference Paper
Agile methods are now a mainstream production process and their proponents are no longer considered hackers or cowboy coders. Still, in embedded and safety critical domains there is somehow the expectation that the approach be "more" plan-based; at least, many of the current normatives seem to lean toward such approach. A definite change in attitud...
Conference Paper
Full-text available
Software Cloning is the typical example where an interdisciplinary approach may bring additional elements into the community's discussion. In fact, little research has been done in its analysis from an Intellectual Propriety Rights (IPRs) perspective, even if it is a widely studied aspect of software engineering. An interdisciplinary approach is cr...
Conference Paper
Full-text available
Even if reverse engineering is a well known and deeply investigated activity in software engineering, little research has been performed from an Intellectual Propriety Rights (IPRs) perspective. In this paper, we analyze some cases of reverse engineering in a IPR perspective; in particular, we survey the behavior of the major European court about r...