Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που...

43
Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Τμήμα Πληροφορικής & Τηλεπικοινωνιών Τεχνολογία Λογισμικού 8ο Εξάμηνο 2019-20 Ανάλυση απαιτήσεων Δρ. Κώστας Σαΐδης ([email protected])

Transcript of Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που...

Page 1: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Εθνικό και Καποδιστριακό Πανεπιστήμιο ΑθηνώνΤμήμα Πληροφορικής & Τηλεπικοινωνιών

Τεχνολογία Λογισμικού8ο Εξάμηνο 2019-20

Ανάλυση απαιτήσεων

Δρ. Κώστας Σαΐδης ([email protected])

Page 2: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Ανάλυση απαιτήσεων1. Οι απαιτήσεις λογισμικού και τα είδη τους2. Από την ανάλυση απαιτήσεων στη σύνταξη των

προδιαγραφών και ο ρόλος του επικεφαλής μηχανικού(ΕΜ)

2

Page 3: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

1. Ανάλυση απαιτήσεων

3

Page 4: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Απαιτήσεις λογισμικούΣυνήθως είναι ανεξάρτητες από την τεχνολογία υλοποίησης.

Απαίτηση: Τι θέλουμε να κάνει το λογισμικόΙκανοποίηση απαίτησης: Πώς το λογισμικό καλύπτει τηναπαίτηση (σχεδιαστική απόφαση και υλοποίηση).

Εκτός, βέβαια, αν η υποστήριξη κάποιας τεχνολογίας είναι ρητήαπαίτηση

4

Page 5: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Είδη απαιτήσεωνΛειτουργικές απαιτήσειςΜη λειτουργικές απαιτήσειςΑπαιτήσεις συστήματοςΑναδυόμενες απαιτήσεις

5

Page 6: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Λειτουργικές απαιτήσειςΟι απαιτήσεις της λειτουργίας του λογισμικού (συνήθωςη νέα λειτουργικότητα που πρέπει να αναπτυχθεί στοπλαίσιο του έργου)

Παραδείγματα: διαπίστευση και δικαιοδοσία χρηστών,επιχειρησιακή λογική, οι λειτουργίες που απαιτούνταιαπό τις περιπτώσεις και τα σενάρια χρήσης,διαχειριστικές λειτουργίες

6

Page 7: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Διαπίστευση χρηστών (userauthentication)

Σημεία εισόδου στο σύστημα (entry-points) - μηχανισμοίδιαπίστευσης χρηστώνΕπιβεβαίωση ότι ο χρήστης είναι:

"υπαρκτός" (π.χ. ο λογαριασμός του είναιεγγεγραμμένος στον "πίνακα" των χρηστών της ΒΔ)"έγκυρος" (π.χ. γνωρίζει το προσωπικό του"μυστικό" που έχει συνδεθεί με το λογαριασμό του)"ενεργός" (π.χ. δεν έχει απενεργοποιηθεί από τοδιαχειριστή)

7

Page 8: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Δικαιοδοσία χρηστών (userauthorization)

Διαχείριση δικαιωμάτων: ποιος χρήστης επιτρέπεται ναεκτελέσει ποια ενέργεια.

Στατική ή δυναμική ανάθεση/ανάκληση δικαιωμάτων;ΡόλοιAccess Control Lists (ACLs)Guards

8

Page 9: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Επιχειρησιακή λογική (business logic)Οι επιχειρησιακές διαδικασίες (business processes)Οι επιχειρησιακοί κανόνες (business rules)

Μερική ή πλήρης "ηλεκτρονικοποίηση" των λειτουργιώντου οργανισμού

9

Page 10: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Πιο απλάΟι λειτουργίες που περιλαμβάνονται σταυποστηριζόμενα σενάρια και περιπτώσεις χρήσης (usecases) του λογισμικούΟι ενέργειες, λειτουργίες και διαδικασίες που εκτελούν οιχρήστες μέσω του συστήματος

Τα user stories σε ένα Agile backlog

10

Page 11: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Διαχειριστικές λειτουργίες(administrative functions)

Ποιες είναι οι διαχειριστικές λειτουργίες;Πώς εκτελούνται;

Θα παραμετροποιούνται από το χρήστη και πόσο;

11

Page 12: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Λειτουργίες αναφορών (reportingrequirements)

Τι αναφορές απαιτούνται ;Πόσο παραμετροποιήσιμες πρέπει να είναι;

Ποιος έχει δικαίωμα να τις προσπελαύνει;

12

Page 13: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Μη λειτουργικές απαιτήσειςΑπαιτήσεις για ποιοτικά χαρακτηριστικά του λογισμικού

Διαθεσιμότητα - Ανάνηψη από καταστροφέςΑσφάλεια - ΑκεραιότηταΕυελιξία - Επεκτασιμότητα

Απόδοση - ΑπροκρισιμότηταΥποστήριξη διεθνών προτύπων

Καθορίζουν σε μεγάλο βαθμό την επιτυχία του έργου

13

Page 14: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Απαιτήσεις συστήματοςΑπαιτήσεις σχετικές με το "σύστημα" ή το "περιβάλλον"στο οποίο εντάσσεται το υπό ανάπτυξη λογισμικό (π.χ.μπορεί να είναι συστατικό ενός μεγαλύτερου όλου)Απαιτήσεις υλικού, απαιτήσεις δικτύου, κ.ά

14

Page 15: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

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

15

Page 16: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Στην πράξηΣτην πράξη, κάποιες απαιτήσεις μπορεί να βρίσκονται"κάπου ανάμεσα" στα παραπάνω είδηΑλλά αυτό ποικίλει ανάλογα με το υπό ανάπτυξηλογισμικό, το περιβάλλον λειτουργίας του και τουςεμπλεκόμενους φορείς - χρήστες του

Ας δούμε μερικά παραδείγματα

16

Page 17: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Τήρηση ημερολογίων (audit tracking)Ποιες ενέργεις καταγράφονται σε ημερολόγια;Σε ποιο βαθμό λεπτομέρειας;Για ποιο σκοπό και με ποια τελική χρήση;

17

Page 18: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Μαζική εισαγωγή / εξαγωγήδεδομένων (Data import / export)

Απατείται η μαζική εισαγωγή / εξαγωγή δεδομένων;Θα παραμετροποιείται από το χρήστη και πόσο;Ποιοι μορφότυποι αρχείων / δεδομένων θα πρέπει ναυποστηρίζονται;

18

Page 19: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Υποστήριξη διεθνούς προτύπουΑνάλογα με την περίπτωση, μπορεί να επηρεάζει:

Ένα συγκεκριμένο συστατικόΈνα υποσύνολο των συστατικών

Το σχεδιασμό συνολικά

19

Page 20: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Διαλειτουργικότητα (interoperability)Το υπό ανάπτυξη σύστημα θα διαλειτουργεί με τρίτασυστήματα;Τι είδους δεδομένα θα ανταλλάσονται;

Με ποιους μηχανισμούς, μορφότυπους και πρωτόκολλα;

20

Page 21: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Νομικές ή κανονιστικές απαιτήσειςΤο υπό ανάπτυξη σύστημα θα πρέπει να είναι σύννομο(προσωπικά δεδομένα, πνευματικά δικαιώματα, κτλ.)Το υπό ανάπτυξη σύστημα μπορεί να διέπεται απόσυγκεκριμένο νομικό ή κανονιστικό πλαίσιο (γιαπαράδειγμα, πληροφοριακά συστήματα δημοσίουτομέα).

21

Page 22: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Ορισμός των απαιτήσεωνΣαφήνεια (η απαίτηση είναι σαφώς διατυπωμένη)Συνέπεια (η μία απαίτηση δεν αντιβαίνει με την άλλη)

Πληρότητα (η απαίτηση καλύπτει όλες τις περιπτώσεις)Επαληθευσιμότητα (η απαίτηση μπορεί να ελεγχθεί σεσχέση με την υλοποίηση)

22

Page 23: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

ΕπίσηςΣε μεγάλα έργα

Καταγωγή/γενεαλογία απαίτησηςΠοιος τη ζήτησεΠοιον επιχειρησιακό στόχο εξυπηρετεί

Για παράδειγμα, θα πρέπει να γνωρίζει η ομάδα του έργου αν "τοζητάει ο διευθυντής"

23

Page 24: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Έγγραφο ανάλυσης απαιτήσεωνΠεριγραφή σε φυσική γλώσσα:

Σκοπός του συστήματοςΚατηγορίες χρηστών (users & stakeholders)Εμβέλεια του συστήματος

ΠεριορισμοίΠαραδοχέςΑπαιτήσεις (λειτουργικές ή μη)

24

Page 25: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

2. Από την ανάλυση απαιτήσεων στησύνταξη των προδιαγραφών και ορόλος του επικεφαλής μηχανικού

25

Page 26: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Ζητούμενα από το κείμενο τωντεχνικών προδιαγραφών

Να προσδιορίσουν τον τρόπο με τον οποίο το λογισμικόθα ικανοποιήσει τις απαιτήσεις

26

Page 27: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

ΣυγκεκριμέναΑρχιτεκτονικός σχεδιασμός και συστατικά τουλογισμικού

Σαφής περιγραφή της αλληλεπίδρασης του λογισμικούμε το παραγωγικό του περιβάλλον (productionenvironment)Λεπτομερής προδιαγραφή των λειτουργιών και τωνδιαδικασιών που υποστηρίζονται από το λογισμικόΣύνδεση των προδιαγραφών με τις απαιτήσεις (πηγή/προέλευση προδιαγραφής)Καθορισμός κριτηρίων αποδοχής / απόρριψης(τμημάτων ή όλου) του συστήματος

27

Page 28: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Έλεγχοι αποδοχής (acceptance tests)Έλεγχοι που καθορίζουν την αποδοχή ή την απόρριψησυστατικών ή λειτουργιών ή "οθονών" του λογισμικούΕίναι καλή πρακτική να έχουν προβλεφθεί (μερικώς ήπλήρως) στις προδιαγραφές

Ένας από τους κύριους στόχους ένταξης ελέγχων στονκύκλο του λογισμικού είναι η ελαχιστοποίηση τωνσφαλμάτων που θα προκύψουν κατά τους ελέγχουςαποδοχής

28

Page 29: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Σχεδιαστικές αποφάσειςΓια να μετατραπούν οι υψηλού επιπέδου απαιτήσεις τουλογισμικούΣε χαμηλού επιπέδου τεχνικές προδιαγραφές αυτούΘα πρέπει να παρθούν συγκεκριμένες σχεδιαστικέςαποφάσεις

29

Page 30: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

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

Από την άλλη δεν είναι αποδεκτό να προκύψει στηνπορεία υλοποίησης μιας προδιαγραφής ένα ζήτημα πουθα "ακυρώσει" το σχεδιασμόΤο ότι θα τον αλλάξει είναι (σχεδόν) βέβαιο!

30

Page 31: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Σχεδιαστικές αποφάσειςΟι αποφάσεις σχετικά με κάποια πτυχή του λογισμικού πουείναι "ακριβό" ή "δύσκολο" να αλλάξουν άπαξ καιπαγιωθούν.

31

Page 32: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Θυμηθείτε

32

Page 33: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Κοινός τόποςΗ ανάλυση των απαιτήσεων πρέπει να καταλήξει σε ένακοινά αποδεκτό ζητούμενοΚάτι που μπορεί να είναι δύσκολο στην πράξη για μητεχνικούς λόγους (επικοινωνίας, οργάνωσης,διαφορετικήςκουλτούρας, παγίωσης μη βέλτιστων πρακτικών, κτλ.)

33

Page 34: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Θυμηθείτε από την εισαγωγήΣτα μεγάλα έργα λογισμικού εμπλέκονται πολλοίσυμμετέχοντες:

ΧρήστεςΠελάτεςΔιοίκηση (ακόμα και Μέτοχοι ή Επενδυτές)

ΑναλυτέςΠρογραμματιστέςΔοκιμαστέςΣχεδιαστές διεπαφών

Υπεύθυνοι έργουκτλ.

34

Page 35: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Ο ρόλος του EM

Διαχείριση της πολυπλοκότητας

50% αρχιτεκτονική (ουσιώδης πολυπλοκότητα)50% επικοινωνία (τεχνητή πολυπλοκότητα)

με τους stakeholdersμε την επιχειρησιακή ομάδα έργου (ProjectManager, Business Analyst, κ.ά)με την ομάδα ανάπτυξης (engineers)

35

Page 36: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Κοινή γλώσσαΚάθε ένας από τους συμμετέχοντες έχει διαφορετικέςεμπειρίες, βιώματα, αφετηρίες, στόχους και επιδιώξειςαπό την υλοποίηση του έργουΗ ομάδα ανάπτυξης, η επιχειρησιακή ομάδα και οιstakeholders του έργου μάλλον "θα μιλάνε" σεδιαφορετικές γλώσσες

Ο EM θα πρέπει να κάνει το διερμηνέα και να "μιλάει" τηγλώσσα και των τριών

36

Page 37: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Ιεράρχηση απαιτήσεωνΔεν είναι όλες οι απαιτήσεις εξίσου σημαντικέςΜια μικρή -θεωρητικά- απαίτηση μπορεί να οδηγήσει τοέργο εκτός δρόμου/στόχου

Η ομάδα ανάπτυξης ή η επιχειρησιακή ομάδαμπορεί να μη δώσουν προσοχή ("αφού το ζητάει οπελάτης")

Ο stakeholder ενδέχεται να μην το καταλάβειΟ EM πρέπει να το διαγνώσει έγκαιρα και να προτείνειεναλλακτικές

37

Page 38: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

ΑντίστοιχαΜια "ακριβή" απαίτηση μπορεί να έχει πιο "φθηνή"εναλλακτικήΜια "σύνθετη" απαίτηση μπορεί να έχει πιο "απλή"εναλλακτικήκ.ο.κ

38

Page 39: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

ΠροσοχήΟ ασφαλέστερος τρόπος να αποτύχει ένα έργο είναι ναεπιτραπεί στις "λάθος" απαιτήσεις να γίνουνπροδιαγραφές!

39

Page 40: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

ΣυμπέρασμαΟ EM θα πρέπει να έχει απευθείας επαφή με τουςstakeholders

Αναλύοντας και διαμορφώνοντας μαζί με τηνεπιχειρησιακή ομάδα του έργου τις απαιτήσεις

Ενώ παράλληλα σχεδιάζει το σύστημαΓια να είναι σε θέση να φιλτράρει τις "λάθος"απαιτήσειςΚαι να μεταφράσει τις υπόλοιπες σε προδιαγραφέςγια την ομάδα ανάπτυξης

40

Page 41: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

The belief that complex systems require armies ofprogrammers and designers is wrong. A system that isnot understood in its entirety, or at least to a significantdegree of detail by a single individual, should probablynot be built.

N. Wirth

41

Page 42: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Superman

By J.Schulenklopper, E. Rommes](https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=436431 42

Page 43: Τεχ νο λ ογ ί α Λ ογ ι σ μ ι κο ύ · 2020. 3. 19. · "μυστικό" που έχει συνδεθεί με το λογαριασμό του) ... Καθορίζουν

Για να γίνεις Superman!Ενσυναίσθηση (empathy): Για τις ανάγκες και τουςπροβληματισμούς όλων των εμπλεκόμενωνΤεχνική αρτιότητα: Γι την επιλογή αρχιτεκτονικής /τεχνολογίας που να είναι συμβατή με τις ανάγκες τουέργου και τις ικανότητες της ομάδαςΕπικοινωνιακή ικανότητα: Για τη συνεχή επικοινωνία μεόλους τους εμπλεκόμενους για την εύρεση τωνβέλτιστων συμβιβασμών (trade-offs)Εμπειρία: Για να μπορούν να γίνουν καλά όλα ταπαραπάνω

Ενδεικτικά 43