Εισαγωγή στην Scrum Mountain Goat Software, LLC Εισαγωγή στην Scrum Παρουσίαση Mountain Goat Software, LLC Χάνουμε την σκυτάλη “Η προσέγγιση της ...

Download Report

Transcript Εισαγωγή στην 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