Μεθοδολογίες και Εργαλεία Ανάλυσης και Σχεδιασμού Π.Σ. Σπύρος Κοκολάκης ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Ε’ Εξάμηνο Διάλεξη 11
Μεθοδολογίες ανάπτυξης Π.Σ. Συγκριτική ανάλυση και επιλογή
Πώς επιλέγουμε μεθοδολογία (Ε. Κιουντούζης, 2009)... Μία μεθοδολογία θα πρέπει: –Να εξασφαλίζει την ποιότητα των επιμέρους προϊόντων και του τελικού συστήματος που υλοποιεί. –Να ανακαλύπτει έγκαιρα τις πραγματικές απαιτήσεις των χρηστών (πριν δαπανηθούν σημαντικά χρήματα και χρόνος). –Να διαβεβαιώνει ότι το παραδοτέο σύστημα βοηθάει πράγματι το χρήστη. –Να γίνεται απρόσκοπτα αντιληπτή όχι μόνο από τους τεχνικούς ανάπτυξης, αλλά και από τους χρήστες.
... Πώς επιλέγουμε μεθοδολογία –Να επιτρέπει απρόσκοπτα τις αλλαγές στο σύστημα αργότερα και μετά την υλοποίησή του. –Να διευκολύνει την ενεργή και ουσιαστική συμμετοχή των χρηστών και των λοιπών εμπλεκομένων. –Να ελαχιστοποιεί τη γραφειοκρατία και παράλληλα να μην εμποδίζει τη δημιουργικότητα. –Να οριοθετεί τους ρόλους, ώστε να διευκολύνεται η διοίκηση του έργου και η διαχείριση του συστήματος. –Να υποστηρίζεται από αυτοματοποιημένα εργαλεία. –Να ταιριάζει ή να προσαρμόζεται στην περίπτωση μας.
Τι απαιτείται από μία μεθοδολογία (Avison & Fitzgerald, 1995 )... Ορισμός: Μία μεθοδολογία ανάπτυξης Π.Σ. είναι μία συλλογή από διαδικασίες, τεχνικές, εργαλεία και βοηθήματα τεκμηρίωσης, που θα βοηθήσουν στην προσπάθεια ανάπτυξης ενός νέου Π.Σ. Μία μεθοδολογία αποτελείται από φάσεις, οι οποίες αποτελούνται από υπο-φάσεις, που καθοδηγούν όσους αναπτύσσουν ένα σύστημα στην επιλογή τεχνικών που ίσως να είναι κατάλληλες σε κάθε στάδιο του έργου και επίσης βοηθούν στο σχεδιασμό, διαχείριση, έλεγχο και αποτίμηση του έργου της ανάπτυξης του Π.Σ.
... Τι απαιτείται από μία μεθοδολογία (Avison & Fitzgerald, 1995 )... Η μεθοδολογία, όμως, είναι κάτι παραπάνω από μία συλλογή. Βασίζεται σε μία «φιλοσοφική» οπτική, αλλιώς θεωρείται απλά μία μέθοδος, όπως ακριβώς είναι μία συνταγή. Οι μεθοδολογίες διαφέρουν ως προς τις βασικές παραδοχές τους, που καθορίζονται από τη φιλοσοφία τους, όπως για παράδειγμα: –ETHICS –SSADM –SSM
... Τι απαιτείται από μία μεθοδολογία (Avison & Fitzgerald, 1995 )... Θέλουμε ένα σύστημα που: Εκμεταλλεύεται πλήρως τις δυνατότητες της τεχνολογίας Παράγει την πλέον κατάλληλη τεκμηρίωση Έχει το μικρότερο κόστος λειτουργίας Υλοποιείται γρήγορα Έχει τη μέγιστη προσαρμοστικότητα Αρέσει στους ανθρώπους που το χρησιμοποιούν
... Τι απαιτείται από μία μεθοδολογία (Avison & Fitzgerald, 1995 )... Πιθανοί στόχοι μίας μεθοδολογίας: Να καταγράψει με ακρίβεια τις απαιτήσεις Να προσφέρει μία συστηματική μέθοδο ανάπτυξης ώστε η πρόοδος του έργου να ελέγχεται Να παράγει ένα Π.Σ. μέσα στα χρονικά όρια και με ανεκτό κόστος Να παράγει ένα σύστημα καλά τεκμηριωμένο και που να συντηρείται εύκολα Να υποδεικνύει τις αλλαγές που πρέπει να γίνουν όσο το δυνατόν πιο νωρίς Να παράγει ένα σύστημα που γίνεται αποδεκτό από τους ανθρώπους που επηρεάζονται από αυτό
Τι προσφέρει μία μεθοδολογία (Avison & Fitzgerald, 1995 )... Μία μεθοδολογία μπορεί να είναι ένα ολοκληρωμένο προϊόν που περιγράφει αναλυτικά στάδια και βήματα ή απλά κάποιες σύντομες οδηγίες-πλαίσιο. Μία μεθοδολογία μπορεί να καλύπτει διαφορετικές φάσεις της ανάπτυξης Π.Σ. Μία μεθοδολογία μπορεί να αφορά έναν συγκεκριμένο τομέα (π.χ. τραπεζικά πληροφοριακά συστήματα) ή να είναι γενικής εφαρμογής. Μπορεί να εφαρμόζεται από τον οποιοδήποτε ή αποκλειστικά από καλά εκπαιδευμένους ειδικούς.
... Τι προσφέρει μία μεθοδολογία (Avison & Fitzgerald, 1995) Μία μεθοδολογία μπορεί να απαιτεί τη συνεργασία μεγάλου πλήθους ανθρώπων για να υλοποιηθεί ή να απαιτεί απλά μικρές ομάδες για κάθε εργασία (task). Μπορεί να υποστηρίζεται ή να μην υποστηρίζεται από αυτοματοποιημένο εργαλείο.
Σύγκριση μεθοδολογιών (Avison & Fitzgerald, 1995 )... Ακαδημαϊκά κριτήρια ή Πρακτικά κριτήρια; Κανόνες και οδηγίες Συνολική κάλυψη της διαδικασίας ανάπτυξης Κατανόηση της πληροφορίας ως πόρο (resource) Πρότυπα τεκμηρίωσης Διαχωρισμός φυσικού και λογικού σχεδιασμού Εγκυρότητα σχεδιασμού Διαχείριση αλλαγών (όσο πιο νωρίς τόσο πιο φθηνά) Διεπαφή σταδίων
... Σύγκριση μεθοδολογιών (Avison & Fitzgerald, 1995 )... Αποτελεσματική ανάλυση του προβλήματος Σχεδιασμός (planning) και έλεγχος (control) Αποτίμηση απόδοσης Π.Σ. Αύξηση παραγωγικότητας Αύξηση ποιότητας Ευκολία να διδαχθεί Καθορισμός ορίων του Π.Σ. Σχεδιασμός με προσανατολισμό στην αλλαγή (design for change)
... Σύγκριση μεθοδολογιών (Avison & Fitzgerald, 1995) Αποτελεσματική επικοινωνία συμμετεχόντων Απλότητα Δυνατότητα εξέλιξης και ενσωμάτωσης νέων τεχνικών Αυτοματοποίηση Αντίληψη των σκοπών και στόχων των χρηστών Συμμετοχή Σχετική με τις ανάγκες και ιδιαιτερότητες του εκάστοτε επαγγελματία που αναπτύσσει το σύστημα Σχετική με το είδος του συστήματος που θέλουμε να αναπτύξουμε
Πλαίσιο σύγκρισης μεθοδολογιών 1.Φιλοσοφία της μεθοδολογίας 2.Μοντέλο (λεκτικό, μαθηματικό, σχηματικό, προσομοίωση) 3.Τεχνικές και εργαλεία 4.Εύρος χρήσης 5.Αποτελέσματα (output) 6.Πρακτική (το χρησιμοποιεί κανείς στην πράξη;) 7.Προϊόν (λογισμικό, οδηγίες κ.λπ.)
Ποιες μεθοδολογίες γνωρίζετε; 1.SSADM 2.Rational Unified Process 3.ETHICS 4.SSM 5.Multiview 6.RAD 7.Agile methods
Ένα καλύτερο τελικό προϊόν (Avison & Fitzgerald, 1995)... Αποδοχή (acceptability) Διαθεσιμότητα (availability) Συνεκτικότητα (cohesiveness) Συμβατότητα (compatibility) Τεκμηρίωση (documentation) Ευκολία εκμάθησης Οικονομία Αποτελεσματικότητα (effectiveness) Αποδοτικότητα (efficiency)
... Ένα καλύτερο τελικό προϊόν (Avison & Fitzgerald, 1995)... Ταχύς ρυθμός ανάπτυξης συστήματος Ευελιξία (flexibility) Λειτουργικότητα (functionality) Υλοποιησιμότητα (implementability) Χαμηλή σύζευξη (low coupling) Συντηρησιμότητα (maintainability) Μεταφερσιμότητα (prortability) Αξιοπιστία (reliability) Ανθεκτικότητα (robustness)
... Ένα καλύτερο τελικό προϊόν (Avison & Fitzgerald, 1995) Ασφάλεια (security) Απλότητα (simplicity) Ευκολία δοκιμής (testability) Επικαιρότητα (timeliness) Ορατότητα (visibility)
Σύνοψη Πώς επιλέγω μία μεθοδολογία; Ερωτήματα …