Αλλαγή και συντήρηση

Διομήδης Σπινέλλης
Τμήμα Διοικητικής Επιστήμης και Τεχνολογίας
Οικονομικό Πανεπιστήμιο Αθηνών
dds@aueb.gr

Τύποι συστημάτων

Για να κατανοήσουμε την ανάγκη αλλαγών στο λογισμικό χωρίζουμε τα αντίστοιχα συστήματα σε τρεις κατηγορίες, σύμφωνα με το μοντέλο S-P-E
S
Ένα πρόγραμμα τύπου S πρέπει να ικανοποιεί μια συγκεκριμένη και γνωστή από πριν απαίτηση (specification).
P
Ένα πρόγραμμα τύπου P απαιτείται να δίνει λύση σε ένα πραγματικό πρόβλημα (problem).
E
Ένα πρόγραμμα τύπου E (evolutionary) ελέγχεται με βάση το περιβάλλον μέσα στο οποίο εκτελείται και εξελίσσεται. Κριτήρια για την αποδοχή του προγράμματος είναι τα αποτελέσματα της εκτέλεσής του μέσα στο περιβάλλον αυτό.

Στρατηγικές αλλαγής του λογισμικού

Δυναμική συντήρησης, οι νόμοι του Lehman

Οι παρακάτω αρχές έχουν διατυπωθεί για προγράμματα τύπου Ε:
Συνεχιζόμενη αλλαγή
Τα προγράμματα που χρησιμοποιούνται πρέπει να αλλάζουν, αλλιώς γίνονται όλο και λιγότερο χρήσιμα.
Αυξανόμενη πολυπλοκότητα
Καθώς ένα πρόγραμμα αλλάζει γίνεται όλο και πιο πολύπλοκο απαιτώντας όλο και περισσότερους πόρους για τη συντήρησή του.
Εξέλιξη μεγάλων συστημάτων
Η εξέλιξη μεγάλων συστημάτων είναι μια αυτοελεγχόμενη διεργασία. Παράγοντες όπως το μέγεθος, ο χρόνος ανάμεσα σε εκδόσεις και ο αριθμός των λαθών παραμένουν σταθερά ανάμεσα σε εκδόσεις.
Οργανωσιακή σταθερότητα
Κατά τη διάρκεια ζωής ενός προγράμματος η ανάπτυξή του παραμένει σταθερή και ανεξάρτητη των πόρων που αφιερώνονται σε αυτή
Διατήρηση της εξοικείωσης
Κατά τη διάρκεια ζωής ενός προγράμματος το μέγεθος των αλλαγών από τη μια έκδοση στην επόμενη παραμένει σταθερό.
Διατήρηση του ρυθμού αύξησης
Για να διατηρηθεί η ικανοποίηση των χρηστών, πρέπει τα λειτουργικά χαρακτηριστικά του προγράμματος να αυξάνονται διαρκώς.
Φθίνουσα ποιότητα
Αν δεν υπάρχει διαρκής προσπάθεια συντήρησης στο περιβάλλον της χρήσης, η ποιότητα του προγράμματος θα θεωρείται από τους χρήστες του ως φθίνουσα.
Ανατροφοδοτούμενο σύστημα
Η διεργασία προγραμματισμού συστημάτων τύπου Ε πρέπει να αντιμετωπίζεται ως μια ανατροφοδοτούμενη διεργασία για να μπορέσει να βελτιωθεί.

Είδη συντήρησης

Το κόστος της συντήρησης

Το κόστος της συντήρησης είναι μεγαλύτερο από αυτό της ανάπτυξης. Μερικοί λόγοι είναι για αυτό είναι:

Διεργασία συντήρησης

Προγραμματισμένες

Με πίεση χρόνου

Μετρικές

Ο ρυθμός αλλαγών στο σύστημα εξαρτάται από τους παρακάτω παράγοντες: Κατά τη διάρκεια ζωής του συστήματος εξετάζουμε και τους παρακάτω παράγοντες:

Αρχιτεκτονική εξέλιξη

Η αρχιτεκτονική εξέλιξη ενός συστήματος επηρεάζεται από τους παρακάτω παράγοντες:

Κληρονομημένα συστήματα

Παλιά κληρονομημένα συστήματα (legacy systems) μπορούν να προσαρμοστούν σε νέες αρχιτεκτονικές με επέμβαση σε ένα από τα παρακάτω επίπεδα:

Επανυλοποίηση

Η επανυλοποίηση ενός συστήματος μπορεί να περιλάβει τα παρακάτω στάδια:

Βιβλιογραφία

Ασκήσεις

  1. Δώστε παραδείγματα για προγράμματα τύπου S, P, E.
  2. Κατηγοριοποίστε το είδος των αλλαγών που οδήγησαν στα παρακάτω προϊόντα:
  3. Επανυλοποιήστε ένα δικό σας παλιό πρόγραμμα. Κατηγοριοποιήστε τα είδη των αλλαγών που κάνατε.
  4. Προσπαθήστε να απαριθμήσετε αρθρώματα από τα οποία πιθανώς αποτελείται το πρόγραμμα Microsoft Word.