Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Τεχνολογία ΛογισμικούSlide 1 Αξιοπιστία Λογισμικού u Κατηγοριοποίηση και εξειδίκευση της αξιοπιστίας των συστημάτων λογισμικού.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Τεχνολογία ΛογισμικούSlide 1 Αξιοπιστία Λογισμικού u Κατηγοριοποίηση και εξειδίκευση της αξιοπιστίας των συστημάτων λογισμικού."— Μεταγράφημα παρουσίασης:

1 Τεχνολογία ΛογισμικούSlide 1 Αξιοπιστία Λογισμικού u Κατηγοριοποίηση και εξειδίκευση της αξιοπιστίας των συστημάτων λογισμικού

2 Τεχνολογία ΛογισμικούSlide 2 Στόχοι u Συζήτηση προβλημάτων εξειδίκευσης και μέτρησης u Εισαγωγή μέτρων αξιοπιστίας και συζήτηση για την χρήση τους σε εξειδίκευση αξιοπιστίας u Περιγραφή διαδικασίας στατιστικού ελέγχου u Να δείξουμε πως η επιβεβαίωση της αξιοπιστίας μπορεί να εξαχθεί από αποτελέσματα στατιστικού ελέγχου

3 Τεχνολογία ΛογισμικούSlide 3 Θέματα u Ορισμός αξιοπιστίας u Αξιοπιστία και αποτελεσματικότητα u Μέτρα αξιοπιστίας u Εξειδίκευση αξιοπιστίας u Στατιστικός έλεγχος και λειτουργικά προφιλ u Μοντελοποίηση αύξησης αξιοπιστίας u Πρόβλεψη αξιοπιστίας

4 Τεχνολογία ΛογισμικούSlide 4 u Πιθανότητα λειτουργίας χωρίς αστοχία για καθορισμένο χρόνο σε καθορισμένο περιβάλλον για δεδομένους λόγους u Αυτό σημαίνει διαφορετικά πράγματα ανάλογα με το σύστημα και τους χρήστες του συστήματος u Άτυπα, η αξιοπιστία είναι μέτρο του πόσο καλά οι χρήστες νομίζουν ότι παρέχει τις υπηρεσίες που απαιτούν Τι είναι αξιοπιστία;

5 Τεχνολογία ΛογισμικούSlide 5 u Δεν μπορεί να ορισθεί αντικειμενικά Μέτρα αξιοπιστίας τα οποία καθορίζονται σε έχουν έννοια u Απαιτεί λειτουργικό προφίλ για τον ορισμό του Το λειτουργικό προφίλ ορίζει το αναμενόμενο πρότυπο χρήσης λογισμικού u Πρέπει να θεωρήσουμε τις επιπτώσεις αποτυχίας Δεν είναι όλες οι αποτυχίες το ίδιο σοβαρές. Το σύστημα είναι περισσότερο αναξιόπιστο εάν υπάρχουν σοβαρές αποτυχίες Αξιοπιστία Λογισμικού

6 Τεχνολογία ΛογισμικούSlide 6 u Μία αποτυχία αντιστοιχεί σε απρόβλεπτη συμπεριφορά που παρατηρείται από τον χρήστη του λογισμικού u Ένα λάθος είναι στατικό χαρακτηριστικό του συστήματος που προκαλεί εμφάνιση αποτυχίας του συστήματος u Τα λάθη δεν προκαλούν κατ’ ανάγκη αποτυχίες. Αυτό γίνεται μόνο όταν χρησιμοποιείται το συγκεκριμένο τμήμα του λογισμικού u Εάν κάποιος χρήστης σημειώσει μία αποτυχία, είναι αποτυχία; Οι περισσότεροι χρήστες δεν γνωρίζουν τις προδιαγραφές λογισμικού Αποτυχίες και Λάθη

7 Τεχνολογία ΛογισμικούSlide 7 Αντιστοίχιση Εισόδου / Εξόδου

8 Τεχνολογία ΛογισμικούSlide 8 Βελτίωση Αξιοπιστίας u Η αξιοπιστία βελτιώνεται όταν τα λάθη που υπάρχουν στον πλέον συχνά χρησιμοποιούμενο τμήμα του κώδικα απομακρύνονται u Απομάκρυνση του x% των λαθών δεν σημαίνει κατ’ ανάγκη βελτίωση της αξιοπιστίας κατά x% u Σύμφωνα με αποτελέσματα μελέτης απομάκρυνση του 60% των λαθών λογισμικού οδηγεί σε 3% βελτίωση αξιοπιστίας u Η απομάκρυνση λαθών με σοβαρές επιπτώσεις είναι ο σημαντικότερος στόχος

9 Τεχνολογία ΛογισμικούSlide 9 Αντίληψη της Αξιοπιστίας

10 Τεχνολογία ΛογισμικούSlide 10 Αξιοπιστία και Τυπικές Μέθοδοι u Η χρήση των τυπικών μεθόδων οδηγούν σε πιο αξιόπιστα συστήματα τα οποία μπορεί να αποδειχθεί ότι ικανοποιούν τις προδιαγραφές u Η ανάπτυξη τυπικών προδιαγραφών οδηγεί σε λεπτομερή ανάλυση του συστήματος που εντοπίζει ανωμαλίες και παραλείψεις στις προδιαγραφές u Όμως οι τυπικές μέθοδοι δεν βελτιώνουν απαραίτητα την αξιοπιστία

11 Τεχνολογία ΛογισμικούSlide 11 Αξιοπιστία και Τυπικές Μέθοδοι u Οι προδιαγραφές δεν αντικατοπτρίζουν τις πραγματικές ανάγκες των χρηστών του συστήματος u Μία τυπική προδιαγραφή αποκρύπτει προβλήματα διότι οι χρήστες δεν την καταλαβαίνουν u Εκτυπώσεις προγραμμάτων συνήθως περιέχουν λάθη u Συνήθως περιέχονται υποθέσεις για το περιβάλλον του συστήματος και την χρήση που είναι λάθος

12 Τεχνολογία ΛογισμικούSlide 12 Αξιοπιστία και Αποτελεσματικότητα u Όσο βελτιώνεται η αξιοπιστία τόσο μειώνεται η αποτελεσματικότητα ενός συστήματος u Για να γίνει ένα σύστημα πιο αξιόπιστο, απαιτείται επιπλέον κώδικας ο οποίος κάνει τους ελέγχους, κ.α. Ο επιπλέον κώδικας κάνει πιο αργό το λογισμικό

13 Τεχνολογία ΛογισμικούSlide 13 u Η αξιοπιστία είναι πιο σημαντική από την αποτελεσματικότητα u Δεν απαιτείται η χρήση υλικού πλήρως αφού οι Η/Υ είναι φτηνοί και γρήγοροι u Δεν χρησιμοποιείται μη αξιόπιστο λογισμικό u Δύσκολη η βελτίωση μη αξιόπιστων συστημάτων u Τα κόστη αποτυχίας λογισμικού είναι συνήθως πολύ μεγαλύτερα από το κόστος του συστήματος u Το κόστος από την απώλεια δεδομένων είναι πολύ υψηλό Αξιοπιστία και Αποτελεσματικότητα

14 Τεχνολογία ΛογισμικούSlide 14 u Τα μέτρα υλικού δεν είναι κατάλληλα για λογισμικό αφού βασίζονται σε αστοχίες στοιχείων και απαιτείται η αλλαγή ή επιδιόρθωση κάποιου στοιχείου όταν αστοχεί. Ο σχεδιασμός υποτίθεται ότι είναι σωστός u Οι αστοχίες λογισμικού είναι πάντα αποτυχίες σχεδιασμού. Το σύστημα συνήθως είναι διαθέσιμο παρότι έχει εμφανισθεί μία αστοχία Μέτρηση Αξιοπιστίας

15 Τεχνολογία ΛογισμικούSlide 15 u Πιθανότητα αποτυχίας on demand (POFOD) Είναι μέτρο της τάσης για αστοχία του συστήματος όταν γίνεται μία απαίτηση υπηρεσίας POFOD = σημαίνει ότι 1 στις 1000 απαιτήσεις για υπηρεσία οδήγησαν σε αποτυχία Σημαντική για συστήματα με κρίσιμο σημείο την ασφάλεια και συστήματα που δεν σταματούν u Ρυθμός Εμφάνισης Λαθών (ROCOF) Συχνότητα εμφάνισης μη αναμενόμενης συμπεριφοράς ROCOF 0.02 σημαίνει 2 αποτυχίες εμφανίζονται σε κάθε 100 λειτουργικές χρονικές μονάδες Σημαντικό για λειτουργικά συστήματα, και συστήματα συναλλαγών Μέτρηση Αξιοπιστίας

16 Τεχνολογία ΛογισμικούSlide 16 Μέτρηση Αξιοπιστίας u Μέσος Χρόνος για Αποτυχία Μέτρο χρόνου μεταξύ εμφανιζόμενων αποτυχιών MTTF 500 σημαίνει ότι ο χρόνος μεταξύ αποτυχιών είναι 500 μονάδες χρόνου Σημαντική για συστήματα με μεγάλης διάρκειας συναλλαγές, π.χ. συστήματα CAD u Διαθεσιμότητα Μέτρο του πόσο το σύστημα είναι διαθέσιμο για χρήση. Λαμβάνει υπόψη τον χρόνο αποκατάστασης / επανέναρξης Διαθεσιμότητα σημαίνει ότι το λογισμικό είναι διαθέσιμο για για 998 στις 1000 μονάδες χρόνου Σημαντική για συστήματα τα οποία δουλεύουν συνεχώς, π.χ. σύστημα τηλεφώνων

17 Τεχνολογία ΛογισμικούSlide 17 Μέτρηση Αξιοπιστίας u Μέτρηση του αριθμού των αστοχιών για δοσμένο αριθμό εισόδων του συστήματος Χρησιμοποιείται για υπολογισμό του POFOD u Μέτρηση του χρόνου (ή αριθμού συναλλαγών) μεταξύ αποτυχιών του συστήματος Χρησιμοποιείται για το ROCOF και MTTF u Μέτρηση του χρόνου για επανεκκίνηση μετά την αποτυχία Χρησιμοποιείται για AVAIL

18 Τεχνολογία ΛογισμικούSlide 18 u Οι μονάδες χρόνου σε μετρήσεις αξιοπιστίας πρέπει να επιλέγονται προσεκτικά. Δεν είναι το ίδιο για όλα τα συστήματα u Μικτός χρόνος εκτέλεσης (για non-stop sυστήματα) u Ημερολογιακός χρόνος (για συστήματα τα οποία έχουν συχνή χρήση, π.χ. τρέχουν πάντα μία φορά την ημέρα) u Αριθμός συναλλαγών (για συστήματα που χρησιμοποιούνται με βάση την ζήτηση) Μονάδες Χρόνου

19 Τεχνολογία ΛογισμικούSlide 19 Επιπτώσεις Αποτυχίας u Οι μετρήσεις αξιοπιστίας δεν λαμβάνουν υπόψη τους τις επιπτώσεις της αστοχίας u Προσωρινά λάθη δεν έχουν επιπτώσεις αλλά άλλα λάθη προκαλούν απώλεια δεδομένων ή απώλεια της υπηρεσίας του συστήματος u Είναι απαραίτητο να ορισθούν διαφορετικές κλάσεις αστοχίας και χρήσεις διαφορετικών μετρήσεων για κάθε μία από αυτές

20 Τεχνολογία ΛογισμικούSlide 20 u Οι απαιτήσεις αξιοπιστίας σπάνια μπορούν να εκφρασθούν με ποσοτικό, ελέγξιμο τρόπο. u Για την επιβεβαίωση των μετρήσεων αξιοπιστίας πρέπει να οριστεί ένα λειτουργικό προφίλ ως μέρος του τρόπου ελέγχου u Η αξιοπιστία είναι δυναμική - εξειδικεύσεις αξιοπιστίας που σχετίζονται με τον πηγαίο κώδικα δεν έχουν έννοια. Όχι περισσότερα από N λάθη/1000 γραμμές. Είναι χρήσιμο μόνο για ανάλυση της διαδικασίας μετά την παράδοση Εξειδίκευση Αξιοπιστίας

21 Τεχνολογία ΛογισμικούSlide 21 Κατηγοριοποίηση Αποτυχίας

22 Τεχνολογία ΛογισμικούSlide 22 u Για κάθε υπο - σύστημα ανάλυση των επιπτώσεων πιθανών αποτυχιών του συστήματος. u Από την ανάλυση των αποτυχιών του συστήματος, κάνε κατάτμηση στις κατάλληλες κλάσεις. u Για κάθε κλάση αστοχίας που αναγνωρίστηκε, όρισε την αξιοπιστία με χρήση του κατάλληλου μέτρο. Διαφορετικά μέτρα μπορούν να χρησιμοποιηθούν για διαφορετικές απαιτήσεις αξιοπιστίας. Βήματα για Εξειδίκευση Αξιοπιστίας

23 Τεχνολογία ΛογισμικούSlide 23 Σύστημα ΑΤΜ Τραπεζών u Κάθε μηχανή στο δίκτυο χρησιμοποιείται 300 φορές την ημέρα u Η τράπεζα έχει 1000 μηχανές u Η διάρκεια ζωής του λογισμικού είναι 2 έτη u Κάθε μηχανή χειρίζεται περίπου 200, 000 συναλλαγές u Περίπου 300, 000 συναλλαγές με την ΒΔ κάθε ημέρα στο σύνολο

24 Τεχνολογία ΛογισμικούSlide 24 Παραδείγματα Αξιοπιστίας

25 Τεχνολογία ΛογισμικούSlide 25 Αξιολόγηση Εξειδίκευσης u Είναι αδύνατο να αξιολογηθούν εξειδικεύσεις υψηλής αξιοπιστίας u Όχι προβλήματα ΒΔ σημαίνει POFOD λιγότερο από 1 σε 200 εκατομμύρια u Εάν μία συναλλαγή παίρνει 1 sec, τότε η προσομοίωση των συναλλαγών μίας ημέρας παίρνει 3.5 ημέρες u Θα πάρει παραπάνω από όσο είναι η διάρκεια ζωής του συστήματος για να ελεγχθεί η αξιοπιστία του

26 Τεχνολογία ΛογισμικούSlide 26 Οικονομικά Αξιοπιστίας u Εξαιτίας του υψηλού κόστους για την επιτυχία της αξιοπιστίας πιθανό να είναι περισσότερο αποτελεσματικό ως προς το κόστος να αποδεχτούμε την αναξιοπιστία και να πληρώσουμε τα κόστη αποτυχίας u Όμως αυτό εξαρτάται από κοινωνικούς και πολιτικούς παράγοντες. Η φήμη για αναξιόπιστα προϊόντα πιθανό να οδηγήσει σε απώλεια επιχειρηματικών ευκαιριών u Εξαρτάται από τον τύπο του συστήματος - για συστήματα επιχειρήσεων μέτρια αξιοπιστία είναι συνήθως επαρκής

27 Τεχνολογία ΛογισμικούSlide 27 Κόστος για Αύξηση Αξιοπιστίας

28 Τεχνολογία ΛογισμικούSlide 28 u Έλεγχος λογισμικού για αξιοπιστία αντί για εύρεση λαθών u Η επιλογή των δεδομένων ελέγχου ακολουθεί το προβλεπόμενο προφίλ χρήσης για το λογισμικό u Η μέτρηση του αριθμού των λαθών επιτρέπει την πρόβλεψη της αξιοπιστίας του λογισμικού u Ένα αποδεκτό επίπεδο αξιοπιστίας πρέπει να ορισθεί και το λογισμικό να ελεγχθεί και να διορθωθεί έως ότου φθάσουμε στην επιθυμητή αξιοπιστία Στατιστικός Έλεγχος

29 Τεχνολογία ΛογισμικούSlide 29 u Εύρεση του λειτουργικού προφίλ του λογισμικού u Παραγωγή συνόλου δεδομένων ελέγχου που αντιστοιχεί σε αυτό το προφίλ u Εφαρμογή ελέγχων, μέτρηση χρόνου εκτέλεσης μεταξύ κάθε αποτυχίας u Αφού εκτελεσθεί ένας στατιστικά σωστός αριθμός ελέγχων η αξιοπιστία μπορεί να μετρηθεί Διαδικασία Στατιστικού Ελέγχου

30 Τεχνολογία ΛογισμικούSlide 30 Δυσκολίες Στατιστικού Ελέγχου u Αβεβαιότητα στο λειτουργικό προφίλ Αυτό είναι σημαντικό πρόβλημα σε συστήματα χωρίς λειτουργική ιστορία. Μικρότερο πρόβλημα σε συστήματα που αντικαθιστούν υπάρχοντα u Υψηλά κόστη για παραγωγή του λειτουργικού προφίλ Τα κόστη εξαρτώνται από τι πληροφορία χρήσης συλλέγεται από τον οργανισμό ο οποίος απαιτεί το προφίλ u Στατιστική αβεβαιότητα όταν προδιαγράφεται υψηλή αξιοπιστία Δύσκολη η εκτίμηση επιπέδου βεβαιότητας στο λειτουργικό προφίλ Η μορφή χρήσης του λογισμικού αλλάζει με τον χρόνο

31 Τεχνολογία ΛογισμικούSlide 31 Ένα Λειτουργικό Προφίλ

32 Τεχνολογία ΛογισμικούSlide 32 Παραγωγή Λειτουργικού Προφίλ u Πρέπει να παράγεται αυτόματα όταν αυτό είναι δυνατόν u Η αυτόματη παραγωγή προφίλ είναι δύσκολη για διαλογικά συστήματα u Μπορεί να είναι απλή διαδικασία για κανονικές εισόδους, αλλά πολύ δύσκολο να προβλεφθεί για όχι κανονικές και να παραχθούν δεδομένα ελέγχου

33 Τεχνολογία ΛογισμικούSlide 33 u Το μοντέλο αύξησης είναι ένα μαθηματικό μοντέλο της αλλαγής της αξιοπιστίας του συστήματος όσο αυτό ελέγχεται και απομακρύνονται τα λάθη u Χρησιμοποιείται ως μέσο για την πρόβλεψη αξιοπιστίας με προέκταση των τρεχόντων δεδομένων u Εξαρτάται από την χρήση του στατιστικού ελέγχου για να μετρήσουμε την αξιοπιστία μίας version του συστήματος Μοντελοποίηση Αύξησης Αξιοπιστίας

34 Τεχνολογία ΛογισμικούSlide 34 Αύξηση Αξιοπιστίας Ίσων Βημάτων

35 Τεχνολογία ΛογισμικούSlide 35 Παρατηρούμενη Αύξηση Αξιοπιστίας u Απλό μοντέλο ίσων βημάτων αλλά δεν αντανακλά την πραγματικότητα u Η αξιοπιστία δεν αυξάνει απαραίτητα με την αλλαγή καθόσον η αλλαγή εισάγει νέα λάθη u Ο ρυθμός της αύξησης της αξιοπιστίας ελαττώνεται με τον χρόνο όσο τα συχνότερα εμφανιζόμενα λάθη ανακαλύπτονται και απομακρύ6νονται u Ένα μοντέλο τυχαίας ανάπτυξης είναι συνήθως πιο ακριβές

36 Τεχνολογία ΛογισμικούSlide 36 Αύξηση Αξιοπιστίας Τυχαίων Βημάτων

37 Τεχνολογία ΛογισμικούSlide 37 Επιλογή Μοντέλων Αύξησης u Πολλά διαφορετικά μοντέλα αύξησης αξιοπιστίας έχουν προταθεί u Δεν υπάρχει ένα γενικά αποδεκτό μοντέλο αύξησης u Η αξιοπιστία πρέπει να μετράται και τα δεδομένα να προσαρμόζονται σε διαφορετικά μοντέλα u Το μοντέλο που ταιριάζει καλύτερα επιλέγεται για την πρόβλεψη της αξιοπιστίας

38 Τεχνολογία ΛογισμικούSlide 38 Πρόβλεψη Αξιοπιστίας

39 Τεχνολογία ΛογισμικούSlide 39 Σημαντικά Σημεία u Η αξιοπιστία είναι συνήθως το πιο σημαντικό δυναμικό χαρακτηριστικό του λογισμικού u Οι επαγγελματίες πρέπει να προσπαθούν για την παραγωγή αξιόπιστου λογισμικού u Η αξιοπιστία εξαρτάται από την μορφή χρήσης του λογισμικού. Λογισμικό με λάθη μπορεί να είναι αξιόπιστο u Οι απαιτήσεις αξιοπιστίας πρέπει να ορίζονται ποσοτικά όταν αυτό είναι δυνατόν

40 Τεχνολογία ΛογισμικούSlide 40 Σημαντικά Σημεία u Υπάρχουν διαφορετικές μετρήσεις αξιοπιστίας. Το μέτρο που επιλέγεται πρέπει να αντανακλά τον τύπο του συστήματος και το πεδίο εφαρμογής u Ο Στατιστικός έλεγχος χρησιμοποιείται για αξιολόγηση της αξιοπιστίας. Εξαρτάται από την χρήση συνόλου δεδομένων ελέγχου που αντανακλά την χρήση του λογισμικού u Τα μοντέλα αύξησης αξιοπιστίας μπορούν να χρησιμοποιηθούν για την πρόβλεψη του πότε το απαιτούμενο επίπεδο αξιοπιστίας μπορεί να επιτευχθεί


Κατέβασμα ppt "Τεχνολογία ΛογισμικούSlide 1 Αξιοπιστία Λογισμικού u Κατηγοριοποίηση και εξειδίκευση της αξιοπιστίας των συστημάτων λογισμικού."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google