Scrum Μέθοδος για τη Διαχείριση Έργων Λογισμικού Ενότητα 1- Η βασική ορολογία Δρ. Δημήτριος Τσέλιος Καθηγητής Εφαρμογών Τμήμα Μηχανικών Πληροφορικής Τ.Ε.- ΤΕΙ Θεσσαλίας Μεταπτυχιακό Πρόγραμμα Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές 1
Το γενικό πλαίσιο του Scrum (Essential Scrum) (1) Το Scrum δεν είναι μια τυπική διαδικασία κατά την οποία ακολουθούνται κάποια βήματα. Είναι ένα πλαίσιο οργάνωσης της εργασίας. Η κάθε ομάδα προσθέτει τη δική της υλοποίηση στις αξίες και αρχές της Scrum δημιουργώντας τη δική της μοναδική έκδοση Scrum. Οι πρακτικές Scrum διακρίνονται σε ρόλους, δραστηριότητες, κατασκευές και τους συσχετισμένους κανόνες. 2
Το γενικό πλαίσιο του Scrum (Essential Scrum)- Πρακτικές Scrum (2) 3
Οι Scrum ρόλοι (1) Product Owner Scrum Master development team 4
Οι Scrum ρόλοι (2) 5
Ο Product Owner Είναι υπεύθυνος για το ποια features και με ποια σειρά και λειτουργικότητα θα δημιουργηθούν. Δίνει το όραμα και στην υπόλοιπη ομάδα. Δεν έχει σημασία αν το προϊόν προορίζεται για «εσωτερικό» ή «εξωτερικό» πελάτη. 6
Ο Scrum master Βοηθάει τον καθένα να κατανοήσει και αγκαλιάσει τις αξίες και τις αρχές του Scrum. Ο ρόλος του μοιάζει άλλα δεν είναι ίδιος με αυτόν του project manager. Φροντίζει η ομάδα να μην επηρεάζεται από εξωτερικές οχλήσεις. 7
development team Αποτελείται από 5 με 9 άτομα διαφόρων ειδικοτήτων και δεξιοτήτων. Δραστηριότητες και κατασκευές 8
Το πλαίσιο Scrum σε σύνοψη 9
Δραστηριότητες (1) grooming: ο Product Owner δημιουργεί ένα σύνολο από features για το προϊόν και τα τοποθετεί σε μία λίστα προτεραιοτήτων που ονομάζεται product backlog. sprint planning: επιλέγεται μια ομάδα features από το product backlog για υλοποίηση κατά τη διάρκεια του sprint, δημιουργώντας έτσι το αντίστοιχο sprint backlog. Το αποτέλεσμα είναι μια εκτίμηση ή μια δέσμευση. Ο δεύτερος όρος είναι προτιμότερος. 10
Δραστηριότητες (2) sprint execution: γίνονται οι διάφορες εργασίες ενώ κάθε μέρα γίνεται το Daily Scrum. sprint review: γίνονται δυο ενέργειες, η επιθεώρηση και η προσαρμογή. Δίνεται εστίαση στο προϊόν. sprint retrospective: γίνονται δυο ενέργειες, η επιθεώρηση και η προσαρμογή. Δίνεται εστίαση στη διαδικασία. Στη συνέχεια ο κύκλος επαναλαμβάνεται συνεχώς μέχρι την ολοκλήρωση του έργου. 11
Το product backlog (1) Γίνεται ιεράρχηση των features χρησιμοποιώντας παράγοντες όπως το κόστος, αξία, γνώση και ρίσκο. Η κατασκευή είναι δυναμική (επιτρέπεται η προσθαφαίρεση features). 12
Το product backlog (2) 13
Τα sprints Η δουλειά που ολοκληρώνεται σε κάθε sprint θα πρέπει να προσδίδει κάποια απτή αξία στον πελάτη- χρήστη. Τα χαρακτηριστικά του sprint 14
Σχεδιασμός του sprint Είναι η επιλογή των στοιχείων του product backlog που θα υλοποιηθούν στο sprint. Θα πρέπει να γίνεται θέτοντας ρεαλιστικούς στόχους ενώ η εργασία θα γίνεται με διατηρήσιμο ρυθμό. 15
Πως είναι το sprint backlog (1) Πολλές ομάδες για να αποκτήσουν αυτοπεποίθηση, διασπούν το κάθε features σε διεργασίες (tasks). Στο τέλος προκύπτει το sprint backlog. Συχνά χρησιμοποιείται η τεχνική Just in Time. 16
Πως είναι το sprint backlog (2) 17
Εκτέλεση του sprint Τα features που θεωρούνται «Done» είναι αυτά για τα οποία υπάρχει υψηλού βαθμού εμπιστοσύνη για το ότι έγινε η δουλειά με καλή ποιότητα. 18
Το Daily Scrum (1) Κάθε μέρα γίνεται για 15 περίπου λεπτά. Ο καθένας απαντά σε τρία ερωτήματα: Τι έφτιαξε χθες; Τι θα φτιάξει σήμερα; Ποια εμπόδια εμποδίζουν την εργασία του; 19
Το Daily Scrum (2) 20
Τι σημαίνει «Done» Σύμφωνα με το Scrum, τα αποτελέσματα είναι γνωστά ως potentially shippable product increment. Αποτελέσματα του sprint 21
Επιθεώρηση του sprint Στόχος είμαι η επιθεώρηση και η προσαρμογή του προϊόντος. 22
Ανασκόπηση του sprint Γίνεται συνήθως μετά το sprint review και πριν από τον επόμενο σχεδιασμό sprint. Είναι μια ευκαιρία για την επιθεώρηση και προσαρμογή της διαδικασίας. 23
Βιβλιογραφία Essential Scrum, Keneth S. Rubin, 2013, Pearson Education Inc., σελίδες 13-28 24