Measurement Environment for Open Source Project Resilience
Creators: name: Πολυχρονιάδης, Πρόδρομος Αναστασίου
Publisher: name: Aristotle University of Thessaloniki
Year: 2020
Subjects: Ανοιχτός κώδικας
Αναλύσεις
Ανθεκτικότητα
Open Source
Analyses
Resilience

description: Η ραγδαία ανάπτυξη της κοινότητας του ανοιχτού κώδικα στις μέρες μας είναι δεδομένη και αποτελεί ένα ευρέως αποδεκτό γεγονός. Υπάρχουν πολλοί παράγοντες που οδηγούν τους προγραμματιστές και τους χρήστες στο να στρέψουν την προσοχή τους στις τεχνολογίες ανοιχτού κώδικα, όπως είναι η ασφάλεια, ο έλεγχος και η σταθερότητα. Επιπλέον, τέτοιες τεχνολογίες είναι ελεύθερες για χρήση, διανομή και τροποποίηση ώστε να υπηρετούν ακριβώς τις συγκεκριμένες ανάγκες ενός χρήστη. Ωστόσο,υπάρχουν και προβλήματα μέσα στην κοινότητα του ανοιχτού κώδικα. Αυτά αφορούν, τις περισσότερες φορές, την ποιότητα και άλλες συγκεκριμένες λεπτομέρειες ενός έργου ανοιχτού κώδικα, το οποίο ενδιαφέρει έναν χρήστη ή προγραμματιστή. Πιο συγκεκριμένα, όταν ένας άνθρωπος μέσα στην κοινότητα του ανοιχτού κώδικα επιθυμεί να ασχοληθεί με ένα έργο, είτε να συνεισφέρει σε αυτό είτε να το χρησιμοποιήσει για τους δικούς του σκοπούς,χρειάζεται να γνωρίζει αν το έργο αυτό είναι επαρκώς τεκμηριωμένο, εσφαλμένο, σταθερό και αν είναι ενεργό, με την έννοια του ότι η κοινότητα συνεχίζει να το χρησιμοποιεί ή να το αναπτύσσει. Επιπροσθέτως, ο χρήστης μπορεί να θέλει να δει αν ο πηγαίος κώδικας του συγκεκριμένου έργου είναι γραμμένος ορθά ώστε να εξετάσει τη συνολική ποιότητα του έργου. Η εξακρίβωση όλων αυτών των πτυχών μπορεί να αποτελέσει μία πολύ δύσκολη και χρονοβόρα διαδικασία, τέτοια ώστε να αποτρέψει τους ανθρώπους από το να ασχοληθούν με τα έργα ανοιχτού κώδικα και, συνεπώς, να μην αποτελέσουν μέλη της κοινότητάς του. Το λογισμικό που αναπτύξαμε για την επίτευξη των στόχων της πτυχιακής ονομάζεται ResStats και λειτουργεί παίρνοντας έργα ανοιχτού κώδικα στην είσοδό του, μέσω των URL των αποθετηρίων τους, και, στη συνέχεια, παράγει χρήσιμες αναλύσεις με σκοπό να δείξει στο χρήστη τα αποτελέσματα της αξιολόγησης της ποιότητας αυτών των έργων. Αυτή η αξιολόγηση δημιουργείται και ολοκληρώνεται μέσω της συλλογής σημαντικών δεδομένων – μετρικών από τα έργα αυτά μέσω της χρήσης ενοποιημένων εργαλείων ανοιχτού κώδικα. Η πλατφόρμα μας είναι υπεύθυνη για να κάνει αυτά τα εργαλεία να λειτουργήσουν και να παράξουν τις απαραίτητες μετρικές, ώστε να συνεχίσει στη δημιουργία των αναλύσεων, οι οποίες ενδιαφέρουν το χρήστη. Ο στόχος αυτής της διπλωματικής είναι, λοιπόν, η ανάπτυξη ενός λογισμικού που θα αποδεσμεύει το χρήστη από τη διαδικασία της αξιολόγησης της ποιότητας και θα κάνει όλη τη δουλειά το ίδιο το λογισμικό. Ο χρήστης χρειάζεται μόνο να παρέχει στην πλατφόρμα ResStats με τα έργα ανοιχτού κώδικα που τον ενδιαφέρουν. Ο στόχος αυτός ανταποκρίνεται στο μεγάλο πρόβλημα που περιγράφεται παραπάνω σχετικά με την κοινότητα του ανοιχτού κώδικα και σκοπεύει στην επίλυσή του
description: The rapid development of the open source community today is a certainty and a well-known fact. There are many factors leading developers and users to turn their attention to open source technologies such as security, control and stability. Moreover, such technologies are free to use, distribute and modify in order to comply with someone’s exact needs. However, there are, also, problems within the open source community. These problems, most of the time, have to do with the quality, resilience and other specific details of an open source project a user or programmer is interested in. More specifically, when a person in the open source community wants to interact with a project, whether to contribute in it or use it for his own purposes, he must know if this project is well-documented, buggy, stable and ifit is alive in the meaning that the community still uses it or continues its development. In addition to that, a person might want to see if the source code of the project in question is well-written so as to examine its overall quality. Figuring all these aspects out can be a very hard and time consuming procedure and one that can deter people from interacting with open sourceprojects and, thus, become members of the open source community. This is the problem that this specific thesis is addressing. Our software that we created for achieving this thesis’ goals is called ResStats and what it does is taking open source projects as input, through their repository URLs, and then producing useful analytics in order to show the user the results of the quality and resilience assessment of these projects. This assessment is being created and completed through the gathering of important data metrics from these project by using integrated open source tools and specifically developed scripts. My system is responsible for making these tools and scripts work and produce the metrics needed in order to continue in creating the analytical sheets the user is interested in. The goal of this thesis is to develop a software that takes the quality and resilience assessment procedure off the user’s hands and doing all the work itself. The user only has to provide my system, ResStats, with the open source projects that he is interested in learning more information about. This goal corresponds to the big problem that is described before about the open source community and aims to solve it