Grant: Discovery Grants Program - Individual
Concordia University
$96,000.00
Using Analytics to Improve Trust in Software Ecosystems
FY 2024-25
Summary
A software ecosystem is the interaction of a set of actors (e.g., code contributors and consumers) on top of a common technological platform (e.g., Node.js) that results in a number of software solutions or services. These software ecosystems allow developers to easily share and reuse other's code, reducing development time. The openness of these ecosystems, which allows anyone to contribute and/or reuse code, is a major contributor to their success and rapid growth. For example, the node package manager (npm) hosts approximately 1.2 million packages. Although this openness is generally a positive trait, it also poses a major risk since it requires consumers to trust the ecosystem contributor's developers/organizations - people they generally know very little about. This notion of trust needs to be better understood and supported if ecosystems are to thrive in the future.
Therefore, the objective of the proposed research is to improve trust in software ecosystems. Specifically, I plan to accomplish my objective by 1) empirically examining trust-related issues faced by ecosystem consumers; 2) developing actionable analytics and models to help warn about trust issues in ecosystem contributions; and 3) providing mitigations for trust-related issues facing ecosystem consumers.
The successful completion of this program will enable ecosystem consumers better leverage software ecosystems. Consumers of the ecosystem will have novel analytics and models to gauge how well they can trust their dependencies. Also, ecosystem consumers will have potential mitigations that they can apply to help increase trust in the ecosystem contributions they depend on. Large-scale empirical studies will be performed to validate the effectiveness of the proposed analytics, models and mitigations. These empirical studies will be performed using many different ecosystems, analysis techniques and involve multiple stakeholders to to improve the generalizability of the program's outcomes.
The proposed research will have a direct impact on the software engineering research and practice because it will advance the field by providing pragmatic techniques, based on novel, actionable analytics and models. Furthermore, the proposed research will expose, train and enable highly qualified personnel to learn and contribute to the state-of-the-art in the increasingly important topic of software ecosystems.
Program
Discovery Grants Program - Individual
Recipient
Location
Quebec, Canada
Recipient Type
Academia
Type
Grant
Source
NSERC's Awards Data
As published
Application id
RGPIN-2020-06811
Name nom
Shihab, Emad
Department département
Computer Science and Software Engineering - Computer Science and Software Engineering
Organization id
70
Institution établissement
Concordia University
Province en
Québec
Province fr
Québec
Country en
CANADA
Country fr
CANADA
Fiscal year exercice financier
2024
Competition year année de concours
2020
Award amount
96000
Program id
RGPIN
Program name en
Discovery Grants Program - Individual
Program name fr
Programme de subventions à la découverte - individuelles
Group en
DISCOVERY RESEARCH
Group fr
RECHERCHE AXÉE SUR LA DÉCOUVERTE
Committee code
1507
Committee name en
Computer Science
Committee name fr
Sciences informatiques
Area of application code
801
Area of application group en
Information and communication services
Area of application group fr
Services d'information et de télécommunications
Area of application en
Computer software
Area of application fr
Logiciel
Research subject code
2706
Research subject group en
Information technology
Research subject group fr
Technologie de l'information
Research subject en
Software engineering
Research subject fr
Génie logiciel
Field of research list names en
Not available
Field of research list names fr
Non disponible
Socioeconomic objective list names en
Not available
Socioeconomic objective list names fr
Non disponible
Application title
Using Analytics to Improve Trust in Software Ecosystems
Keywords
mining software repositories; software ecosystems; software analytics; software evolution; empirical software engineering
Application summary
A software ecosystem is the interaction of a set of actors (e.g., code contributors and consumers) on top of a common technological platform (e.g., Node.js) that results in a number of software solutions or services. These software ecosystems allow developers to easily share and reuse other's code, reducing development time. The openness of these ecosystems, which allows anyone to contribute and/or reuse code, is a major contributor to their success and rapid growth. For example, the node package manager (npm) hosts approximately 1.2 million packages. Although this openness is generally a positive trait, it also poses a major risk since it requires consumers to trust the ecosystem contributor's developers/organizations - people they generally know very little about. This notion of trust needs to be better understood and supported if ecosystems are to thrive in the future.
Therefore, the objective of the proposed research is to improve trust in software ecosystems. Specifically, I plan to accomplish my objective by 1) empirically examining trust-related issues faced by ecosystem consumers; 2) developing actionable analytics and models to help warn about trust issues in ecosystem contributions; and 3) providing mitigations for trust-related issues facing ecosystem consumers.
The successful completion of this program will enable ecosystem consumers better leverage software ecosystems. Consumers of the ecosystem will have novel analytics and models to gauge how well they can trust their dependencies. Also, ecosystem consumers will have potential mitigations that they can apply to help increase trust in the ecosystem contributions they depend on. Large-scale empirical studies will be performed to validate the effectiveness of the proposed analytics, models and mitigations. These empirical studies will be performed using many different ecosystems, analysis techniques and involve multiple stakeholders to to improve the generalizability of the program's outcomes.
The proposed research will have a direct impact on the software engineering research and practice because it will advance the field by providing pragmatic techniques, based on novel, actionable analytics and models. Furthermore, the proposed research will expose, train and enable highly qualified personnel to learn and contribute to the state-of-the-art in the increasingly important topic of software ecosystems.