Σχεδίαση Κλάσεων και Μεθόδων (Class and Method Design)

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Σχεδίαση Κλάσεων και Μεθόδων (Class and Method Design)"

Transcript

1 HY351 - Ανάλυση και Σχεδίαση Πληροφοριακών Συστημάτων CS351 - Information Systems Analysis and Design ΗΥ351: Ανάλυση και Σχεδίαση Πληροφοριακών Συστημάτων Information Systems Analysis and Design Σχεδίαση Κλάσεων και Μεθόδων (Class and Method Design) Γιάννης Τζίτζικας ιάλεξη : 14 Ημερομηνία : Θέμα : U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 1 ΑπόταΜοντέλαΑνάλυσηςσταΜοντέλαΣχεδίασης Υψηλού επιπέδου επιχειρηματικές ανάγκες καταγεγραμμένες στην Πρόταση Συστήματος Καθορισμός Απαιτήσεων Ανάλυση Αναλυτική Καταγραφή Συγκεκριμένων απαιτήσεων Μοντελοποίηση Μοντελοποίηση Λειτουργική /Δομική/Συμπεριφοράς (Functional/Structural/Behavioral) Σχεδίαση Αναθεώρηση, Εκλέπτυνση Μη Λειτ/κές Ααπαιτήσεις Σχεδίαση Κλάσεων και Μεθόδων Σχεδίαση Επιπέδου Διαχείρισης Δεδομένων Μοντέλα Σχεδίασης Σχεδίαση Επικοινωνίας με Χρήστη Σχεδίαση Φυσικής Αρχιτεκτονικής U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 2

2 ιάρθρωση Γιατί να κάνουμε αναλυτική σχεδίαση κλάσεων και μεθόδων; Σχεδιαστικά Κριτήρια σύζευξη (coupling), συνοχή (cohesion) Αναδομώντας και Βελτιώνοντας το Σχέδιο (Factoring and Optimizing) Αντιστοίχηση κλάσεων προβλήματος σε κλάσεις υλοποίησης Προδιαγραφή μεθόδων [Περιορισμοί και Συμβόλαια (Constraints and Contracts)] Δυνατότητες Επαναχρησιμοποίησης Σχεδιαστικά Μοτίβα (Design Patterns) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 3 Σχεδίαση Κλάσεων και Μεθόδων: Κίνητρο Class and Method Design: Motivation Ένα από τα σημαντικότερα βήματα στη φάση της σχεδίασης είναι η σχεδίαση των κλάσεων και των μεθόδων Οι αναλυτές πρέπει να δώσουν οδηγίες και συμβουλές στους προγραμματιστές που να εξηγούν ξεκάθαρα τι πρέπει να κάνει στο σύστημα Γιατί να σχεδιάσουμε (πιο λεπτομερώς) τις κλάσεις και μεθόδους; Κάποιοι υποστηρίζουν ότι αφού έχουμε επαναχρησιμοποιούμενες βιβλιοθήκες κλάσεων και έτοιμα εξαρτήματα (off-the-shelf components), ολεπτομερής σχεδιασμός των κλάσεων είναι σπατάλη χρόνου (και άρα δεν πρέπει να χρονοτριβούμε αλλά να ξεκινήσουμε αμέσως την κωδικοποίηση). Παρά ταύτα, η εμπειρία έχει δείξει ότι ο αναλυτική σχεδίαση είναι χρήσιμη παρά τις έτοιμες βιβλιοθήκες Ακόμα και οι προϋπάρχουσες κλάσεις πρέπει να κατανοηθούν, οργανωθούν και συναρμολογηθούν σωστά Επίσης η ομάδα θα πρέπει να δημιουργήσει και τις δικές της κλάσεις (application logic of the system) οι οποίες απαιτούν προσεκτική σχεδίαση U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 4

3 Τι θα μπορούσε να πάει στραβά αν δεν κάνουμε προσεχτικά τη σχεδίαση; What could go wrong without careful design? Τα μοντέλα που προέκυψαν από την φάση ανάλυσης μπορεί να μην μπορούν να υλοποιηθούν από την επιλεγμένη γλώσσα προγραμματισμού Τα αντικείμενα δεν θα μπορούν να επικοινωνούν σωστά, άρα το σύστημα δεν θα λειτουργεί σωστά Μια απρόσεχτη χρήστη στρωμάτων (layers) μπορεί να δημιουργήσει μεγάλη επιβάρυνση στην επικοινωνία (communication overhead) που μπορεί να επιβραδύνει πολύ το σύστημα Μια αλλαγή σε ένα τμήμα του συστήματος μπορεί να απαιτήσει αλλαγές σε πάρα πολλά άλλα σημεία του συστήματος Θα μπορούσαμε να ολοκληρώσουμε/βελτιώσουμε τη σχεδίαση επαναχρησιμοποιώντας σχεδιαστικά μοτίβα. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 5 Η σπουδαιότητα των κλάσεων προβλήματος The importance of problem domain classes Problem Domain Data Management Human Computer Interaction Physical Architecture Foundation Layer Έχουμε ήδη αρχίσει να σχεδιάζουμε τη δομή και την αλληλεπίδραση των κλάσεων του πεδίου προβλήματος (domain model classes). Οι κλάσεις των άλλων επιπέδων (system architecture, HCI, data management) θα εξαρτώνται από τις κλάσεις του στρώματος πεδίου εφαρμογής (problem domain layer). Άρα είναι σημαντικό να σχεδιάσουμε σωστά τις κλάσεις του πεδίου προβλήματος (problem domain classes). U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 6

4 Τι είναι η λεπτομερής σχεδίαση κλάσεων και μεθόδων; What is detailed class and method design? Η Μοντελοποίηση της Δομής και της Συμπεριφοράς (που είδαμε στα προηγούμενα μαθήματα) εντάσσεται πράγματι στη «σχεδίαση κλάσεων και μεθόδων» Τι πρέπει να κάνουμε παραπάνω; Πρέπει να θέσουμε στον ευατό μας ερωτήματα της μορφής: Είναι όλες οι κλάσεις που έχουμε ορίσει απαραίτητες; Μήπως μας λείπουν κάποιες; Είναι πλήρως ορισμένες; Μήπως λείπουν γνωρίσματα ή λειτουργίες; Μήπως έχουν περιττά γνωρίσματα ή λειτουργίες; Μήπως υπάρχουν συγκρούσεις κληρονομικότητας; Υπάρχει κάποια αναποτελεσματικότητα (inefficiency) στο σχέδιο, και πωςθαμπορούσαμενατηδιορθώσουμε; Μπορούμε να αντιστοιχίσουμε τις κλάσεις στη γλώσσα προγραμματισμού που θα χρησιμοποιήσουμε; Πως μπορούμε να επαναχρησιμοποιήσουμε κώδικα; U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 7 ραστηριότητες Λεπτομερούς Σχεδίασης Detailed Design Activities Πέραν των προηγουμένων πρέπει να ελέγξουμε ότι τίποτα δεν λείπει από το μοντέλο του προβλήματος οριστικοποιήσουμε την ορατότητα των γνωρισμάτων και λειτουργιών σε κάθε κλάση αποφασίσουμε την υπογραφή της κάθε λειτουργίας κάθε κλάσης ορίσουμε περιορισμούς που πρέπει να σέβονται τα αντικείμενα U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 8

5 Υπενθυμιστικό: Αντικειμενοστρεφισμός, ιαγράμματα Κλάσεων Refresher: Object Orientation, Class Diagrams Encapsulation Hiding the content of the object from outside view Communication only through object s methods Key to reusability Polymorphism Same message triggers different methods in different objects Dynamic binding means specific method is selected at run time Implementation of dynamic binding is language specific Need to be very careful about run time errors Need to ensure semantic consistency Inheritance Single inheritance -- one parent class Multiple inheritance -- multiple parent classes Inheritance conflict There are 3 perspectives for the design of a class diagram (of a conceptual model in general) Conceptual Independent of implementation. This is often called domain model. Specification Based on interfaces of the software, not the implementation Implementation Here we model the implementation classes. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 9 Σχεδιαστικά Κριτήρια Design Criteria

6 Σχεδιαστικά Κριτήρια Design Criteria A good design is one that balances trade-offs to minimize the total cost of the system over its lifetime [Yourdon 91] Γενικά σχεδιαστικά κριτήρια [A] Coupling (σύζευξη) [B] Cohesion (συνεκτικότητα / συνοχή). [C] Connascence Έχουμε ήδη συζητήσει αυτά τα κριτήρια (coupling, cohesion) στο μάθημα 12 (διαστρωμάτωση/πακετοποίηση) Σήμερα θα συζητήσουμε αυτά τα κριτήρια στο επίπεδο των κλάσεων και των μεθόδων U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 11 Σύζευξη και Συνοχή Coupling and Cohesion Σύζευξη (Coupling): μετρά το πόσο εξαρτημένες/ανεξάρτητες είναι οι μονάδες (κλάσεις, αντικείμενα, λειτουργίες) του συστήματος Συνοχή (Cohesion): μετρά το πόσο προσηλωμένη (single-minded) είναι μια μονάδα (κλάση, αντικείμενο, λειτουργία) Πλευρές της σύζευξης και της συνοχής: Σύζευξη Συνοχή αλληλεπίδρασης μεθόδου κληρονομικότηταςκλάσης γενίκευσης Coupling Interaction Inheritance Cohesion method class generalization U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 12

7 [A] Σύζευξη [A] Coupling Όσο μεγαλύτερη είναι η αλληλεξάρτηση τόσο πιθανότερο είναι αλλαγές σε ένα τμήμα του σχεδίου να απαιτούν αλλαγές και σε άλλα τμήματα του σχεδίου Άραθαθέλαμενατηνμειώσουμε προτιμητέο εξαρτήσεις εξαρτήσεις Τύποι σύζευξης: Αλληλεπίδρασης (Interaction) Κληρονομικότητας (Inheritance) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 13 Σύζευξη> Αλληλεπίδρασης Coupling> Interaction Η σύζευξη αλληλεπίδρασης αφορά την ανταλλαγή μηνυμάτων (message passing) προτιμητέο κλήσεις κλήσεις Law of Demeter [Lieberherr & Holland 89] («Only talk to your immediate friends ) minimize the number of objects that can receive messages from a given object an object could send a message to: itself an object that is contained in an attribute of the object (or one of its superclasses) an object that is passed as a parameter to a method an object that is created by the method an object that is stored in a global variable U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 14

8 Law of Demeter for Functions/Methods Αn object A can request a service (call a method) of an object instance B, but object A cannot reach through object B to access yet another object to request its services. Doing so would mean that object A implicitly requires greater knowledge of object B s internal structure. Instead, B s class should be modified if necessary so that object A can simply make the request directly of object B, and then let object B propagate the request to any relevant subcomponents. If the law is followed, only object B knows its internal structure. More formally, the Law of Demeter for functions requires that a method M of an object O may only invoke the methods of the following kinds of objects: O itself M's parameters any objects created/instantiated within M O's direct component objects In particular, an object should avoid invoking methods of a member object returned by another method. Advantages: The resulting software tends to be more maintainable and adaptable (as objects are less dependent on the internal structure of other objects, object containers can be changed without reworking their callers). Disadvantage: Sometimes it requires writing a large number of small wrapper methods (sometimes referred to as Demeter Transmogrifiers) to propagate method calls to the components. Furthermore, a class s interface can become bulky as it hosts methods for contained classes resulting in a class without a cohesive interface. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 15 6 τύποι Αλληλεπιδραστικής Σύζευξης 6 types of Interaction Coupling No direct coupling The methods do not call one another Data Stamp Control Common or Global Content or Pathological The calling method passes a variable to the called method. If the variable is an object, the entire object is used by the called method to perform its function The calling method passes a composite variable to the called method, but the called method only uses a portion of the object to perform its function The calling method passes a control variable whose value will control the execution of the called method The methods refer to a global data area that is outside the individual objects A method of one object refers to the inside (hidden parts) of another object. This violates the principles of encapsulation (C++ allows this with friends ) Adapted from Dennis et al U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 16

9 Σύζευξη > Αλληλεπίδρασης: Οδηγίες Coupling> Interaction: Guidelines Πρέπει να την περιορίσουμε Εξαίρεση: Ορισμένες φορές κλάσεις που δεν ανήκουν στο μοντέλο προβλήματος πρέπει να ζευγμένες με κλάσεις του μοντέλου προβλήματος e.g. UIPerson can be coupled to Person for optimization the UIPerson could be pathologically coupled to Person class Παρά ταύτα, οι κλάσεις του μοντέλου προβλήματος δεν πρέπει ποτέ να είναι ζευγμένες με κλάσεις που δεν ανήκουν στο μοντέλο προβλήματος Presentation Logic Presentation Logic εξάρτηση Application Logic OK Application Logic εξάρτηση NOT OK U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 17 Σύζευξης>Κληρονομικότητας Coupling>Inheritance Αφορά τις κλάσεις σε μια ιεραρχία γενίκευσης/εξιδείκευσης υπερκλάση υπερκλάση υποκλάση υποκλάση Μερικοί πιστεύουν ότι η υψηλή ζεύξη δεν είναι άσχημη, άλλοι την θεωρούν άσχημη (λόγω των διαφόρων συγκρούσεων κληρονομικότητας που μπορεί να προκύψουν) Σχετικά ερωτήματα Πρέπει να μπορεί μια μέθοδος ορισμένη σε μια υποκλάση να καλέσει μια μέθοδο της υπερκλάσης; Πρέπει μια μέθοδος μιας υποκλάσης να αναφέρεται σε ένα γνώρισμα της υπερκλάσης; Αυτό βέβαια συχνά εξαρτάται από τη γλώσσα προγραμματισμού Συμβουλή: Να βεβαιωθούμε ότι η κληρονομικότητα χρησιμοποιείται μόνο με σημασία γενίκευσης/εξειδίκευσης (generalization/specialization semantics), δηλαδή υποσυνόλου, και ότι ικανοποιείται η αρχή της υποκατάστασης (substitutability) που θα δούμε αργότερα. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 18

10 [B] Συνοχή [B] Cohesion Συνοχή (Cohesion): μετράτοπόσοπροσηλωμένη(single-minded) είναι μια μονάδα (κλάση, αντικείμενο, λειτουργία) Πρέπει να την μεγιστοποιήσουμε προτιμητέο Τύποι Συνοχής: Μεθόδων Κλάσεων Γενίκευσης/Εξειδίκευσης U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 19 Συνοχή>Μεθόδων Cohesion>Method Μια μέθοδος πρέπει να κάνει μια εργασία (a method should solve a single task) Μια μέθοδος που κάνει πολλές λειτουργίες είναι πιο δύσκολο να κατανοηθεί και να επαναχρησιμοποιηθεί (a method performing multiple functions is more difficult to understand and reuse) Functional Sequential Communicational Procedural Temporal or Classical Logical Coincidental 7 types of method cohesion: A method performs one single task The method combines two functions: the output from the first is used as input to the second The method combines two functions that use the same attributes to execute The method supports multiple weakly related functions The method supports multiple related functions in time (e.g. initialize all attributes) The method supports multiple related functions but the choice of the specific function is chosen based on a control variable that is passed as parameter The method supports multiple unrelated functions Adapted from Dennis et al U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 20

11 Συνοχή>Κλάσεων Cohesion>Class Μια κλάση πρέπει να αναπαριστά ένα «πράγμα» (π.χ. πρόσωπο, αυτοκίνητο) Όλα τα γνωρίσματα και λειτουργίες της κλάσης πρέπει να είναι απαραίτητα για αναπαραστήσουν ένα πράγμα. Δεν πρέπει να υπάρχουν περιττά γνωρίσματα Η συνοχή μιας κλάσης είναι ο βαθμός συνοχής μεταξύ των γνωρισμάτων και των λειτουργιών της κλάσης Guidelines [G. Meyers 78] a class should contain multiple methods that are visible outside of the class and that each visible method only performs a single function (I.e. functional cohesion) a class should have methods that only refer to attributes or other methods defined with the class or its superclasses a class should not have any control-flow couplings between its methods U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 21 4 τύποι συνοχής Κλάσεων 4 types of Class Cohesion Ideal The class has no mixed cohesions Mixed-Role The class has one or more attributes that relate objects of the class to other objects on the same layer (e.g. the problem domain layer), but the attribute(s) have nothing to do with the underlying semantics of the class Mixed-Domain The class has one or more attributes that relate objects of the class to other objects on a different layer. So these attributes have nothing to do with the underlying semantics of the thing that the class represents. Mixed-Instance The class represents different types of objects meaning that different instances only use a portion of the full definition of the class. The class should be decomposed into separate classes. Adapted from Dennis et al U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 22

12 Παράδειγμα: Συνοχή μεθόδων έναντι συνοχής κλάσης Example: Method vs Class Cohesion Employee name address telephone roomnumber roomlength roomwidth Υψηλή συνοχή μεθόδου αλλά Χαμηλή συνοχή κλάσης calculateroomspace() U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 23 Συνοχή>Γενίκευση/Εξειδίκευση Cohesion>Generalization/Specialization Για ποιο λόγο οι κλάσεις μιας ιεραρχίας κληρονομικότητας συνδέονται; Η σύνδεση τους έχει πράγματι σημασία γενίκευσης/εξιδείκευσης (generalization/specialization semantics); Ή μήπως συνδέονται μόνο για λόγους επαναχρησιμοποίησης; Σε ποιο βαθμό μια υποκλάση πράγματι χρειάζεται αυτά που κληρονομεί; U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 24

13 Για ποιο λόγο οι κλάσεις μιας ιεραρχίας κληρονομικότητας συνδέονται; Uses of Inheritance for Specialization: The child class is a special case of the parent class; in other words, the child class is a subtype of the parent class Specification: The parent class defines behavior that is implemented in the child class but not in the parent class Construction: The child class makes use of the behavior provided by the parent class, but is not a subtype of the parent class Extension: The child class adds new functionality to the parent class, but does not change any inherited behavior Limitation: The child class restricts the use of some of the behavior inherited from the parent class Combination: The child class inherits behavior from two or more parent classes U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 25 Συνοχή>Γενίκευση/Εξειδίκευση Cohesion>Generalization/Specialization Vehicle servicedate maximumaltitude takeoffspeed checkaltitude() takeoff() Πολύ Χαμηλή Συνοχή Κληρονομικότητας LandVehicle registrationdate register() U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 26

14 Παράδειγμα: Αναδόμηση για ικανοποίηση της αρχής LSP Example: Restructuring for satisfying LSP Αρχή Υποκατάσταστης του Liskov (Liskov Substitution Principle, LSP) Σε μια ιεραρχία κλάσεων πρέπει να είναι δυνατόν να μεταχειριστούμε ένα εξειδικευμένο αντικείμενο ωσάν να ήταν ένα βασικό (γενικό) αντικείμενο ChequeAccount accountnum balance credit debit Account accountnum balance credit MortgageAccount interestrate calculateinterest debit ChequeAccount debit MortgageAccount interestrate calculateinterest debit U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 27 Παράδειγμα (1/3) class Rectangle { public: void setwidth(double w) {itswidth=w;} void setheight(double h){itsheight=h;} double getarea() {return itsheight * itswidth;} private: double itswidth; double itsheight; }; class Square: public Rectangle { }; void Square::setWidth(double w) { Rectangle::setWidth(w); Rectangle::setHeight(w); }; void Square::setHeight(double w) { Rectangle::setWidth(w); Rectangle::setHeight(w); }; U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 28

15 Παράδειγμα(2/3) void f(rectangle* r) { r->setwidth(32); } Παραβίαση της LSP: Ησυνάρτησηf δεν θα λειτουργήσει σωστά εάν το r είναι τετράγωνο (αν είναι στιγμυότυπο της Square) class Rectangle { public: virtual void setwidth(double w) {itswidth=w;} virtual void setheight(double h){itsheight=h;} double getarea() {return itsheight * itswidth;} private: double itswidth; double itsheight; }; Θα μπορούσαμε να διορθώσουμεαυτότοπρόβλημα επιτρέποντας πολυμορφισμό: We could fix this problem by allowing polymorphism U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 29 Παράδειγμα (3/3) void g(rectangle* r) { r->setwidth(5); r->setheight(4); assert(r->getarea()==20); } Θα λειτουργήσει σωστά εάν το r είναι παραλληλόγραμμο Δεν θα λειτουργήσει σωστά εάν το r είναι τετράγωνο Αρα η g() είναι εύθραυστη (fragile) διότι παραβιάσει την LSP Η κλάση Square παραβιάζει την «αναλλοίωτη συνθήκη» της κλάσης Rectangle, ήτοι την ανεξαρτησία μεταξύ πλάτους και ύψους. Αυτή η αναλλοίωτη θα μπορούσε να εκφραστεί στην OCL (που θα δούμε σε επόμενο μάθημα). Συγκεκριμένα θα εκφραζόταν ως μια μετα-συνθήκη (postcondition) της setwidth που λέει το height διατηρεί την τιμή του. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 30

16 Αναδομώντας το Σχέδιο Restructuring the Design Factoring Optimizing Translate to Implementation Language Παραγοντοποίηση Factoring Factoring is the process of separating out aspects of a method or class into a new method or class to simplify the overall design. For example we may realize that some classes of the design share a similar definition. In this case we can factor out the similarities and define a new class. The new class is then related with the existing classes through generalization, aggregation or association. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 32

17 Βελτιώνοντας το Σχέδιο Optimizing the Design Κατανοησιμότητα έναντι Αποδοτικότητας There is a trade-off between understandability and efficiency Η αύξηση της κατανοησιμότητας ενός σχεδίου συχνά οδηγεί σε μείωση τα αποδοτικότητας (inefficiencies) Αν εστιάσουμε μόνο στην αποδοτικότητα συχνά καταλήγουμε σε σχέδια που είναι δύσκολο να κατανοηθούν από κάποιον άλλο Μερικοί τρόποι βελτίωσης της αποδοτικότητας ενός σχεδίου Αναθεώρηση Μονοπατιών Πρόσβασης (Review Access Paths) Αναθεώρηση Γνωρισμάτων (Review Attributes) Χρήση παραγόμενων γνωρισμάτων (derived attributes) όπου κρίνεται απαραίτητο (to cache values) Αναθεώρηση της σειράς εκτέλεσης των εντολών σε μεθόδους που χρησιμοποιούνται συχνά (αυτό ανήκει στη «Σχεδίαση Μεθόδων» που θα δούμε αργότερα) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 33 Βελτίωση Σχεδίου: Αναθεωρώντας τα Μονοπάτια Πρόσβασης Optimizing the Design: Reviewing the Access Paths Αν ένα μήνυμα πρέπει να διασχίσει ένα μακρύ μονοπάτι και τέτοιου είδους κλήσεις γίνονται συχνά, είναι καλύτερα να δημιουργήσουμε μια πλεονάζουσα άμεση σύνδεση A B C D E F G A B C D E F G a:g U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 34

18 Βελτίωση Σχεδίου: Αναθεωρώντας τα Γνωρίσματα Optimizing the Design: Reviewing the Attributes Αν το γνώρισμα a2 της B χρησιμοποιείται μόνο από τις μεθόδους seta2 και geta2 και μόνο η κλάση A χρησιμοποιεί αυτές τις 2 μεθόδους, τότε το a2 καλύτερα να τοποθετηθεί στην A. A B a2 seta2(val) geta2() A B a2 U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 35 Παρένθεση: AND/XOR για σχέσεις και κλάσεις συσχέτισης Parenthesis: AND/XOR for Relationships (also for associations in class diagrams) Εδώ περιγράφουμε αυτούς τους περιορισμούς σε EntityRelationship diagrams, αλλα γενικά μπορούμε να τους έχουμε και σε διαγράμματα κλάσεων της UML Order XOR contains requests Part Service Μια παραγγελία είτε περιέχει ένα Part ή ένα Service. Ποτέ και τα δύο. Order AND FilledBy Generates Shipment Invoice Για μια παραγγελία, αν υπάρχει τιμολόγιο τότε υπάρχει και αποστολή και το αντίστροφο. For any given order, whenever there is at least one invoice there is also at least one shipment and vice versa. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 36

19 Αντιστοίχηση Κλάσεων Πεδίου Εφαρμογής σε Κλάσεις Υλοποίησης Mapping Problem Domain Classes to Implementation Languages Αντιστοίχηση Κλάσεων Πεδίου Εφαρμογής σε Κλάσεις Υλοποίησης Mapping Problem Domain Classes to Implementation Languages Συγκρούσεις Πολλαπλής Κληρονομικότητας (Multiple Inheritance Conflicts) Απαλοιφή Πολλαπλής Κληρονομικότητας Αν η υλοποίηση γίνει σε μια γλώσσα προγραμματισμού που δεν υποστηρίζει πολλαπλή κληρονομικότητα, τότε πρέπει να την απαλείψουμε από τα διαγράμματα κλάσεων Απαλοιφή Κληρονομικότητας Αν η υλοποίηση γίνει σε μια γλώσσα προγραμματισμού που δεν υποστηρίζει κληρονομικότητα, τότε πρέπει να την απαλείψουμε από τα διαγράμματα κλάσεων Υποστηρίζοντας Πολλαπλή και Δυναμική Ταξινόμηση (Handling Multiple and Dynamic Classification) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 38

20 Κληρονομικότητα στις Γλώσσες Προγραμματισμού Inheritance in PLs Διαφορετικές γλώσσες αντιμετωπίζουν την κληρονομικότητα διαφορετικά Άρα στη φάση αυτή της σχεδίασης πρέπει να γνωρίζουμε την γλώσσα προγραμματισμού που θα χρησιμοποιήσουμε Feature C++ Eiffel Java multiple inheritance yes yes no Η προσβασιμότητα των κληρονομούμενων στοιχείων επίσης εξαρτάται από τη γλώσσα προγραμματισμού In UML, visibility (private, public, protected) applies to methods and attributes Let A be a class with some private and public attributes and methods. Let B be a class defined as a subclass of class A. What B inherits? In Java, we can answer this question right away. In C++ we should see how B has been declared as subclass of A C++ allows visibility at the class level. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 39 Κληρονομικότητα και Ορατότητα Inheritance and Visibility In C++, class B may have been defined as: class B: public A class B: protected A class B: private A Accessibility rules (C++) The private properties of A are not visible to class B objects (in every case) If base class A is defined as public, the visibility of inherited properties does not change in derived class B (public are still public and protected are still protected) If base class A is defined as protected, the visibility of inherited public properties changes in derived class B to protected If base class A is defined as private, the visibility of inherited public and protected properties changes in derived class B to private. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 40

21 Συγκρούσεις Κληρονομικότητας: Πολλαπλή Κληρονομικότητα Inheritance Conflicts: Multiple Inheritance [1] Two (or more) attributes (or methods) have the same name and semantics [2] Two (or more) attributes (or methods) have the same name but different semantics (homonyms) [3] Two (or more) attributes (or methods) have different names but identical semantics (synonyms) sa a1 a2 sb a1 a3 isa C1 Here we could be in case [1] or [2] U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 41 Συγκρούσεις Κληρονομικότητας: Πολλαπλή Κληρονομικότητα Inheritance Conflicts: Multiple Inheritance [1] Two (or more) attributes (or methods) inherited from different superclasses have the same name and semantics Employee -name -salary Robot -name -fuel name Robot-Employee U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 42

22 Συγκρούσεις Κληρονομικότητας: Πολλαπλή Κληρονομικότητα Inheritance Conflicts: Multiple Inheritance [2] Two (or more) attributes (or methods) have the same name but different semantics (homonyms) Employee Robot Student Teacher -phone -phone -year -department -degree -department Robot-Employee TeachingAssistant Phone (of employee) Phone (of robot s technician) A student of CSD may be assistant to a course of the Math. Dep. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 43 Συγκρούσεις Κληρονομικότητας: Πολλαπλή Κληρονομικότητα Inheritance Conflicts: Multiple Inheritance [3] Two (or more) attributes (or methods) inherited from different superclasses have different names but they have identical semantics (synonyms) Employee Robot Employee Robot -Name -Nickname -id -salary -speciality -serialnum -fuel -type Robot-Employee Name Nickname semantically speaking Robot-Employee Id serialnum speciality type U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 44

23 Απαλοιφή Πολλαπλής Κληρονομικότητας Eliminating Multiple Inheritance Απαλοιφή Πολλαπλής Κληρονομικότητας Μέθοδος 1: Ισοπέδωση των Επιπλέον Υπερκλάσεων sa a1 a2 sb a3 a4 sc a7 a8 sa a1 a2 sc a7 a8 C1 C2 C1 a3 a4 C2 a3 a4 isa Ισοπέδωση της κληρονομικότητας αντιγράφοντας τα γνωρίσματα και τις μεθόδους των επιπλέον υπερκλάσεων σε όλες τις υποκλάσεις τους και τέλος διαγραφή αυτών των υπερκλάσεων από το σχέδιο U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 46

24 Απαλοιφή Πολλαπλής Κληρονομικότητας Μέθοδος 2: Μετατροπή των Επιπλέον Υπερκλάσεων σε Συσχετίσεις Convert the Extra Superclasses to Associations Μετατροπή των επιπλέον υπερκλάσεων σε συσχετίσεις με την κατάλληλη πολλαπλότητα sa a1 a2 sb a3 a4 sc a7 a8 sa a1 a2 sc a7 a8 C1 C2 C1 sb C a a4 isa Υπόθεση: sb μπορεί να είναι είτε συγκεκριμένη (concrete) ή αφηρημένη(abstract). Είναι όλα εντάξει; U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 47 Απαλοιφή Πολλαπλής Κληρονομικότητας Μέθοδος 2: Μετατροπή των Επιπλέον Υπερκλάσεων σε Συσχετίσεις (ΙΙ) sa a1 a2 sb a3 a4 sc a7 a8 sa a1 a2 sc a7 a8 C1 C2 C1 sb C a a4 isa {XOR} Υπόθεση: sb μπορεί να είναι είτε συγκεκριμένη (concrete) ήαφηρημένη(abstract). U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 48

25 Μέθοδος 1 έναντι Μεθόδου 2 sa sc sa sc a1 a2 a7 a8 a1 a2 a7 a8 C1 C2 C1 sb C2 a3 a4 a3 a a a4 {XOR} Μέθοδος 2 θετικό: η (εννοιολογική) κλάση (sb) διατηρείται αρνητικό: αυξάνεται η ανταλλαγή μηνυμάτων και πρέπει να προσέχουμε τον περιορισμό XOR (υπολογιστικά πιο ακριβό) Υπόδειξη: Χρησιμοποιείστε τη μέθοδο 2 μόνο αν η επιπλέον υπερκλάση (sb) είναι concrete (not abstract). Αλλιώς χρησιμοποιείστε τη μέθοδο 1. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 49 Απαλοιφή Κληρονομικότητας Eliminating Inheritance

26 Απαλοιφή Κληρονομικότητας Μέθοδος 1: Ισοπέδωση (Flattening) Έστω ότι οι sa, sb και sc είναι όλες αφηρημένες sa a1 a2 C1 sb a3 a4 C2 sc a7 a8 C1 a1 a2 a3 a4 C2 a3 a4 a7 a8 U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 51 Απαλοιφή Κληρονομικότητας Μέθοδος 2: Μετατροπή όλων των Υπερκλάσεων σε Συσχετίσεις Convert all Superclasses to Associations Έστω ότι οι sa, sb και sc είναι όλες αφηρημένες sa a1 a2 sb a3 a4 sc a7 a8 1 sa a1 a2 sc a7 a8 1 C1 C2 1 C1 sb a a4 C2 1 {XOR} U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 52

27 Απαλοιφή Κληρονομικότητας Μέθοδος 2: Μετατροπή όλων των Υπερκλάσεων σε Συσχετίσεις (2) Έστω ότι οι sa, sb και sc είναι όλες συγκεκριμένες (concrete) sa a1 a2 sb a3 a4 sc a7 a8 1 sa a1 a2 sc a7 a8 1 C1 C C1 sb a a4 C {XOR} U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 53 Πολλαπλή Ταξινόμηση Multiple Classification

28 Πολλαπλή Ταξινόμηση και Συγκρούσεις Multiple classification and conflicts Nixon Diamond Quaker pacifist:yes Republican pacifist:no Nixon is a Quaker. Quakers are typically pacifists. Nixon is a Republican. Republicans are typically not pacifists. What to conclude? * "Nixon is a pacifist." or * "Nixon is not a pacifist."? Nixon instance Of U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 55 Πολλαπλή Ταξινόμηση Multiple Classification Person CrewMember TicketAgent Passenger Έστω ότι βάσει του μοντέλου προβλήματος, ένα μέλος τους πληρώματος μπορεί να είναι και επιβάτης και έστω ότι περιστασιακά μπορεί να εργαστεί και ως πράκτορας εισιτηρίων ΓιανατουλοποιήσουμεαυτόσεJava θα χρειαζόμασταν πολλαπλή και δυναμική ταξινόμηση (multiple and dynamic classification), κάτι το οποίο δεν υποστηρίζεται. Λύση 1: Για να προσπεράσουμε την πολλαπλή ταξινόμηση, μπορούμε να ορίσουμε join classes Person CM TA P CM & TA CM & P TM & P CM & TA & P Αυτή όμως η λύση μπορεί να απαιτήσει τη δημιουργία εκθετικού πλήθους κλάσεων. Και δεν δίνει λύση στην ανάγκη δυναμικής ταξινόμησης U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 56

29 Πολλαπλή Ταξινόμηση (ΙΙ) Multiple Classification (II) Person CrewMember TicketAgent Passenger Έστω ότι βάσει του μοντέλου προβλήματος, ένα μέλος τους πληρώματος μπορεί να είναι και επιβάτης και έστω ότι περιστασιακά μπορεί να εργαστεί και ως πράκτορας εισιτηρίων Λύση 2: Delegation 1 Person CrewMember TicketAgent Passenger Delegation είναι ένας τρόπος επέκτασης της συμπεριφοράς μιας κλάσης χωρίς τη χρήση κληρονομικότητας Είναι χρήσιμη όταν η πολλαπλή και δυναμική ταξινόμηση δεν υποστηρίζεται από τη γλώσσα προγραμματισμού U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 57 Για δική σας εξάσκηση For homework Female Physiotherapist Male sex {complete} Person Role <<dynamic>> patient Nurse Doctor Surgeon FamilyDoctor Patient U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 58

30 Προδιαγραφή Μεθόδων Method Specification Προδιαγραφή Μεθόδων Method Specification Σκοπός: Να δώσουμε επαρκείς πληροφορίες στους προγραμματιστές Δεν υπάρχει καθιερωμένος μορφότυπος για αυτές τις περιγραφές Μερικοί οργανισμοί χρησιμοποιούν φόρμες της μορφής: Method Method Name: Name: Class Class Name: Name: ID: ID: Programmer: Programmer: Date Date due: due: Programming Programming Language: Language: Triggers/Events: Triggers/Events: Arguments Arguments Received: Received: Data Data Type: Type: Notes: Notes: Messages Messages Sent Sent and and Arguments Arguments Passed: Passed: ClassName.MethodName: ClassName.MethodName: DataType: DataType: Notes: Notes: Arguments Arguments Returned: Returned: Data Data Type: Type: Algorithm Algorithm Specification: Specification: Notes: Notes: Notes: Notes: U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 60

31 Προδιαγραφή Μεθόδων Method Specification Method Method Name: Name: Programmer: Programmer: Programming Programming Language: Language: Triggers/Events: Triggers/Events: Class Class Name: Name: ID: ID: Date Date due: due: E.g. event-driven programming Arguments Arguments Received: Received: Data Data Type: Type: Notes: Notes: Messages Messages Sent Sent and and Arguments Arguments Passed: Passed: ClassName.MethodName: ClassName.MethodName: DataType: DataType: Notes: Notes: Recall behavioural modeling (sequence diagrams, communication diagrams) Arguments Arguments Returned: Returned: Data Data Type: Type: Algorithm Algorithm Specification: Specification: Notes: Notes: Notes: Notes: Ψευδοκώδικας (Pseudocode) Δομημένα Αγγλικά (Structured English) Διάγραμμα Δραστηριοτήτων (Activity Diagr U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 61 Περιορισμοί και Συμβόλαια Constraints and Contracts

32 Περιορισμοί και Συμβόλαια Constraints and Contracts Person name age increaseage() employment Company name hire(p:person) fire(p:person) promote(p:person, incr:money) Μπορεί ένας ανήλικος να εργαστεί σε μια εταιρία; Μπορεί μια εταιρία να προσλάβει ένα άτομο που είναι ήδη εργαζόμενος της; Μπορεί μια προαγωγή να μειώσει το μισθό; Ένα σύνολο περιορισμών που εγγυήσεων για κλάσεις και μεθόδους Θα μπορούσαμε να τους εκφράσουμε σε φυσική γλώσσα, δομημένα αγγλικά (ή ελληνικά), ψευδοκώδικα, ή σε μια τυπική γλώσσα (formal language). U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 63 Περιορισμοί και Συμβόλαια Constraints and Contracts Ο σχεδιαστής πρέπει να αποφασίσει πως θα διαχειριστεί μια παραβίαση ενός περιορισμού Διακοπή (abort), Ακύρωση/Επανόρθωση (undo), εναπόθεση στο χρήστη (let user handle it) Ο σχεδιαστής πρέπει να σχεδιάσει τα λάθη (errors) που το σύστημα αναμένεται να διαχειριστεί. Είναι καλύτερα να μην αναθέσουμε αυτό το θέμα στους προγραμματιστές Οι παραβιάσεις ενός περιορισμού είναι γνωστές ως εξαιρέσεις (exceptions) σε γλώσσες προγραμματισμού όπως η C++/Java. Στο επόμενο μάθημα θα δούμε μια τυπική γλώσσα (που ονομάζεται OCL) για την έκφραση περιορισμών U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 64

33 υνατότητες Επαναχρησιμοποίησης Opportunities to Reuse Εντοπίζοντας υνατότητες Επαναχρησιμοποίησης Identifying Opportunities for Reuse Θα μπορούσαμε να εκμεταλευτούμε Frameworks Class libraries frameworks tend to be more domain specific. Frameworks may be implemented using class libraries Design Patterns U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 66

34 Εντοπίζοντας υνατότητες Επαναχρησιμοποίησης Identifying Opportunities for Reuse Frameworks Frameworks Is a set of implemented classes that can be used as the basis for implementing the system Most frameworks allow you to create subclasses Frameworks like CORBA and DCOM can be used to specify the physical architecture layer of the system Object-persistence frameworks can be used to add persistence to the problem domain classes and thus specify the data management layer of the system. For instance see Spring (http://www.springframework.org/) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 67 Σχεδιαστικά Μοτίβα Design Patterns

35 Identifying Opportunities for Reuse Design patterns A pattern is a commonly occurring reusable piece in software system that provides a certain set of functionality. Using patterns in modeling of systems helps in keeping design standardized and more importantly, minimizes the reinventing of the wheel in the system design. How design patterns relate to UML? The patterns need to be captured and documented in a sufficiently descriptive manner so that they can be referred for future use. UML provides the perfect tools to do just this. The class diagram in UML can be used to capture the patterns identified in a system. In addition, UML has a sufficiently extensive and expressive vocabulary to capture the details of patterns. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 69 Κατηγοριοποίηση Προτύπων Categorizing Patterns Based on how they are to be used, patterns are primarily categorized as: Creational They define mechanisms for instantiating objects. The implementation of the creational pattern is responsible for managing the lifecycle of the instantiated object. Examples: Factory, Singleton Structural They define compositions of objects and their organization to obtain new and varied functionality. Examples: Adapter, Proxy. Behavioral They define interaction between different objects. Examples: Command, Iterator U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 70

36 Behavioral Patterns Command Encapsulate commands in objects so that you control their selection and sequencing, queue them, and othewise manipulate them Example: Design of a Word Processor that supports undoing and redoing commands AbstractCommand doit() undoit() InsertStringCommand «constructor» InsertStringCommand(position:Int, length:int) «misc» doit() undoit() DeleteCommand «constructor» DeleteCommand(position:Int, length:int) «misc» doit() undoit()... U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 71 Behavioral Patterns> Command Design of a Word Processor supporting Undo and Redo materialize each command as an object with do and undo methods. when the user tells the WP to do something instead of performing the command, it creates a new object using the appropriate constructor (e.g, an InsertStringCommand object) it then calls the object s doit method to execute the command The WP also puts the command object in a data structure that allow the WP to maintain a history of what commands have been executed. This allows the WP to undo commands in the reverse order that they were issued by calling their undo methods. AbstractCommand doit() undoit() InsertStringCommand «constructor» InsertStringCommand(position:Int, length:int) «misc» doit() undoit() DeleteCommand «constructor» DeleteCommand(position:Int, length:int) «misc» doit() undoit() U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 72...

37 Behavioral Patterns> Command Design of a Word Processor supporting Undo and Redo Invoker AbstractCommand 0..* < Manages 1 Command Manager 1 doit() undoit() ConcreteCommand 0..* doit() undoit() public abstract class AbstractCommand{ public final static CommandManager manager =new CommandManager(); public abstract boolean doit(); // returns True if successful public abstract boolean undoit(); } U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 73 Behavioral Patterns> Command Design of a Word Processor supporting Undo and Redo (2) AbstractCommand doit() undoit() InsertStringCommand InsertStringCommand (position:int, length:int) doit() undoit() 0..* < Manages 1 Command Manager class InsertStringCommand extends AbstractCommand{ InsertStringCommand(Document doc, int position, String str){ this.document = document; this.position = position; this.str = str; manager.invokecommand(this); } public boolean doit(){ try{ document.insertstringcommand(position, str); } catch (Exception e){ return false; } return true; } U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 74

38 Behavioral Patterns> Command Design of a Word Processor supporting Undo and Redo (3) AbstractCommand 0..* < Manages 1 Command Manager class CommandManager{ private int maxhistorylength = 20; private LinkedList history = new LinkedList(); private LinkedList redolist = new LinkedList(); public void invokecommand(abstractcommand command){ if (command instanceof Undo){ undo(); return; } if (command instanceof Redo){ redo(); return; } } if (command.doit()) { addtohistory(command); } else { history.clear() } if (redolist.size()>0) redolist.clear(); interface Undo { } interface Redo{ } Private void addtohistory(abstractcommand command){ history.addfirst(command); if (history.size() > maxhistorylength) { history.removelast(); } } U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 75 Behavioral Patterns> Command Design of a Word Processor supporting Undo and Redo (4) Command Manager Private void undo(){ if (history.size() >0) { AbstractCommand undocommand; undocommand = (AbstractCommand) history.removefirst(); undocommand.undoit(); redolist.addfirst(undocommand); } } Private void redo(){ if (redolist.size() >0) { AbstractCommand redocommand; redocommand = (AbstractCommand) redolist.removefirst(); redocommand. doit(); history.addfirst (redocommand); } } U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 76

39 Design Patterns Design patterns is a useful mechanism to document and learn about common reusable design approaches. Design patterns can reduce the designing time for building systems and ensure that the system is consistent and stable in terms of architecture and design. The UML class diagrams provide an easy way to capture and document Design patterns Suppose that you want to specify a software component. If that component could be based on a design pattern you could just mention it and give a small description. You don t necessarily have to redefine the pattern (i.e. provide the detailed class diagram and the various interaction diagrams) Some UML tools support design patterns. They have a pre-built catalog of well-known design patterns. The design patterns can be easily pulled in into your design as templates and then customized for your application design. More on patterns at CS352 - Software Engineering You can also see ( it is a university course dedicated to patterns in Java) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 77 Reading and References Systems Analysis and Design with UML Version 2.0 (2nd edition) by A. Dennis, B. Haley Wixom, D. Tegarden, Wiley, Chapter 10 Requirements Analysis and System Design (2nd edition) by Leszek A. Maciaszek, Addison Wesley, 2005, Chapter 5 and 6 Inheritance Hierarchies in KR and Programming Languages, Lenzerini, Nardi, Simi, 1991 Patterns in Java, Mark Grand, Wiley, 1998 Using Design Patterns in UML, Mandar Chitnis, Pravin Tiwari, & Lakshmi Ananthamurthy Slides of John Mylopoulos, University of Toronto Αντικειμενοστρεφής Σχεδίαση: UML, Αρχές, Πρότυπα και Ευρετικοί Κανόνες, Α. Χατζηγεωργίου, Κλειδάριθμος 2005 U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas 78

Test Data Management in Practice

Test Data Management in Practice Problems, Concepts, and the Swisscom Test Data Organizer Do you have issues with your legal and compliance department because test environments contain sensitive data outsourcing partners must not see?

Διαβάστε περισσότερα

SOAP API. https://bulksmsn.gr. Table of Contents

SOAP API. https://bulksmsn.gr. Table of Contents SOAP API https://bulksmsn.gr Table of Contents Send SMS...2 Query SMS...3 Multiple Query SMS...4 Credits...5 Save Contact...5 Delete Contact...7 Delete Message...8 Email: sales@bulksmsn.gr, Τηλ: 211 850

Διαβάστε περισσότερα

Διάγραμμα Κλάσεων. Class Diagram

Διάγραμμα Κλάσεων. Class Diagram Διάγραμμα Κλάσεων Class Diagram Γενικά Ορίζει τις κλάσεις αντικειμένων σε ένα σύστημα, τις μεθόδους και τις συναρτήσεις τους, και τις συσχετίσεις μεταξύ των κλάσεων. Περιγράφουν την δομή και συμπεριφορά

Διαβάστε περισσότερα

Business English. Ενότητα # 9: Financial Planning. Ευαγγελία Κουτσογιάννη Τμήμα Διοίκησης Επιχειρήσεων

Business English. Ενότητα # 9: Financial Planning. Ευαγγελία Κουτσογιάννη Τμήμα Διοίκησης Επιχειρήσεων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Business English Ενότητα # 9: Financial Planning Ευαγγελία Κουτσογιάννη Τμήμα Διοίκησης Επιχειρήσεων Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

ίκτυο προστασίας για τα Ελληνικά αγροτικά και οικόσιτα ζώα on.net e-foundatio //www.save itute: http:/ toring Insti SAVE-Monit

ίκτυο προστασίας για τα Ελληνικά αγροτικά και οικόσιτα ζώα on.net e-foundatio //www.save itute: http:/ toring Insti SAVE-Monit How to run a Herdbook: Basics and Basics According to the pedigree scheme, you need to write down the ancestors of your animals. Breeders should be able easily to write down the necessary data It is better

Διαβάστε περισσότερα

Chapter 2 * * * * * * * Introduction to Verbs * * * * * * *

Chapter 2 * * * * * * * Introduction to Verbs * * * * * * * Chapter 2 * * * * * * * Introduction to Verbs * * * * * * * In the first chapter, we practiced the skill of reading Greek words. Now we want to try to understand some parts of what we read. There are a

Διαβάστε περισσότερα

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής - Εβδομάδα 1

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής - Εβδομάδα 1 Στόχοι Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής (Αντικειμενοστρεφής Προγραμματισμός) Αντώνιος Συμβώνης www.math.ntua.gr/~symvonis Καλή γνώση βασικών αρχών προγραμματισμού Καλή γνώση βασικών αρχών αντικειμενοστρεφή

Διαβάστε περισσότερα

Διάλεξη 11: Αντικειμενοστρεφής Σχεδιασμός ΙII

Διάλεξη 11: Αντικειμενοστρεφής Σχεδιασμός ΙII Διάλεξη 11: Αντικειμενοστρεφής Σχεδιασμός ΙII Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: -Παράδειγμα Διαδικασίας Ανάπτυξης Λογισμικού: Βιβλίο Διευθύνσεων(συν.) - Φάση 3: Υλοποίηση(αναλυτικά

Διαβάστε περισσότερα

Οδηγίες χρήσης υλικού D U N S Registered

Οδηγίες χρήσης υλικού D U N S Registered Οδηγίες χρήσης υλικού D U N S Registered Οδηγίες ένταξης σήματος D U N S Registered στην ιστοσελίδα σας και χρήσης του στην ηλεκτρονική σας επικοινωνία Για οποιαδήποτε ερώτηση, σας παρακαλούμε επικοινωνήστε

Διαβάστε περισσότερα

Terabyte Technology Ltd

Terabyte Technology Ltd Terabyte Technology Ltd is a Web and Graphic design company in Limassol with dedicated staff who will endeavour to deliver the highest quality of work in our field. We offer a range of services such as

Διαβάστε περισσότερα

Web Data Mining ΕΡΓΑΣΤΗΡΙΟ 2 & 3. Prepared by Costantinos Costa Edited by George Nikolaides. EPL 451 - Data Mining on the Web

Web Data Mining ΕΡΓΑΣΤΗΡΙΟ 2 & 3. Prepared by Costantinos Costa Edited by George Nikolaides. EPL 451 - Data Mining on the Web EPL 451 - Data Mining on the Web Web Data Mining ΕΡΓΑΣΤΗΡΙΟ 2 & 3 Prepared by Costantinos Costa Edited by George Nikolaides Semester Project Microsoft Malware Classification Challenge (BIG 2015) More info:

Διαβάστε περισσότερα

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade Για να ελέγξετε το λογισμικό που έχει τώρα η συσκευή κάντε κλικ Menu > Options > Device > About Device Versions. Στο πιο κάτω παράδειγμα η συσκευή έχει έκδοση λογισμικού 6.0.0.546 με πλατφόρμα 6.6.0.207.

Διαβάστε περισσότερα

UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Secondary Education

UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Secondary Education www.xtremepapers.com UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Secondary Education *6301456813* GREEK 0543/03 Paper 3 Speaking Role Play Card One 1 March 30

Διαβάστε περισσότερα

Μοτίβα Σχεδίασης (Design Patterns)

Μοτίβα Σχεδίασης (Design Patterns) Ενότητα 6 Μοτίβα Σχεδίασης (Design Patterns) Ορισµοί βασικές έννοιες. Σηµαντικά µοτίβα σχεδίασης: Παρατηρητής (Observer). Πρόσοψη (Façade). Προσαρµογέας (Adapter). Πληρεξούσιος (Proxy). Μοναχοπαίδι (Singleton).

Διαβάστε περισσότερα

GREECE BULGARIA 6 th JOINT MONITORING

GREECE BULGARIA 6 th JOINT MONITORING GREECE BULGARIA 6 th JOINT MONITORING COMMITTEE BANSKO 26-5-2015 «GREECE BULGARIA» Timeline 02 Future actions of the new GR-BG 20 Programme June 2015: Re - submission of the modified d Programme according

Διαβάστε περισσότερα

Φροντιστήριο 5. Ημερομηνία: 01/12/2006 Θεματική Ενότητα: Μοντελοποίηση Συμπεριφοράς Θέμα: Διαγράμματα αλληλεπίδρασης και καταστάσεων

Φροντιστήριο 5. Ημερομηνία: 01/12/2006 Θεματική Ενότητα: Μοντελοποίηση Συμπεριφοράς Θέμα: Διαγράμματα αλληλεπίδρασης και καταστάσεων Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης Υπολογιστών Φθινόπωρο 2006 ΗΥ351: Ανάλυση και Σχεδίαση Πληροφοριακών Συστημάτων Information Systems Analysis and Design Φροντιστήριο 5 Ημερομηνία: 01/12/2006 Θεματική

Διαβάστε περισσότερα

Κάνοντας ευκολότερη τη δήλωση εισοδήματος από εργασία

Κάνοντας ευκολότερη τη δήλωση εισοδήματος από εργασία GREEK Κάνοντας ευκολότερη τη δήλωση εισοδήματος από εργασία Βελτιώνουμε τον τρόπο που δηλώνετε το εισόδημά σας από εργασία και τις μεταβολές της κατάστασής σας. Οι επιλογές μας αυτοεξυπηρέτησης παρέχουν

Διαβάστε περισσότερα

Από τις Κοινότητες Πρακτικής στις Κοινότητες Μάθησης

Από τις Κοινότητες Πρακτικής στις Κοινότητες Μάθησης Από τις Κοινότητες Πρακτικής στις Κοινότητες Μάθησης Νίκος Καρακαπιλίδης Industrial Management & Information Systems Lab MEAD, University of Patras, Greece nikos@mech.upatras.gr Βασικές έννοιες ιάρθρωση

Διαβάστε περισσότερα

Η κατάσταση της ιδιωτικότητας Ηλίας Χάντζος, Senior Director EMEA

Η κατάσταση της ιδιωτικότητας Ηλίας Χάντζος, Senior Director EMEA Η κατάσταση της ιδιωτικότητας Ηλίας Χάντζος, Senior Director EMEA Αθήνα 1 η Απριλίου 2015 Και γιατί μας νοιάζει ή μας αφορά; Νέα Ευρωπαική νομοθεσία Τίνος είναι τα προσωπικά δεδομένα; Και λοιπόν; Τα περιστατικά

Διαβάστε περισσότερα

STARTING STEPS IN GRAMMAR, FINAL TEST C TERM 2012 UNITS 1-18

STARTING STEPS IN GRAMMAR, FINAL TEST C TERM 2012 UNITS 1-18 STARTING STEPS IN GRAMMAR, FINAL TEST C TERM 2012 UNITS 1-18 Name.. Class. Date. EXERCISE 1 Answer the question. Use: Yes, it is or No, it isn t. Απάντηςε ςτισ ερωτήςεισ. Βάλε: Yes, it is ή No, it isn

Διαβάστε περισσότερα

Quantifying the Financial Benefits of Chemical Inventory Management Using CISPro

Quantifying the Financial Benefits of Chemical Inventory Management Using CISPro of Chemical Inventory Management Using CISPro by Darryl Braaksma Sr. Business and Financial Consultant, ChemSW, Inc. of Chemical Inventory Management Using CISPro Table of Contents Introduction 3 About

Διαβάστε περισσότερα

Modern Greek *P40074A0112* P40074A. Edexcel International GCSE. Thursday 31 May 2012 Morning Time: 3 hours. Instructions. Information.

Modern Greek *P40074A0112* P40074A. Edexcel International GCSE. Thursday 31 May 2012 Morning Time: 3 hours. Instructions. Information. Write your name here Surname Other names Edexcel International GCSE Centre Number Modern Greek Candidate Number Thursday 31 May 2012 Morning Time: 3 hours You do not need any other materials. Paper Reference

Διαβάστε περισσότερα

ΑΙΤΗΣΗ ΓΙΑ ΑΔΕΙΟΔΟΤΗΣΗ ΣΕ ΛΙΜΕΝΙΚΗ ΠΕΡΙΟΧΗ PERMIT APPLICATION WITHIN PORT AREA 1. ΣΤΟΙΧΕΙΑ ΕΤΑΙΡΕΙΑΣ COMPANY DETAILS

ΑΙΤΗΣΗ ΓΙΑ ΑΔΕΙΟΔΟΤΗΣΗ ΣΕ ΛΙΜΕΝΙΚΗ ΠΕΡΙΟΧΗ PERMIT APPLICATION WITHIN PORT AREA 1. ΣΤΟΙΧΕΙΑ ΕΤΑΙΡΕΙΑΣ COMPANY DETAILS ΑΙΤΗΣΗ ΓΙΑ ΑΔΕΙΟΔΟΤΗΣΗ ΣΕ ΛΙΜΕΝΙΚΗ ΠΕΡΙΟΧΗ 1. ΣΤΟΙΧΕΙΑ ΕΤΑΙΡΕΙΑΣ COMPANY DETAILS Ονομα εταιρείας / Company name Περίοδος άδειας: Start End Τίτλος έργου / Project title Permit duration Αριθμός εγγραφής

Διαβάστε περισσότερα

Modern Greek *P40075A0112* P40075A. Edexcel International GCSE. Monday 3 June 2013 Morning Time: 3 hours. Instructions. Information.

Modern Greek *P40075A0112* P40075A. Edexcel International GCSE. Monday 3 June 2013 Morning Time: 3 hours. Instructions. Information. Write your name here Surname Other names Edexcel International GCSE Centre Number Modern Greek Candidate Number Monday 3 June 2013 Morning Time: 3 hours You do not need any other materials. Paper Reference

Διαβάστε περισσότερα

- S P E C I A L R E P O R T - EMPLOYMENT. -January 2012- Source: Cyprus Statistical Service

- S P E C I A L R E P O R T - EMPLOYMENT. -January 2012- Source: Cyprus Statistical Service - S P E C I A L R E P O R T - UN EMPLOYMENT -January 2012- Source: Cyprus Statistical Service This Special Report is brought to you by the Student Career Advisory department of Executive Connections. www.executiveconnections.eu

Διαβάστε περισσότερα

3 Αλληλεπίδραση Αντικειμένων

3 Αλληλεπίδραση Αντικειμένων Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή

Διαβάστε περισσότερα

LESSON 16 (ΜΑΘΗΜΑ ΔΕΚΑΕΞΙ) REF : 102/018/16-BEG. 4 March 2014

LESSON 16 (ΜΑΘΗΜΑ ΔΕΚΑΕΞΙ) REF : 102/018/16-BEG. 4 March 2014 LESSON 16 (ΜΑΘΗΜΑ ΔΕΚΑΕΞΙ) REF : 102/018/16-BEG 4 March 2014 Family η οικογένεια a/one(fem.) μία a/one(masc.) ένας father ο πατέρας mother η μητέρα man/male/husband ο άντρας letter το γράμμα brother ο

Διαβάστε περισσότερα

Language Resources for Information Extraction:

Language Resources for Information Extraction: Language Resources for Information Extraction: demands and challenges in practice Christos Tsalidis tsalidis@neurolingo.gr Page 1 Different types of LRs Alphabets & Characters sets (Greek, English, Mixed)

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΓΙΑ ΧΡΗΣΗ ΤΟΥ ΕΡΓΑΛΕΙΟΥ RATIONAL ROSE

ΟΔΗΓΙΕΣ ΓΙΑ ΧΡΗΣΗ ΤΟΥ ΕΡΓΑΛΕΙΟΥ RATIONAL ROSE ΟΔΗΓΙΕΣ ΓΙΑ ΧΡΗΣΗ ΤΟΥ ΕΡΓΑΛΕΙΟΥ RATIONAL ROSE Το path που ακολουθούμε για να ανοίξουμε το εργαλείο είναι: Start All Programs Lab Programs Rational Software Rational Rose Enterprise Edition 1 ο ΔΙΑΓΡΑΜΜΑ:

Διαβάστε περισσότερα

ιαδικτυακές Εφαρµογές

ιαδικτυακές Εφαρµογές ιαδικτυακές Εφαρµογές µε Java2 Στοιχεία ικτυακής Επικοινωνίας Όροι IP address 32bit αριθµός που χρησιµοποιείται από το Internet Protocol για την παράδοση δεδοµένων στο σωστό υπολογιστή στο δίκτυο. Port

Διαβάστε περισσότερα

Cambridge International Examinations Cambridge International General Certificate of Secondary Education

Cambridge International Examinations Cambridge International General Certificate of Secondary Education Cambridge International Examinations Cambridge International General Certificate of Secondary Education GREEK 0543/03 Paper 3 Speaking Role Play Card One For Examination from 2015 SPECIMEN ROLE PLAY Approx.

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές)

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές) ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές) Βρείτε τα λάθη Στο πρόγραμμα στην επόμενη διαφάνεια υπάρχουν διάφορα λάθη Ποια είναι? public abstract

Διαβάστε περισσότερα

Συνέδριο Επιβίωσης των Κυπριακών Επιχειρήσεων. Επανεξετάζοντας την στρατηγική της επιχείρησης

Συνέδριο Επιβίωσης των Κυπριακών Επιχειρήσεων. Επανεξετάζοντας την στρατηγική της επιχείρησης www.pwc.com Συνέδριο Επιβίωσης των Κυπριακών Επιχειρήσεων Επανεξετάζοντας την στρατηγική της επιχείρησης 2 Στρατηγική Οικονομική διαχείριση Επιβιώνοντας στην κρίση Αναδιοργάνωση / αναδόμηση Ανθρώπινο Δυναμικό

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ ΚΑΠΝΙΣΤΙΚΕΣ ΣΥΝΗΘΕΙΕΣ ΓΟΝΕΩΝ ΚΑΙ ΕΠΙΡΡΟΗ ΤΟΥΣ ΣΤΗΝ ΕΝΑΡΞΗ ΤΟΥ ΚΑΠΝΙΣΜΑΤΟΣ ΣΤΟΥΣ ΕΦΗΒΟΥΣ Ονοματεπώνυμο Φοιτήτριας: Χριστοφόρου Έλενα

Διαβάστε περισσότερα

Bring Your Own Device (BYOD) Legal Challenges of the new Business Trend MINA ZOULOVITS LAWYER, PARNTER FILOTHEIDIS & PARTNERS LAW FIRM

Bring Your Own Device (BYOD) Legal Challenges of the new Business Trend MINA ZOULOVITS LAWYER, PARNTER FILOTHEIDIS & PARTNERS LAW FIRM Bring Your Own Device (BYOD) Legal Challenges of the new Business Trend MINA ZOULOVITS LAWYER, PARNTER FILOTHEIDIS & PARTNERS LAW FIRM minazoulovits@phrlaw.gr What is BYOD? Information Commissioner's Office

Διαβάστε περισσότερα

Note 2: The exam is part of the Business Certificate of ECDL Cyprus suite of exams. Σελίδα: 1/5

Note 2: The exam is part of the Business Certificate of ECDL Cyprus suite of exams. Σελίδα: 1/5 Module 1 Computerized Bookkeeping/Accounting The following is the Syllabus for Computerized Bookkeeping/Accounting, which provides the basis for the practical based test in this module domain. Module Goals

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΠΟΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ. Πτυχιακή εργασία

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΠΟΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ. Πτυχιακή εργασία ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΠΟΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ Πτυχιακή εργασία Η ΕΦΑΡΜΟΓΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ HACCP ΣΕ ΜΙΚΡΕΣ ΒΙΟΤΕΧΝΙΕΣ ΓΑΛΑΚΤΟΣ ΣΤΗΝ ΕΠΑΡΧΙΑ ΛΕΜΕΣΟΥ

Διαβάστε περισσότερα

Professional Tourism Education EΠΑΓΓΕΛΜΑΤΙΚΗ ΤΟΥΡΙΣΤΙΚΗ ΕΚΠΑΙΔΕΥΣΗ. Ministry of Tourism-Υπουργείο Τουρισμού

Professional Tourism Education EΠΑΓΓΕΛΜΑΤΙΚΗ ΤΟΥΡΙΣΤΙΚΗ ΕΚΠΑΙΔΕΥΣΗ. Ministry of Tourism-Υπουργείο Τουρισμού Professional Tourism Education EΠΑΓΓΕΛΜΑΤΙΚΗ ΤΟΥΡΙΣΤΙΚΗ ΕΚΠΑΙΔΕΥΣΗ Ministry of Tourism-Υπουργείο Τουρισμού Need for Professional Tourism Education Η Ανάγκη για Επαγγελματική Τουριστική Εκπαίδευση Tourism:

Διαβάστε περισσότερα

DATA QUALITY & ANALYTICS DRIVING BUSINESS GROWTH AT YDROGIOS. Θάνος Αγγελόπουλος

DATA QUALITY & ANALYTICS DRIVING BUSINESS GROWTH AT YDROGIOS. Θάνος Αγγελόπουλος DATA QUALITY & ANALYTICS DRIVING BUSINESS GROWTH AT YDROGIOS Θάνος Αγγελόπουλος ΤΕΧΝΙΚΕΣ ΠΡΟΒΛΕΨΕΙΣ ΥΠΟΛΟΓΙΣΜΟΣ ΚΕΦΑΛΑΙΩΝ ORSA ΠΟΛΙΤΙΚΕΣ ΑΝΑΦΟΡΕΣ DATA POINT MODEL ΠΟΙΟΤΗΤΑ ΔΕΔΟΜΕΝΩΝ Reserves Pricing Marketing

Διαβάστε περισσότερα

ΑΠΟΓΡΑΦΙΚΟ ΔΕΛΤΙΟ ΔΙΔΑΚΤΟΡΙΚΗΣ ΔΙΑΤΡΙΒΗΣ ΤΙΤΛΟΣ Συμπληρώστε τον πρωτότυπο τίτλο της Διδακτορικής διατριβής ΑΡ. ΣΕΛΙΔΩΝ ΕΙΚΟΝΟΓΡΑΦΗΜΕΝΗ

ΑΠΟΓΡΑΦΙΚΟ ΔΕΛΤΙΟ ΔΙΔΑΚΤΟΡΙΚΗΣ ΔΙΑΤΡΙΒΗΣ ΤΙΤΛΟΣ Συμπληρώστε τον πρωτότυπο τίτλο της Διδακτορικής διατριβής ΑΡ. ΣΕΛΙΔΩΝ ΕΙΚΟΝΟΓΡΑΦΗΜΕΝΗ ΕΘΝΙΚΟ & ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΑΝΑΓΝΩΣΤΗΡΙΟ Πανεπιστημιούπολη, Κτήρια Πληροφορικής & Τηλεπικοινωνιών 15784 ΑΘΗΝΑ Τηλ.: 210 727 5190, email: library@di.uoa.gr,

Διαβάστε περισσότερα

UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Secondary Education

UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Secondary Education www.xtremepapers.com UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS International General Certificate of Secondary Education GREEK 0543/03 Paper 3 Speaking Role Play Card One 1 March 30 April 2010

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ. Πτυχιακή εργασία

ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ. Πτυχιακή εργασία ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ Πτυχιακή εργασία ΕΠΙΠΤΩΣΕΙΣ ΤΗΣ ΚΑΚΗΣ ΔΙΑΤΡΟΦΗΣ ΣΤΗ ΠΡΟΣΧΟΛΙΚΗ ΗΛΙΚΙΑ ΜΕ ΑΠΟΤΕΛΕΣΜΑ ΤΗ ΠΑΧΥΣΑΡΚΙΑ Έλλη Φωτίου 2010364426 Επιβλέπουσα

Διαβάστε περισσότερα

Why do customers abandon your e-shop. The Skroutz Experience

Why do customers abandon your e-shop. The Skroutz Experience Why do customers abandon your e-shop The Skroutz Experience 1 Where are all these data coming from? Skroutz s visitors feedback in UserVoice mechanism 3 When & how do we ask our visitors? As soon as our

Διαβάστε περισσότερα

Κεφάλαιο 1ο. 1.1.5 Πολυπρογραμματισμός 1.1.6 Πολυδιεργασία 1.2.2. Κατηγορίες Λειτουργικών Συστημάτων

Κεφάλαιο 1ο. 1.1.5 Πολυπρογραμματισμός 1.1.6 Πολυδιεργασία 1.2.2. Κατηγορίες Λειτουργικών Συστημάτων Κεφάλαιο 1ο 1.1.5 Πολυπρογραμματισμός 1.1.6 Πολυδιεργασία 1.2.2. Κατηγορίες Λειτουργικών Συστημάτων http://leitourgika-systhmata-epal-b.ggia.info Creative Commons License 3.0 Share-Alike Πολυπρογραμματισμός

Διαβάστε περισσότερα

Online(?) Communities Management...σε ανοιχτή επικοινωνία με τους fans...

Online(?) Communities Management...σε ανοιχτή επικοινωνία με τους fans... Online(?) Communities Management...σε ανοιχτή επικοινωνία με τους fans... Γιάννης Π. Τριανταφύλλου διευθυντής μάρκετινγκ Online? Ή... Community What? Τι σημαίνει κοινότητα για σας;...ας κάνουμε την άσκηση...

Διαβάστε περισσότερα

Ο ξεναγός (Συνοδευτική δραστηριότητα του γύρου του ίππου)

Ο ξεναγός (Συνοδευτική δραστηριότητα του γύρου του ίππου) Ο ξεναγός (Συνοδευτική δραστηριότητα του γύρου του ίππου) Ηλικίες: Προαπαιτούμενες δεξιότητες: Χρόνος: Μέγεθος ομάδας: 8 ενήλικες Καμία 15 λεπτά για τη βασική δραστηριότητα, περισσότερο για τις επεκτάσεις

Διαβάστε περισσότερα

Organic.Edunet Web portal

Organic.Edunet Web portal Σχεδιασµός Εκπαιδευτικών Σεναρίων µε τη Χρήση Νέων Τεχνολογιών και Εργαλείων Παγκόσµιου Ιστού Πέτρος Λαµέρας Ελληνογερµανική Αγωγή 29 Απριλίου 2010 Τοέργο Organic.Edunet Στόχος να αποκτήσουν εκπαιδευτικοί

Διαβάστε περισσότερα

ΑΓΓΛΙΚΑ IV. Ενότητα 1γ: Deciding on a topic, purpose, rationale. Ιφιγένεια Μαχίλη Τμήμα Διεθνών & Ευρωπαϊκών Σπουδών

ΑΓΓΛΙΚΑ IV. Ενότητα 1γ: Deciding on a topic, purpose, rationale. Ιφιγένεια Μαχίλη Τμήμα Διεθνών & Ευρωπαϊκών Σπουδών Ενότητα 1γ: Deciding on a topic, purpose, rationale Ιφιγένεια Μαχίλη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

Διαβάστε περισσότερα

Managing Information.! Lecturer: N. Kyritsis, MBA, Ph.D. Candidate Athens University of Economics and Business!! e-mail: kyritsis@ist.edu.

Managing Information.! Lecturer: N. Kyritsis, MBA, Ph.D. Candidate Athens University of Economics and Business!! e-mail: kyritsis@ist.edu. Managing Information! Lecturer: N. Kyritsis, MBA, Ph.D. Candidate Athens University of Economics and Business!! e-mail: kyritsis@ist.edu.gr Database Management Database Definition Collection of relevant

Διαβάστε περισσότερα

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions)

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αυγερινός Αραμπατζής avi@ee.duth.gr www.aviarampatzis.com Βάσεις Δεδομένων Stored Procedures 1 Stored Routines (1/2) Τμήματα κώδικα τα

Διαβάστε περισσότερα

Στρατηγικές Ασφάλειας

Στρατηγικές Ασφάλειας Στρατηγικές Ασφάλειας Ασφάλεια Πληροφοριακών Συστημάτων. Διδάσκων: Σ. Κοντογιάννης Least/(Most) Privileges Defense in Depth Συγκεντρωτική Στρατηγική Weakest Link Strategy Fail Safe Stance Fail Safe Stance

Διαβάστε περισσότερα

ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ

ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ Master of science in Networking and Data Communications Ακαδημαϊκό Έτος 2013-2014 Συνδιοργάνωση Το ΤΕΙ Πειραιά και το πανεπιστήμιο Kingston της Μεγάλης Βρετανίας συνδιοργανώνουν

Διαβάστε περισσότερα

GenExis Οδηγίες προς Μαθητές

GenExis Οδηγίες προς Μαθητές Πρόγραμμα Δια Βίου Μάθησης Leonardo da Vinci Πολύπλευρο πρόγραμμα Μεταφοράς Καινοτομίας EEGS E-learning Exercise GenExis System GenExis Οδηγίες προς Μαθητές Τμήμα I: Γενικές οδηγίες χρήσης για Μαθητές

Διαβάστε περισσότερα

Διαχείριση Εισοδημάτων Παραπέμπεται από την υπηρεσία Προστασίας Παιδιών

Διαχείριση Εισοδημάτων Παραπέμπεται από την υπηρεσία Προστασίας Παιδιών Διαχείριση Εισοδημάτων Παραπέμπεται από την υπηρεσία Προστασίας Παιδιών Τι είναι η Διαχείριση Εισοδημάτων [Income Management]; Η Διαχείριση Εισοδημάτων [Income Management] είναι ένας τρόπος που σας βοηθάει

Διαβάστε περισσότερα

(Απλή) Κληρονομικότητα

(Απλή) Κληρονομικότητα Πολλαπλή κληρονομικότητα, υςχετίςεισ μεταξύ κλάςεων ΟΝΣΟΚΕΝΣΡΙΚΟ ΠΡΟΓΡ/ΜΟ C++ Μ. Ρήγκου (rigou@ceid.upatras.gr) (Απλή) Κληρονομικότητα Student + calctuition(): double GraduateStudent + calctuition(): double

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Εργασία στην Oracle ΔΙΑΧΕΙΡΙΣΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ ΚΡΑΤΗΣΕΩΝ ΘΕΣΕΩΝ ΜΙΑΣ ΑΕΡΟΠΟΡΙΚΗΣ ΕΤΑΙΡΙΑΣ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ

Διαβάστε περισσότερα

Εγχειρίδιο Χρήστη ECAS

Εγχειρίδιο Χρήστη ECAS ΕΥΡΩΠΑΪΚΗ ΕΠΙΤΡΟΠΗ Γενική Διεύθυνση Παιδείας και Πολιτισμού Δια Βιου Μάθηση: Πολιτικές και Πρόγραμμα Συντονισμός του Προγράμματος για τη Δια Βίου Μάθηση Εγχειρίδιο Χρήστη ECAS Το Σύστημα Διαπίστευσης της

Διαβάστε περισσότερα

Δομή και Στόχοι του Μαθήματος - Εισαγωγή

Δομή και Στόχοι του Μαθήματος - Εισαγωγή ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Δομή και Στόχοι του Μαθήματος - Εισαγωγή Δομή και Στόχοι Μαθήματος Εισαγωγή Στόχοι του μαθήματος Δομή του μαθήματος Εργασία Εισαγωγή

Διαβάστε περισσότερα

Πληροφοριακά Συστήµατα

Πληροφοριακά Συστήµατα Nell Dale John Lewis Chapter 12 Πληροφοριακά Συστήµατα Στόχοι Ενότητας Η κατανόηση της έννοιας «Πληροφοριακό Σύστηµα» Επεξήγηση της οργάνωσης λογιστικών φύλλων (spreadsheets) Επεξήγηση της ανάλυσης δεδοµένων

Διαβάστε περισσότερα

ιανοητικό Κεφάλαιο σε Πόλεις και Περιφέρειες

ιανοητικό Κεφάλαιο σε Πόλεις και Περιφέρειες ιανοητικό Κεφάλαιο σε Πόλεις και Περιφέρειες Intellectual Capital for Communities A. Bounfour & L. Edvinsson, Elsevier, 2005 Μεταπτυχιακό Σεµινάριο ιδακτορικών 23 Νοεµβρίου 2007 ιανοητικό κεφάλαιο για

Διαβάστε περισσότερα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2013 - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ 1 Αρχιτεκτονική

Διαβάστε περισσότερα

ΠΕΡΙΛΗΨΗ. Είναι γνωστό άτι καθημερινά διακινούνται δεκάδες μηνύματα (E~mail) μέσω του διαδικτύου

ΠΕΡΙΛΗΨΗ. Είναι γνωστό άτι καθημερινά διακινούνται δεκάδες μηνύματα (E~mail) μέσω του διαδικτύου GREEKLISH: ΜΙΑ ΝΕΑ ΔΙΑΛΕΚΤΟΣ ΤΟΥ ΔΙΑΔΙΚΤΥΟΥ; Α.Καράκος, Λ.Κωτούλας ΠΕΡΙΛΗΨΗ Είναι γνωστό άτι καθημερινά διακινούνται δεκάδες μηνύματα (E~mail) μέσω του διαδικτύου {INTERNEη από την μια άκρη του κόσμου

Διαβάστε περισσότερα

Επίπεδο δικτύου IP Forwading κτλ

Επίπεδο δικτύου IP Forwading κτλ Επίπεδο δικτύου IP Forwading κτλ (IP για που το έβαλες) Εργαστήριο Δικτύων Υπολογιστών 2014-2015 Τμήμα Μηχανικών Η/Υ και Πληροφορικής Επίπεδο δικτύου (Network layer) Επίπεδο εφαρμογής (Application layer):

Διαβάστε περισσότερα

ΠΙΝΑΚΑΣ- TABLE ΤΡΟΠΟΙ ΠΑΡΟΥΣΙΑΣΗΣ ΔΕΔΟΜΕΝΩΝ ΠΙΝΑΚΑΣ 1. ΓΙΑ ΠΟΙΕΣ ΜΕΤΑΒΛΗΤΕΣ Η ΣΤΟΙΧΕΙΑ ΕΙΝΑΙ ΚΑΛΗ ΕΠΙΛΟΓΗ ΕΝΑΣ ΠΙΝΑΚΑΣ; ΚΑΛΗ ΕΠΙΛΟΓΗ

ΠΙΝΑΚΑΣ- TABLE ΤΡΟΠΟΙ ΠΑΡΟΥΣΙΑΣΗΣ ΔΕΔΟΜΕΝΩΝ ΠΙΝΑΚΑΣ 1. ΓΙΑ ΠΟΙΕΣ ΜΕΤΑΒΛΗΤΕΣ Η ΣΤΟΙΧΕΙΑ ΕΙΝΑΙ ΚΑΛΗ ΕΠΙΛΟΓΗ ΕΝΑΣ ΠΙΝΑΚΑΣ; ΚΑΛΗ ΕΠΙΛΟΓΗ ΤΡΟΠΟΙ ΠΑΡΟΥΣΙΑΣΗΣ ΔΕΔΟΜΕΝΩΝ ΧΡΙΣΤΙΝΑ ΚΑΡΑΤΖΑΦΕΡΗ, PhD ΛΕΚΤΟΡΑΣ ΣΤΗ ΦΥΣΙΟΛΟΓΙΑ ΤΗΣ ΑΣΚΗΣΗΣ Τ.Ε.Φ.Α.Α., Π.Θ. Π.Μ.Σ. ΑΣΚΗΣΗ ΚΑΙ ΥΓΕΙΑ ΦΕΒΡΟΥΑΡΙΟΣ 2007 ΒΑΣΙΚΑ ΚΡΙΤΗΡΙΑ ΕΠΙΛΟΓΗΣ ΑΠΛΟΤΗΤΑ ΝΟΗΜΑΤΙΚΗ ΚΑΘΑΡΟΤΗΤΑ

Διαβάστε περισσότερα

Επίπεδο δικτύου IP διευθυνσιοδότηση

Επίπεδο δικτύου IP διευθυνσιοδότηση Επίπεδο δικτύου IP διευθυνσιοδότηση (πες μου την IP σου να σου πω ποιος είσαι) Εργαστήριο Δικτύων Υπολογιστών 2014-2015 Τμήμα Μηχανικών Η/Υ και Πληροφορικής Επίπεδο δικτύου (Network layer) Επίπεδο εφαρμογής

Διαβάστε περισσότερα

ΕΥΧΑΡΙΣΤΙΕΣ. Θεσσαλονίκη, Δεκέμβριος 2005. Κώστας Δόσιος

ΕΥΧΑΡΙΣΤΙΕΣ. Θεσσαλονίκη, Δεκέμβριος 2005. Κώστας Δόσιος ΕΥΧΑΡΙΣΤΙΕΣ Μου δίνεται η ευκαιρία με την περάτωση της παρούσης διδακτορικής διατριβής να σημειώσω ότι, είναι ιδιαίτερα δύσκολο και κοπιαστικό να ολοκληρώσεις το έργο που ξεκινάς κάποια στιγμή έχοντας

Διαβάστε περισσότερα

Passport number (or) διαβατηρίου (ή)

Passport number (or) διαβατηρίου (ή) APPLICATION FOR DEMATERIALIZED SECURITIES SYSTEM (S.A.T.) ACCOUNT WITH THE ATHENS EXCHANGE ΑΙΤΗΣΗ ΓΙΑ ΛΟΓΑΡΙΑΣΜΟ ΣΤΟ ΣΥΣΤΗΜΑ ΑΥΛΩΝ ΤΙΤΛΩΝ (Σ.Α.Τ.) ΜΕ ΤΟ ΕΛΛΗΝΙΚΟ ΧΡΗΜΑΤΙΣΤΗΡΙΟ Please type Latin Characters.

Διαβάστε περισσότερα

LESSON 9 (ΜΑΘΗΜΑ ΕΝΝΙΑ) REF : 101/011/9-BEG. 14 January 2013

LESSON 9 (ΜΑΘΗΜΑ ΕΝΝΙΑ) REF : 101/011/9-BEG. 14 January 2013 LESSON 9 (ΜΑΘΗΜΑ ΕΝΝΙΑ) REF : 101/011/9-BEG 14 January 2013 Up πάνω Down κάτω In μέσα Out/outside έξω (exo) In front μπροστά (brosta) Behind πίσω (piso) Put! Βάλε! (vale) From *** από Few λίγα (liga) Many

Διαβάστε περισσότερα

ΑΝΩΤΑΤΗ ΣΧΟΛΗ ΠΑΙ ΑΓΩΓΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΚΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ΠΑΡΑΔΟΤΕΟ ΕΠΙΣΤΗΜΟΝΙΚΗ ΕΡΓΑΣΙΑ ΣΕ ΔΙΕΘΝΕΣ ΕΠΙΣΤΗΜΟΝΙΚΟ ΠΕΡΙΟΔΙΚΟ

ΑΝΩΤΑΤΗ ΣΧΟΛΗ ΠΑΙ ΑΓΩΓΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΚΗΣ ΕΚΠΑΙ ΕΥΣΗΣ ΠΑΡΑΔΟΤΕΟ ΕΠΙΣΤΗΜΟΝΙΚΗ ΕΡΓΑΣΙΑ ΣΕ ΔΙΕΘΝΕΣ ΕΠΙΣΤΗΜΟΝΙΚΟ ΠΕΡΙΟΔΙΚΟ ΑΝΩΤΑΤΗ ΣΧΟΛΗ ΠΑΙ ΑΓΩΓΙΚΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΚΗΣ ΕΚΠΑΙ ΕΥΣΗΣ (Α.Σ.ΠΑΙ.Τ.Ε.) «Αρχιμήδης ΙΙΙ Ενίσχυση Ερευνητικών ομάδων στην Α.Σ.ΠΑΙ.Τ.Ε.» Υποέργο: 8 Τίτλος: «Εκκεντρότητες αντισεισμικού σχεδιασμού ασύμμετρων

Διαβάστε περισσότερα

AME SAMPLE REPORT James R. Cole, Ph.D. Neuropsychology

AME SAMPLE REPORT James R. Cole, Ph.D. Neuropsychology Setting the Standard since 1977 Quality and Timely Reports Med-Legal Evaluations Newton s Pyramid of Success AME SAMPLE REPORT Locations: Oakland & Sacramento SCHEDULING DEPARTMENT Ph: 510-208-4700 Fax:

Διαβάστε περισσότερα

Risk Management & Business Continuity Τα εργαλεία στις νέες εκδόσεις

Risk Management & Business Continuity Τα εργαλεία στις νέες εκδόσεις Risk Management & Business Continuity Τα εργαλεία στις νέες εκδόσεις Α. Χατζοπούλου Υπεύθυνη Τμήματος Επιθεωρήσεων Πληροφορικής TÜV AUSTRIA HELLAS Οκτώβριος 2014 CLOSE YOUR EYES & THINK OF RISK Μήπως κάποια

Διαβάστε περισσότερα

ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΠΟΥΔΕΣ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ

ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΠΟΥΔΕΣ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ 1 ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΑΝΘΡΩΠΙΣΤΙΚΩΝ ΣΠΟΥΔΩΝ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΣΠΟΥΔΕΣ ΣΤΗΝ ΕΚΠΑΙΔΕΥΣΗ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΔΥΝΑΜΙΚΗ ΤΩΝ ΣΧΕΣΕΩΝ ΕΚΠΑΙΔΕΥΟΜΕΝΗΣ ΟΜΑΔΑΣ ΕΝΗΛΙΚΩΝ: ΜΙΑ ΠΟΙΟΤΙΚΗ

Διαβάστε περισσότερα

. Εργαστήριο Βάσεων Δεδομένων. Triggers

. Εργαστήριο Βάσεων Δεδομένων. Triggers Εργαστήριο Βάσεων Δεδομένων Triggers Triggers: Βασικές Έννοιες Ένας trigger είναι ένα κομμάτι κώδικα, μια ρουτίνα Συνδέεται με ένα συγκεκριμένο πίνακα Καλείται όταν συμβεί ένα γεγονός στον πίνακα Συχνές

Διαβάστε περισσότερα

Δράσεις Πιστοποίησης και εκπαίδευσης του HL7

Δράσεις Πιστοποίησης και εκπαίδευσης του HL7 Δράσεις Πιστοποίησης και εκπαίδευσης του HL7 Νίκος Κυριακουλάκος Certified HL7 V2.5 Chapter 2 Control Specialist Technical Manager Apollo AE HL7 Hellas Τι είναι το HL7? Ο οργανισμός HL7 είναι ένας από

Διαβάστε περισσότερα

Project Management using Microsoft Project 2003

Project Management using Microsoft Project 2003 Project Management using Microsoft Project 2003 MS03PRF Introduction: This seminar will teach the participants how to manage a project with confidence. They will be taught how to insert tasks, manage resources

Διαβάστε περισσότερα

Τα συστήµατα EUROPA 500. σχεδιάστηκαν για να. δηµιουργούν ανοιγόµενα. κουφώµατα. τέλειας λειτουργικότητας, µε υψηλή αισθητική. και άψογο φινίρισµα.

Τα συστήµατα EUROPA 500. σχεδιάστηκαν για να. δηµιουργούν ανοιγόµενα. κουφώµατα. τέλειας λειτουργικότητας, µε υψηλή αισθητική. και άψογο φινίρισµα. Τα συστήµατα EUROPA 500 σχεδιάστηκαν για να δηµιουργούν ανοιγόµενα κουφώµατα τέλειας λειτουργικότητας, µε υψηλή αισθητική και άψογο φινίρισµα. EUROPA 500 systems are designed in order to create opening

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Λουκία Βασιλείου

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Λουκία Βασιλείου ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΠΑΙΔΙΚΗ ΚΑΙ ΕΦΗΒΙΚΗ ΚΑΚΟΠΟΙΗΣΗ: ΕΠΙΠΤΩΣΕΙΣ ΣΤΗΝ ΥΓΕΙΑ Λουκία Βασιλείου 2010646298 Επιβλέπουσα καθηγήτρια: Δρ.

Διαβάστε περισσότερα

Η γλώσσα προγραμματισμού C

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η

Διαβάστε περισσότερα

Επισημαίνεται ότι, σύμφωνα με το ανωτέρω έγγραφο, η όλη διαδικασία θα γίνει από τη Διεύθυνση Διοικητικού των Ιδρυμάτων σας.

Επισημαίνεται ότι, σύμφωνα με το ανωτέρω έγγραφο, η όλη διαδικασία θα γίνει από τη Διεύθυνση Διοικητικού των Ιδρυμάτων σας. Προς: Διοικητικό Προσωπικό ΑΣΠΑΙΤΕ Κοιν.: Πρόεδρο ΔΕ Αντιπρόεδρο ΔΕ Γραμματέα ΑΣΠΑΙΤΕ Αριθ. Πρωτ.: Δ/3708/25.10.13 Θέμα: Βραχυπρόθεσμο Πρόγραμμα Πρακτικής Άσκησης "ERASMUS for Public Administration" Διαβιβάζεται

Διαβάστε περισσότερα

ΜΑΘΗΜΑ: ΥΕ 335 «ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΛΟΓΙΣΜΙΚΟΥ» ΚΑΤΑΣΚΕΥΗ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ: Γίντσης Αλέξανρος (3479)

ΜΑΘΗΜΑ: ΥΕ 335 «ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΕΚΠΑΙΔΕΥΤΙΚΟΥ ΛΟΓΙΣΜΙΚΟΥ» ΚΑΤΑΣΚΕΥΗ-ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ: Γίντσης Αλέξανρος (3479) «Mουσικοί κύκλοι» ΔΙΑΔΡΑΣΤΙΚΑ ΠΑΙΧΝΙΔΙΑ ΓΙΑ ΜΑΘΗΤΕΣ/ΤΡΙΕΣ ΤΗΣ Γ -Δ ΔΗΜΟΤΙΚΟΥ ΣΤΟ ΜΑΘΗΜΑ ΤΗΣ ΜΟΥΣΙΚΗΣ ΜΕ ΧΡΗΣΗ ΤΗΣ ΠΛΑΚΕΤΑΣ MAKEY-MAKEY ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΣΤΟ SCRATCH ΜΑΘΗΜΑ: ΥΕ 335 «ΑΝΑΠΤΥΞΗ ΚΑΙ ΣΧΕΔΙΑΣΗ

Διαβάστε περισσότερα

Advanced Unit 2: Understanding, Written Response and Research

Advanced Unit 2: Understanding, Written Response and Research Write your name here Surname Other names Edexcel GCE Centre Number Candidate Number Greek Advanced Unit 2: Understanding, Written Response and Research Tuesday 18 June 2013 Afternoon Time: 3 hours Paper

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εξαιρέσεις Εξαιρέσεις Στα προγράμματα μας θα πρέπει να μπορούμε να χειριστούμε περιπτώσεις που το πρόγραμμα δεν εξελίσσεται όπως το είχαμε προβλέψει Π.χ., κάνουμε

Διαβάστε περισσότερα

Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D. Κλάσεις.

Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D. Κλάσεις. 1 Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) ηµήτριος Κατσαρός, Ph.D. Χειµώνας 2005 ιάλεξη 5η Ιστοσελίδα του µαθήµατος 2 http://skyblue.csd.auth.gr/~dimitris/courses/cpp_fall05.htm Θα

Διαβάστε περισσότερα

ΟΡΟΙ ΚΑΙ ΠΡΟΥΠΟΘΕΣΕΙΣ ΣΧΕΔΙΟΥ

ΟΡΟΙ ΚΑΙ ΠΡΟΥΠΟΘΕΣΕΙΣ ΣΧΕΔΙΟΥ ΟΡΟΙ ΚΑΙ ΠΡΟΥΠΟΘΕΣΕΙΣ ΣΧΕΔΙΟΥ 1. Η διαφήμιση της Τράπεζας για τα "Διπλά Προνόμια από την American Express" ισχύει για συναλλαγές που θα πραγματοποιηθούν από κατόχους καρτών Sunmiles American Express, American

Διαβάστε περισσότερα

Καθορισμός των Απαιτήσεων (Requirements Determination)

Καθορισμός των Απαιτήσεων (Requirements Determination) Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης Υπολογιστών ΗΥ351: Ανάλυση και Σχεδίαση Πληροφοριακών Συστημάτων Information Systems Analysis and Design Καθορισμός των Απαιτήσεων (Requirements Determination) Γιάννης

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΙΟΙΚΗΣΗΣ II ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΜΑΘΗΜΑ: ΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΙΟΙΚΗΣΗΣ II ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΜΑΘΗΜΑ: ΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΙΟΙΚΗΣΗ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΜΑΘΗΜΑ: ΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΙΟΙΚΗΣΗΣ

Διαβάστε περισσότερα

υπηρεσίες / services ΜΕΛΕΤΗ - ΣΧΕΔΙΑΣΜΟΣ PLANNING - DESIGN ΕΜΠΟΡΙΚΗ ΜΕΛΕΤΗ COMMERCIAL PLANNING ΕΠΙΠΛΩΣΗ - ΕΞΟΠΛΙΣΜΟΣ FURNISHING - EQUIPMENT

υπηρεσίες / services ΜΕΛΕΤΗ - ΣΧΕΔΙΑΣΜΟΣ PLANNING - DESIGN ΕΜΠΟΡΙΚΗ ΜΕΛΕΤΗ COMMERCIAL PLANNING ΕΠΙΠΛΩΣΗ - ΕΞΟΠΛΙΣΜΟΣ FURNISHING - EQUIPMENT Αρχιτεκτονικές και διακοσμητικές μελέτες, με λειτουργικό και σύγχρονο σχέδιασμό, βασισμένες στην μοναδικότητα του πελάτη. ΕΜΠΟΡΙΚΗ ΜΕΛΕΤΗ Ανάλυση των χαρακτηριστικών των προϊόντων και ένταξη του τρόπου

Διαβάστε περισσότερα

Μεταπτυχιακή διατριβή

Μεταπτυχιακή διατριβή ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΓΕΩΤΕΧΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΒΑΛΛΟΝΤΟΣ Μεταπτυχιακή διατριβή «100% Α.Π.Ε.» : ΤΕΧΝΙΚΕΣ ΚΑΙ ΟΙΚΟΝΟΜΙΚΕΣ ΠΡΟΚΛΗΣΕΙΣ ΓΙΑ ΤΗΝ ΠΛΗΡΗ ΥΠΟΚΑΤΑΣΤΑΣΗ ΤΩΝ ΣΥΜΒΑΤΙΚΩΝ

Διαβάστε περισσότερα

10, Plastira Square Rethymno, Crete, Greece Tel.: 28310 28667-9, Fax: 28310 28670 www.hotelideon.gr ideon@otenet.gr. Rethymnon - Crete - Greece

10, Plastira Square Rethymno, Crete, Greece Tel.: 28310 28667-9, Fax: 28310 28670 www.hotelideon.gr ideon@otenet.gr. Rethymnon - Crete - Greece 10, Plastira Square Rethymno, Crete, Greece Tel.: 28310 28667-9, Fax: 28310 28670 www.hotelideon.gr ideon@otenet.gr Rethymnon - Crete - Greece Perfectly located just minutes from the heart of Rethymnon.

Διαβάστε περισσότερα

LGAF Business Process Modeling Framework

LGAF Business Process Modeling Framework LGAF Business Process Modeling Framework Αθανάσιος Μώραλης, ATLANTIS Group (ΙΤΥ) Δήμητρα Μπέλια, Παν. Αιγαίου (ΤΜΟΔ) Πέτρος Καβάσαλης, ΙΤΥ & Παν. Αιγαίου (ΤΜΟΔ) ΕΛΛΑΚ 19/6/2009 Overview LGAF Process Modeling

Διαβάστε περισσότερα

EPL603 Topics in Software Engineering

EPL603 Topics in Software Engineering Sample questions / Revision EPL603 Topics in Software Engineering Efi Papatheocharous Visiting Lecturer efi.papatheocharous@cs.ucy.ac.cy Office FST-B107, Tel. ext. 2740 Topics covered Revision on Lectures

Διαβάστε περισσότερα

ηµιουργία νέου τύπου δεδοµένων από το χρήστη

ηµιουργία νέου τύπου δεδοµένων από το χρήστη ηµιουργία νέου τύπου δεδοµένων από το χρήστη program create_a_type type chemical_element character (len=2) integer end type type (chemical_element) type (chemical_element) :: argon,carbon,neon :: Periodic_Table(109)

Διαβάστε περισσότερα

Η θέση ύπνου του βρέφους και η σχέση της με το Σύνδρομο του αιφνίδιου βρεφικού θανάτου. ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ

Η θέση ύπνου του βρέφους και η σχέση της με το Σύνδρομο του αιφνίδιου βρεφικού θανάτου. ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Η θέση ύπνου του βρέφους και η σχέση της με το Σύνδρομο του αιφνίδιου βρεφικού θανάτου. Χρυσάνθη Στυλιανού Λεμεσός 2014 ΤΕΧΝΟΛΟΓΙΚΟ

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΓΛΩΣΣΕΣ ΚΑΙ ΜΕΤΑΦΡΑΣΤΕΣ ΗΥ340

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΓΛΩΣΣΕΣ ΚΑΙ ΜΕΤΑΦΡΑΣΤΕΣ ΗΥ340 ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΓΛΩΣΣΕΣ ΚΑΙ ΜΕΤΑΦΡΑΣΤΕΣ ΗΥ340 ΕΑΡΙΝΟ ΕΞΑΜΗΝΟ 2010 Ι ΑΣΚΩΝ: ΑΝΤΩΝΙΟΣ ΣΑΒΒΙ ΗΣ ΒΑΣΙΚΗ ΕΡΓΑΣΙΑ ΦΑΣΗ 2η από 5 Ανάθεση: Πέµπτη 15 Απριλίου 2010, 11:00 (πρωί)

Διαβάστε περισσότερα

MCSS Medical Center Support Systems. Setup Instructions

MCSS Medical Center Support Systems. Setup Instructions MCSS Medical Center Support Systems Setup Instructions Author: Dr. Alexander Patelis Version: 1.5.00 Code: MCSS_IN_003 Αθήνα, Ιούνιος 2010 2006 2010 Dragon Systems MCSS_IN_003 Page 1 / 89 Πίνακας Αλλαγών

Διαβάστε περισσότερα

Καρκίνος του Μαστού: Οι παράγοντες που επηρεάζουν τη ψυχοσωματική υγεία των γυναικών που υποβλήθηκαν σε μαστεκτομή και ο ρόλος του νοσηλευτή.

Καρκίνος του Μαστού: Οι παράγοντες που επηρεάζουν τη ψυχοσωματική υγεία των γυναικών που υποβλήθηκαν σε μαστεκτομή και ο ρόλος του νοσηλευτή. ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΥΓΕΙΑΣ ΤΜΗΜΑ ΝΟΣΗΛΕΥΤΙΚΗΣ Πτυχιακή Εργασία Καρκίνος του Μαστού: Οι παράγοντες που επηρεάζουν τη ψυχοσωματική υγεία των γυναικών που υποβλήθηκαν σε μαστεκτομή

Διαβάστε περισσότερα

ΖητήματαΔιαχείρισης του ανθρώπινου δυναμικού μιας νομικής Υπηρεσίας: η (διαρκής) αγωνίατου σχοινοβάτη

ΖητήματαΔιαχείρισης του ανθρώπινου δυναμικού μιας νομικής Υπηρεσίας: η (διαρκής) αγωνίατου σχοινοβάτη ΖητήματαΔιαχείρισης του ανθρώπινου δυναμικού μιας νομικής Υπηρεσίας: η (διαρκής) αγωνίατου σχοινοβάτη Αργύρης Οικονόμου Διευθυντής Ν.Υ. τηςδεη Συνέδριο ACC / Απρίλιος 2009 R-E-S-P-E-C-T (Ηαξία της Aretha

Διαβάστε περισσότερα