Οικογένειες αρχιτεκτονικών λογισμικού με ποσοτικά χαρακτηριστικά

Περίληψη

Οι αρχιτεκτονικές λογισμικού είναι σημαντικές για το σχεδιασμό και την ανάπτυξη πολύπλοκων συστημάτων λογισμικού. Για να μπορούν τα συστήματα να λειτουργούν ικανοποιώντας τις ιδιότητές τους θα πρέπει να βασίζονται σε μια σωστή αρχιτεκτονική λογισμικού. Οι αρχιτεκτονικές έχουν ποιοτικά και ποσοτικά χαρακτηριστικά. Τα ποιοτικά χαρακτηριστικά αφορούν κυρίως τον τρόπο αλληλεπίδρασης των συνιστωσών της αρχιτεκτονικής, ενώ τα ποσοτικά χαρακτηριστικά είναι για παράδειγμα το κόστος υλοποίησης ή ακόμα ο βαθμός αβεβαιότητας των αλληλεπιδράσεων. Ένα μεγάλο κομμάτι της βιβλιογραφίας ασχολείται κυρίως με την περιγραφή μόνο των ποιοτικών χαρακτηριστικών των αρχιτεκτονικών. Ωστόσο, μια αρχιτεκτονική είναι αντιπροσωπευτική ενός συστήματος όταν περιγράφει τόσο τα ποιοτικά όσα και τα ποσοτικά χαρακτηριστικά του. Επιπλέον κάποιες βασικές προϋποθέσεις ώστε οι αρχιτεκτονικές λογισμικού να μπορούν να περιγράφουν αποτελεσματικά τα συστήματα με τα χαρακτηριστικά τους, αποτελούν οι ακόλουθες. Αρχικά, να είναι ...
περισσότερα

Περίληψη σε άλλη γλώσσα

Software architectures are crucial in design and development of complex software systems. In order for the systems to work satisfying their properties they must be based on a proper software architecture. Software architectures have both qualitative and quantitative features. Qualitative features mainly concern the way the components in the architecture interact, whereas the quantitative features are for instance the implementation cost or also the degree of uncertainty of the interactions. Most work has been based on characterizing only the qualitative features of software architectures. However, a software architecture is considered to be more representative of a system, if it is able to characterize both qualitative and quantitative features. Yet another basic requirements for software architectures to describe efficiently software systems are to be correct-by-construction and helpful to stakeholders in understanding and analyzing the way the components interact. In this dissertatio ...

Όλα τα τεκμήρια στο ΕΑΔΔ προστατεύονται από πνευματικά δικαιώματα.

Software architectures are crucial in design and development of complex software systems. In order for the systems to work satisfying their properties they must be based on a proper software architecture. Software architectures have both qualitative and quantitative features. Qualitative features mainly concern the way the components in the architecture interact, whereas the quantitative features are for instance the implementation cost or also the degree of uncertainty of the interactions. Most work has been based on characterizing only the qualitative features of software architectures. However, a software architecture is considered to be more representative of a system, if it is able to characterize both qualitative and quantitative features. Yet another basic requirements for software architectures to describe efficiently software systems are to be correct-by-construction and helpful to stakeholders in understanding and analyzing the way the components interact. In this dissertation, we address these issues and more by studying weighted logics which are able to describe software architectures with quantitative features. Mathematical logics are a very useful tool for formally describing software architectures by ensuring correctness-by-construction. We propose three weighted logics where they can describe a range of quantitative features of architectures. For our logics, we consider that every interaction in an architecture has a weight. This weight can either represent the cost, the probability, the uncertainty, or the time needed of the implementation of the interaction. Firstly, we introduce and investigate a weighted propositional configuration logic over a commutative semiring. This logic is able to describe software architectures with quantitative features such as the maximum (or minimum) cost, the probability or time needed of the interactions in the architecture. Given an architecture with weighted interactions we are able to construct a weighted formula which is able to characterize the way the components interact among with their respectively weights. Moreover, we show that given this formula we can compute all possible interactions in the architecture. In other words, we can compute all possible architecture schemes. Our first main result of this logic is that we prove that for every weighted formula we can effectively construct, in doubly exponential time, its equivalent one in full normal form which is unique up to the equivalence relation. So we get that two weighted formulas being equivalent iff they have the same full normal form. Hence, we do not need to check equality for all possible models of the architectures. The second main result of this work states that the equivalence of two weighted formulas is decidable. Moreover, we introduce a notion of soundness, and as a third main result we show that the aforementioned logic is sound. Next, by using the Maude system, which is an implementation of rewriting logic, we accomplish to compute the full normal form of every weighted formula in an automated way. We present the code with rewriting rules of our logic and the time performance of the code when we consider weighted formulas formalizing well known architectures. As we mentioned, the weighted propositional configuration logic over commutative semirings is able to characterize architectures with specific quantitative features. However, features such as the average cost of an architecture cannot be characterized with the aforementioned logic. This is due to the fact that the average operation cannot be expressed by the algebraic structure of commutative semirings. A structure that is able to express this operation is the one of product valuation monoids. For this, we introduce our second weighted logic which is a weighted propositional configuration logic over product valuation monoids. This logic is intended to serve as a specification language for software architectures with quantitative features such as the average of all interactions' costs of the architecture and the maximum cost among all costs occurring most frequently within a specific number of components in an architecture. We provide weighted formulas of our logic which describe well-known architectures equipped with quantitative characteristics. Moreover, we prove an efficient construction of a full normal form which leads to decidability of equivalence of formulas in this logic. Lastly, we introduce and investigate our third weighted logic which is the fuzzy propositional configuration logic. This logic is able to characterize quantitative features where the other weighted logics we introduced cannot. Those features are the uncertainty and the reliability of the interactions in an architecture. For this, we consider that fuzzy logics constitute a suitable tool in order to deal with uncertainty. The contributions of this logic are the following. We introduce the syntax and semantics of this logic which is a weighted propositional configuration logic over De Morgan algebras. We construct weighted formulas characterizing known architectures employed with uncertainty in their interactions. Then, we deal with the decidability of equivalence of formulas in our logic. Firstly, we show that every formula can be written in normal form in exponential time. Then, we prove that the equivalence problem of weighted formulas over an arbitrary De Morgan algebra is decidable in exponential time. Lastly, we deal with formulas which are not equivalent over an arbitrary De Morgan algebra but only over specific ones such as the Kleene and the Boolean algebra. For this, we prove that for every weighted formula over a Kleene algebra (resp. a Boolean algebra) we can effectively construct its equivalent weighted formula in normal form. Hence, the equivalence problem of weighted formulas over the aforementioned De Morgan algebras is decidable.
περισσότερα

Όλα τα τεκμήρια στο ΕΑΔΔ προστατεύονται από πνευματικά δικαιώματα.

DOI
10.12681/eadd/56856
Διεύθυνση Handle
http://hdl.handle.net/10442/hedi/56856
ND
56856
Εναλλακτικός τίτλος
Quantitative architecture styles
Συγγραφέας
Παραπονιάρη, Παυλίνα (Πατρώνυμο: Μιχαήλ)
Ημερομηνία
2024
Ίδρυμα
Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης (ΑΠΘ). Σχολή Θετικών Επιστημών. Τμήμα Μαθηματικών. Τομέας Επιστήμης Υπολογιστών και Αριθμητικής Ανάλυσης
Εξεταστική επιτροπή
Ραχώνης Γεώργιος
Schreiner Wolfgang
Sifakis Joseph
Bliudze Simon
Καραμπετάκης Νικόλαος
Κατσαρός Παναγιώτης
Πουλάκης Δημήτριος
Επιστημονικό πεδίο
Φυσικές ΕπιστήμεςΜαθηματικά ➨ Μαθηματική λογική
Λέξεις-κλειδιά
Αρχιτεκτονικές λογισμικού; Αβεβαιότητα; Τυπικές μέθοδοι; Κανονικές μορφές; Αποφασισιμότητα της ισοδυναμίας; Προτασιακή λογική διαμόρφωσης; Ποσοτικά χαρακτηριστικά; Ποσοτική προτασιακή λογική διαμόρφωσης; Αντιμεταθετικός ημιδακτύλιος; Σύστημα Maude; Ασαφής λογική
Χώρα
Ελλάδα
Γλώσσα
Αγγλικά
Άλλα στοιχεία
σχημ.
Στατιστικά χρήσης
ΠΡΟΒΟΛΕΣ
Αφορά στις μοναδικές επισκέψεις της διδακτορικής διατριβής για την χρονική περίοδο 07/2018 - 07/2023.
Πηγή: Google Analytics.
ΞΕΦΥΛΛΙΣΜΑΤΑ
Αφορά στο άνοιγμα του online αναγνώστη για την χρονική περίοδο 07/2018 - 07/2023.
Πηγή: Google Analytics.
ΜΕΤΑΦΟΡΤΩΣΕΙΣ
Αφορά στο σύνολο των μεταφορτώσων του αρχείου της διδακτορικής διατριβής.
Πηγή: Εθνικό Αρχείο Διδακτορικών Διατριβών.
ΧΡΗΣΤΕΣ
Αφορά στους συνδεδεμένους στο σύστημα χρήστες οι οποίοι έχουν αλληλεπιδράσει με τη διδακτορική διατριβή. Ως επί το πλείστον, αφορά τις μεταφορτώσεις.
Πηγή: Εθνικό Αρχείο Διδακτορικών Διατριβών.
Σχετικές εγγραφές (με βάση τις επισκέψεις των χρηστών)