Εισαγωγή στην Scrum Mountain Goat Software, LLC Εισαγωγή στην Scrum Παρουσίαση Mountain Goat Software, LLC Χάνουμε την σκυτάλη “Η προσέγγιση της ...
Download ReportTranscript Εισαγωγή στην Scrum Mountain Goat Software, LLC Εισαγωγή στην Scrum Παρουσίαση Mountain Goat Software, LLC Χάνουμε την σκυτάλη “Η προσέγγιση της ...
Εισαγωγή στην Scrum <Το όνομά σας> <Ημερομηνία> Mountain Goat Software, LLC Εισαγωγή στην Scrum Παρουσίαση <Εσείς> <Ημερομηνία> Mountain Goat Software, LLC Χάνουμε την σκυτάλη “Η προσέγγιση της ... «σκυταλοδρομίας» για την ανάπτυξη νέου προϊόντος ... μπορεί να συγκρούεται με τους στόχους της μέγιστης ταχύτητας και της ευελιξίας. Αντ 'αυτού μια ολιστική ή «ράγκμπι» προσέγγιση, όπου μια ομάδα προσπαθεί να διανύσει την απόσταση ως μονάδα, περνώντας την μπάλα μπροστά και πίσω, μπορεί να εξυπηρετεί καλύτερα τις ανταγωνιστικές απαιτήσεις του σήμερα. Hirotaka Takeuchi and Ikujiro Nonaka, “The New Product Development Game”, Harvard Business Review, January 1986. Mountain Goat Software, LLC Η Scrum με 100 λέξεις • Η Scrum είναι μια ευέλικτη διαδικασία που μας επιτρέπει να • • • επικεντρωθούμε στην παροχή της υψηλότερης επιχειρηματικής αξίας στο συντομότερο χρονικό διάστημα. Μας επιτρέπει γρήγορα και κατ’ επανάληψη να ελέγξουμε μια πραγματική έκδοση λειτουργούντος λογισμικού (κάθε δύο εβδομάδες μέχρι ένα μήνα). Η επιχείρηση θέτει τις προτεραιότητες. Οι Ομάδες αυτόοργανώνονται για να καθορίσουν τον καλύτερο τρόπο παράδοσης των υψηλότερης προτεραιότητας χαρακτηριστικών. Κάθε δύο εβδομάδες έως ένα μήνα ο καθένας μπορεί να δει μια πραγματική έκδοση λειτουργούντος λογισμικού και να αποφασίσει αν θα την αποδεχθεί, όπως είναι ή αν θα συνεχίσει την βελτίωσή της για μια ακόμη περίοδο sprint. Mountain Goat Software, LLC Οι ρίζες της Scrum • • • • Jeff Sutherland • • Initial scrums at Easel Corp in 1993 IDX and 500+ people doing Scrum Ken Schwaber • • • ADM Scrum presented at OOPSLA 95 with Sutherland Author of three books on Scrum Mike Beedle • Scrum patterns in PLOPD4 Ken Schwaber and Mike Cohn • Co-founded Scrum Alliance in 2002, initially within the Agile Alliance Mountain Goat Software, LLC H Scrum έχει χρησιμοποιηθεί από: •Microsoft •Yahoo •Google •Electronic Arts •High Moon Studios •Lockheed Martin •Philips •Siemens •Nokia •Capital One •BBC •Intuit Mountain Goat Software, LLC •Intuit •Nielsen Media •First American Real Estate •BMC Software •Ipswitch •John Deere •Lexis Nexis •Sabre •Salesforce.com •Time Warner •Turner Broadcasting •Oce H Scrum έχει χρησιμοποιηθεί για: • • • • • • Εμπορικό λογισμικό Εσωτερική ανάπτυξη • • Ανάπτυξη παιχνιδιών Βίντεο • • • • • • Λογισμικό ελέγχου δορυφόρων • Ορισμένες από τις μεγαλύτερες εφαρμογές σε χρήση Ανάπτυξη βάσει σύμβασης Έργα σταθερής τιμής Οικονομικές εφαρμογές Εφαρμογές πιστοποιημένες με ISO 9001 • • Ενσωματωμένα συστήματα • Το πρόγραμμα του υπουργείου άμυνας Joint Strike Fighter Συστήματα με απαιτήσεις χρόνου απρόσκοπτης λειτουργίας 24x7 99,999% Mountain Goat Software, LLC Συστήματα Κρίσιμα για την ζωή, εγκεκριμένα από τον οργανισμό τροφίμων και φαρμάκων FDA Διαδικτυακούς τόπους Λογισμικό φορητών μονάδων Κινητά τηλέφωνα Εφαρμογές δικτυακής δρομολόγησης Εφαρμογές ISV (Independent Software Vendors) Χαρακτηριστικά • • • • • Αυτο-οργάνωση ομάδων Το Προϊόν αναπτύσσεται σταδιακά σε μια σειρά μηνιαίων sprint Οι Απαιτήσεις καταγράφονται ως στοιχεία σε μια λίστα των “ανεκτέλεστων προϊόντος” (product backlog) Δεν υπάρχουν προβλεπόμενες ειδικές πρακτικές ανάπτυξης Χρησιμοποιεί κανόνες παραγωγικότητας για να δημιουργήσει ένα ευέλικτο περιβάλλον παράδοσης των έργων Mountain Goat Software, LLC Το μανιφέστο του Agile –Δήλωση αξιών Άτομα και αλληλεπιδράσεις Λογισμικό σε λειτουργία Συνεργασία με τον πελάτη Ανταπόκριση στις αλλαγές αντί Διεργασίες και εργαλεία αντί Λεπτομερή τεκμηρίωση αντί Διαπραγμάτευση συμβάσεων αντί Πιστή εφαρμογή σχεδίου Source: www.agilemanifesto.org Mountain Goat Software, LLC Επίπεδο θορύβου έργου Εξωσυμβατικές Αναρχία Mountain Goat Software, LLC Απλά Σιγουριά Συμβατικές Πηγή: Strategic Management and Organizational Dynamics by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle. Τεχνολογία βεβαιότητα Απαιτήσεις Σύνθετα Scrum 24 ώρες Sprint 2-4 βδομάδες Στόχος Sprint Return Cancel Return Coupons Gift wrap Gift Cancel wrap Product backlog Mountain Goat Software, LLC Sprint backlog Coupons Δυνητική παράδοση προσαυξημένου τμήματος προϊόντος Η συνολική εικόνα Image available at www.mountaingoatsoftware.com/scrum Mountain Goat Software, LLC Sprints • Τα έργα scrum σημειώνουν πρόοδο σε μια σειρά από “sprints" • • • • Ανάλογη των επαναλήψεων (iterations) στο Extreme Programming Τυπική διάρκεια 2–4 βδομάδες ή μέγιστα ένας ημερολογιακός μήνας Μια σταθερή διάρκεια οδηγεί σε καλύτερο ρυθμό Το προϊόν σχεδιάζεται, κωδικοποιείται και ελέγχεται στην διάρκεια του sprint Mountain Goat Software, LLC Διαδοχική έναντι επικαλυπτόμενης ανάπτυξης Απαιτήσεις Σχεδίαση Κώδικας Έλεγχος Αντί για ένα κάθε φορά... ...στο Scrum κάνουν λίγο από το καθένα όλη την ώρα Πηγή: “The New Product Development Game” by Takeuchi and Nonaka. Business Review, January 1986. Mountain Goat Harvard Software, LLC Δεν υπάρχουν αλλαγές κατά τη διάρκεια ενός sprint Αλλαγή • Σχεδιάστε την διάρκεια του sprint με βάση τον χρόνο που θέλετε να δεσμευτείτε ότι δεν θα υπάρξουν αλλαγές. Mountain Goat Software, LLC Πλαίσιο Scrum Ρόλοι •Product owner •Scrum Master •Ομάδα Εκτελέσιμα •Sprint planning (Σχεδιασμός) •Sprint review (Επιθεώρηση) •Sprint retrospective (Αναθεώρηση) •Daily scrum meeting (Συναντήσεις) Έξοδοι •Product backlog •Sprint backlog •Burndown charts Mountain Goat Software, LLC Πλαίσιο Scrum Ρόλοι •Product owner •ScrumMaster •Ομάδα Εκτελέσιμα •Sprint planning •Sprint review •Sprint retrospective •Daily scrum meeting Έξοδοι •Product backlog •Sprint backlog •Burndown charts Mountain Goat Software, LLC Ο Product owner • • Ορίζει τα χαρακτηριστικά του προϊόντος • Είναι υπεύθυνος για την κερδοφορία του προϊόντος (ROI) • • • Αποφασίζει την ημερομηνία κυκλοφορίας και το περιεχόμενο Δίνει προτεραιότητα στα χαρακτηριστικά ανάλογα με την αξία στην αγορά Ρυθμίζει τα χαρακτηριστικά και την προτεραιότητα σε κάθε επανάληψη, ανάλογα με τις ανάγκες Αποδέχεται ή απορρίπτει τα αποτελέσματα της εργασίας Mountain Goat Software, LLC Ο ScrumMaster • • • • Εκπροσωπεί τη διαχείριση του έργου • Ενεργοποιεί τη στενή συνεργασία όλων των ρόλων και λειτουργιών • Θωρακίζει την ομάδα από εξωτερικές παρεμβολές Υπεύθυνος για τη θέσπιση αξιών και πρακτικών scrum Αφαιρεί εμπόδια Βεβαιώνει ότι η ομάδα είναι πλήρως λειτουργική και παραγωγική Mountain Goat Software, LLC Η ομάδα • • • Τυπικά 5-9 άτομα Διασταυρωμένης λειτουργίας: • Προγραμματιστές, ελεγκτές, σχεδιαστές έμπειροι στην χρήση εφαρμογών, κλπ. Μέλη αποκλειστικής απασχόλησης • Ίσως κάποιες εξαιρέσεις (πχ., ο database administrator) Mountain Goat Software, LLC Η ομάδα • Οι ομάδες είναι αυτο-οργανωμένες • Ιδανικά χωρίς τίτλους • Η συμμετοχή πρέπει να αλλάζει μόνο μεταξύ των sprints Mountain Goat Software, LLC Πλαίσιο Scrum Ρόλοι •Product owner •ScrumMaster •Ομάδα Εκτελέσιμα •Sprint planning •Sprint review •Sprint retrospective •Daily scrum meeting Έξοδοι •Product backlog •Sprint backlog •Burndown charts Mountain Goat Software, LLC Ικανότητα της ομάδας Product backlog Συνάντηση σχεδίασης Sprint Ιεράρχηση Sprint • • Επιχειρημ. συνθήκες ΣτόχοςS print Σχεδίαση Sprint • Τρέχων προϊόν Ανάλυση και αξιολόγηση του product backlog Επιλογή στόχου του sprint • Τεχνολογία • Mountain Goat Software, LLC Αποφασίστε πώς θα επιτευχθεί ο στόχος του sprint (design) Δημιουργήστε το sprint backlog (tasks) από τα στοιχεία του product backlog (user stories / features) Εκτιμήστε το sprint backlog σε ώρες Sprint backlog Σχεδίαση Sprint • • • Η ομάδα επιλέγει τα στοιχεία, από το ανεκτέλεστο υπόλοιπο του προϊόντος, για τα οποία μπορεί να δεσμευτεί για ολοκλήρωση Δημιουργείται το ανεκτέλεστο υπόλοιπο του sprint (backlog) • • Εντοπίζονται τα tasks και εκτιμάται η διάρκειά τους (1-16 ώρες) Συλλογικά, όχι μόνο από τον ScrumMaster Εξέταση του σχεδιασμού σε υψηλό επίπεδο Ως αρμόδιος για το σχεδιασμό διακοπών, θέλω να δω φωτογραφίες από τα ξενοδοχεία. Mountain Goat Software, LLC Κωδικοποίηση της μέσης βαθμίδας (8 ώρες) Κωδικοποίηση του user interface (4) Πρόγραμμα ελέγχου (4) Κωδικοποίηση κλάσεων (6) Ενημέρωση δοκιμών απόδοσης(4) Το καθημερινό scrum • • • Παράμετροι • • • Καθημερινά 15-λεπτά Στο πόδι Όχι για επίλυση προβλημάτων • • Καλείται όλος ο κόσμος Μόνο τα μέλη της ομάδας, ο ScrumMaster, και ο product owner, μπορούν να μιλήσουν Βοηθά στην αποφυγή άλλων περιττών συναντήσεων Mountain Goat Software, LLC Ο καθένας απαντά σε 3 ερωτήσεις Τι έκανες χθες? Τι θα κάνεις σήμερα? Υπάρχει κάτι στο δρόμο σου? 1 2 3 • Αυτά δεν περιγράφουν κατάσταση έργου προς τον ScrumMaster • Είναι δεσμεύσεις μπροστά στους ομότιμους Mountain Goat Software, LLC Απολογισμός sprint (review) • • • • • Η ομάδα παρουσιάζει αυτό που έχει επιτευχθεί κατά τη διάρκεια του sprint Συνήθως παίρνει τη μορφή ενός demo νέων χαρακτηριστικών ή υποκείμενης αρχιτεκτονικής Άτυπη • • 2-ώρες προετοιμασία Χωρίς διαφάνειες Συμμετέχει όλη η ομάδα Καλείται όλος ο κόσμος Mountain Goat Software, LLC Ανακεφαλαίωση Sprint (retrospective) • Περιοδικά ρίξτε μια ματιά σε αυτό που • • • επιτεύχθηκε και δεν λειτουργεί Τυπικά 15–30 λεπτά Κάντε το μετά από κάθε sprint Συμμετέχει όλη η ομάδα • • • • ScrumMaster Product owner Ομάδα Ενδεχομένως οι πελάτες και άλλοι Mountain Goat Software, LLC Έναρξη / Σταμάτημα / Συνέχιση • Όλη η ομάδα συλλέγει πληροφορίες και αναλύει τι θα ήθελε να: Αρχίσει να κάνει Σταματήσει να κάνει Αυτό είναι απλά ένας από τους πολλούς τρόπους για να γίνει μια ανακεφαλαίωση sprint Mountain Goat Software, LLC Συνεχίσει να κάνει Πλαίσιο Scrum Ρόλοι •Product owner •ScrumMaster •Ομάδα Εκτελέσιμα •Sprint planning •Sprint review •Sprint retrospective •Daily scrum meeting Έξοδοι •Product backlog •Sprint backlog •Burndown charts Mountain Goat Software, LLC Product backlog (ανεκτέλεστο υπόλοιπο προϊόντος) • Οι απαιτήσεις • Μια λίστα όλων των • • Αυτό είναι το ανεκτέλεστο υπόλοιπο προϊόντος Mountain Goat Software, LLC • επιθυμητών εργασιών για το έργο Στην ιδανική περίπτωση εκφρασμένες έτσι ώστε κάθε στοιχείο να έχει αξία για τους χρήστες ή πελάτες του προϊόντος Ιεραρχημένες από τον ιδιοκτήτη του προϊόντος Ιεραρχημένες κατά την έναρξη κάθε sprint Δείγμα product backlog Στοιχείο Backlog Εκτίμηση Άδεια σε επισκέπτη να κάνει κράτηση 3 Ακύρωση κράτησης από επισκέπτη 5 Αλλαγή ημερομηνιών κράτησης από επισκέπτη Εκτέλεση της αναφοράς (Έσοδα ανά διαθέσιμο δωμάτιο), από υπάλληλο 3 8 Βελτίωση χειρισμού εξαιρέσεων 8 ... 30 ... 50 Mountain Goat Software, LLC Ο Στόχος του sprint • Μια σύντομη αναφορά ως προς το στόχο που θα επικεντρωθεί η δουλειά κατά τη διάρκεια του Sprint Επιστήμες της Ζωής Εφαρμογές Database Κάντε την εφαρμογή τρέχει σε SQL Server πλέον της Oracle. Υποστήριξη χαρακτηριστικών αναγκαίων για πληθυσμιακές μελέτες γενετικής Χρηματοπιστωτικές υπηρεσίες Υποστήριξη περισσότερο σε τεχνικούς δείκτες, με ροή δεδομένων πραγματικού χρόνου. Mountain Goat Software, LLC Διαχείριση του ανεκτέλεστου υπόλοιπου sprint (backlog) • Τα άτομα δεσμεύονται για εργασία της επιλογής τους • • Οι εργασίες δεν εκχωρούνται ποτέ Η εκτιμώμενη ανεκτέλεστη εργασία, ενημερώνεται καθημερινά Mountain Goat Software, LLC Διαχείριση του ανεκτέλεστου υπόλοιπου sprint (backlog) • Κάθε μέλος της ομάδας μπορεί να προσθέσει, να διαγράψει ή να αλλάξει το ανεκτέλεστο υπόλοιπο sprint • • Δουλέψτε για την ανάδειξη του sprint • Ενημερώστε την υπολειπόμενη ανεκτέλεστη εργασία όποτε έχετε καλύτερη πληροφόρηση Εάν η εργασία δεν είναι σαφής, καθορίστε ένα στοιχείο στο sprint backlog, με ένα μεγαλύτερο χρονικό διάστημα και διασπάστε το αργότερα Mountain Goat Software, LLC Ανεκτέλεστο υπόλοιπο sprint (backlog) Εργασίες Tasks Δε Τρ Τε 8 4 8 Κώδικας μέσου επιπέδου 16 12 10 4 Έλεγχος μέσου επιπέδου 8 16 16 11 8 8 8 8 8 8 4 Κώδικας για user interface Συγγραφή online help Συγγραφή κλάσης Προσθήκη error logging Mountain Goat Software, LLC Πε Πα 12 8 Ώρες Διάγραμμα sprint burndown Mountain Goat Software, LLC Εργασίες Tasks Κώδικας για user interface Κώδικας μέσου επιπέδου Έλεγχος μέσου επιπέδου Συγγραφή online help Δε Τρ 8 16 8 12 4 12 16 Τε 8 10 16 Πε Πα 7 11 8 50 Ώρες 40 30 20 10 0 Δε Mountain Goat Software, LLC Τρ Τε Πε Πα Κλιμάκωση (Scalability) • • Τυπικό μέγεθος ομάδας 7 ± 2 άτομα • Παράγοντες κλιμάκωσης • • • • Η επεκτασιμότητα προκύπτει από ομάδες της ομάδας • Τύπος εφαρμογής Μέγεθος ομάδας Διασπορά ομάδας Διάρκεια έργου Η Scrum έχει χρησιμοποιηθεί σε πολλαπλάσιο του 500+ άτομα έργου Mountain Goat Software, LLC Κλιμάκωση μέσω Scrum των scrums Mountain Goat Software, LLC Scrum των scrums των scrums Mountain Goat Software, LLC Μετά από εδώ • • • • www.mountaingoatsoftware.com/scrum www.scrumalliance.org www.controlchaos.com [email protected] Mountain Goat Software, LLC Βιβλιογραφία Scrum • • • • Agile and Iterative Development: A Manager’s Guide by Craig Larman Agile Estimating and Planning by Mike Cohn Agile Project Management with Scrum by Ken Schwaber Agile Retrospectives by Esther Derby and Diana Larsen Mountain Goat Software, LLC Βιβλιογραφία Scrum • • • • • Agile Software Development Ecosystems by Jim Highsmith Agile Software Development with Scrum by Ken Schwaber and Mike Beedle Scrum and The Enterprise by Ken Schwaber Succeeding with Agile by Mike Cohn User Stories Applied for Agile Software Development by Mike Cohn Mountain Goat Software, LLC Προειδοποίηση Copyright • • • • Είστε ελεύθεροι: • • Να μοιραστείτε, να αντιγράψετε, να διανείμετε και να μεταδώσετε την παρούσα εργασία Να αναμείξετε και να προσαρμόσετε την παρούσα εργασία Υπό τις παρακάτω συνθήκες • Προσδιορισμός. Θα πρέπει να αποδώσετε το έργο με τον τρόπο που ορίζεται από το δημιουργό ή τον παρέχοντα την άδεια (χωρίς όμως αυτό να σημαίνει, με οποιονδήποτε τρόπο, ότι εγκρίνουν εσάς ή τον τρόπο χρήσης του έργου από εσάς). Καμία διάταξη της παρούσας άδειας δε μειώνει ή περιορίζει τα ηθικά δικαιώματα του συγγραφέα. Για περισσότερες πληροφορίες δείτε http://creativecommons.org/licenses/by/3.0/ Mountain Goat Software, LLC Στοιχεία επικοινωνίας Παρουσίαση από: Mike Cohn [email protected] www.mountaingoatsoftware.com (720) 890-6110 (γραφείο) Mountain Goat Software, LLC