Ομάδες TEAMS Δρ. Μαρία Ι. Ανδρέου. Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 2 Περιεχόμενα Οργάνωση Ομάδας (Team organization) Democratic team approach.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Γραφήματα & Επίπεδα Γραφήματα
Advertisements

«Κυβερνητικές προτάσεις για το Ασφαλιστικό» © VPRC – Μάρτιος / Δ.1 © VPRC – Μάρτιος 2008 ΚΥΒΕΡΝΗΤΙΚΕΣ ΠΡΟΤΑΣΕΙΣ ΓΙΑ ΤΟ ΑΣΦΑΛΙΣΤΙΚΟ.
ΑΠΟΤΙΜΗΣΗ ΑΠΟΔΟΣΗΣ ΔΙΚΤΥΩΝ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙΟΥΝ ΑΞΙΟΠΙΣΤΑ ΠΡΩΤΟΚΟΛΛΑ ΜΕΤΑΦΟΡΑΣ ΚΑΙ ΑΞΙΟΠΙΣΤΑ ΠΡΩΤΟΚΟΛΛΑ ΣΥΝΔΕΣΗΣ Ιωάννης Κόμνιος Μεταπτυχιακή Διατριβή Τμήμα.
Ερωτηματολόγιο Συλλογής Απαιτήσεων Εφαρμογών Υψηλών Επιδόσεων
Μάρτιος 2011 Βαρόμετρο ΕΒΕΘ - Καταναλωτές. “Η καθιέρωση ενός αξιόπιστου εργαλείου καταγραφής του οικονομικού, επιχειρηματικού και κοινωνικού γίγνεσθαι.
Μετά από έρευνα που διενήργησε εταιρεία ερευνών, διαπιστώθηκε πως στην εταιρεία μας οι εργαζόμενοι χρησιμοποιούν μεταξύ τους ένα λεξιλόγιο κάπως ανάρμοστο.
45 μαθήματα ζωής Norvegija – Šiaurės pašvaistė Music: snowdream
Πρωτογενής έρευνα Hi5, μία μόδα για νέους;. Μεθοδολογία - εργαλεία Η έρευνα διενεργήθηκε με την μέθοδο της συλλογής ερωτηματολογίων, τα οποία και συμπληρώνονταν.
Κεφάλαιο 8 Πειρατεία Λογισμικού Πληροφορική Α’ Γυμνασίου Κεφάλαιο 8.
ΠΡΟΣΒΑΣΙΜΟΣ ΤΟΥΡΙΣΜΟΣ IMIC 2 Φεβρουάριος 2006 Dr. Άρης Ίκκος, ISHC
Αλέξανδρος Σαχινίδης, ΜΒΑ, Ph.D. ΙΟΥΝΙΟΣ 2009
Γραφήματα & Επίπεδα Γραφήματα
ΜοντελοποίησηΈργα ΜαθήματαΑξιολόγηση Αναστοχασμος Μαθήματα.
Επιμέλεια: Διογένης Κοσμόπουλος 2ο ΓΕΛ Αργυρούπολης.
HTML.
Ανάλυση Πολλαπλής Παλινδρόμησης
Διαχείριση Έργου Οργάνωση, σχεδιασμός και προγραμματισμός έργων ανάπτυξης λογισμικού.
Διαδικασία Προσέγγισης της Διαχείρισης Έργου
της Μαρίας-Ζωής Φουντοπούλου
Τα στοιχειώδη περί γεωδαιτικών υπολογισμών
1 ΠΡΟΤΑΣΕΙΣ ΓΙΑ ΤΗΝ ΟΡΓΑΝΩΤΙΚΗ ΔΟΜΗ ΤΗΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΔΙΕΡΕΥΝΗΣΗΣ ΤΗΣ ΦΥΜΑΤΙΩΣΗΣ ΣΕ ΕΘΝΙΚΟ ΕΠΙΠΕΔΟ Ευάγγελος Μαρίνης Επίτιμος Διευθυντής Μικροβιολογικού.
Προγραμματισμός PASCAL Πληροφορική Γ' Λυκείου μέρος γ
ΕΛΙΑ-ΕΛΑΙΟΛΑΔΟ-ΜΕΣΟΓΕΙΑΚΗ ΔΙΑΤΡΟΦΗ
Page  1 Ο.Παλιάτσου Γαλλική Επανάσταση 1 ο Γυμνάσιο Φιλιππιάδας.
Ανάλυση του λευκού φωτός και χρώματα
© GfK 2012 | Title of presentation | DD. Month
-17 Προσδοκίες οικονομικής ανάπτυξης στην Ευρώπη Σεπτέμβριος 2013 Δείκτης > +20 Δείκτης 0 a +20 Δείκτης 0 a -20 Δείκτης < -20 Σύνολο στην Ευρωπαϊκή Ένωση:
+21 Προσδοκίες οικονομικής ανάπτυξης στην Ευρώπη Δεκέμβριος 2013 Δείκτης > +20 Δείκτης 0 να +20 Δείκτης 0 να -20 Δείκτης < -20 Σύνολο στην Ευρωπαϊκή Ένωση:
1 4 Square Questions B A D C Κοιτάξτε προσεκτικά το διάγραμμα. Θα σας κάνω 4 ερωτήσεις γι’ αυτό το τετράγωνο. ΕΤΟΙΜΟΙ;
Βαρόμετρο ΕΒΕΘ - Καταναλωτές Σεπτέμβριος “Η καθιέρωση ενός αξιόπιστου εργαλείου καταγραφής του οικονομικού, επιχειρηματικού και κοινωνικού γίγνεσθαι.
Κεφάλαιο 2ο Πεπερασμένα αυτόματα.
Αξιολόγηση ΜοντελοποίησηΈργα ΜαθήματαΑξιολόγηση Αναστοχασμός.
1 AYTOΣ Ο ΠΛΑΝΗΤΗΣ ΕΙΝΑΙ ΠΟΛΥ ΕΝΔΙΑΦΕΡΩΝ ΤΟΠΟΣ ΓΙΑ ΝΑ ΖΕΙ ΚΑΝΕΙΣ….
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
ΙΣΟΛΟΓΙΣΜΟΣ ΒΑΣΕΙ Δ.Λ.Π. (ΕΝΑΡΞΗΣ)
Εξάσκηση στην προπαίδεια
1 Θεματική Ενότητα Γραφήματα & Επίπεδα Γραφήματα.
Αποκεντρωμένη Διοίκηση Μακεδονίας Θράκης ∆ιαχείριση έργων επίβλεψης µε σύγχρονα µέσα και επικοινωνία C2G, B2G, G2G Γενική Δ/νση Εσωτερικής Λειτουργίας.
Στοιχεία Διοίκησης Επιχειρήσεων
Η επιρροή του χώρου εργασίας των σχολικών τάξεων στη μάθηση
Βαρόμετρο ΕΒΕΘ Μάρτιος “Η καθιέρωση ενός αξιόπιστου εργαλείου καταγραφής του οικονομικού, επιχειρηματικού και κοινωνικού γίγνεσθαι του Νομού Θεσσαλονίκης”
1/5/ ΧΡΗΣΕΙΣ ΤΗΣ ΗΛΙΑΚΗΣ ΑΝΤΙΝΟΒΟΛΙΑΣ 1/5/ (πηγή: HELIOAKMI).
2006 GfK Praha CORRUPTION CLIMATE IN EUROPE % % % %0 - 10% % % % % % ΚΛΙΜΑ ΔΙΑΦΘΟΡΑΣ Η.
Βαρόμετρο ΕΒΕΘ Μάρτιος “Η καθιέρωση ενός αξιόπιστου εργαλείου καταγραφής του οικονομικού, επιχειρηματικού και κοινωνικού γίγνεσθαι του Νομού Θεσσαλονίκης”
13ο Πανελλήνιο Συνέδριο Ακαδημαϊκών Βιβλιοθηκών – Κέρκυρα Οκτωβρίου 2004 Το σύστημα COINE για την προβολή της πολιτιστικής κληρονομιάς και την υποστήριξη.
ΚΕΦΑΛΑΙΟ 3 Περιγραφική Στατιστική
Προγραμματισμός ΙΙ Διάλεξη #6: Απλές Δομές Ελέγχου Δρ. Νικ. Λιόλιος.
6 MRB, Συλλογή στοιχείων: 24 Νοεμβρίου έως 5 Δεκεμβρίου 2005 Εξωτερική Πολιτική: Τουρκία – Κυπριακό – ΠΓΔΜ - Κοσσυφοπέδιο 1 6 ΕΞΩΤΕΡΙΚΗ ΠΟΛΙΤΙΚΗ ( Τουρκία.
Βαρόμετρο ΕΒΕΘ Μάρτιος “Η καθιέρωση ενός αξιόπιστου εργαλείου καταγραφής του οικονομικού, επιχειρηματικού και κοινωνικού γίγνεσθαι του Νομού Θεσσαλονίκης”
1 Α. Βαφειάδης Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ.Ε.Ι Θεσσαλονίκης Μάθημα Προηγμένες Αρχιτεκτονικές Υπολογιστών Κεφαλαίο Τρίτο Συστήματα.
Λ. Κηφισίας 3, Μαρούσιτηλ.: τηλ.: ΧΟΡΗΓΟΣ: Μέλος του δικτύου :
Εργαστήριο Δασικής Διαχειριστικής & Τηλεπισκόπησης Ασκήσεις Δασικής Διαχειριστικής Ι Διδάσκων Δημήτριος Καραμανώλης, Επίκουρος Καθηγητής Άσκηση 4.
Δομές Δεδομένων 1 Στοίβα. Δομές Δεδομένων 2 Στοίβα (stack)  Δομή τύπου LIFO: Last In - First Out (τελευταία εισαγωγή – πρώτη εξαγωγή)  Περιορισμένος.
Μορφοποίηση παλμων.
Dr. Holbert Νικ. Α. Τσολίγκας Χρήστος Μανασής
Τεχνολογία ΛογισμικούSlide 1 Αλγεβρική Εξειδίκευση u Καθορισμός τύπων αφαίρεσης σε όρους σχέσεων μεταξύ τύπων λειτουργιών.
Προφορική (Απευθείας ) Επικοινωνία
Hospitality Skills for Tourism Hospitality and Entertainment Management Lecture 3 Christos Dimas Lecturer.
Μοντέλα Συστημάτων Παρουσιάσεις των συστημάτων των οποίων οι απαιτήσεις αναλύονται.
Προγραμματισμός ΙΙ Διάλεξη #5: Εντολές Ανάθεσης Εντολές Συνθήκης Δρ. Νικ. Λιόλιος.
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Κληρονομικότητα.
Ανάπτυξη Πρωτοτύπου Λογισμικού
Βαρόμετρο ΕΒΕΘ - Καταναλωτές Μάρτιος “Η καθιέρωση ενός αξιόπιστου εργαλείου καταγραφής του οικονομικού, επιχειρηματικού και κοινωνικού γίγνεσθαι.
1 Νέα Θεωρία Μεγέθυνσης Ενδογενής μεγέθυνση. 2 Συνάρτηση παραγωγής προϊόντος Υ t = Y(K, L, A) Y t = [(1-α k )·K t ] α · [(1-α L )·A t ·L t ] 1-α 0
Διαχείριση Ψηφιακών Πνευματικών Δικαιωμάτων Ηλεκτρονική Δημοσίευση Στέλλα Λάμπουρα Ιούνιος 2004.
+19 Δεκέμβριος 2014 Δείκτης > +20 Δείκτης 0 έως +20 Δείκτης 0 έως -20 Δείκτης < -20 Συνολικά της ΕΕ: +5 Δείκτης > +20 Δείκτης 0 έως +20 Δείκτης 0 έως -20.
ΤΑ ΔΟΝΤΙΑ ΜΑΣ.
Βαρόμετρο ΕΒΕΘ Σεπτέμβριος “Η καθιέρωση ενός αξιόπιστου εργαλείου καταγραφής του οικονομικού, επιχειρηματικού και κοινωνικού γίγνεσθαι του Νομού.
Μεταγράφημα παρουσίασης:

Ομάδες TEAMS Δρ. Μαρία Ι. Ανδρέου

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 2 Περιεχόμενα Οργάνωση Ομάδας (Team organization) Democratic team approach Classical chief programmer team approach Beyond chief programmer and democratic teams Synchronize-and-stabilize teams Extreme programming teams People capability maturity model Επιλογή κατάλληλου τρόπου οργάνωσης ομάδας

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 3 Team Organization Έστω ότι ένα προϊών πρέπει να ολοκληρωθεί με 3 μήνες, αλλά χρειάζεται 1 person-year of programming Λύση:  Αν ένας programmer μπορεί να γράψει το code για αυτό το προϊών σε 1 year, τότε τέσσερις programmers μπορούν να το κάνουν σε 3 μήνες Nonsense!  Τέσσερις programmers θα χρειαστούν πολύ πιθανόν κοντά στον ένα χρόνο για να τελειώσουν αυτό το έργο  Η ποιότητα του προϊόντος που θα προκύψει είναι συχνά χειρότερη από αυτή που θα είχε το προϊών αν έγραφε το code ένας programmer

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 4 Διαμοιρασμός Εργασιών (Task Sharing) Αν ένας αγρότης μπορεί να φυτέψει ένα στρέμμα φράουλες σε 10 μέρες, τότε δέκα αγρότες μπορούν να φυτέψουν την ίδια έκταση σε 1 μέρα Ένας ελέφαντας μπορεί να γεννήσει ένα ελεφαντάκι σε 22 μήνες, αλλά 22 ελέφαντες ΔΕΝ μπορούν να αναπαράγουν ένα ελεφαντάκι σε 1 μήνα

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 5 Task Sharing (συνέχ.) Σε αντίθεση με την διαδικασία αναπαραγωγής των ελεφάντων, ΕΊΝΑΙ πιθανό να διαμοιράσουμε την εργασία της κωδικοποίησης ανάμεσα στα μέλη μιας ομάδας. Σε αντίθεση επίσης με την διαδικασία φυτέματος φραουλών, τα μέλη της ομάδας πρέπει να έχουν αλληλεπίδραση με ένα ουσιαστικό και αποδοτικό τρόπο

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 6 Οργάνωση Ομάδας Κωδικοποίησης (Programming Team Organization) Παράδειγμα:  Έστω ότι η Sheila και ο Harry code δυο modules, έστω τα m1 και m2 Τι μπορεί να πάει στραβά;  Από κοινού η Sheila και ο Harry ίσως κωδικοποιήσουν το m1, και να αγνοήσουν το m2  Η Sheila ίσως κωδικοποιήσει το m1 και ο Harry το m2. Όταν το m1 calls m2 του περνά 4 parameters, αλλά το m2 χρειάζεται 5 parameters (διαφορετικός αριθμός παραμέτρων)  ή, η σειρά των παραμέτρων στα m1 και m2 μπορεί να είναι διαφορετική  ή, η σειρά μπορεί να είναι η ίδια, αλλά the data types μπορεί να διαφέρουν λίγο

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 7 Programming Team Organization (συνέχ.) Αυτό δεν έχει να κάνει καθόλου με τεχνικές ικανότητες ή τεχνικές αρμοδιότητες  Η οργάνωση ομάδων είναι διοικητικό θέμα (managerial issue)

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 8 Προβλήματα Επικοινωνίας (Communications Problems) Παράδειγμα προθεσμία για την παράδοση του (deadline) πλησιάζει και το code δεν είναι σχεδόν  Υπάρχουν τρία κανάλια επικοινωνίας ανάμεσα σε τρεις programmers που δουλεύουν σε ένα project. Έστω ότι η προθεσμία για την παράδοση του (deadline) πλησιάζει και το code δεν είναι σχεδόν έτοιμο “Προφανής” λύση:  Προσθήκη ενός τέταρτου programmer στην ομάδα

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 9 Communications Problems (συνέχ.) Όμως οι άλλοι τρεις πρέπει να του εξηγήσουν με λεπτομέρεια  Τι πρέπει να γίνει  Τι δεν έχει γίνει ακόμα Brooks’s Law  Προσθήκη νέου programming personnel σε μια ομάδα όταν το product is late έχει σαν αποτέλεσμα να κάνει το product να προχωρά ακόμα πιο αργά

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 10 Team Organization Ομάδες χρησιμοποιούνται σε όλη την διαδικασία παραγωγής software  Και ιδικά κατά την διάρκεια του implementation  Θα συζητήσουμε θέματα σε σχέση με programming teams. Παρόμοια με αυτά ισχύουν σε όλες τις ομάδες σε οποιαδήποτε άλλη φάση της ανάπτυξης του software Δυο ακραίες (extreme) προσεγγίσεις στην οργάνωση ομάδας  Δημοκρατικές Ομάδες (Democratic teams) (Weinberg, 1971)  Ομάδες (teams) με Chief programmer (Brooks, 1971; Baker, 1972)

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 11 Democratic Team Approach Basic underlying concept — egoless programming Programmers μπορεί να είναι προσκολλημένοι στον κώδικα τους μετά τον εαυτό τους  Μπορεί να ονομάζουν τα modules που γράφουν μετά τον εαυτό τους  Βλέπουν τα modules τους σαν επέκταση του εαυτού τους

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 12 Democratic Team Approach (συνέχ.) Αν ένας programmer βλέπει ένα module σαν επέκταση του εγώ (ego) του, αυτός/αυτή ΔΕΝ θα βρει όλα τα errors στο code “του”/“της”  Αν υπάρχει error, το ονομάζει bug   Το fault θα μπορούσε να προληφθεί αν το code φυλαγόταν έναντι των “bug”  “Shoo-Bug” aerosol spray

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 13 Democratic Team Approach (συνέχ.) Προτεινόμενη λύση (Proposed Solution) Egoless programming  Επαναδομήσει του κοινωνικού περιβάλλοντος (Restructure the social environment)  Restructure programmers’ values  Ενθάρρυνση team members να βρίσκουν faults στο code  ένα fault πρέπει να θεωρείται φυσικό και αποδεχτό γεγονός  The team σαν σύνολο δημιουργεί ήθος (ethos), ταυτότητα στην ομάδα (group)  Τα Modules θα “ανήκουν” στο team σαν σύνολο  ένα group μέχρι 10 egoless programmers συνιστά μια δημοκρατική ομάδα (democratic team)

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 14 Δυσκολίες στην Democratic Team Approach Η διοίκηση (Management) μπορεί να έχει δυσκολίες  Democratic teams είναι δύσκολο να εισαχθούν σε ένα μη δημοκρατικό (undemocratic) περιβάλλον (environment)

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 15 Προτερήματα της Democratic Team Approach Democratic teams είναι πολύ παραγωγικές Δουλεύουν καλύτερα σε δύσκολα προβλήματα Λειτουργούν καλά σε περιβάλλοντα έρευνας (research environment) Πρόβλημα:  Democratic teams προκύπτουν αυτοβούλως

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 16 Classical Chief Programmer Team Approach Έστω μια ομάδα 6- ατόμων  Δεκαπέντε 2-person κανάλια επικοινωνίας  Συνολικά ο αριθμός των καναλιών επικοινωνίας με 2-, 3-, 4-, 5-, και 6- άτομα είναι 57  Αυτή η ομάδα ΔΕΝ μπορεί να κάνει δουλεία 6 person- months σε 1 μήνα

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 17 Classical Chief Programmer Team έξι programmers, αλλά μόνο 5 γραμμές επικοινωνίας

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 18 Classical Chief Programmer Team (συνέχ.) Η βασική ιδέα πίσω από αυτή την περίπτωση  Αναλογία: ο αρχηγός μιας χειρουργικής επέμβασης (chief surgeon) κατευθύνει την επέμβαση και βοηθείται από Άλλους χειρουργούς Αναισθησιολόγους Νοσοκόμες Άλλους ιδικούς, όπως καρδιολόγους και νευρολόγους Δυο σημαντικές πτυχές  Ειδικότητες (Specialization)  Ιεραρχία (Hierarchy)

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 19 Classical Chief Programmer Team (συνέχ.) Ο Chief programmer  Επιτυχημένος manager ΚΑΙ highly skilled programmer  Κάνει το architectural design  Κατανέμει το coding ανάμεσα στα team members  Γράφει the critical (or complex) sections of the code  Διαχειρίζεται τα θέματα επικοινωνίας  Εξετάζει την δουλειά των άλλων team members  Είναι προσωπικά υπεύθυνος για κάθε line of code

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 20 Classical Chief Programmer Team (συνέχ.) Ο Back-up programmer  Απαραίτητος μόνο επειδή ο chief programmer είναι άνθρωπος  Ο back-up programmer πρέπει να είναι με κάθε τρόπο τόσο ικανός όσο και ο chief programmer, και  Πρέπει να ξέρει για το project όσα και ο chief programmer  κάνει black-box test case planning και άλλες εργασίες που είναι ανεξάρτητες του design process

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 21 Classical Chief Programmer Team (συνέχ.) Η Programming secretary  Ένα highly skilled, well paid, central member of the chief programmer team  Έχει ευθύνη να διατηρεί the program production library (documentation of the project), που περιλαμβάνει: Source code listings JCL Test data  Οι Programmers δίνουν το source code τους στην secretary η οποία είναι υπεύθυνη να Τον μετατρέψει σε machine-readable form Compilation, linking, loading, execution, and running test cases (1971, remember!)

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 22 Classical Chief Programmer Team (συνέχ.) Programmers  Δεν κάνουν τίποτα άλλο παρά program  Όλες οι άλλες πτυχές διαχειρίζονται από την programming secretary

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 23 The New York Times Project Chief programmer team concept  First used in 1971  By IBM  To automate the clippings data bank (“morgue“) of the New York Times Chief programmer—F. Terry Baker

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 24 The New York Times Project (συνέχ.) 83,000 source lines of code (LOC) γράφτηκαν σε 22 calendar months, και αντιπροσώπευαν 11 person-years Μετά τον πρώτο χρόνο, μόνο το file maintenance system είχε γραφτεί (12,000 LOC) Το περισσότερο code γράφτηκε τους τελευταίους 6 μήνες 21 faults εντοπίσθηκαν τις πρώτες 5 βδομάδες του acceptance testing

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 25 The New York Times Project (συνέχ.) 25 επιπλέον faults εντοπίσθηκαν τον πρώτο χρόνο της λειτουργίας του Principal programmers κατά μέσο όρο κάνουν ένα detected fault και 10,000 LOC το χρόνο το file maintenance system, παραδόθηκε 1 week μετά το τέλος του coding, λειτουργούσε 20 months πριν συμβεί a single failure Σχεδόν μισά από τα subprograms (συχνά 200 to 400 lines of PL/I) διορθώθηκαν στο first compilation

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 26 The New York Times Project (συνέχ.) Όμως, μετά από αυτή την φανταστική επιτυχία, ΚΑΜΙΑ ΑΛΛΗ συγκρίσιμη με αυτή ΔΕΝ έχει συμβεί για το chief programmer team concept

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 27 Γιατί το NYT Project είχε τέτοια επιτυχία; Prestige project for IBM  Πρώτη πραγματική προσπάθεια για την PL/I (αναπτύχθηκε από την IBM)  IBM, έχει πληθώρα software experts, και χρησιμοποίησε τους καλύτερους Very strong technical backup  PL/I compiler writers βοηθούσαν τους programmers  JCL experts assisted with the job control language

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 28 Γιατί το NYT Project είχε τέτοια επιτυχία; (συνέχ.) F. Terry Baker  Superprogrammer  Superb manager and leader  His skills, enthusiasm, and personality “carried” the project Προτερήματα της chief programmer team approach  δουλεύει  Πληθώρα επιτυχών projects έχουν χρησιμοποιήσει παραλλαγές του CPT

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 29 Λόγοι για τους οποίους το Classical CPT ΔΕΝ είναι πρακτικό Ο chief programmer πρέπει να είναι highly skilled programmer ΚΑΙ επιτυχημένος manager Υπάρχουν πολλοί highly skilled programmers Υπάρχουν πολλοί επιτυχημένοι managers Οι ικανότητες που χρειάζονται για ένα highly skilled programmer δεν είναι συνηθισμένο να τις έχει ένας επιτυχημένος manager, και αντίθετα

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 30 Λόγοι για τους οποίους το Classical CPT ΔΕΝ είναι πρακτικό (συνέχ.) Ο back-up programmer πρέπει να είναι τόσο καλός όσο ο chief programmer  Αλλά πρέπει να πάρει a back seat (και πιο μικρό μισθό) περιμένοντας κάτι να συμβεί στον chief programmer  Top programmers, top managers δεν θα το έκαναν αυτό η programming secretary δεν κάνει τίποτα άλλο από γραφειάκι δουλεία (paperwork) όλη μέρα  Software professionals μισούν την γραφειάκι δουλεία Το Classical CPT δεν είναι πρακτικό, δηλ. Δεν εφαρμόζεται στην πράξη

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 31 Πέραν από τις CP and Democratic Teams Χρειαζόμαστε τρόπους να οργανώνουμε ομάδες που να  Κάνουν χρήση των προτερημάτων των democratic teams και των chief programmer teams, και  Να μπορούν να διαχειρίζονται ομάδες των 20 (ή των 120) programmers Το πλεονέκτημα των democratic teams  Θετική διάθεση στην εύρεση faults Χρήση και του CPT με code walkthroughs or επιθεώρηση

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 32 Πέραν από τις CP and Democratic Teams (συνέχ.) Ενδεχόμενος κρυφός κίνδυνος Ο chief programmer είναι προσωπικά υπεύθυνος για κάθε line of code  Πρέπει λοιπόν να λαμβάνει μέρος στις αξιολογήσεις (reviews!) Ο chief programmer είναι επίσης team manager  Γιαυτό ΔΕΝ πρέπει να λαμβάνει μέρος στα reviews!

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 33 Πέραν από τις CP and Democratic Teams (συνέχ.) Λύση  Ελάττωση του managerial ρόλου του chief programmer

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 34 Πέραν από τις CP and Democratic Teams (συνέχ.) Είναι πιο εύκολο να βρούμε ένα team leader παρά ένα chief programmer Κάθε υπάλληλος είναι υπόλογος σε μόνο ένα manager—lines of responsibility are clearly delineated Ο team leader είναι υπεύθυνος για την τεχνική (technical) management

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 35 Πέραν από τις CP and Democratic Teams (συνέχ.) Θέματα προϋπολογισμού και νομικά θέματα ΔΕΝ εκτελούνται από τον team leader Ο team leader λαμβάνει μέρος στα reviews — ο team manager δεν επιτρέπετε να το κάνει Ο team manager λαμβάνει μέρος σε regular team meetings για να εκτιμά the technical skills των team members

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 36 Μεγάλα (Larger) Projects Η ΜΗ τεχνική πλευρά είναι παρόμοια  Για ακόμα πιο μεγάλα products, προσθέτουμε περισσότερα επίπεδα (layers) Figure 4.5

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 37 Πέραν από τις CP and Democratic Teams (συνέχ.) Αποκέντρωση της decision-making process, όπου χρειάζεται  Χρήσιμο όταν η democratic team is good

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 38 Synchronize-and-Stabilize Teams Χρησιμοποιείται στην Microsoft Το Products συνίσταται από 3 or 4 sequential builds Small parallel teams  3 to 8 developers  3 to 8 testers (work one-to-one with developers)  Στην team δίνετε ολόκληρο το task specification  Μπορούν να κάνουν design του task όπως θέλουν

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 39 Synchronize-and-Stabilize Teams (συνέχ.) Γιατί αυτή η προσέγγιση δεν δημιουργεί hacker- induced chaos;  Daily synchronization step  ανεξάρτητα components πάντα δουλεύουν μαζί

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 40 Synchronize-and-Stabilize Teams (συνέχ.) Κανόνες (Rules)  Οι Programmers πρέπει να τηρούν κατά γράμμα τον χρόνο εισαγωγής του code into the database for that day’s synchronization Αναλογία  Αφήνουμε τα παιδία να κάνουν ότι θέλουν όλη μέρα …  … αλλά στις 9 μ.μ. πρέπει να είναι στο κρεβάτι τους

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 41 Synchronize-and-Stabilize Teams (συνέχ.) Δουλεύει αυτή η προσέγγιση σε όλες τις εταιρίες;  Ίσως αν οι software professionals είναι τόσο καλοί όσο αυτοί της Microsoft Εναλλακτική ματιά  το synchronize-and-stabilize model είναι απλά ένας τρόπος που επιτρέπει group of hackers να αναπτύξουν large products  Η επιτυχία της Microsoft οφείλετε στο superb marketing παρά στην ποιότητα του software

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 42 Extreme Programming Teams Χαρακτηριστικά του XP  Όλο το code γράφεται από two programmers που μοιράζονται ένα computer  “Pair programming”

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 43 Προτερήματα του Pair Programming Οι Programmers δεν πρέπει να ελέγχουν το δικό τους code  Ένας programmer σχεδιάζει τα test cases, και ο άλλος κάνει τα tests στο code Αν ένας programmer φύγει, ο άλλος έχει ικανοποιητική γνώση για να συνεχίσει την εργασία με ένα άλλο pair programmer Ένας άπειρος programmer μπορεί να μάθει από το μέλος της ομάδας του που έχει περισσότερη εμπειρία Centralized computers προάγουν egoless programming

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 44 People Capability Maturity Model Η καλύτερες πρακτικές για διαχείριση και ανάπτυξη του εργοδυναμικού μιας εταιρίας Κάθε επίπεδο ωριμότητας έχει τα δικά του κλειδιά (KPAs)  Level 2: Staffing, επικοινωνία και συντονισμός, training και development, περιβάλλον εργασίας, performance management, coordination  Level 5: συνεχής βελτίωση ικανοτήτων, organizational performance alignment, continuous workforce innovation

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 45 People Capability Maturity Model (contd) P–CMM είναι ένα πλαίσιο για βελτίωση των διαδικασιών για διοίκηση και ανάπτυξη του ανθρώπινου δυναμικού μιας εταιρίας ΚΑΜΙΑ συγκεκριμένη προσέγγιση για οργάνωση ομάδων δεν έχει υιοθετηθεί

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 46 Επιλογή της κατάλληλης Team Organization ΔΕΝ υπάρχει μια λύση στο πρόβλημα του team organization Ο “σωστός” τρόπος εξαρτάτε από  The product  The outlook of the leaders of the organization  Previous experience with various team structures

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 47 Επιλογή της κατάλληλης Team Organization (συνέχ.) Πολύ λίγη έρευνα έγινε σε software team organization  team organization έχει βασιστεί σε μελέτες για group dynamics γενικά Χωρίς σχετικά πειραματικά αποτελέσματα, είναι δύσκολο να καθορίσουμε ποιο είναι το optimal team organization για ένα συγκεκριμένο product

Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου 48 Επιλογή της κατάλληλης Team Organization (συνέχ.) Figure 4.7