Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Σχεδιασμός Design Δρ. Μαρία Ι. Ανδρέου.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Σχεδιασμός Design Δρ. Μαρία Ι. Ανδρέου."— Μεταγράφημα παρουσίασης:

1 Σχεδιασμός Design Δρ. Μαρία Ι. Ανδρέου

2 Περιεχόμενα Σχεδιασμός και Αφαιρετικότητα
Σχεδιασμός καθορισμένος από Λειτουργίες (Operation-oriented design) Ανάλυση Ροής Δεδομένων (Data flow analysis) Ανάλυση Συναλλαγών (Transaction analysis) Σχεδιασμός καθορισμένος από τα Δεδομένα (Data-oriented design) Σχεδιασμός καθορισμένος από τα Αντικείμενα (Object-oriented design) Object-oriented design: The elevator problem case study Object-oriented design: The Osbert Oglesby case study Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

3 Περιεχόμενα (συνέχ.) The design workflow The test workflow: Design
Περιεχόμενα (συνέχ.) The design workflow The test workflow: Design Τυπικές Τεχνικές και Λεπτομερής Σχεδιασμός (Formal techniques for detailed design) Τεχνικές Σχεδιασμού Πραγματικού Χρόνου (Real-time design techniques) CASE tools for design Μετρικές για Σχεδιασμό (Metrics for design) Προκλήσεις από το design workflow Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

4 Δεδομένα και ενέργειες (Data and Actions)
Δυο πτυχές ενός προϊόντος Ενέργειες που λειτουργούν πάνω σε δεδομένα Δεδομένα πάνω στα οποία εφαρμόζονται ενέργειες Οι δυο βασικοί τρόποι για σχεδιασμό ενός προϊόντος Operation-oriented design Data-oriented design Τρίτος τρόπος Hybrid methods Για παράδειγμα, object-oriented design Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

5 Σχεδιασμός και Αφαιρετικότητα Design and Abstraction
Δραστηριότητες που εκτελούνται κατά τον Κλασικό Σχεδιασμό (Classical design activities) Αρχιτεκτονικό Σχέδιο (Architectural design) Λεπτομερές Σχέδιο (Detailed design) Έλεγχος Σχεδιασμού (Design testing) Architectural design Είσοδος: Προδιαγραφές (Specifications) Έξοδος: Διαχωρισμός σε modules (Modular decomposition) Detailed design Σχεδιασμός κάθε module Επιλογή συγκεκριμένων αλγορίθμων και δομών δεδομένων Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

6 Σχεδιασμός καθορισμένος από Λειτουργίες Operation-Oriented Design
Ανάλυση Ροής Δεδομένων (Data flow analysis) Η τεχνική αυτή χρησιμοποιείται από τις περισσότερες specification methods (Structured Systems Analysis) Σημείο Κλειδί: έχουμε λεπτομερή πληροφορία για τις ενέργειες από το data flow diagram (DFD) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

7 Data Flow Analysis Κάθε προϊόν μετατρέπει την είσοδο σε έξοδο
Καθορισμός “Point of highest abstraction of input” “Point of highest abstract of output” Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

8 Data Flow Analysis (συνέχ.)
Διαχωρισμός του προϊόντος σε τρία μέρη/τμήματα (modules) Επανάλαβε stepwise μέχρι που κάθε module να έχει υψηλή συνοχή (high cohesion) Ίσως να χρειάζονται μικρές αλλαγές έτσι ώστε μειώσουμε την ζεύξη Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

9 Mini Case Study: Word Counting
Παράδειγμα: σχεδιάστε ένα προϊόν το οποίο έχει ως είσοδο ένα όνομα αρχείου, και επιστρέφει το αριθμό των λέξεων σε αυτό το αρχείο (σαν την εντολή UNIX wc ) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

10 Mini Case Study: Word Counting (contd)
Πρώτη εκλέπτυνση (First refinement) Τώρα θα πρέπει να εκλεπτύνουμε τα δυο modules με communicational cohesion Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

11 Mini Case Study: Word Counting (contd)
Δεύτερη εκλέπτυνση (Second refinement) Τώρα, και τα οκτώ modules έχουν functional cohesion Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

12 Word Counting: Detailed Design
Το αρχιτεκτονικό Σχέδιο είναι πλήρες Συνεπώς προχωράμε με το λεπτομερές σχέδιο Υπάρχουν δυο μορφές στις οποίες μπορούμε να παρουσιάσουμε το λεπτομερές σχέδιο (detailed design): Tabular Pseudocode (PDL—program design language) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

13 Detailed Design: Tabular Format
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

14 Detailed Design: Tabular Format (contd)
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

15 Detailed Design: Tabular Format (contd)
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

16 Detailed Design: Tabular Format (contd)
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

17 Detailed Design: PDL Format
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

18 Επεκτάσεις της Ανάλυσης Ροής Δεδομένων Data Flow Analysis Extensions
Στα προϊόντα του πραγματικού κόσμου, υπάρχουν Περισσότερες από μια είσοδοι (More than one input stream), και Περισσότερες από μια έξοδοι (More than one output stream) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

19 Data Flow Analysis Extensions (contd)
Βρες τα σημεία of highest abstraction για κάθε stream Επανάλαβε αυτό έως ότου κάθε module να έχει high cohesion Προσαρμόστε την ζεύξη όταν χρειάζεται Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

20 Ανάλυση Συναλλαγών (Transaction Analysis)
Η DFA δεν ενδείκνυται για transaction processing products Παράδειγμα: ATM (automated teller machine) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

21 Transaction Analysis (contd)
Ο σχεδιασμός είναι φτωχός. Υπάρχει λογική συνοχή και ζεύξη Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

22 Διορθωμένος Σχεδιασμό χρησιμοποιώντας Transaction Analysis
Software reuse Have one generic edit module, one generic update module Instantiate them 5 times Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

23 Σχεδιασμός Καθοδηγούμενος από τα δεδομένα (Data-Oriented Design)
Βασική αρχή Η δομή του προϊόντος πρέπει να προσαρμόζεται στην δομή των δεδομένων Υπάρχουν τρις παρόμοιες μέθοδοι Michael Jackson [1975], Warnier [1976], Orr [1981] Σχεδιασμός καθοδηγούμενος από τα δεδομένα (Data-oriented design) Δεν ήταν ΠΟΤΕ τόσο διαδεδομένος όσο ο action-oriented design Με την εμφάνιση του OOD, ο data-oriented design έχει αποσυρθεί Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

24 Αντικειμενοστρεφής Σχεδιασμός Object-Oriented Design (OOD)
Στόχος Σχεδιασμός του προϊόντος με βάση τις κατηγορίες που έχουν προσδιοριστεί κατά την την ΟΟΑ Αν κάνουμε χρήση μιας γλώσσας η οποία δεν υποστηρίζει κληρονομικότητα (π.χ., C, Ada 83) Τότε δημιουργούμε σχεδιασμό καθοδηγούμενο από abstract data type Αν κάνουμε χρήση μιας γλώσσας η οποία δεν υποστηρίζει type statement (π.χ., FORTRAN, COBOL) Κάνουμε χρήση data encapsulation Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

25 Object-Oriented Design Steps
Ο OOD συνιστάται από δυο βήματα: Βήμα 1. Ολοκλήρωση του class diagram Καθορισμός της μορφής των attributes Ανάθεση κάθε μεθόδου (method), είτε σε μια κατηγορία (class) ή σε ένα πελάτη (client) που στέλνει μηνύματα σε ένα αντικείμενο (object) αυτής της κατηγορίας Step 2. Δημιουργία του λεπτομερούς σχεδίου (detailed design) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

26 Object-Oriented Design Steps (contd)
Βήμα 1. Ολοκλήρωση του class diagram Η μορφή (formats) των attributes μπορεί να εξαχθεί άμεσα από τα artifacts της ανάλυσης Παράδειγμα: Ημερομηνίες (Dates) U.S. format (mm/mm/yyyy) European format (dd/mm/yyyy) Και στις δυο περιπτώσεις, χρειάζονται 10 χαρακτήρες The formats θα μπορούσαν να καθοριστούν κατά την διάρκεια της analysis Για να ελαχιστοποιήσουμε rework, ΠΟΤΕ μην προσθέτετε πράγματα στα UML διαγράμματα μέχρι να πλήρως απαραίτητα Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

27 Object-Oriented Design Steps (contd)
Βήμα 1. Ολοκλήρωση του class diagram Ανάθεση κάθε μεθόδου (method), είτε σε μια κατηγορία (class) ή σε ένα πελάτη (client) που στέλνει μηνύματα σε ένα αντικείμενο (object) αυτής της κατηγορίας Αρχή A: Απόκρυψη πληροφοριών (Information hiding) Αρχή B: αν μια λειτουργία κληθεί από πολλούς clients ενός object, θέσε αυτή τη μέθοδο αυτή στην κατηγορία αυτού του object, ΟΧΙ στους clients Αρχή C: Σχεδιασμός καθοδηγούμενος από τις ευθύνες (Responsibility-driven design) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

28 Object-Oriented Design: The Elevator Problem Case Study
Βήμα 1. Ολοκλήρωση του class diagram Με βάση την δεύτερη επανάληψη της CRC card για τον elevator controller Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

29 OOD: Elevator Problem Case Study (contd)
CRC card Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

30 OOD: Elevator Problem Case Study (contd)
Ευθύνες (Responsibilities) 8. Start timer 10. Check requests, and 11. Update requests αυτές αναθέτονται στον elevator controller Επειδή εκτελούνται από τον elevator controller Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

31 OOD: Elevator Problem Case Study (contd)
Οι υπόλοιπες οκτώ responsibilities έχουν την μορφή “Send a message to another class to tell it do something” Αυτές Πρέπει να ανατεθούν στις άλλες class Responsibility-driven design Safety considerations Οι Methods open doors, close doors αναθέτονται στην class Elevator Doors Οι Methods turn off button, turn on button αναθέτονται στις classes Floor Button and Elevator Problem Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

32 Detailed Class Diagram: Elevator Problem
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

33 Detailed Design: Elevator Problem
Ο λεπτομερής σχεδιασμός (Detailed design) του elevatorEventLoop κατασκευάζεται από το statechart Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

34 Object-Oriented Design: The Osbert Oglesby Case Study
Βήμα 1. Ολοκλήρωση του class diagram Το τελικό class diagram παρουσιάζεται αμέσως μετά Χρειάζεται η Date class στην C++ Η Java έχει ενσωματωμένη την class Date Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

35 Final Class Diagram: Osbert Oglesby
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

36 Class Diagram with Attributes: Osbert Oglesby
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

37 Ανάθεση μεθόδων στις Classes: Osbert Oglesby
Παράδειγμα: setTitle, getTitle Από το inheritance tree, αυτές οι μέθοδοι πρέπει να ανατεθούν στην Painting Class Έτσι μπορούν να κληρονομηθούν Από όλες τις subclasses of Painting Class Η ανάθεση των άλλων μεθόδων είναι straightforward Για πληροφορίες δες στο Appendix G Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

38 Λεπτομερής Σχεδιασμός-Detailed Design: Osbert Oglesby
Καθορισμός του ΤΙ κάνει κάθε μέθοδος (method) Παρουσίαση του detailed design σε μια κατάλληλη μορφή π.χ., PDL (pseudocode) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

39 Method ComputeMasterpiecePrice::getAlgorithmPrice
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

40 Method ComputeMasterworkPrice::getAlgorithmPrice
Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

41 The Design Workflow Περίληψη του design workflow:
Τα artifacts του analysis workflow are iterated and integrated μέχρι που ο προγραμματιστής να μπορεί να τα χρησιμοποιήσει Ανάμεσα στις Αποφάσεις που πρέπει να ληφθούν είναι: Implementation language Reuse Portability Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

42 The Design Workflow (contd)
Η ιδαία του διαχωρισμού ενός μεγάλου workflow σε μικρότερα Ανεξάρτητα workflows (packages) χρησιμοποιείται ευρέως στο design workflow Ο στόχος είναι να διασπαστεί το επερχόμενο implementation workflow σε κομμάτια (pieces) που μπορούν να διαχειριστούν Subsystems Δεν έχει νόημα να χωρίσουμε το Osbert Oglesby case study σε subsystems — είναι ΠΟΛΥ μικρό Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

43 The Design Workflow (contd)
Γιατί σπάζουμε το προϊόν σε subsystems: Είναι πιο εύκολο να υλοποιήσουμε (implement) ένα αριθμό από μικρότερα subsystems παρά ένα μεγάλο σύστημα (system) Στην περίπτωση όπου τα subsystems είναι ανεξάρτητα, μπορούν να υλοποιούνται παράλληλα από ομάδες προγραμματιστών το software product σαν σύνολο θα μπορεί να παραδοθεί πιο σύντομα Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

44 The Design Workflow (contd)
Η αρχιτεκτονική (architecture) ενός software product περιλαμβάνει Τα διάφορα τμήματα/ μέρη (components) Πώς ταιριάζουν μεταξύ τους Ανάθεση των components σε subsystems Το καθήκον του σχεδιασμού της αρχιτεκτονικής χρειάζεται ειδικότητα Εκτελείται από τον αρχιτέκτονα λογισμικού (software architect) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

45 The Design Workflow (contd)
Ο αρχιτέκτονας χρειάζεται να κάνει trade-offs κάθε software product πρέπει να ικανοποιεί τις λειτουργικές του απαιτήσεις (functional requirements) π.χ. , τα use cases Πρέπει επίσης να ικανοποιεί τις μη-λειτουργικές του απαιτήσεις (nonfunctional requirements), που περιλαμβάνουν Portability, reliability, robustness, maintainability, and security Πρέπει να κάνει ΟΛΑ αυτά εντός του προϋπολογισμού (budget) και των χρονικών περιορισμών (time constraints) Ο αρχιτέκτονας πρέπει να συμβουλέψει τον πελάτη εξηγώντας του αυτά τα trade-offs Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

46 The Design Workflow (contd)
Συχνά ΔΕΝ είναι δυνατό να ικανοποιηθούν όλες οι απαιτήσεις, εντός των περιορισμών κόστους και χρόνου Πρέπει να γίνει κάποιου είδους ΣΥΜΒΙΒΑΣΜΟΣ Ο πελάτης πρέπει να Χαλαρώσει κάποιες απαιτήσεις (Relax some of the requirements) Αυξήσει το budget; και/ή Να μετακινήσει την ημερομηνία παράδοσης Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

47 The Design Workflow (contd)
Η αρχιτεκτονική ενός software product είναι κρίσιμης/μεγάλης σημασίας Το requirements workflow μπορεί να καθοριστεί πλήρως κατά την διάρκεια του analysis workflow Το analysis workflow μπορεί να καθοριστεί πλήρως κατά την διάρκεια του design workflow Το design workflow μπορεί να καθοριστεί πλήρως κατά την διάρκεια του implementation workflow Από την άλλη πλευρά, ΔΕΝ μπορούμε να ξεπεράσουμε (recover) προβλήματα από μια ΜΗ βέλτιστη αρχιτεκτονική Η αρχιτεκτονική ΠΡΕΠΕΙ να ξανασχεδιαστεί άμεσα Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

48 The Test Workflow: Design
Πρέπει να διεξάγεται κριτική/αξιολόγηση του σχεδιασμού Το design πρέπει απεικονίζει σωστά τις προδιαγραφές (specifications) Επίσης, το design πρέπει να είναι σωστό από μόνο του Transaction-driven inspections Essential for transaction-oriented products However, they are insufficient — specification-driven inspections are also needed Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

49 The Test Workflow: The Osbert Oglesby Case Study
Πρέπει να γίνεται έλεγχος/επιθεώρηση του design Πρέπει να ελεγχθούν ΟΛΕΣ οι πτυχές του design Ακόμα και αν δεν βρεθούν λάθη, είναι δυνατό να αλλάξει κατά την διάρκεια του implementation workflow Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

50 Formal Techniques for Detailed Design
Το να υλοποιήσουμε ένα προϊόν και μετά να το διορθώσουμε είναι πολύ δύσκολο Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

51 Formal Techniques for Detailed Design (cond)
Όμως, με χρήση τυπικών τεχνικών (formal techniques) κατά την διάρκεια του detailed design μπορεί να βοηθήσει Απόδειξη ορθότητας (Correctness proving) μπορεί να εφαρμοστεί σε κομμάτια στο μέγεθος του module (module-sized pieces) Ο σχεδιασμός (design) θα μπορούσε να έχει λιγότερα λάθη αν αναπτυχθεί παράλληλα με correctness proof Αν ο ίδιος programmer εκτελεί το detailed design και implementation Σε αυτή την περίπτωση ο programmer θα έχει θετική στάση απέναντι στο detailed design Και αυτό θα πρέπει να οδηγεί σε λιγότερα λάθη Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

52 Τεχνικές Σχεδιασμού Πραγματικού Χρόνου Real-Time Design Techniques
Δυσκολίες σχετιζόμενες με συστήματα πραγματικού-χρόνου (real-time systems) Η είσοδος προέρχεται από τον πραγματικό κόσμο Το Software ΔΕΝ έχει έλεγχο για το πότε θα δεχτεί είσοδο Συχνά υλοποιείται με κατανεμημένο (distributed) software Επιπτώσεις από θέματα επικοινωνιών (Communications implications) Θέματα χρονισμού (Timing issues) Προβλήματα συγχρονισμού (synchronization) Race conditions Deadlock (deadly embrace) Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

53 Real-Time Design Techniques (contd)
Η βασική δυσκολία στο σχεδιασμό real-time systems Καθορισμός του κατά πόσο οι χρονικοί περιορισμοί ικανοποιούνται από το σχεδιασμό Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

54 Real-Time Design Techniques (contd)
Οι περισσότερες μέθοδοι για real-time design είναι επεκτάσεις non-real-time μεθόδων σε real-time Υπάρχει περιορισμένη εμπειρία στη χρήση οποιωνδήποτε real-time methods το state-of-the-art δεν είναι στα επίπεδα που αναμέναμε Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

55 CASE Tools για Σχεδιασμό (Design)
Είναι σημαντικό να ελέγξουμε ότι τα design artifacts περιλαμβάνουν ΟΛΕΣ τις πτυχές της ανάλυσης Για να διαχειριστούμε τα artifacts της ανάλυσης και του σχεδιασμού χρειαζόμαστε upperCASE tools UpperCASE tools Δημιουργούν ένα data dictionary Περιλαμβάνουν ένα ελεχτή συνέπειας (consistency checker) και Screen and report generators Εργαλεία διοίκησης (Management tools) που πολλές φορές χρησιμοποιούνται για, Εκτιμήσεις (Estimating) Planning Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

56 CASE Tools for Design (contd)
παραδείγματα tools για object-oriented design Commercial tools Software through Pictures Rose Together Open-source tool ArgoUML Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

57 Μετρικές για Σχεδιασμό (Metrics for Design)
Συνοχή (Cohesion) Ζεύξη (Coupling) Fault statistics Η Cyclomatic complexity είναι προβληματική Πολυπλοκότητα δεδομένων αγνοείται (Data complexity is ignored) Δεν χρησιμοποιείται πολύ στο object-oriented paradigm Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

58 Metrics for Design (contd)
Μερικές μετρικές αφορούν μόνο το object-oriented paradigm Έχουν μελετηθεί τόσο από θεωρητικής όσο και από την πειραματική σκοπιά. Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

59 Challenges of the Design Phase
Η ομάδα που διεξάγει τον σχεδιασμό δεν πρέπει να το παρακάνει Το detailed design δεν πρέπει να γίνει κώδικας Η ομάδα που διεξάγει τον σχεδιασμό δεν πρέπει να κάνει πολύ λίγα Είναι ευθύνη της να παράξει ένα detailed design Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου

60 Challenges of the Design Phase (contd)
Θέλουμε να «αναπτύξουμε» πολύ καλούς (great) designers Ενδεχομένως ένας great designers πρέπει να είναι Αναγνωρίσιμος (Identified), Να έχει την κατάλληλη μόρφωση, Να εκτιμά great designers, and Να επιτρέπετε να αλληλεπιδρά με άλλους designers Πρέπει να υπάρχει σαφής career path για αυτούς τους designers, με την κατάλληλη αμοιβή Τεχνολογία Υπολογισμού Δρ. Μαρία Ι. Ανδρέου


Κατέβασμα ppt "Σχεδιασμός Design Δρ. Μαρία Ι. Ανδρέου."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google