Μετρικές σύζευξης και συνεκτικότητας σε σχήματα βάσεων δεδομένων
Loading...
Date
Authors
Μάμαλης, Γεώργιος
Journal Title
Journal ISSN
Volume Title
Publisher
Πανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής
Abstract
Type
Type of the conference item
Journal type
Educational material type
Conference Name
Journal name
Book name
Book series
Book edition
Alternative title / Subtitle
Description
Με τον όρο συνεκτικότητα (cohesion) στην τεχνολογία λογισμικού αναφερόμαστε στον
βαθμό στον οποίο τα στοιχεία εντός μιας δομής σχετίζονται μεταξύ τους. Ουσιαστικά,
αποτελεί ένα μέτρο «δύναμης» των σχέσεων των στοιχείων μιας κλάσης.
Αντίστοιχα, ο όρος σύζευξη (coupling) αναφέρεται στον βαθμό αλληλεξάρτησης μεταξύ 2
διαφορετικών δομικών στοιχείων. Αποτελεί δηλαδή ένα μέτρο του πόσο στενά σχετίζονται τα
στοιχεία των δύο αυτών δομών.
Οι 2 παραπάνω έννοιες είναι πολύ σημαντικές και λαμβάνονται σε πολύ μεγάλο βαθμό
υπόψη όταν σχεδιάζουμε ένα λογισμικό. Γενικά, η καλή γνώση και των δύο εννοιών είναι
αναγκαία για τον σχεδιασμό συστημάτων που είναι επεκτάσιμα, εύκολα κατανοητά και
διαχειρίσιμα. Κυρίως, επιδιώκουμε χαμηλή σύζευξη και υψηλή συνεκτικότητα. Συστήματα
με χαμηλή σύζευξη και υψηλή συνεκτικότητα επηρεάζονται λιγότερο από αλλαγές, είναι πιο
κατανοητά και επαναχρησιμοποιούνται με μεγαλύτερη ευκολία. Στην παρούσα μεταπτυχιακή εργασία μελετάμε τις έννοιες της σύζευξης και της
συνεκτικότητας σε σχήματα βάσεων δεδομένων. Συγκεκριμένα, ξεκινώντας από SQL
περιγραφές σχημάτων, παράγουμε γραφήματα σύζευξης/συνεκτικότητας. Κατόπιν
προτείνουμε μετρικές για την αξιολόγηση των παραπάνω εννοιών. Ορίζουμε τις
προτεινόμενες μετρικές φορμαλιστικά και αποδεικνύουμε ότι είναι καλά ορισμένες, με βάση
ένα σύνολο από ιδιότητες που πρέπει να πληρούνται από τις μετρικές ποιότητας λογισμικού
γενικότερα. Τέλος, με βάση τις προτεινόμενες μετρικές, πραγματοποιούμε μια εκτενή
εμπειρική μελέτη σε ένα σύνολο σχημάτων που προέρχονται από συστήματα ανοιχτού
λογισμικού.
The term cohesion in software refers to the extent to which elements within a structure are related to each other. Essentially, it is a measure of strength of the relationships of the elements of a class. Correspondingly, the term coupling refers to the degree of interdependence between two different structural elements. It is a measure of how closely the elements of these two structures are closely related. The above two concepts are very important and are taken into account very much when designing a software. In general, good knowledge of both concepts is necessary to design systems that are scalable, easily understood and manageable. Above all, we seek low coupling and high consistency. Systems with low coupling and high consistency are less affected by changes, are more understandable and reusable with greater ease. In this thesis we study the concepts of coupling and cohesion in database schemas. In particular, starting with SQL schema descriptions, we produce coupling/cohesion graphs. Then we recommend metrics to evaluate the above concepts. We define the proposed metric formulas and prove that they are well defined, based on a set of properties that must be met by software quality metrics in general. Finally, based on the proposed metrics, we conduct an extensive empirical study on a set of shapes derived from open source systems.
The term cohesion in software refers to the extent to which elements within a structure are related to each other. Essentially, it is a measure of strength of the relationships of the elements of a class. Correspondingly, the term coupling refers to the degree of interdependence between two different structural elements. It is a measure of how closely the elements of these two structures are closely related. The above two concepts are very important and are taken into account very much when designing a software. In general, good knowledge of both concepts is necessary to design systems that are scalable, easily understood and manageable. Above all, we seek low coupling and high consistency. Systems with low coupling and high consistency are less affected by changes, are more understandable and reusable with greater ease. In this thesis we study the concepts of coupling and cohesion in database schemas. In particular, starting with SQL schema descriptions, we produce coupling/cohesion graphs. Then we recommend metrics to evaluate the above concepts. We define the proposed metric formulas and prove that they are well defined, based on a set of properties that must be met by software quality metrics in general. Finally, based on the proposed metrics, we conduct an extensive empirical study on a set of shapes derived from open source systems.
Description
Keywords
Σύζευξη, Συνεκτικότητα, Βάσεις, Δεδομένα, Coupling, Cohesion, Databases, Data
Subject classification
Cohesion
Citation
Link
Language
el
Publishing department/division
Πανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής
Advisor name
Ζάρρας, Απόστολος
Examining committee
Ζάρρας, Απόστολος
Βασιλειάδης, Παναγιώτης
Μαμούλης, Νικόλαος
Βασιλειάδης, Παναγιώτης
Μαμούλης, Νικόλαος
General Description / Additional Comments
Institution and School/Department of submitter
Πανεπιστήμιο Ιωαννίνων. Πολυτεχνική Σχολή. Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής
Table of contents
Sponsor
Bibliographic citation
Βιβλιογραφία: σ. 68-69
Name(s) of contributor(s)
Number of Pages
71 σ.
Course details
Endorsement
Review
Supplemented By
Referenced By
Creative Commons license
Except where otherwised noted, this item's license is described as Attribution-NonCommercial-NoDerivs 3.0 United States