Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)"

Transcript

1 Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 3: Μοντέλα Διεργασιών Κύκλος Ζωής Λογισμικού

2 Προαπαιτούμενα για την Ανάπτυξη Έργου 2 Ποιες οι προϋποθέσεις για την ανάπτυξη έργου; Σαφής διατύπωση απαιτήσεων. Σύνολο τεχνικών και εργαλείων. Πλάνο: Εργασίες που θα εκτελεστούν. Σειρά εκτέλεσης. Κριτήρια μετάβασης. Ενδιάμεσοι σημαντικοί σταθμοί - παραδοτέα. Αξιολόγηση πορείας.

3 Μοντέλα Διεργασιών Ανάπτυξης Λογισμικού 3 Πλάνο: Μοντέλο διεργασίας. Μοντέλο: Αναπαράσταση της πραγματικότητας. Διεργασία: Σύνολο διατεταγμένων, διακριτών βημάτων. Αξιοποιεί πόρους. Πληροί περιορισμούς. Καταλήγει σε αποτέλεσμα.

4 Ορισμός Διεργασίας 4 Περιγραφή των κυρίων δραστηριοτήτων. Προσδιορισμός των απαιτούμενων πόρων και των περιορισμών τους. Υποδιεργασίες. Οργάνωση δραστηριοτήτων σε σειρά. Περιορισμοί εισόδου / εξόδου κάθε δραστηριότητα. Ορισμός στόχων κάθε δραστηριότητας.

5 Παράδειγμα Διεργασίας 5 Κατασκευή ομελέτας Προετοιμασία υλικών Κοπή κρεμμυδιών Χτύπημα αυγών / ανάμιξη υλικών Κοπή μανιταριών Ψήσιμο / τηγάνισμα Κοπή πατάτας Με μαχαίρι Με τρίφτη Με μίξερ Πιθανόν να εμπεριέχει υποδιεργασίες. Χρονικές ακολουθίες υποδιεργασιών. Παράλληλη ή ακολουθιακή εκτέλεση, ανάλογα με διαθεσιμότητα πόρων και εξαρτήσεις μεταξύ υποδιεργασιών.

6 Χαρακτηριστικά Καλής Διεργασίας Ανάπτυξης Λογισμικού (1/2) Κατανόηση Είναι η διεργασία σαφώς καθορισμένη και κατανοητή? Παρακολούθηση Είναι δυνατόν να παρακολουθήσουμε εξωτερικά την πρόοδο της διεργασίας? Υποστήριξη Είναι δυνατόν να υποστηριχθεί η διεργασία με εργαλεία (π.χ. CASE tools)? Αποδοχή Είναι η διεργασία αποδεκτή από αυτούς που συμμετέχουν σε αυτή? 6

7 Χαρακτηριστικά Καλής Διεργασίας Ανάπτυξης Λογισμικού (2/2) Αξιοπιστία Ανακαλύπτονται τα λάθη της διαδικασίας πριν μετατραπούν σε λάθη στο προϊόν? Ανθεκτικότητα Είναι δυνατόν να αντεπεξέλθει η διεργασία σε μη αναμενόμενα προβλήματα? Συντήρηση Είναι δυνατόν να εξελιχθεί η διαδικασία για την κάλυψη μεταβαλλόμενων προδιαγραφών και απαιτήσεων? Ταχύτητα Πόσο γρήγορα παράγεται το προϊόν? 7

8 Στάδια Διεργασίας Ανάπτυξης Λογισμικού (Κύκλος Ζωής Λογισμικού) 8 1. Εξαγωγή & Ανάλυση Απαιτήσεων. 2. Σχεδίαση Συστήματος. 3. Σχεδίαση Προγραμμάτων. 4. Κωδικοποίηση. 5. Δοκιμή Μονάδων και Ενοποίησης. 6. Δοκιμή Συστήματος. 7. Δοκιμή Αποδοχής. Τι; Πώς; Έλεγχος 8. Παράδοση, Λειτουργία & Συντήρηση Συστήματος. Συντήρηση

9 Απαιτήσεις 9 Τι είναι: Αυτό που θέλουμε να κάνει το σύστημά μας (στόχοι, επιθυμίες, απαιτήσεις) Π.χ. Υπολογισμός και εκτύπωση δεδομένων μισθοδοσίας με βάση την πολιτική της επιχείρησης και το νομικό καθεστώς Τι δεν είναι: Αρχιτεκτονική λογισμικού Σχέδιο Διασύνδεση με το χρήστη

10 Παραδείγματα Απαιτήσεων 10 Δηλώσεις: Το σύστημα θα παρέχει δυνατότητα διασύνδεσης με τις βάσεις δεδομένων των ασφαλιστικών ταμείων. Σενάρια: Οι εργαζόμενοι που ασθενούν μέχρι 3 ημέρες αποζημιώνονται από το ασφαλιστικό τους ταμείο. Σε περίπτωση που ασθενήσουν παραπάνω και έως 190 μέρες παίρνουν όλο το μισθό τους, ενώ πλέον των 190 ημερών και έως τις 270 παίρνουν το 70% του μισθού. Αναρρωτική άδεια πέραν των 270 ημερών δεν αμείβεται.

11 Ανάλυση Απαιτήσεων 11 Δόμηση απαιτήσεων. Έλεγχος απαιτήσεων. Προσδιορισμός εξωτερικών παραγόντων που επηρεάζουν τις απαιτήσεις. Προσδιορισμός αλληλεξαρτήσεων μεταξύ απαιτήσεων. Γνώση σχετικά με τις απαιτήσεις πριν συνεχίσουμε.

12 Σχεδίαση 12 Πώς θα ικανοποιήσουμε τις προδιαγραφές; Εφαρμογή μεθόδων και τεχνικών για τον ορισμό του συστήματος λογισμικού σε ικανοποιητική λεπτομέρεια ώστε να είναι δυνατή η ανάπτυξή του.

13 Παράδειγμα Σχεδίασης: Πάσα στο Κέντρο σε Ποδόσφαιρο Robots 13 Είσοδος Γενική Αναζήτηση Άλλη Εντοπισμός robot Εκτίμηση Ομάδας Δεν έγινε πάσα Κοντά Υπολογισμός Απόστασης Μακριά Ίδια Απομάκρυνση Ζήτα Μπάλα Πήρες μπάλα Έξοδος

14 Υλοποίηση 14 Μετατροπή της σχεδίασης σε μορφή κατανοητή από τη μηχανή. Λεπτομερής δημιουργία διαγραμμάτων σε CASE tool. Συγγραφή κώδικα σε γλώσσα προγραμματισμού.

15 Παράδειγμα Υλοποίησης 15 /***************************************************************************/ static int clone(unsigned long clone_flags, void (*fn)(struct nth_desc *), struct nth_desc *function_arg, void *child_stack) { struct pt_regs *regs; if (!fn) { printk(kern_emerg "Error : clone called with function pointer = NULL\n"); return(-1); } if (!child_stack) { printk(kern_emerg "Error : clone called with child_stack pointer = NULL\n"); return(-1); } regs = ((struct pt_regs *)(current->kernel_stack_page + PAGE_SIZE)) - 1; return(do_fork(clone_flags, (unsigned long)child_stack, regs, fn, function_arg, 1, 1)); } /***************************************************************************/

16 Έλεγχος 16 Διαδικασία εκτέλεσης και σχεδιαστικής ανασκόπησης του συστήματος με σκοπό την ανεύρεση λαθών.

17 Συντήρηση 17 Λόγοι: Διόρθωση σφαλμάτων. Προσαρμογή σε αλλαγές: Προδιαγραφών / Απαιτήσεων Περιβάλλοντος Διευκόλυνση μελλοντικής συντήρησης

18 Δυνατότητα Παρατήρησης - Ελέγχου 18 Κάθε φάση στη σχεδίαση λογισμικού καταλήγει στη συγγραφή τεκμηρίωσης. Δυνατότητα παρατήρησης της προόδου από τη διοίκηση (σε αντίθεση με άλλα έργα όπου ή πρόοδος είναι πιο εύκολα ορατή) Προβλήματα: H διοίκηση ζητά τεκμηρίωση σε συγκεκριμένες ημερομηνίες (όταν οι σχεδιαστές πνίγονται στη δουλειά!!!). Η προετοιμασία επικύρωση της τεκμηρίωσης απαιτεί επιπρόσθετο χρόνο. Η υλοποίηση του προϊόντος δεν συμβαδίζει, για πρακτικούς λόγους, με το μοντέλο ανάπτυξης.

19 Τεκμηρίωση Παραγόμενα Έγγραφα 19 Δραστηριότητα Καθορισμός Απαιτήσεων Ανάλυση Απαιτήσεων Σχεδίαση Συστήματος Σχεδίαση Λογισμικού Κωδικοποίηση Έλεγχος Μονάδων Έλεγχος Τμημάτων Έλεγχος Συστήματος Παράδοση Προϊόντος Παραγόμενα Έγγραφα Requirements Specification Feasibility Study Functional Specification Design Specification Program code Unit test report Module test report System test report User Guide Refer. Manual

20 Μοντέλα Διεργασιών Λογισμικού 20 Προσδιορίζουν τον τρόπο με τον οποίο πρέπει να προχωρήσει η ανάπτυξη του λογισμικού. Περιγράφουν τον τρόπο με τον οποίο γίνεται η ανάπτυξη στην πραγματικότητα. Κατανόηση δραστηριοτήτων, πόρων και περιορισμών. Εντοπισμός ασυνεπειών, πλεονασμών και παραλείψεων. Είσοδος: απαιτήσεις συστήματος, Έξοδος: τελικό προϊόν.

21 Η Διαδικασία Ανάπτυξης Λογισμικού στην Πραγματικότητα Ανάλυση Απαιτήσεων 21 Δοκιμή Συστήματος Σχεδίαση Συστήματος Δοκιμή Αποδοχής Σχεδίαση Προγραμμάτων Λειτουργία και Συντήρηση Κωδικοποίηση Δοκιμή Μονάδων και Ενοποίησης

22 Γραμμικό Μοντέλο (Καταρράκτη) 22 Ανάλυση Απαιτήσεων Σχεδίαση Συστήματος Σχεδίαση Προγραμμάτων Κωδικοποίηση Δοκιμή Μονάδων και Ενοποίησης Δοκιμή Συστήματος Δοκιμή Αποδοχής Λειτουργία και Συντήρηση

23 Χαρακτηριστικά Μοντέλου Καταρράκτη 23 Το μοντέλο καταρράκτη δεν κάνει υποθέσεις για τη μεθοδολογία και τους συμβολισμούς σε κάθε στάδιο. Βασικές αρχές μοντέλου: Ακολουθία βημάτων. Κάθε βήμα είναι σαφώς καθορισμένο. Κάθε βήμα καταλήγει στην δημιουργία προϊόντος (έγγραφο ή κώδικας). Κάθε προϊόν αποτελεί τη βάση για το επόμενο βήμα. Η ορθότητα κάθε προϊόντος μπορεί να ελεγχθεί.

24 Πλεονεκτήματα / Μειονεκτήματα Μοντέλου Καταρράκτη 24 Πλεονεκτήματα Καλός διαχωρισμός του έργου σε απλούστερες φάσεις. Κάθε φάση παράγει ένα σαφώς καθορισμένο παραδοτέο. Manager + Waterfall model = Μειονεκτήματα Στην πράξη οι φάσεις αλληλεπικαλύπτονται. Στην πράξη το μοντέλο δεν είναι γραμμικό: συχνά επιστρέφουμε στην προηγούμενη φάση. Συχνά, αλλαγές σε κάποιο στάδιο επιβάλλουν την οπισθοχώρηση και πραγματοποίηση αλλαγών σε πολλά από τα προηγούμενα στάδια. Ο πελάτης βλέπει τι τελικά αγοράζει πολύ αργά!!!

25 Γραμμικό Μοντέλο με Δημιουργία Πρωτοτύπων Ανάλυση Απαιτήσεων Σχεδίαση Συστήματος Επικύρωση 25 Σχεδίαση Προγραμμάτων Επιβεβαίωση Κωδικοποίηση Δοκιμή Μονάδων και Ενοποίησης Δημιουργία Πρωτοτύπων Δοκιμή Συστήματος Δοκιμή Αποδοχής Λειτουργία και Συντήρηση

26 Μοντέλο V 26 Λειτουργία και Συντήρηση Ανάλυση Απαιτήσεων Επικύρωση Προδιαγραφών Δοκιμή Αποδοχής Σχεδίαση Συστήματος Επαλήθευση Σχεδίασης Δοκιμή Συστήματος Σχεδίαση Προγραμμάτων Δοκιμή Μονάδων και Ενοποίησης Ο έλεγχος σχετίζεται με την ανάλυση και σχεδίαση και προκαλεί επαναλήψεις. Κωδικοποίηση

27 Μοντέλο Δημιουργίας Πρωτοτύπου 27 Λίστα Αναθεωρήσεων Λίστα Αναθεωρήσεων Λίστα Αναθεωρήσεων Αναθεώρηση πρωτοτύπου Εξέταση πελάτη/χρήστη Προδιαγραφές Πρωτοτύπου Σχεδιασμός Πρωτοτύπου Πρωτότυπο Σύστημα Δοκιμή Προδιαγραφές Συστήματος (ενίοτε πρόχειρες/ελλιπείς Σύστημα που παραδίδεται

28 Πλεονεκτήματα Μοντέλου Δημιουργίας Πρωτοτύπου 28 Αντιμετωπίζει την ασάφεια στις απαιτήσεις. Παρέχει τη δυνατότητα στον πελάτη να αλλάξει γνώμη πριν υπογράψει. Μείωση χρόνου ανάπτυξης. Αρχικά πρωτότυπα χρησιμοποιούνται για εξοικείωση από τους χρήστες. Μεγαλύτερη πιθανότητα ανάπτυξης φιλικού προς το χρήστη λογισμικού. Ο πελάτης εμπλέκεται στην ανάπτυξη του προϊόντος. Αυξανόμενη σταδιακά ικανοποίηση του πελάτη. Επικοινωνία χρηστών / ομάδας ανάπτυξης.

29 Μειονεκτήματα Μοντέλου Δημιουργίας Πρωτοτύπου 29 Έλλειψη παρατήρησης στη διαδικασία (αδυναμία πρόβλεψης επαναλήψεων). Συστήματα λιτά δομημένα λόγω συχνών αλλαγών. Εστίαση στη λειτουργικότητα Λιγότερη έμφαση στις μη λειτουργικές απαιτήσεις. Ειδικές ικανότητες μπορεί να απαιτηθούν (π.χ. γλώσσες για rapid prototyping). Υπερβολικός ενθουσιασμός από τον πελάτη. Ενδεχόμενη υποεκτίμηση του χρόνου ανάπτυξης. Η δυνατότητα για συνεχείς τροποποιήσεις μειώνουν το βαθμό ικανοποίησης.

30 Εφαρμογές Μοντέλου Δημιουργίας Πρωτοτύπου 30 Εφαρμογή Για μικρά ή μεσαίου μεγέθους συστήματα (το αρχικό πρωτότυπο πλησιάζει το τελικό προϊόν). Για τμήματα μεγάλων συστημάτων (π.χ.. η διεπαφή χρήστη ενός συστήματος εναέριας κυκλοφορίας). Για συστήματα με μικρό χρόνο ζωής. Για συστήματα όπου υπάρχει αδυναμία έκφρασης των απαιτήσεων από πριν. Ακατάλληλο για: Λογισμικό ενσωματωμένων συστημάτων. Λογισμικό πραγματικού χρόνου. Επιστημονικό λογισμικό.

31 Μοντέλο Καθορισμού Λειτουργικών Προδιαγραφών 31 Γραμμικό μοντέλο: Εκτέλεση και Αναθεώρηση Λειτουργικότητα διαχωρίζεται από το σχέδιο. Στόχος: Ανάγκες πελάτη εκτός της διαδικασίας υλοποίησης. Μοντέλο καθορισμού λειτουργικών προδιαγραφών: Συγχώνευση λειτουργικότητας και σχεδίου Λειτουργική Προδιαγραφή (προσανατολισμένη στο πρόβλημα) Προδιαγραφές Συστήματος (ενίοτε πρόχειρες/ελλιπείς Μετασχηματισμένη Προδιαγραφή (προσανατολισμένη στην υλοποίηση) Δοκιμή Σύστημα που παραδίδεται

32 Μοντέλο Τυπικών Μετασχηματισμών 32 Καταγραφή Τυπικής Διεργασίας Ανάπτυξης Σύγκριση με προδιαγραφές - ενημέρωση Ν στος Μετασχηματισμός Ακολουθία μετασχηματισμών & αιτιολογία τους Τυπική Προδιαγραφή Προδιαγραφές Συστήματος (ενίοτε πρόχειρες/ελλιπείς 2 ος Μετασχηματισμός 1 ος Μετασχηματισμός Δοκιμή Σύστημα που παραδίδεται

33 Χαρακτηριστικά Μοντέλων Τυπικών Μετασχηματισμών 33 Οι προδιαγραφές συντάσσονται με αυστηρά μαθηματικό τρόπο Η αρχική μαθηματική περιγραφή μετασχηματίζεται σταδιακά στο τελικό προϊόν Διατήρηση της ορθότητας με χρήση μαθηματικών τεχνικών απόδειξης Πλεονεκτήματα Σαφήνεια Ακρίβεια Μεγάλη δυνατότητα αυτοματοποίησης Μειονεκτήματα Η χρήση μαθηματικών συμβολισμών δυσχεραίνει την επικοινωνία με τον πελάτη Εκπαίδευση του προσωπικού στη χρήση => χρόνος, χρήμα

34 Μοντέλο Ανάπτυξης σε Φάσεις 34 ΔΗΜΙΟΥΡΓΟΙ ΧΡΗΣΤΕΣ Έκδοση Ανάπτυξης 1 Συστήματα Ανάπτυξης Έκδοση Χρήσης 1 Έκδοση Ανάπτυξης 2 Έκδοση Ανάπτυξης 3 Έκδοση Χρήσης 2 Συστήματα Παραγωγής Έκδοση Χρήσης 3 Χρόνος

35 Αυξητική vs. Επαναληπτική Ανάπτυξη 35 Αυξητική Ανάπτυξη Επαναληπτική Ανάπτυξη

36 Διαχείριση Κινδύνου 36 Διαχειριστής έργου: Επιδιώκει ελαχιστοποίηση του ρίσκου. Ρίσκο: μέτρο της αβεβαιότητας ως προς το αποτέλεσμα. Δραστηριότητες υψηλού ρίσκου αυξάνουν το κόστος και προκαλούν καθυστερήσεις. Το ρίσκο σχετίζεται με την ποσότητα και την ποιότητα της διαθέσιμης πληροφορίας. Όσο λιγότερη πληροφορία τόσο μεγαλύτερο το ρίσκο.

37 Παραδείγματα Κινδύνου 37 Κατά τη διάρκεια ανάπτυξης εισαγωγή λογισμικού από ανταγωνιστή. Αποχώρηση ατόμων από την ομάδα ανάπτυξης. Ανικανότητα εμπρόθεσμης υλοποίησης ορισμένων σταδίων. Το λογισμικό πληροί τις προδιαγραφές αλλά έχει πολύ μεγάλο χρόνο εκτέλεσης. Μεγάλη κατανάλωση μνήμης. Εμφάνιση νέων εργαλείων ανάπτυξης. Λάθος κατανόηση μιας απαίτησης. Αλλαγή ορισμένων από τις απαιτήσεις. Αλλαγή του υλικού. Μείωση προϋπολογισμού. Βλάβες στο υλικό της ομάδας ανάπτυξης.

38 Διαχείριση Κινδύνων Μοντέλα Ανάπτυξης 38 Καταρράκτη Υψηλό ρίσκο για νέα συστήματα λόγω προβλημάτων στις προδιαγραφές και στη σχεδίαση. Χαμηλό ρίσκο για πλήρως κατανοητά συστήματα που αναπτύσσονται με γνωστή τεχνολογία. Δημιουργία πρωτοτύπων Χαμηλό ρίσκο για νέες εφαρμογές λόγω του γεγονότος ότι οι προδιαγραφές και η υλοποίηση εξετάζονται ανά βήμα. Υψηλό ρίσκο λόγω έλλειψης παρατήρησης. Τυπικοί Μετασχηματισμοί Υψηλό ρίσκο λόγω απαιτήσεων για προηγμένη τεχνολογία και εξειδίκευση του προσωπικού.

39 Σπειροειδές Μοντέλο 39 ΚΑΘΟΡΙΣΜΟΣ ΣΤΟΧΩΝ, ΕΝΑΛΛΑΚΤΙΚΩΝ ΛΥΣΕΩΝ, ΠΕΡΙΟΡΙΣΜΩΝ Προϋπολογισμός 4 Εναλλακτικές 4 Εναλλακτικές 3 Προϋπολογισμός 3 Προϋπολογισμός 2 Πλάνο ανάπτυξης Ενοποίηση και πλάνο δοκιμών Περιορισμοί 4 Περιορισμοί 3 Εναλλακτικές 2 Περιορισμοί 2 Περιορισμοί 1 Εναλλακτικές 1 Προϋπολογισμός 1 Προδιαγραφές, σχέδιο κύκλου ζωής Ανάλυση Κινδύνων 1 Πρωτότυπο 1 Ανάλυση Κινδύνων 4 Ανάλυση Κινδύνων 3 Ανάλυση Κινδύνων 2 Αρχές Λειτουργίας Επικυρωμένες Προδιαγραφές Επικυρωμένο/ Επαληθευμένο Σχέδιο Πρωτότυπο 2 Πρωτότυπο 3 ΑΞΙΟΛΟΓΗΣΗ ΕΝΑΛΛΑΚΤΙΚΩΝ ΛΥΣΕΩΝ ΚΑΙ ΚΙΝΔΥΝΩΝ Πρωτότυπο 4 ΠΛΑΝΟ ΑΝΑΠΤΥΞΗ - Δοκιμή Συστήματος ΔΟΚΙΜΕΣ Δοκιμή Αποδοχής Προδιαγραφές Λογισμικού Σχεδίαση Λογισμικού Λεπτομερής Σχεδίαση Κωδικοποίηση Δοκιμή Λειτουργικών Μονάδων

40 Βαθμός Παρατηρησιμότητας vs. Μοντέλο Ανάπτυξης 40 Καταρράκτη Καλή. Έγγραφα ανά φάση. Εξελικτικά Μειωμένη. Συχνές επαναλήψεις. Τυπικοί μετασχηματισμοί Καλή. Παραγωγή εγγράφων δεδομένη. Σπειροειδές Καλή. Έγγραφα ανά φάση.

41 Η Διεργασία Συγχρονισμού & Σταθεροποίησης της Microsoft (1/2) Φιλοσοφία: Αποσύνθεση έργων λογισμικού σε πολλές μικρές ομάδες που εργάζονται παράλληλα, ωστόσο συμπεριφέρονται ως μία μεγάλη ομάδα ανάπτυξης. Στόχος: Πλεονεκτήματα γρήγορης και ελεγχόμενης ανάπτυξης γνωστών μοντέλων, και ταυτοχρόνως ελευθερία και αυτονομία στους προγραμματιστές εντός των ομάδων. Cusumano and Selby 1995: Synchronize and Stabilize. Vision Statement (στόχοι, προτεραιότητες) 41 Φάση Σχεδιασμού Specification document ( αρχιτεκτονική) Πρόγραμμα, προθεσμίες, ομάδες Πάνω από 30% των αρχικών απαιτήσεων τροποποιούνται στην πορεία.

42 Η Διεργασία Συγχρονισμού & Σταθεροποίησης της Microsoft (2/2) 42 Developers και Testers σε κάθε ομάδα. Συνεχής έλεγχος, παράλληλη ανάπτυξη εντός ομάδος και μεταξύ ομάδων. Συγχρονισμός: Daily synchronization. Σε κάθε ομάδα τα ημερήσια αποτελέσματα εισάγονται σε βάση, ο πηγαίος κώδικας μεταγλωττίζεται και στη συνέχεια ελέγχεται. Product synchronization. Καθορισμός οροσήμων (milestones) όπου ελέγχεται αν το προϊόν έχει φθάσει σε σταθερή κατάσταση, μέχρι το στάδιο διανομής του προϊόντος. Συνδυασμός hacker's culture (code and fix) με πειθαρχία και δομή στην ανάπτυξη λογισμικού.

43 Όταν λέμε Agile; 43 Agile Ευκίνητο Ταχύ Εύκαμπτο Εύστροφο Ευέλικτο Επιδέξιο στο χειρισμό μεταβολών / αλλαγών

44 Βασικά Σημεία 44 Γιατί εμφανίστηκε το Agile Development; Τι σημαίνει να είναι κάτι Agile? Ποιες οι βασικές αρχές του Agile Development? Βιβλιογραφία: An Introduction to Agile Methods (Hayes, Andrews) Agile Software Development Ecosystems (Highsmith) Agile Alliance website: The New Methodology (Fowler)

45 Από το Τίποτα στο Μνημειώδες Συνήθως η ανάπτυξη λογισμικού γίνεται χαοτικά Γράψε κώδικα σαν τρελός (δηλαδή γράψε και φτιάξε) Κανένα σχέδιο Δουλεύει καλά αρχικά, αλλά δεν μπορεί να ακολουθήσει όταν μεγαλώνει το μέγεθος των συστημάτων Δύσκολο να προστεθούν νέα χαρακτηριστικά Δύσκολο να βρεθούν και να διορθωθούν σφάλματα Μεγάλες φάσεις ελέγχου (αν υπάρχουν...) Η μέθοδοι τεχνολογίας λογισμικού εισήγαγαν πειθαρχία Βελτίωση προβλεψιμότητας και αποδοτικότητας Όμως θεωρούνται γραφειοκρατικές, δεν είναι δημοφιλείς Μειώνουν το ρυθμό ανάπτυξης 45

46 Από το Μνημειώδες στο Agile Αναπτύχθηκε ως αντίδραση στις μεθόδους τεχνολογίας λογισμικού Συμβιβασμός στο βάρος της διαδικασίας Προσαρμογή αντί πρόβλεψης Προσανατολισμένη στους ανθρώπους αντί στη διαδικασία Γιατί το μνημειώδες & ηρωϊκό δε δουλεύει για το λογισμικό; Κόστος σχεδίασης / κόστος υλοποίησης ενός έργου Πιθανότητα αλλαγής και επιπτώσεις της Οι μέθοδοι αυστηρά δομημένης ανάπτυξης λογισμικού δεν έχουν οριμάσει πλήρως Το μνημειώδες και ηρωϊκό συχνά δε δουλεύει για τους μηχανικούς! 46

47 Το μανιφέστο του Agile Development We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over Processes and Tools. Working software over Comprehensive documentation. Customer collaboration over Contract negotiation. Responding to change over Following a plan. 47 That is, while there is value in the items on the right, we value the items on the left more. Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert Martin, Stephen J. Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas (2001)

48 Βασικές Αξίες Επανάληψη! Αυξητικές προσθήκες! Φτιάξε το απλούστερο δυνατό που δουλεύει, και άσε τα επόμενα επαναληπτικά βήματα να χτίσουν επάνω του Καθοδήγηση από τον πελάτη! Φρόντισε να αναμειχθεί ο πελάτης και δείξε του την πρόοδο σε κάθε επανάληψη Γενναία, αποδοτική επικοινωνία! Η ανοιχτή και ειλικρινής επικοινωνία μπορεί να είναι δύσκολη, ειδικά μεταξύ διαφορετικών ιεραρχικών επιπέδων Υψηλή ποιότητα! Μέσω της συνεχούς βελτίωσης, όχι του υπερ-σχεδιασμού Ενωμένη ομάδα! 48

49 Χαρακτηριστικά Περιορισμός του αριθμού των συμμετεχόντων σε κάθε ομάδα ανάπτυξης Μικροί και διακριτοί κύκλοι ανάπτυξης με σαφώς καθορισμένα και απόλυτα λειτουργικά αποτελέσματα Διαρκής έλεγχος του λογισμικού 49 Μεγαλύτερη δυνατή τμηματοποίηση του έργου σε επίπεδο διαδικασίας ανάπτυξης. Εξάλειψη όλων των περιττών ενεργειών της διαδικασίας ανάπτυξης

50 Χαρακτηριστικά Ανάπτυξη με βάση τη συνεργασία και την επικοινωνία Ανάπτυξη μιας πρώτης έκδοσης σε διάστημα μερικών εβδομάδων για τη λήψη άμεσης και γρήγορης ανατροφοδότησης Εύρεση και χρήση των απλούστερων λύσεων 50 Μείωση της απαραίτητης τεκμηρίωσης του έργου Συνεχής επαφή, διαθεσιμότητα και συμμετοχή του πελάτη

51 Έμφαση σε: Ταλέντο & ικανότητες (λιγότεροι, καλύτεροι στην ομάδα ανάπτυξης) Προσιτότητα (ομάδα ανάπτυξης ομάδα ανάπτυξης / χρήστες) Επικοινωνία (ηθικό, καθημερινή αναμέτρηση) Just-in-time ανάλυση απαιτήσεων & σχεδίαση Συχνές παραδόσεις (αυξητική ανάπτυξη) Λιγότερο χαρτί, περισσότερη προσωπική, προφορική επικοινωνία Εργαλεία Ποιότητα δουλειάς Διαφορετικές στρατηγικές για διαφορετικά έργα 51

52 Πότε μια Μεθοδολογία Θεωρείται Agile? 52 Προϋποτίθεται: η σταδιακή ανάπτυξη η συνεργασία η ευκολία στην κατανόηση και εφαρμογή της (καλά τεκμηριωμένη) η προσαρμοστικότητα

53 Υφιστάμενες Agile Μεθοδολογίες 53 Extreme Programming (Beck 1999) Scrum (Schwaber 1995, Schwaber and Beedle 2002) Crystal family of methodologies (Cockburn 2002) Feature Driven Development (Palmer and Felsing 2002) Rational Unified Process (Kruchten 1996, Kruchten 2000) Dynamic Systems Development Method (Stapleton 1997) Adaptive Software Development (Highsmith 2000) Open Source Software Development

54 Μύθοι του Agile Development 54 Είναι νέο και μη δοκιμασμένο Δεν καταγράφονται οι απαιτήσεις Δεν υπάρχει αρχιτέκτονας / αρχιτεκτονική => chaos Δεν υπάρχει φάση σχεδίασης Τα ρίσκα αγνοούνται Η ομάδα ανάπτυξης και οι πελάτες θα το μισήσουν

55 Αλήθειες και Ψέματα Το Agile SD (Software Development) είναι ζαβολιά... Το Agile SD απαιτεί τους καλύτερους στην ομάδα ανάπτυξης Το Agile SD είναι hacking Το Agile SD δε δουλεύει για όλα τα έργα

56 Το Agile SD είναι ζαβολιά Προσέλαβε τους καλύτερους Βάλε τους μαζί για να αλληλοβοηθούνται 56 Φέρε τους κοντά στους πελάτες και τους χρήστες Φρόντισε να υπάρχει ταχεία ανάδραση στις αποφάσεις Επέτρεψέ τους να βρίσκουν εύκολους και γρήγορους τρόπους να τεκμηριώνουν τη δουλειά τους Αφαίρεσε γραφειοκρατεία Στο τέλος όλα αυτά ακούγονται σαν καλή ιδέα... Είναι η καρδιά του agile development

57 To Agile δουλεύει μόνο αν έχεις τους καλύτερους Κάθε έργο απαιτεί τουλάχιστον έναν ικανό και έμπειρο ηγέτη (κρίσιμος παράγοντας επιτυχίας). Για κάθε έμπειρο & ικανό μέλος, μπορούν να μπουν στην ομάδα 4-5 μέτριοι / εκπαιδευόμενοι. Με αυτό το μείγμα έχει αποδειχθεί ότι τo agile development δουλεύει καλά.

58 To Agile SD είναι hacking Hackers:...αφιερώνουν όλον τους τον χρόνο στη συγγραφή κώδικα Agilists:...ελέγχουν σύμφωνα με τις προτεραιότητες του έργου, επανελέγχουν συχνά τα αποτελέσματα με τους χρήστες 58 Hackers:...μιλούν μεταξύ τους όταν κολλήσουν Agilists:...μιλούν μεταξύ τους και με τους χρήστες στα πλαίσια της διαδικασίας ανάπτυξης Hackers:...αποφεύγουν τον προγραμματισμό (planning) Agilists:...προγραμματίζουν τακτικά Hackers:...o manager είναι το θηρίο... Agilists:...περιμένουν ο manager να δώσει τις προτεραιότητες & να συμμετέχει στις αναπροσαρμογές του έργου

59 Είναι κατάλληλο για το έργο μου; Όχι πάντα... Δεν εγγυάται επιτυχία Πρέπει να είναι προσαρμοστικό! Βρες τα αδύνατα σημεία και διόρθωσε τη διαδικασία Μπορεί να είναι δύσκολο να εφαρμοστεί σε γεωγραφικά διασκορπισμένες ομάδες Δεν μπορούν όλες οι ομάδες να μιλήσουν ανοιχτά 59 Πολλά έργα οφελήθηκαν από το agile development!

60 Extreme Programming (XP) Aναπτύχθηκε για να επιλύσει προβλήματα τα οποία προκλήθηκαν από τους μεγάλους κύκλους ανάπτυξης των παραδοσιακών μοντέλων ανάπτυξης λογισμικού (Beck 1999) Ξεκίνησε ως ένας πρακτικός τρόπος υλοποίησης ενός έργου λογισμικού Χρησιμοποιεί πρακτικές οι οποίες είχαν προκύψει μέσα από την πράξη (Beck 1999) Οι πρακτικές οι οποίες χρησιμοποιούνται δεν αποτελούν καινοτομία 60

61 XP: Κύκλος ζωής 61

62 XP: Αξιολόγηση Πλεονεκτήματα Xρήση των user stories τα οποία δημιουργούνται από τον πελάτη Kαθορισμός προτεραιοτήτων στα user stories Eκτίμηση της προσπάθειας Kυρίαρχος ρόλος των ελέγχων του συστήματος Συμμετοχή του πελάτη στην καταγραφή των απαιτήσεων και τη συγγραφή των λειτουργικών ελέγχων Ο ρόλος του Tracker Απλές πλην απαραίτητες πρακτικές (testing, simple design, refactoring, pair programming) Σαφήνεια της διαδικασίας και των πρακτικών, τεχνικών 62

63 XP: Αξιολόγηση 63 Μειονεκτήματα Έλλειψη κατευθύνσεων διαχείρισης Μεγάλος αριθμός τεχνικών

64 Scrum: Χαρακτηριστικά 64 Aναπτύχθηκε για την καλύτερη δυνατή διαχείριση της διαδικασίας ανάπτυξης Eμπειρική προσέγγιση Eφαρμόζει τις ιδέες της θεωρίας ελέγχου βιομηχανικών διαδικασιών. Aποτέλεσμα μία διαδικασία Eυέλικτη, Eυπροσάρμοστη και Παραγωγική (Schwaber and Beedle 2002)

65 Scrum: Χαρακτηριστικά Επικεντρώνεται στο διαχειριστικό κομμάτι Δεν ορίζει συγκεκριμένες τεχνικές ανάπτυξης Κεντρική ιδέα: Η ανάπτυξη ενός συστήματος ενέχει αρκετές περιβαλλοντικές και τεχνικές μεταβλητές... Απαιτήσεις, Χρόνος, Διαθέσιμοι πόροι, Τεχνολογία... οι οποίες είναι δυνατό να μεταβληθούν κατά τη διάρκεια της διαδικασίας 65

66 Scrum: Κύκλος Ζωής 66

67 Scrum: Αξιολόγηση Πλεονεκτήματα Χρήση της λίστας Product Backlog Συνεχής καθορισμός της προτεραιότητας και εκτίμηση της απαιτούμενης προσπάθειας Συμμετοχή του πελάτη στον καθορισμό της Product Backlog λίστας Ρόλος του Scrum Master 67 Ύπαρξη μιας αρκετά συγκροτημένης δομής συναντήσεων (Sprint Planning Meeting, Daily Scrum Meeting, Sprint Review Meeting). Ημερήσια Scrum συνάντηση (Daily Scrum Meeting) Μειονεκτήματα Έλλειψη ορισμού συγκεκριμένων τεχνικών

68 Crystal Family Περιλαμβάνει: 'Εναν αριθμό διαφορετικών μεθοδολογιών για την επιλογή της καταλληλότερης ανάλογα με το είδος του κάθε έργου Αρχές για την αντιστοίχηση των μεθοδολογιών αυτών στις μεταβλητές συνθήκες του εκάστοτε έργου Δίνεται έμφαση στην επικοινωνία και συνεργασία μεταξύ των ατόμων Δεν περιορίζονται σε συγκεκριμένες πρακτικές ανάπτυξης, εργαλεία ή προϊόντα εργασίας Επιτρέπει την υιοθέτηση πρακτικών της XP ή της Scrum 68

69 Crystal Clear Για μικρά έργα ( 6 το πολύ προγραμματιστές ) Ομάδα ανάπτυξης σε κοινό χώρο εργασίας Λόγω των περιορισμών στη δομή της επικοινωνίας Βασικές αρχές Αυξητική ανάπτυξη και έκδοση του λογισμικού σε τακτή βάση Έλεγχος της προόδου με ορόσημα βασισμένα σε παραδοτέα λογισμικού και λήψη αποφάσεων και όχι σε έγγραφα Άμεση συμμετοχή του τελικού χρήστη Αυτοματοποιημένος έλεγχος λειτουργικότητας του λογισμικού Συναντήσεις για ρύθμιση και έλεγχο προόδου του παραγόμενου και της μεθοδολογίας στην αρχή και στο τέλος κάθε επανάληψης 69

70 Crystal Clear: Αξιολόγηση Πλεονεκτήματα 70 Δυνατότητα επιλογής και προσαρμογής της κατάλληλης μεθόδου ανάλογα με το μέγεθος και την κρισιμότητα του κάθε έργου Δυνατότητα εφαρμογής επιλεκτικά τεχνικών από άλλες agile μεθοδολογίες (π.χ. XP, Scrum) Μειονεκτήματα Περιορισμένος αριθμός μεθόδων οι οποίες έχουν οριστεί Περιορισμένη τεκμηρίωση και χρήση Τα οφέλη από τη χρήση δεν έχουν καταγραφεί πλήρως

71 Μοντελοποίηση Διεργασιών 71 Στατικό Μοντέλο: Αναπαριστά τη διεργασία δείχνοντας τις εισόδους να μετασχηματίζονται σε εξόδους. Δυναμικό Μοντέλο: Εκτελεί τη διεργασία ώστε να γίνει σαφές πώς τα ενδιάμεσα και τα τελικά προϊόντα μετασχηματίζονται με την πάροδο του χρόνου.

72 Στατική Μοντελοποίηση Σημειολογία Lai 72 Αντικείμενα: Ρόλοι Δραστηριότητες Πόροι Σχέσεις Φόρμες ορισμού: Πίνακες με πληροφορία για την κατάσταση / πληρότητα κάθε αντικειμένου σε δεδομένη στιγμή. Πολλαπλά επίπεδα γενίκευσης / εξειδίκευσης.

73 Σημειολογία Lai Τύποι Στοιχείων Διεργασίας 73 Δραστηριότητα. Ακολουθία. Μοντέλο διεργασίας. Πόρος. Έλεγχος. Πολιτική. Οργανισμός.

74 Σημειολογία Lai Φόρμα Ορισμού Όνομα Car Σύνοψη Το αντικείμενο που παριστάνει μια κλάση αυτοκινήτων 74 Πολυπλοκότητα Τύπος Δεδομένων Σύνθετο (car c, ορισμένος από το χρήστη) Καταστάσεις αντικειμένου Σταθμευμένο Σε λειτουργία Σε κίνηση Λίστα υποαντικειμένων Λίστα σχέσεων Car-key ((state_of(car.engine) = off) (state_of(car.gear) = park) (state_of(car.speed) = stand)) ((state_of(car.engine) = on) (state_of(car.key_hole) = key_in) (state_of(car-driver(car.)) = in-car) (state_of(car.gear) = drive) (state_of(car.speed) = stand)) ((state_of(car.engine) = on) (state_of(car.key_hole) = key_in) (state_of(car-driver(car.)) = driving) ((state_of(car.gear) = drive) or (state_of car.gear) = reverse)) (state_of(car.speed) = stand) or (state_of(car.speed) = slow) or (state_of(car.speed) = medium) or (state_of(car.speed) = high))) Doors Engine Keyhole Gear Speed Η σχέση μεταξύ αυτοκινήτου και κλειδιού Το αυτοκίνητο δεν κινείται και η μηχανή του δεν λειτουργεί Το αυτοκίνητο δεν κινείται αλλά η μηχανή του είναι σε λειτουργία Το αυτοκίνητο κινείται προς τα εμπρός ή προς τα πίσω Οι πόρτες του αυτοκινήτου Η μηχανή του αυτοκινήτου Η κλειδαριά της μίζας του αυτοκινήτου Η σχέση κιβωτίου του αυτοκινήτου Η ταχύτητα του αυτοκινήτου Car-driver Η σχέση μεταξύ αυτοκινήτου και οδηγού

75 Σημειολογία Lai Διάγραμμα Μετάβασης 75

76 Δυναμική Μοντελοποίηση 76 Εκτέλεση διεργασίας. Διερεύνηση του τι συμβαίνει στους πόρους και τις οντότητες του συστήματος καθώς εκτελούνται διάφορες δραστηριότητες. Προσομοίωση εναλλακτικών επιλογών και υλοποίηση αλλαγών για τη βελτίωση της διεργασίας. Οποιεσδήποτε αλλαγές συμβαίνουν πριν διατεθούν οι απαιτούμενοι πραγματικοί πόροι.

77 Παράδειγμα Δυναμικού Μοντέλου Μοντέλο Παραγωγικότητας 77 Ονομαστική πιθανή παραγωγικότητα πεπειραμένου προσωπικού Ποσοστό πεπειραμένου προσωπικού Ονομαστική πιθανή παραγωγικότητα νέου προσωπικού Ποσοστό ολοκλήρωσης του έργου Μέση ονομαστική πιθανή παραγωγικότητα Πιθανή παραγωγικότητα Πολλαπλασιαστής μάθησης Παραγωγικότητα ανάπτυξης λογισμικού Πραγματικό ποσοστό ανθρωποημερών στο έργο Απώλειες στην υποκίνηση και την επικοινωνία Αύξηση κόστους επικοινωνίας Ανοχές υπερ/ υποαπασχόλησης Πίεση χρονοδιαγράμματος Πλήθος προσωπικού

Agile Methods. Ευέλικτες Μέθοδοι

Agile Methods. Ευέλικτες Μέθοδοι Agile Methods Ευέλικτες Μέθοδοι Μοντέλο Καταρράκτη (Waterfall Model) Software Model Requirements Broad Design Detailed Design Coding Testing Κύκλος Ζωής Ανάπτυξη Λογισμικού Μοντέλο Καταρράκτη Μειονεκτήματα

Διαβάστε περισσότερα

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται

Διαβάστε περισσότερα

ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Μεθοδολογίες Ανάπτυξης Συστημάτων Πληροφορικής Απαντούν στα εξής ερωτήματα Ποιά βήματα θα ακολουθηθούν? Με ποιά σειρά? Ποιά τα παραδοτέα και πότε? Επομένως,

Διαβάστε περισσότερα

Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού

Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού Ενότητα 1-Το γενικό πλαίσιο της agile προσέγγισης Δρ. Δημήτριος Τσέλιος Καθηγητής Εφαρμογών Τμήμα Μηχανικών Πληροφορικής Τ.Ε.- ΤΕΙ Θεσσαλίας Μεταπτυχιακό

Διαβάστε περισσότερα

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 2: Βασικές Έννοιες Τεχνολογίας Λογισμικού Ο Ρόλος του Τεχνολόγου Λογισμικού Επιστήμη Υπολογιστών Πελάτης 2 Θεωρίες Λειτουργίες Υπολογιστή Πρόβλημα Σχεδιασμός

Διαβάστε περισσότερα

Μεθοδολογίες Παραγωγής Λογισµικού

Μεθοδολογίες Παραγωγής Λογισµικού Μεθοδολογίες Παραγωγής Λογισµικού Βασικά Γενικά Μοντέλα Μοντέλο καταρράκτη (waterfall model) Ξεχωριστές φάσεις καθορισµού απαιτήσεων και ανάπτυξης, επικύρωσης, εξέλιξης Εξελικτική ανάπτυξη (evolutionary

Διαβάστε περισσότερα

Α.Ε.Ι. Πειραιά Τ.Τ. Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Διαχείριση Έργων Αυτοματισμού και Πληροφορικής

Α.Ε.Ι. Πειραιά Τ.Τ. Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Διαχείριση Έργων Αυτοματισμού και Πληροφορικής Α.Ε.Ι. Πειραιά Τ.Τ. Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Διαχείριση Έργων Αυτοματισμού και Πληροφορικής 2 η Ενότητα Ανασκόπηση Προηγούμενης Διάλεξης 2 η Ενότητα - Περιεχόμενα Μεθοδολογίες Διαχείρισης Έργων

Διαβάστε περισσότερα

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 10/10/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

ΕΥΕΛΙΚΤΕΣ ΜΕΘΟΔΟΛΟΓΙΕΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ (AGILE METHODOLOGIES) Ακραίος Προγραμματισμός (Extreme Programming) και Scrum

ΕΥΕΛΙΚΤΕΣ ΜΕΘΟΔΟΛΟΓΙΕΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ (AGILE METHODOLOGIES) Ακραίος Προγραμματισμός (Extreme Programming) και Scrum ΕΥΕΛΙΚΤΕΣ ΜΕΘΟΔΟΛΟΓΙΕΣ ΔΙΑΧΕΙΡΙΣΗΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ (AGILE METHODOLOGIES) Ακραίος Προγραμματισμός (Extreme Programming) και Scrum Στόχοι Ευέλικτες Μέθοδοι (Agile Methods) Ακραίος Προγραμματισμός (extreme

Διαβάστε περισσότερα

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4 Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 9/10/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Μοντέλα Κύκλου

Διαβάστε περισσότερα

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4 Διαδικασίες παραγωγής λογισμικού Στόχοι Παρουσίαση μοντέλων παραγωγής λογισμικού Περιγραφή τριών γενικών μοντέλων παραγωγής λογισμικού και πότε μπορούν να χρησιμοποιούνται Γενική περιγραφή των μοντέλων

Διαβάστε περισσότερα

Παράδειγµα διεργασίας: ιαδικασίες και ιεργασίες

Παράδειγµα διεργασίας: ιαδικασίες και ιεργασίες ιεργασία & κύκλος ζωής Μοντελοποίηση ιεργασιών και Κύκλου Ζωής Λογισµικού Αντώνης Καραγεώργος Τµήµα Μηχανικών Η/Υ και ικτύων Πανεπιστήµιο Θεσσαλίας karageorgos@inf.uth.gr ιεργασία είναι ένα σύνολο διατεταγµένων

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΔΙΑΔΙΚΑΣΙΕΣ ΠΑΡΑΓΩΓΗΣ ΛΟΓΙΣΜΙΚΟΥ Διδάσκων: Γ. Χαραλαμπίδης,

Διαβάστε περισσότερα

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού Πρόλογος...21 μέρος A Εισαγωγή στην Τεχνολογία Λογισμικού 1 Εισαγωγή στην Τεχνολογία Λογισμικού 1.1 Το λογισμικό...25 1.1.1 Ο ρόλος και η σημασία του λογισμικού...26 1.1.2 Οικονομική σημασία του λογισμικού...28

Διαβάστε περισσότερα

Διαδικασίες ανάπτυξης λογισμικού

Διαδικασίες ανάπτυξης λογισμικού Ψηφιακή ανάπτυξη Course Unit #1 : Κατανοώντας τις βασικές σύγχρονες ψηφιακές αρχές Thematic Unit #2 : Ευέλικτες (Agile) μέθοδοι για την ανάπτυξη λογισμικού Learning Objective : Διαδικασίες ανάπτυξης λογισμικού

Διαβάστε περισσότερα

Παράδειγµα διεργασίας: ιαδικασίες και ιεργασίες

Παράδειγµα διεργασίας: ιαδικασίες και ιεργασίες ιεργασία & κύκλος ζωής Μοντελοποίηση ιεργασιών και Κύκλου Ζωής Λογισµικού Αντώνης Καραγεώργος Τµήµα Μηχανικών Η/Υ και ικτύων Πανεπιστήµιο Θεσσαλίας karageorgos@inf.uth.gr ιεργασία είναι ένα σύνολο διατεταγµένων

Διαβάστε περισσότερα

Ευέλικτες Διαδικασίες Ανάπτυξης Λογισμικού

Ευέλικτες Διαδικασίες Ανάπτυξης Λογισμικού Ευέλικτες Διαδικασίες Ανάπτυξης Λογισμικού Δρ. Βασίλης Γερογιάννης Καθηγητής ΤΕΙ Θεσσαλίας Η εφαρμογή αποτελεσματικών διαδικασιών για την ανάπτυξη λογισμικού τα τελευταία χρόνια αποτελεί ένα θέμα που απασχολεί

Διαβάστε περισσότερα

Εισαγωγή στη Σχεδίαση Λογισμικού

Εισαγωγή στη Σχεδίαση Λογισμικού Εισαγωγή στη Σχεδίαση Λογισμικού περιεχόμενα παρουσίασης Τι είναι η σχεδίαση λογισμικού Έννοιες σχεδίασης Δραστηριότητες σχεδίασης Σχεδίαση και υποδείγματα ανάπτυξης λογισμικού σχεδίαση Η σχεδίαση του

Διαβάστε περισσότερα

Τεχνολογία λογισμικού στην πράξη

Τεχνολογία λογισμικού στην πράξη Τεχνολογία λογισμικού στην πράξη Μοντέλα και μέθοδοι τεχνολογίας λογισμικού Διομήδης Σπινέλλης Τμήμα Διοικητικής Επιστήμης και Τεχνολογίας Οικονομικό Πανεπιστήμιο Αθηνών dds@aueb.gr http://www.dmst.aueb.gr/dds

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ενότητα 6: Τεχνολογία Λογισμικού-Software Engineering Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών Σπουδών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

Εισαγωγή στην Τεχνολογία Λογισμικού

Εισαγωγή στην Τεχνολογία Λογισμικού Εισαγωγή στην Τεχνολογία Λογισμικού περιεχόμενα παρουσίασης Αντικείμενο της Τεχνολογίας Λογισμικού Η ανάπτυξη λογισμικού Μοντέλα διαδικασίας λογισμικού τεχνολογία λογισμικού Κλάδος της πληροφορικής που

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΜΑΤΟΣ. Ευέλικτες μέθοδοι στη διοίκηση έργων ΠΙΣΤΩΤΙΚΕΣ ΜΟΝΑΔΕΣ: 8 ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ (ΑΝΑ ΕΒΔΟΜΑΔΑ):

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΜΑΤΟΣ. Ευέλικτες μέθοδοι στη διοίκηση έργων ΠΙΣΤΩΤΙΚΕΣ ΜΟΝΑΔΕΣ: 8 ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ (ΑΝΑ ΕΒΔΟΜΑΔΑ): ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΜΑΤΟΣ ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΜΑΤΟΣ A ΜΕΡΟΣ 1. ΓΕΝΙΚΑ ΚΩΔΙΚΟΣ ΜΑΘΗΜΑΤΟΣ: ΕΞΑΜΗΝΟ: ΜΑΘΗΜΑ: Ευέλικτες μέθοδοι στη διοίκηση έργων ΠΙΣΤΩΤΙΚΕΣ ΜΟΝΑΔΕΣ: 8 ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ (ΑΝΑ ΕΒΔΟΜΑΔΑ): ΓΛΩΣΣΑ ΔΙΔΑΣΚΑΛΙΑΣ:

Διαβάστε περισσότερα

Εισαγωγή στη Δασική Πληροφορική

Εισαγωγή στη Δασική Πληροφορική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Εισαγωγή στη Δασική Πληροφορική Ενότητα 3: Θεωρία, Ανάλυση και Σχεδιασμός Πληροφοριακών Συστημάτων Ζαχαρούλα Ανδρεοπούλου Δασολογίας &

Διαβάστε περισσότερα

Προδιαγραφές Απαιτήσεων Επικύρωση Απαιτήσεων

Προδιαγραφές Απαιτήσεων Επικύρωση Απαιτήσεων Προδιαγραφές Απαιτήσεων Επικύρωση Απαιτήσεων περιεχόμενα παρουσίασης Προδιαγραφές Απαιτήσεων Έγγραφο Προδιαγραφών Απαιτήσεων λογισμικού (ΕΠΑΛ) Επικύρωση απαιτήσεων Ιχνηλάτηση απαιτήσεων προδιαγραφές απαιτήσεων

Διαβάστε περισσότερα

ΣΧΕΔΙΑΣΗ & ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ

ΣΧΕΔΙΑΣΗ & ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΣΧΕΔΙΑΣΗ & ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ Διδάσκουσα: Χαρίκλεια Τσαλαπάτα Πανεπιστήμιο Θεσσαλίας ΤΗΜΜΥ 420 htsalapa@inf.uth.gr (e-ce.uth.gr) 1 Εκπαιδευτικό υλικό μαθήματος Ιστοσελίδα: http://eclass.uth.gr/eclass/courses/mhx330/

Διαβάστε περισσότερα

Διαχείριση έργων. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Διαχείριση έργων. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Διαχείριση έργων Στόχοι Ερμηνεία των κύριων εργασιών ενός διευθυντή έργου λογισμικού Παρουσίαση της διαχείρισης έργων λογισμικού και περιγραφή των χαρακτηριστικών που τη διακρίνουν Εξέταση του σχεδιασμού

Διαβάστε περισσότερα

Πληροφορική 2. Τεχνολογία Λογισμικού

Πληροφορική 2. Τεχνολογία Λογισμικού Πληροφορική 2 Τεχνολογία Λογισμικού 1 2 Κρίση Λογισμικού (1968) Στην δεκαετία του 1970 παρατηρήθηκαν μαζικά: Μεγάλες καθυστερήσεις στην ολοκλήρωση κατασκευής λογισμικών Μεγαλύτερα κόστη ανάπτυξης λογισμικού

Διαβάστε περισσότερα

ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ

ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ Ο κύκλος ζωής λογισµικού (συνοπτικά) Η παραδοσιακή φάση ανάπτυξης του κύκλου ζωής λογισµικού Φάση καθορισµού απαιτήσεων (1/2) ΤΙ πρέπει να κάνει το

Διαβάστε περισσότερα

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εργαλεία CASE Computer Assisted Systems Engineering Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2011-2012 1 Εργαλεία CASE

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ ΥΠΟΥΡΓΕΙΟ ΕΘΝΙΚΗΣ ΠΑΙΔΕΙΑΣ ΚΑΙ ΘΡΗΣΚΕΥΜΑΤΩΝ ΠΑΙΔΑΓΩΓΙΚΟ ΙΝΣΤΙΤΟΥΤΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ Π ΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ Π ΕΡΙΒΑΛΛΟΝ Κ Υ Κ Λ Ο Υ Π Λ Η Ρ Ο Φ Ο Ρ Ι Κ Η Σ Κ Α Ι Υ Π Η Ρ Ε Σ Ι Ω Ν Τ Ε Χ Ν Ο Λ Ο Γ Ι Κ Η

Διαβάστε περισσότερα

Ευέλικτες Μέθοδοι και Ακραίος Προγραμματισμός

Ευέλικτες Μέθοδοι και Ακραίος Προγραμματισμός Agile Methods and extreme Programming (XP) Ευέλικτες Μέθοδοι και Ακραίος Προγραμματισμός Μοντέλο Καταρράκτη (Waterfall Model) Software Model Requirements Broad Design Detailed Design Coding Testing Κύκλος

Διαβάστε περισσότερα

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού & Πνευματική Ιδιοκτησία. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Τεχνολογία Λογισμικού & Πνευματική Ιδιοκτησία. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Τεχνολογία Λογισμικού & Πνευματική Ιδιοκτησία ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Κύκλος ζωής λογισμικού source: Forouzan, Mosharraf Τροποποιήσεις διόρθωση σφαλμάτων, αλλαγή απαιτήσεων χρήστη,...

Διαβάστε περισσότερα

«ΕΥΕΛΙΚΤΟ ERP. ΥΛΟΠΟΙΗΣΗ ΕΝΟΣ ΜΙΚΡΟΥ ΣΥΣΤΗΜΑΤΟΣ ERP»

«ΕΥΕΛΙΚΤΟ ERP. ΥΛΟΠΟΙΗΣΗ ΕΝΟΣ ΜΙΚΡΟΥ ΣΥΣΤΗΜΑΤΟΣ ERP» ΑΛΕΞΑΝΔΡΕΙΟ Τ.Ε.Ι. ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ «ΕΥΕΛΙΚΤΟ ERP. ΥΛΟΠΟΙΗΣΗ ΕΝΟΣ ΜΙΚΡΟΥ ΣΥΣΤΗΜΑΤΟΣ ERP» Επιβλέπων καθηγητής Σφέτσος Παναγιώτης Θεσσαλονίκη 2011 Λιάρας Ευάγγελος

Διαβάστε περισσότερα

Ενότητα 1 (κεφάλαια 3 και 23.4) Ευέλικτη Ανάπτυξη Λογισμικού

Ενότητα 1 (κεφάλαια 3 και 23.4) Ευέλικτη Ανάπτυξη Λογισμικού ΕΠΛ362: Τεχνολογία Λογισμικού ΙΙ (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Software Engineering, 9/E, Ian Sommerville, 2011) Ενότητα 1 (κεφάλαια 3 και 23.4) Ευέλικτη Ανάπτυξη Λογισμικού Οι διαφάνειες

Διαβάστε περισσότερα

Σκοπός του μαθήματος

Σκοπός του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εισαγωγή Βασικές Έννοιες Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Σκοπός του μαθήματος Η απόκτηση των γνώσεων

Διαβάστε περισσότερα

Ανάλυση Απαιτήσεων Mεθοδολογίες Ανάπτυξης

Ανάλυση Απαιτήσεων Mεθοδολογίες Ανάπτυξης ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ Ανάλυση Απαιτήσεων Mεθοδολογίες Ανάπτυξης Μάρα Νικολαϊδου Μοντελοποίηση Συστήµατος Περιπτώσεις χρήσης Οι περιπτώσεις χρήσης είναι µια τεχνική

Διαβάστε περισσότερα

Σχεδιαστικά Προγράμματα Επίπλου

Σχεδιαστικά Προγράμματα Επίπλου Σχεδιαστικά Προγράμματα Επίπλου Καθηγήτρια ΦΕΡΦΥΡΗ ΣΩΤΗΡΙΑ Τμήμα ΣΧΕΔΙΑΣΜΟΥ & ΤΕΧΝΟΛΟΓΙΑΣ ΞΥΛΟΥ - ΕΠΙΠΛΟΥ Σχεδιαστικά Προγράμματα Επίπλου Η σχεδίαση με τον παραδοσιακό τρόπο απαιτεί αυξημένο χρόνο, ενώ

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Μάθημα 10: Ανάπτυξη ΠΣ Μαρίνος Θεμιστοκλέους Email: mthemist@unipi.gr Ανδρούτσου 150 Γραφείο 206 Τηλ. 210 414 2723 Ώρες Γραφείου: Δευτέρα 11-12 πμ Ενδεικτικά Περιεχόμενα Εργασίας

Διαβάστε περισσότερα

Kanban μέθοδος για τη Διαχείριση Έργων Λογισμικού

Kanban μέθοδος για τη Διαχείριση Έργων Λογισμικού Kanban μέθοδος για τη Διαχείριση Έργων Λογισμικού Ενότητα 1- Kanban μέθοδος Δρ. Δημήτριος Τσέλιος Καθηγητής Εφαρμογών Τμήμα Μηχανικών Πληροφορικής Τ.Ε.- ΤΕΙ Θεσσαλίας Μεταπτυχιακό Πρόγραμμα Μηχανική Λογισμικού

Διαβάστε περισσότερα

Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού

Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού Ενότητα 2- Οι αρχές της agile προσέγγισης Δρ. Δημήτριος Τσέλιος Καθηγητής Εφαρμογών Τμήμα Μηχανικών Πληροφορικής Τ.Ε.- ΤΕΙ Θεσσαλίας Μεταπτυχιακό Πρόγραμμα

Διαβάστε περισσότερα

Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού

Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού Μάρα Νικολαϊδου Αντικείµενο & Σκοπός Παρουσίαση και ανάλυση όλων των σταδίων της διαδικασίας ανάπτυξης

Διαβάστε περισσότερα

Περιεχόμενα. Κεφάλαιο 2 Κοινωνικοτεχνικά συστήματα 49

Περιεχόμενα. Κεφάλαιο 2 Κοινωνικοτεχνικά συστήματα 49 Περιεχόμενα Πρόλογος 5 Μέρος 1 Επισκόπηση 27 Κεφάλαιο 1 Εισαγωγή 29 1.1 Συχνές ερωτήσεις για την τεχνολογία λογισμικού 31 1.2 Επαγγελματική και ηθική ευθύνη 41 Κύρια σημεία 46 Πρόσθετες πηγές 46 Ασκήσεις

Διαβάστε περισσότερα

Απαιτήσεις Λογισμικού

Απαιτήσεις Λογισμικού Απαιτήσεις Λογισμικού περιεχόμενα παρουσίασης Τι είναι οι απαιτήσεις Δραστηριότητες προσδιορισμού απαιτήσεων Η εξαγωγή απαιτήσεων τι είναι οι απαιτήσεις Πριν βρούμε τη λύση πρέπει να καταλάβουμε το πρόβλημα.

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα Διοίκησης. Διοικητική Επιστήμη και Λήψη Αποφάσεων

Πληροφοριακά Συστήματα Διοίκησης. Διοικητική Επιστήμη και Λήψη Αποφάσεων Πληροφοριακά Συστήματα Διοίκησης Διοικητική Επιστήμη και Λήψη Αποφάσεων Η πολυπλοκότητα των αποφάσεων Αυξανόμενη πολυπλοκότητα λόγω: Ταχύτητας αλλαγών στο εξωτερικό περιβάλλον της επιχείρησης. Έντασης

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Το έργο υλοποιείται στο πλαίσιο του υποέργου 2 με τίτλο «Ανάπτυξη έντυπου εκπαιδευτικού υλικού για τα νέα Προγράμματα Σπουδών» της Πράξης «Ελληνικό Ανοικτό Πανεπιστήμιο» η οποία έχει ενταχθεί στο Επιχειρησιακό

Διαβάστε περισσότερα

8 Τεχνικός Εφαρμογών Πληροφορικής με Πολυμέσα

8 Τεχνικός Εφαρμογών Πληροφορικής με Πολυμέσα Περιεχόμενα Πρόλογος... 9 Κεφάλαιο 1: Δομή και λειτουργία του υπολογιστή... 11 Κεφάλαιο 2: Χρήση Λ.Σ. DOS και Windows... 19 Κεφάλαιο 3: Δίκτυα Υπολογιστών και Επικοινωνίας... 27 Κεφάλαιο 4: Unix... 37

Διαβάστε περισσότερα

Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι

Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι Ευθύμιος Ταμπούρης tambouris@uom.gr Επιστημονική Επιχειρηματική Χρήση των Η/Υ Η επιστημονική κοινότητα ασχολείται με τη λύση πολύπλοκων μαθηματικών προβλημάτων

Διαβάστε περισσότερα

Αρχιτεκτονική Λογισμικού

Αρχιτεκτονική Λογισμικού Αρχιτεκτονική Λογισμικού περιεχόμενα παρουσίασης Τι είναι η αρχιτεκτονική λογισμικού Αρχιτεκτονική και απαιτήσεις Σενάρια ποιότητας Βήματα αρχιτεκτονικής σχεδίασης Αρχιτεκτονικά πρότυπα Διαστρωματωμένη

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Τεχνολογία Λογισμικού Προαπαιτήσεις Γνώση Αρχών Προγραμματισμού Γνώση Γλώσσας Προγραμματισμού (C++, Java, Pascal) Χρήση Η/Υ (Σχεδίαση, Επεξ. Κειμένου) Κριτική και Συνθετική Ικανότητα Σκοπός μαθήματος Γνωριμία

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα #6 : Μοντελοποίηση διεργασιών και κύκλου ζωής Σταμέλος Ιωάννης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Μεθοδική Ανάπτυξη Δικτυακής Υποδομής. Παρουσίαση στην ημερίδα για Σύγχρονες τάσεις στις Τηλεπικοινωνίες και Τεχνολογίες Αιχμής

Μεθοδική Ανάπτυξη Δικτυακής Υποδομής. Παρουσίαση στην ημερίδα για Σύγχρονες τάσεις στις Τηλεπικοινωνίες και Τεχνολογίες Αιχμής Μεθοδική Ανάπτυξη Δικτυακής Υποδομής Παρουσίαση στην ημερίδα για Σύγχρονες τάσεις στις Τηλεπικοινωνίες και Τεχνολογίες Αιχμής 14-01-2006 1 Περιεχόμενα Η ανάγκη για μεθοδικό σχεδιασμό δικτύων Μία δομημένη

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Πτυχιακή εργασία ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΜΗΧΑΝΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Πτυχιακή εργασία ΜΕΛΕΤΗ ΘΕΜΑΤΩΝ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ ΤΗ ΧΡΗΣΗ ΕΥΚΙΝΗΤΩΝ ΜΕΘΟΔΟΛΟΓΙΩΝ ΜΕΣΩ ΣΥΛΛΟΓΗΣ ΚΑΙ ΕΠΕΞΕΡΓΑΣΙΑΣ ΕΜΠΕΙΡΙΚΩΝ

Διαβάστε περισσότερα

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Έλεγχος Λογισμικού Προβλήματα Λογισμικού 2 Μια ματιά στα παλιά: Σφάλμα: Ελάττωμα: Ανθρώπινο λάθος (σε προδιαγραφές, τεκμηρίωση κλπ) «Κωδικοποίηση του σφάλματος» στο

Διαβάστε περισσότερα

ΣΕΧΝΟΛΟΓΙΑ ΛΟΓΙΜΙΚΟΤ ΔΕΤΣΕΡΗ ΔΙΑΛΕΞΗ ΔΙΑΔΙΚΑΙΑ ΠΑΡΑΓΩΓΗ ΛΟΓΙΜΙΚΟΤ

ΣΕΧΝΟΛΟΓΙΑ ΛΟΓΙΜΙΚΟΤ ΔΕΤΣΕΡΗ ΔΙΑΛΕΞΗ ΔΙΑΔΙΚΑΙΑ ΠΑΡΑΓΩΓΗ ΛΟΓΙΜΙΚΟΤ ΣΕΧΝΟΛΟΓΙΑ ΛΟΓΙΜΙΚΟΤ ΔΕΤΣΕΡΗ ΔΙΑΛΕΞΗ ΔΙΑΔΙΚΑΙΑ ΠΑΡΑΓΩΓΗ ΛΟΓΙΜΙΚΟΤ ΠΕΡΙΕΦΟΜΕΝΑ Δομικά τοιχεία Λογισμικού Διαδικασία Παραγωγής Λογισμικού Αυτοματοποίηση Διαδικασιών Παραγωγής Λογισμικού Θεμελιώδεις Δραστηριότητες

Διαβάστε περισσότερα

Εισαγωγή στην. Γιάννης Σμαραγδάκης

Εισαγωγή στην. Γιάννης Σμαραγδάκης Εισαγωγή στην Τεχνολογία Λογισμικού Γιάννης Σμαραγδάκης Γιατί μελετάμε την Τεχνολογία Λογισμικού Λογισμικό υπάρχει παντού σε όλους τους τεχνικούς τομείς (π.χ. αεροδιαστημική) σε όλες τις επιστήμες στον

Διαβάστε περισσότερα

Αρχές Προγραμματισμού Υπολογιστών

Αρχές Προγραμματισμού Υπολογιστών Αρχές Προγραμματισμού Υπολογιστών Ανάπτυξη Προγράμματος Β ΕΠΑΛ Τομέας Πληροφορικής Βελώνης Γεώργιος Καθηγητής Πληροφορικής ΠΕ20 Κύκλος ανάπτυξης προγράμματος/λογισμικού Η διαδικασία ανάπτυξης λογισμικού,

Διαβάστε περισσότερα

Scrum Μέθοδος για τη Διαχείριση Έργων Λογισμικού

Scrum Μέθοδος για τη Διαχείριση Έργων Λογισμικού Scrum Μέθοδος για τη Διαχείριση Έργων Λογισμικού Ενότητα 1- Η βασική ορολογία Δρ. Δημήτριος Τσέλιος Καθηγητής Εφαρμογών Τμήμα Μηχανικών Πληροφορικής Τ.Ε.- ΤΕΙ Θεσσαλίας Μεταπτυχιακό Πρόγραμμα Μηχανική

Διαβάστε περισσότερα

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ.

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής Περιεχόµενα Κατηγορίες Π.Σ. ιαχείρισης Πράξεων ιοίκησης Υποστήριξης Αποφάσεων Έµπειρα Συστήµατα Ατόµων και Οµάδων Ο κύκλος ζωής Π.Σ. Ορισµός Φάσεις Χρήστες

Διαβάστε περισσότερα

Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού

Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού Μάρα Νικολαϊδου Δραστηριότητες Διαδικασιών Παραγωγής Λογισµικού Καθορισµός απαιτήσεων και εξαγωγή προδιαγραφών

Διαβάστε περισσότερα

περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης

περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης Περιπτώσεις Χρήσης περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης περιπτώσεις χρήσης Τι θα κάνει το λογισμικό για κάποιον

Διαβάστε περισσότερα

Έλεγχος Προγραμμάτων και Συστήματος

Έλεγχος Προγραμμάτων και Συστήματος ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Τεχνολογίες και Εφαρμογές Διαδικτύου και Συστήματος Κατερίνα Πραματάρη Τεχνολογίες και Εφαρμογές Διαδικτύου Τύποι Σφαλμάτων (1)

Διαβάστε περισσότερα

Εισαγωγή στην τεχνολογία λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 1

Εισαγωγή στην τεχνολογία λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 1 Εισαγωγή στην τεχνολογία λογισμικού Στόχοι Έννοια της τεχνολογίας λογισμικού (ΤΛ) και ερμηνεία της σημασίας της Απαντήσεις σε θεμελιώδεις ερωτήσεις για την ΤΛ Ανάδειξη ηθικών και επαγγελματικών ζητημάτων

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗ, Γ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗ, Γ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗ, Γ ΤΑΞΗ ΓΕΝΙΚΟΥ ΛΥΚΕΙΟΥ Σκοπός του μαθήματος είναι οι μαθητές και οι μαθήτριες να αναπτύξουν ικανότητες αναλυτικής και συνθετικής σκέψης, ώστε να επιλύουν προβλήματα, να σχεδιάζουν

Διαβάστε περισσότερα

Μάθημα «Υπηρεσίες Ηλεκτρονικής Υγείας»

Μάθημα «Υπηρεσίες Ηλεκτρονικής Υγείας» Μάθημα «Υπηρεσίες Ηλεκτρονικής Υγείας» M. Σπανάκης, Μ. Τσικνάκης Εαρινό Εξάμηνο 2014 Μάθημα 1 Παρουσίαση Εργασίας και Εισαγωγή στην ανάλυση απαιτήσεων Εισαγωγή Αρχική συζήτηση αναφορικά με την ανάλυση

Διαβάστε περισσότερα

6. Διαχείριση Έργου. Έκδοση των φοιτητών

6. Διαχείριση Έργου. Έκδοση των φοιτητών 6. Διαχείριση Έργου Έκδοση των φοιτητών Εισαγωγή 1. Η διαδικασία της Διαχείρισης Έργου 2. Διαχείριση κινδύνων Επανεξέταση Ερωτήσεις Αυτοαξιολόγησης Διαχείριση του έργου είναι να βάζεις σαφείς στόχους,

Διαβάστε περισσότερα

Διαχείριση έργων. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Διαχείριση έργων. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Διαχείριση έργων Στόχοι Ερμηνεία των κύριων εργασιών ενός διευθυντή έργου λογισμικού Παρουσίαση της διαχείρισης έργων λογισμικού και περιγραφή των χαρακτηριστικών που τη διακρίνουν Εξέταση του σχεδιασμού

Διαβάστε περισσότερα

Τεχνολογία Πολιτισμικού Λογισμικού

Τεχνολογία Πολιτισμικού Λογισμικού Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Τεχνολογία Πολιτισμικού Λογισμικού Ενότητα 2: Φάσεις ανάπτυξης πολιτισμικού λογισμικού Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons

Διαβάστε περισσότερα

METROPOLIS. Ένα περιβάλλον σχεδιασμού για ετερογενή συστήματα

METROPOLIS. Ένα περιβάλλον σχεδιασμού για ετερογενή συστήματα METROPOLIS Ένα περιβάλλον σχεδιασμού για ετερογενή συστήματα Ενσωματωμένα συστήματα Ορίζονται ως ηλεκτρονικά συστήματα τα οποία χρησιμοποιούν υπολογιστές και ηλεκτρονικά υποσυστήματα για να εκτελέσουν

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Τεχνολογία Λογισμικού 8ο Εξάμηνο 2018 19 Εισαγωγή στη διαχείριση έργων λογισμικού Δρ. Κώστας Σαΐδης saiko@di.uoa.gr A. Διαχείριση έργου γενικά Ορισμοί Βασικές

Διαβάστε περισσότερα

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5.1 Εισαγωγή στους αλγορίθμους 5.1.1 Εισαγωγή και ορισμοί Αλγόριθμος (algorithm) είναι ένα πεπερασμένο σύνολο εντολών οι οποίες εκτελούν κάποιο ιδιαίτερο έργο. Κάθε αλγόριθμος

Διαβάστε περισσότερα

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Τεχνολογία Λογισμικού Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

Διαβάστε περισσότερα

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 003: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Δρ. Κόννης Γιώργος Πανεπιστήμιο Κύπρου - Τμήμα Πληροφορικής Προγραμματισμός Στόχοι 1 Να περιγράψουμε τις έννοιες του Υπολογιστικού Προβλήματος και του Προγράμματος/Αλγορίθμου

Διαβάστε περισσότερα

Κεφάλαιο 7: Τεχνολογία Λογισμικού

Κεφάλαιο 7: Τεχνολογία Λογισμικού Κεφάλαιο 7: Τεχνολογία Λογισμικού Η Επιστήμη των Υπολογιστών: Μια Ολοκληρωμένη Παρουσίαση (δέκατη αμερικανική έκδοση) J. Glenn Brookshear Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

Διαβάστε περισσότερα

Τεχνολογία λογισμικού στην πράξη

Τεχνολογία λογισμικού στην πράξη Τεχνολογία λογισμικού στην πράξη Διεργασίες τεχνολογίας λογισμικού Διομήδης Σπινέλλης Τμήμα Διοικητικής Επιστήμης και Τεχνολογίας Οικονομικό Πανεπιστήμιο Αθηνών dds@aueb.gr http://www.dmst.aueb.gr/dds

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Γ ΤΑΞΗΣ ΓΕΛ ΚΛΕΙΩ ΣΓΟΥΡΟΠΟΥΛΟΥ. ΣΥΓΧΡΟΝΑ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ Αντικειμενοστραφής Προγραμματισμός

ΠΛΗΡΟΦΟΡΙΚΗ Γ ΤΑΞΗΣ ΓΕΛ ΚΛΕΙΩ ΣΓΟΥΡΟΠΟΥΛΟΥ. ΣΥΓΧΡΟΝΑ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ Αντικειμενοστραφής Προγραμματισμός ΠΛΗΡΟΦΟΡΙΚΗ Γ ΤΑΞΗΣ ΓΕΛ ΣΥΓΧΡΟΝΑ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΠΕΡΙΒΑΛΛΟΝΤΑ Αντικειμενοστραφής Προγραμματισμός ΚΛΕΙΩ ΣΓΟΥΡΟΠΟΥΛΟΥ ΥΠΠΕΘ 04.07.2019 ΕΠΙΜΟΡΦΩΣΗ ΣΤΟ ΝΕΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΥΛΙΚΟ Αντικειμενοστραφής Προγραμματισμός.

Διαβάστε περισσότερα

ΑΛΕΞΑΝΔΡΕΙΟ ΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΑΛΕΞΑΝΔΡΕΙΟ ΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΑΛΕΞΑΝΔΡΕΙΟ ΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΕΥΕΛΙΚΤΩΝ ΕΡΓΩΝ ΤΗΣ ΦΟΙΤΗΤΡΙΑΣ ΛΗΜΝΙΟΥ ΑΙΚΑΤΕΡΙΝΗ ΑΡ.ΜΗΤΡΩΟΥ:02/2021 ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ

Διαβάστε περισσότερα

Τεχνολογία Λογισµικού Ι Κεφάλαια 1-21

Τεχνολογία Λογισµικού Ι Κεφάλαια 1-21 ΕΛΛΗΝΙΚΟ ΑΝΟΙΧΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Πρόγραµµα σπουδών "ΠΛΗΡΟΦΟΡΙΚΗ" - Θ.Ε. ΠΛΗ11 Τεχνολογία Λογισµικού Ι Κεφάλαια 1-21 Βασίλειος Βεσκούκης ιδάκτωρ Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών v.vescoukis@cs.ntua.gr

Διαβάστε περισσότερα

Εισαγωγή στην Τεχνολογία Λογισµικού

Εισαγωγή στην Τεχνολογία Λογισµικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Μάθηµα "Τεχνολογία Λογισµικού", 9ο εξάµηνο Εισαγωγή στην Τεχνολογία Λογισµικού Νίκος Παπασπύρου Γιάννης Μαΐστρος Βασίλης

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

Διαβάστε περισσότερα

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 8: Σχεδίαση Συστήματος Σχεδίαση Συστήματος 2 Διεργασία μετατροπής του προβλήματος σε λύση. Από το Τί στο Πώς. Σχέδιο: Λεπτομερής περιγραφή της λύσης. Λύση:

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα Διοίκησης. Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού

Πληροφοριακά Συστήματα Διοίκησης. Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού Πληροφοριακά Συστήματα Διοίκησης Επισκόπηση μοντέλων λήψης αποφάσεων Τεχνικές Μαθηματικού Προγραμματισμού Σημασία μοντέλου Το μοντέλο δημιουργεί μια λογική δομή μέσω της οποίας αποκτούμε μια χρήσιμη άποψη

Διαβάστε περισσότερα

Πρακτικά όλα τα προβλήματα ασφαλείας οφείλονται σε λάθη στον κώδικα

Πρακτικά όλα τα προβλήματα ασφαλείας οφείλονται σε λάθη στον κώδικα 1 2 3 Το λογισμικό αποτελεί το τσιμέντο της σύγχρονης κοινωνίας. Τα πάντα γύρω μας ελέγχονται από εφαρμογές, συνεπώς ο κώδικας από τον οποίο αποτελούνται είναι ένα κρίσιμο στοιχείο για την ίδια μας τη

Διαβάστε περισσότερα

RobotArmy Περίληψη έργου

RobotArmy Περίληψη έργου RobotArmy Περίληψη έργου Στην σημερινή εποχή η ανάγκη για αυτοματοποίηση πολλών διαδικασιών γίνεται όλο και πιο έντονη. Συνέχεια ακούγονται λέξεις όπως : βελτιστοποίηση ποιότητας ζωής, αυτοματοποίηση στον

Διαβάστε περισσότερα

Σημειώσεις στο μάθημα «Στοιχεία Προγραμματισμού σε Γραφικό Περιβάλλον»

Σημειώσεις στο μάθημα «Στοιχεία Προγραμματισμού σε Γραφικό Περιβάλλον» 1. Κύκλος ζωής λογισμικού Ο κύκλος ζωής λογισμικού είναι οι φάσεις (τα στάδια) από τις οποίες διέρχεται μία εφαρμογή λογισμικού, από την σύλληψη της ιδέας, τη διαδικασία κατασκευής / ανάπτυξης, τη λειτουργία

Διαβάστε περισσότερα

Δομές Δεδομένων & Αλγόριθμοι

Δομές Δεδομένων & Αλγόριθμοι Θέματα Απόδοσης Αλγορίθμων 1 Η Ανάγκη για Δομές Δεδομένων Οι δομές δεδομένων οργανώνουν τα δεδομένα πιο αποδοτικά προγράμματα Πιο ισχυροί υπολογιστές πιο σύνθετες εφαρμογές Οι πιο σύνθετες εφαρμογές απαιτούν

Διαβάστε περισσότερα

Κεφάλαιο 1. Εισαγωγή στα συστήματα σχεδιομελέτης και παραγωγής με χρήση υπολογιστή computer aided design and manufacture (cad/cam)

Κεφάλαιο 1. Εισαγωγή στα συστήματα σχεδιομελέτης και παραγωγής με χρήση υπολογιστή computer aided design and manufacture (cad/cam) Κεφάλαιο 1 Εισαγωγή στα συστήματα σχεδιομελέτης και παραγωγής με χρήση υπολογιστή computer aided design and manufacture (cad/cam) 1.1 Ορισμός σχεδιομελέτης και παραγωγής με χρήση υπολογιστή CAD (Computer

Διαβάστε περισσότερα

Ανοικτά Ακαδηµα κά Μαθήµατα

Ανοικτά Ακαδηµα κά Μαθήµατα ΤΕΙ Ιονίων Νήσων Ανοικτά Ακαδηµα κά Μαθήµατα Ανάλυση Σχεδίαση Υλοποίηση Αξιολόγηση Ανάλυση: Πληροφορίες σχετικά µε τις ανάγκες της εκπαίδευσης Σχεδίαση: Καθορισµός χαρακτηριστικών του εκπαιδευτικού λογισµικού

Διαβάστε περισσότερα

Ελληνικό Ανοικτό Πανεπιστήµιο. Η ιαχείριση Απαιτήσεων στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Η ιαχείριση Απαιτήσεων στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Η ιαχείριση Απαιτήσεων στην Ενοποιηµένη ιαδικασία ρ. Πάνος Φιτσιλής Περιεχόµενα Τι είναι διαχείριση απαιτήσεων Ποια είναι η ροή των εργασιών στη φάση της καταγραφής των

Διαβάστε περισσότερα

Αλληλεπίδραση Ανθρώπου- Υπολογιστή & Ευχρηστία

Αλληλεπίδραση Ανθρώπου- Υπολογιστή & Ευχρηστία Αλληλεπίδραση Ανθρώπου- Υπολογιστή & Ευχρηστία Ενότητα 6: Η Τεχνολογία Λογισμικού στην Αλληλεπίδραση Ανθρώπου-Υπολογιστή Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν

Διαβάστε περισσότερα

ΔΙΑΧΕΙΡΙΣΗ ΠΡΟΓΡΑΜΜΑΤΩΝ ΚΑΙ ΧΑΡΤΟΦΥΛΑΚΙΩΝ ΕΡΓΩΝ. Διάλεξη 1 η Εισαγωγικές έννοιες και ορισμοί Δημήτρης Τσέλιος

ΔΙΑΧΕΙΡΙΣΗ ΠΡΟΓΡΑΜΜΑΤΩΝ ΚΑΙ ΧΑΡΤΟΦΥΛΑΚΙΩΝ ΕΡΓΩΝ. Διάλεξη 1 η Εισαγωγικές έννοιες και ορισμοί Δημήτρης Τσέλιος ΔΙΑΧΕΙΡΙΣΗ ΠΡΟΓΡΑΜΜΑΤΩΝ ΚΑΙ ΧΑΡΤΟΦΥΛΑΚΙΩΝ ΕΡΓΩΝ Διάλεξη 1 η Εισαγωγικές έννοιες και ορισμοί Δημήτρης Τσέλιος Συχνές ερωτήσεις ενός διαχειριστή έργων Γιατί υλοποιούμε αυτό το έργο; Τι υποτίθεται ότι θα

Διαβάστε περισσότερα

Κεφάλαιο 3 ο. Συστήματα πληροφοριών, οργανισμοί, μάνατζμεντ και στρατηγική

Κεφάλαιο 3 ο. Συστήματα πληροφοριών, οργανισμοί, μάνατζμεντ και στρατηγική Κεφάλαιο 3 ο Συστήματα πληροφοριών, οργανισμοί, μάνατζμεντ και στρατηγική Διδακτικοί στόχοι Νααναγνωριστούντακύρια χαρακτηριστικά των οργανισμών Να αναλυθεί η σχέση μεταξύ των συστημάτων πληροφοριών και

Διαβάστε περισσότερα

Στρατηγικό Σχεδιασµό Πληροφοριακών Συστηµάτων

Στρατηγικό Σχεδιασµό Πληροφοριακών Συστηµάτων Μέθοδοι και Τεχνικές για τον Στρατηγικό Σχεδιασµό Πληροφοριακών Συστηµάτων (SISP) Στρατηγική και Διοίκηση Πληροφοριακών Συστηµάτων Μάθηµα 2 No 1 Δοµή της Παρουσίασης l 1. Εισαγωγή l 2. Μεθοδολογία SISP

Διαβάστε περισσότερα

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Δομημένος Προγραμματισμός Ενότητα 1: Εισαγωγή Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά Το έργο

Διαβάστε περισσότερα

Ορισμός Ευκαιρίας. 2.Διαδικασία Αναγνώρισης Ευκαιρίας

Ορισμός Ευκαιρίας. 2.Διαδικασία Αναγνώρισης Ευκαιρίας 11 Ορισμός Ευκαιρίας Είναι μια ανεπεξέργαστη αντιστοιχία μεταξύ μιας ανάγκης και μιας πιθανής λύσης. Κάποιες ευκαιρίες γίνονται τελικά νέα προϊόντα ενώ άλλες δεν εκτιμώνται για περαιτέρω ανάπτυξη Μία ιδέα

Διαβάστε περισσότερα

TopHost: Scrum Introduction & Rules

TopHost: Scrum Introduction & Rules TopHost: Scrum Introduction & Rules Το Scrum είναι μια ευέλικτη πρακτική προγραμματισμού την οποία θα προσπαθήσουμε να υιοθετήσουμε. Αντίθετα από τις παραδοσιακές πρακτικές, δεν υπάρχει κάποιος project

Διαβάστε περισσότερα

Συστήματα Πληροφοριών Διοίκησης

Συστήματα Πληροφοριών Διοίκησης ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Τεχνολογικό Εκπαιδευτικό Ίδρυμα Πειραιά Συστήματα Πληροφοριών Διοίκησης Ενότητα 2: Γενική θεώρηση και κατάταξη συστημάτων πληροφοριών διοίκησης Διονύσιος Γιαννακόπουλος, Καθηγητής Τμήμα

Διαβάστε περισσότερα