03 Ανάλυση Απαιτήσεων και Σχεδιασμός Λογισμικού
|
|
- Σιμωνίδης Γιαννακόπουλος
- 6 χρόνια πριν
- Προβολές:
Transcript
1 03 Ανάλυση Απαιτήσεων και Σχεδιασμός Λογισμικού Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο Δρ. Κώστας Σαΐδης
2 Περιεχόμενα 1. Οι απαιτήσεις λογισμικού και τα είδη τους 2. Από την ανάλυση απαιτήσεων στη σύνταξη των προδιαγραφών και ο ρόλος του επικεφαλής μηχανικού Software Architect 3. Μοντελοποίηση απαιτήσεων / προδιαγραφών & σχεδιασμού 4. Σχεδιαστικές αρχές λογισμικού 5. Η έννοια του τεχνικού χρέους technical/design/code debt 2
3 1. Ανάλυση απαιτήσεων 3
4 Απαιτήσεις λογισμικού Συνήθως είναι ανεξάρτητες από την τεχνολογία υλοποίησης. Απαίτηση: Τι θέλουμε να κάνει το λογισμικό Ικανοποίηση απαίτησης: Πώς το λογισμικό καλύπτει την απαίτηση σχεδιαστική απόφαση και υλοποίηση. Εκτός, βέβαια, αν η υποστήριξη κάποιας τεχνολογίας είναι ρητή απαίτηση 4
5 Είδη απαιτήσεων Λειτουργικές απαιτήσεις Μη λειτουργικές απαιτήσεις Απαιτήσεις συστήματος Αναδυόμενες απαιτήσεις 5
6 Λειτουργικές απαιτήσεις Οι απαιτήσεις της λειτουργίας του λογισμικού συνήθως η νέα λειτουργικότητα που πρέπει να αναπτυχθεί στο πλαίσιο του έργου Παραδείγματα: διαπίστευση και δικαιοδοσία χρηστών, επιχειρησιακή λογική, περιπτώσεις και σενάρια χρήσης, διαχειριστικές λειτουργίες 6
7 Διαπίστευση χρηστών user authentication Σημεία εισόδου στο σύστημα entry points μηχανισμοί διαπίστευσης χρηστών Επιβεβαίωση ότι ο χρήστης είναι: "υπαρκτός" π.χ. ο λογαριασμός του είναι εγγεγραμμένος στον "πίνακα" των χρηστών της ΒΔ "έγκυρος" π.χ. γνωρίζει το προσωπικό του "μυστικό" που έχει συνδεθεί με το λογαριασμό του "ενεργός" π.χ. δεν έχει απενεργοποιηθεί από το διαχειριστή 7
8 Δικαιοδοσία χρηστών user authorization Διαχείριση δικαιωμάτων: ποιος χρήστης επιτρέπεται να εκτελέσει ποια ενέργεια. Στατική ή δυναμική ανάθεση/ανάκληση δικαιωμάτων; Ρόλοι Access Control Lists ACLs Guards 8
9 Επιχειρησιακή λογική business logic Οι επιχειρησιακές διαδικασίες business processes Οι επιχειρησιακοί κανόνες business rules Μερική ή πλήρης "ηλεκτρονικοποίηση" των λειτουργιών του οργανισμού 9
10 Πιο απλά Τα υποστηριζόμενα σενάρια και περιπτώσεις χρήσης use cases του λογισμικού Οι ενέργειες, λειτουργίες και διαδικασίες που εκτελούν οι χρήστες μέσω του συστήματος 10
11 Διαχειριστικές λειτουργίες administrative functions Ποιες είναι οι διαχειριστικές λειτουργίες; Πώς εκτελούνται; Θα παραμετροποιούνται από το χρήστη και πόσο; 11
12 Λειτουργίες αναφορών reporting requirements Τι αναφορές απαιτούνται ; Πόσο παραμετροποιήσιμες πρέπει να είναι; Ποιος έχει δικαίωμα να τις προσπελαύνει; 12
13 Μη λειτουργικές απαιτήσεις Απαιτήσεις για ποιοτικά χαρακτηριστικά του λογισμικού Διαθεσιμότητα Ανάνηψη από καταστροφές Ασφάλεια Ακεραιότητα Ευελιξία Επεκτασιμότητα Απόδοση Απροκρισιμότητα Υποστήριξη διεθνών προτύπων Καθορίζουν σε μεγάλο βαθμό την επιτυχία του έργου 13
14 Απαιτήσεις συστήματος Απαιτήσεις σχετικές με το "σύστημα" ή το "περιβάλλον" στο οποίο εντάσσεται το υπό ανάπτυξη λογισμικό π.χ. μπορεί να είναι συστατικό ενός μεγαλύτερου όλου Απαιτήσεις υλικού, απαιτήσεις δικτύου, κ.ά 14
15 Αναδυόμενες απαιτήσεις Ποιοτικά χαρακτηριστικά που προκύπτουν από την ένταξη του λογισιμικού στο "σύστημα" ή "περιβάλλον" και αναφέρονται στη λειτουργία του ως όλον. 15
16 Στην πράξη Στην πράξη, κάποιες απαιτήσεις μπορεί να βρίσκονται "κάπου ανάμεσα" στα παραπάνω είδη Αλλά αυτό ποικίλει ανάλογα με το υπό ανάπτυξη λογισμικό, το περιβάλλον λειτουργίας του και τους εμπλεκόμενους φορείς χρήστες του Ας δούμε μερικά παραδείγματα 16
17 Τήρηση ημερολογίων audit tracking Ποιες ενέργεις καταγράφονται σε ημερολόγια; Σε ποιο βαθμό λεπτομέρειας; Για ποιο σκοπό και με ποια τελική χρήση; 17
18 Μαζική εισαγωγή / εξαγωγή δεδομένων Data import / export Απατείται η μαζική εισαγωγή / εξαγωγή δεδομένων; Θα παραμετροποιείται από το χρήστη και πόσο; Ποιοι μορφότυποι αρχείων / δεδομένων θα πρέπει να υποστηρίζονται; 18
19 Υποστήριξη διεθνούς προτύπου Ανάλογα με την περίπτωση, μπορεί να επηρεάζει: Ένα συγκεκριμένο συστατικό Ένα υποσύνολο των συστατικών Το σχεδιασμό συνολικά 19
20 Διαλειτουργικότητα interoperability Το υπό ανάπτυξη σύστημα θα διαλειτουργεί με τρίτα συστήματα; Τι είδους δεδομένα θα ανταλλάσονται; Με ποιους μηχανισμούς, μορφότυπους και πρωτόκολλα; 20
21 Νομικές ή κανονιστικές απαιτήσεις Το υπό ανάπτυξη σύστημα θα πρέπει να είναι σύννομο προσωπικά δεδομένα, πνευματικά δικαιώματα, κτλ. Το υπό ανάπτυξη σύστημα μπορεί να διέπεται από συγκεκριμένο νομικό ή κανονιστικό πλαίσιο για παράδειγμα, πληροφοριακά συστήματα δημοσίου τομέα. 21
22 Ορισμός των απαιτήσεων Σαφήνεια η απαίτηση είναι σαφώς διατυπωμένη Συνέπεια η μία απαίτηση δεν αντιβαίνει με την άλλη Πληρότητα η απαίτηση καλύπτει όλες τις περιπτώσεις Επαληθευσιμότητα η απαίτηση μπορεί να ελεγχθεί σε σχέση με την υλοποίηση 22
23 Επίσης Σε μεγάλα έργα Καταγωγή/γενεαλογία απαίτησης Ποιος τη ζήτησε Ποιον επιχειρησιακό στόχο εξυπηρετεί Για παράδειγμα, θα πρέπει να γνωρίζει η ομάδα του έργου αν "το ζητάει ο διευθυντής" 23
24 Έγγραφο ανάλυσης απαιτήσεων Περιγραφή σε φυσική γλώσσα: Σκοπός του συστήματος Κατηγορίες χρηστών users & stakeholders Εμβέλεια του συστήματος Περιορισμοί Παραδοχές Απαιτήσεις λειτουργικές ή μη 24
25 2. Από την ανάλυση απαιτήσεων στη σύνταξη των προδιαγραφών και ο ρόλος του επικεφαλής μηχανικού Software Architect 25
26 Ζητούμενα από το κείμενο των τεχνικών προδιαγραφών Να προσδιορίσουν τον τρόπο με τον οποίο το λογισμικό θα ικανοποιήσει τις απαιτήσεις 26
27 Συγκεκριμένα Αρχιτεκτονικός σχεδιασμός και συστατικά του λογισμικού Σαφής περιγραφή της αλληλεπίδρασης του λογισμικού με το παραγωγικό του περιβάλλον production environment Λεπτομερής προδιαγραφή των λειτουργιών και των διαδικασιών που υποστηρίζονται από το λογισμικό Σύνδεση των προδιαγραφών με τις απαιτήσεις πηγή/ προέλευση προδιαγραφής Καθορισμός κριτηρίων αποδοχής / απόρριψης τμημάτων ή όλου του συστήματος 27
28 Έλεγχοι αποδοχής acceptance tests Έλεγχοι που καθορίζουν την αποδοχή ή την απόρριψη συστατικών ή λειτουργιών ή "οθονών" του λογισμικού Είναι καλή πρακτική να έχουν προβλεφθεί μερικώς ή πλήρως στις προδιαγραφές Ένας από τους κύριους στόχους ένταξης ελέγχων στον κύκλο του λογισμικού είναι η ελαχιστοποίηση των σφαλμάτων που θα προκύψουν κατά τους ελέγχους αποδοχής 28
29 Σχεδιαστικές αποφάσεις Για να μετατραπούν οι υψηλού επιπέδου απαιτήσεις του λογισμικού Σε χαμηλού επιπέδου τεχνικές προδιαγραφές αυτού Θα πρέπει να παρθούν συγκεκριμένες σχεδιαστικές αποφάσεις 29
30 Δηλαδή Οι τεχνικές προδιαγραφές μοντελοποιούν τις απαιτήσεις εντός ενός οριοθετημένου σχεδιαστικού / αρχιτεκτονικού πλαισίου Δεν είναι πάντα εφικτό ο σχεδιασμός / αρχιτεκτονική να έχουν ολοκληρωθεί μέχρι τελευταίας λεπτομέρειας Από την άλλη δεν είναι αποδεκτό να προκύψει στην πορεία υλοποίησης μιας προδιαγραφής ένα ζήτημα που θα "ακυρώσει" το σχεδιασμό Το ότι θα τον αλλάξει είναι σχεδόν βέβαιο! 30
31 Θυμηθείτε 31
32 Κοινός τόπος Η ανάλυση των απαιτήσεων πρέπει να καταλήξει σε ένα κοινά αποδεκτό ζητούμενο Κάτι που μπορεί να είναι δύσκολο στην πράξη για μη τεχνικούς λόγους επικοινωνίας, οργάνωσης, διαφορετικής κουλτούρας, παγίωσης μη βέλτιστων πρακτικών, κτλ. 32
33 Θυμηθείτε από την εισαγωγή Στα μεγάλα έργα λογισμικού εμπλέκονται πολλοί συμμετέχοντες: Χρήστες Πελάτες Διοίκηση ακόμα και Μέτοχοι ή Επενδυτές Αναλυτές Προγραμματιστές Δοκιμαστές Σχεδιαστές διεπαφών Υπεύθυνοι έργου κτλ. 33
34 Ο ρόλος του Software Architect Διαχείριση της πολυπλοκότητας 50% αρχιτεκτονική ουσιώδης πολυπλοκότητα 50% επικοινωνία τεχνητή πολυπλοκότητα με τους stakeholders με την επιχειρησιακή ομάδα έργου Project Manager, Business Analyst, κ.ά με την ομάδα ανάπτυξης engineers 34
35 Κοινή γλώσσα Κάθε ένας από τους συμμετέχοντες έχει διαφορετικές εμπειρίες, βιώματα, αφετηρίες, στόχους και επιδιώξεις από την υλοποίηση του έργου Η ομάδα ανάπτυξης, η επιχειρησιακή ομάδα και οι stakeholders του έργου μάλλον "θα μιλάνε" σε διαφορετικές γλώσσες Ο Architect θα πρέπει να κάνει το διερμηνέα και να "μιλάει" τη γλώσσα και των τριών 35
36 Ιεράρχηση απαιτήσεων Δεν είναι όλες οι απαιτήσεις εξίσου σημαντικές Μια μικρή θεωρητικά απαίτηση μπορεί να οδηγήσει το έργο εκτός δρόμου/στόχου Η ομάδα ανάπτυξης ή η επιχειρησιακή ομάδα μπορεί να μη δώσουν προσοχή "αφού το ζητάει ο πελάτης" Ο stakeholder ενδέχεται να μην το καταλάβει Ο Architect πρέπει να το διαγνώσει έγκαιρα και να προτείνει εναλλακτικές 36
37 Αντίστοιχα Μια "ακριβή" απαίτηση μπορεί να έχει πιο "φθηνή" εναλλακτική Μια "σύνθετη" απαίτηση μπορεί να έχει πιο "απλή" εναλλακτική κ.ο.κ 37
38 Προσοχή Ο ασφαλέστερος τρόπος να αποτύχει ένα έργο είναι να επιτραπεί στις "λάθος" απαιτήσεις να γίνουν προδιαγραφές! 38
39 Συμπέρασμα Ο Architect θα πρέπει να έχει απευθείας επαφή με τους stakeholders Αναλύοντας και διαμορφώνοντας μαζί με την επιχειρησιακή ομάδα του έργου τις απαιτήσεις Ενώ παράλληλα σχεδιάζει το σύστημα Για να είναι σε θέση να φιλτράρει τις "λάθος" απαιτήσεις Και να μεταφράσει τις υπόλοιπες σε προδιαγραφές για την ομάδα ανάπτυξης 39
40 The belief that complex systems require armies of programmers and designers is wrong. A system that is not understood in its entirety, or at least to a significant degree of detail by a single individual, should probably not be built. N. Wirth 40
41 Superman By J.Schulenklopper, E. Rommes 41
42 Για να γίνεις Superman Ενδεικτικά Ενσυναίσθηση empathy Για τις έγνοιες concerns όλων των εμπλεκόμενων Τεχνική αρτιότητα Επιλογή τεχνολογίας που να είναι συμβατή με τις ανάγκες του έργου και τις ικανότητες της ομάδας Επικοινωνιακή ικανότητα Συνεχής επικοινωνία με όλους τους εμπλεκόμενους για την εύρεση των βέλτιστων συμβιβασμών trade offs Εμπειρία Για να μπορούν να γίνουν καλά όλα τα παραπάνω 42
43 3. Οπτικοποίηση και μοντελοποίηση απαιτήσεων / προδιαγραφών & σχεδιασμού 43
44 Μοντελοποίηση και οπτικοποίηση απαιτήσεων/προδιαγραφών Επικοινωνία των ζητούμενων Διαγράμματα ροής flow charts Διαγράμματα ροής δεδομένων data flow diagrams Πίνακες απόφασης decision tables Δέντρο απόφασης decision trees Mind Maps 44
45 Μοντελοποίηση σχεδιασμού Επικοινωνία του συστήματος και των συστατικών του Αντικειμενοστραφές μοντέλο Ψευδοκώδικας Διαγράμματα οντοτήτων συσχετίσεων Entity Relationship diagrams Οντολογίες ontologies Πρότυπα σχεδίασης design patterns 45
46 UML Ενοποιημένη γλώσσα μοντελοποίησης Μοντελοποίηση απαιτήσεων και προδιαγραφών Μοντελοποίηση σχεδιασμού 46
47 Γιατί αυτός ο διαχωρισμός; It is almost always incorrect to begin the decomposition of a system into modules on the basis of a flowchart. We propose instead that one begins with a list of difficult design decisions or design decisions which are likely to change. Each module is then designed to hide such a decision from the others. Since, in most cases, design decisions transcend time of execution, modules will not correspond to steps in the processing. David Parnas 47
48 Η έμφασή μας στο μάθημα Σε επόμενες διαλέξεις Αντικειμενοστραφές μοντέλο UML Design Patterns 48
49 Διάγραμμα ροής flow chart 49
50 Διάγραμμα ροής δεδομένων data flow diagram 50
51 Πίνακας αποφασης decision table Με εφαρμογή στον έλεγχο λογισμικού testing 51
52 Δέντρο απόφασης decision tree Με εφαρμογές στην επιχειρησιακή έρευνα και στη μηχανική μάθηση 52
53 Mind Map 53
54 Ψευδοκώδικας 54
55 55
56 Οντολογία ontology 56
57 4. Σχεδιαστικές αρχές λογισμικού 57
58 Αφαίρεση Abstraction Θεμελιώδης έννοια "Η εννοιολογική διαδικασία κατά την οποία προκύπτουν γενικοί κανόνες από την εξέταση επιμέρους παραδειγμάτων." Wikipedia Χρησιμοποιείται σε πολλές επιστήμες. Αποτελεί το κύριο εργαλείο σχεδιασμού. 58
59 Αφαίρεση Αναπαράσταση ενός ουσιώδους χαρακτηριστικού του λογισμικού χωρίς τις δευτερεύουσες λεπτομέρειες. 59
60 Παράδειγμα interface Item { String getid() void setid(string id) Map<String, Object> tomap() void frommap(map<string, Object> map) } interface Datastore { Item load(string id) void save(item item) } 60
61 Βελτίωση Refinement Συμπληρωματική διαδικασία της αφαίρεσης Τμηματική προσαρμογή των αφαιρέσεων σε νέες απαιτήσεις, περιορισμούς ή αποφάσεις 61
62 Παράδειγμα interface Datastore { boolean exists(string id) void load(string id, Function<Item> callback) void save(item item, Function<Item> callback) } 62
63 Refactoring Η διαδικασία επαναπροσαρμογής του κώδικα ως τμήμα κάποιας βελτιωτικής απόφασης Αυτοματοποιείται από πολλά IDEs Θα τη δούμε λεπτομερώς σε επόμενη διάλεξη 63
64 Τμηματοποίηση modularity Αναλύουμε ένα πολύπλοκο σύστημα σε επιμέρους απλούστερα τμήματα Σχεδιάζουμε ξεχωριστά το ένα τμήμα από το άλλο Συνθέτουμε ξανά τα τμήματα και τις αλληλεπιδράσεις τους σε ένα ενιαίο σύνολο Με σκοπό τη διευκόλυνση της υλοποίησης, της συντήρησης και της εξέλιξης του λογισμικού 64
65 The most difficult design task is to find the most appropriate decomposition of the whole into a module hierarchy, minimizing function and code duplications. N. Wirth 65
66 Απόκρυψη πληροφορίας information hiding Η απόκρυψη των χαρακτηριστικών που μπορεί να αλλάξουν στο λογισμικό σχεδιαστικών αποφάσεων, λεπτομερειών υλοποίησης από τα άλλα τμήματα, ώστε να ελαχιστοποιηθούν οι αλλαγές που απαιτούνται αν/όταν προκύψει η αλλαγή Παροχή σταθερών interfaces αφαιρέσεων για την επικοινωνία μεταξύ των τμημάτων 66
67 Συναφείς έννοιες / αρχές Ενθυλάκωση encapsulation Διαχωρισμός ενδιαφερόντων separation of concerns 67
68 Ενθυλάκωση encapsulation Διαχωρισμός της δομής από τη συμπεριφορά ενός συστατικού Διαχωρισμός της αφαίρεσης από την υλοποίησή της Προστασία ενός συστατικού από τη μετάβασή του σε μη έγκυρη κατάσταση Μπορεί να θεωρηθεί ως τεχνική υλοποίησης της αρχής της απόκρυψης πληροφορίας 68
69 Παράδειγμα class MySQLDatastore implements Datastore { private Connection con //encapsulation public boolean exists() { String query = "select 1 from items where item = $" ResultSet rs = con.execute(query, getid()) return!rs.isempty() }... } 69
70 Διαχωρισμός ενδιαφερόντων separation of concerns Κάθε τμήμα του λογισμικού επικεντρώνεται στην επίλυση ενός ξεχωριστού ζητήματος concern Αρχιτεκτονικά επίπεδα επίπεδο παρουσίασης, επίπεδο επιχειρησιακής λογικής, επίπεδο πρόσβασης δεδομένων 70
71 Παράδειγμα Θα επανέλθουμε 71
72 Επαναχρησιμοποίηση reuse Το λογισμικό δεν πρέπει να ανακαλύπτει κάθε φορά εκ νέου τον τροχό Οι καλές αφαιρέσεις και τα καλώς διαχωρισμένα συστατικά είναι εύκολο να επαναχρησιμοποιηθούν 72
73 Παράδειγμα var animals = ["dog", "cat", "fish"] var len = function(s) { return s.length; } var sum = function(a, b) { return a+b; } animals.map(len).reduce(sum, 0); //10 73
74 Μήπως ο ίδιος ο κώδικας είναι το design; TEX would have been a complete failure if I had merely specified it and not participated fully in its initial implementation. The process of implementation constantly led me to unanticipated questions and to new insights about how the original specifications could be improved. Donald Knuth 74
75 Πρόσθετες σχεδιαστικές αρχές design principles Πώς να δομήσουμε και να υλοποιήσουμε τις αφαιρέσεις abstractions 75
76 Μην επαναλαμβάνεσαι Don't Repeat Yourself "Every piece of knowledge must have a single, unambiguous, authoritative representation within a system." A. Thomas, D. Hunt 76
77 Μόνο μια φορά Once and Only Once Αρχή του Extreme Programming XP Each and every declaration of behavior should appear Once and Only Once. 77
78 DRY vs WET WET: We Enjoy Typing WET: Waste Everybody's Time 78
79 Εφαρμογή της αρχής DRY στην πράξη Η επανάληψη duplication αυξάνει την τυχαία/τεχνητή πολυπλοκότητα του συστήματος accidental complexity. Οπουδήποτε στον κύκλο ζωής του λογισμικού υπάρχουν "χειροκίνητες" διαδικασίες, θα πρέπει να αυτοματοποιούνται π.χ. μέσω build system, scripting, κ.ά.. Αν προκύπτουν επαναλήψεις στη λογική, κάπου απαιτείται η προσθήκη μιας νέας αφαίρεσης. 79
80 Σύνολο αρχών S.O.L.I.D. Single responsibility S Open/closed Ο Liskov substitution L Interface segregation Ι Dependency inversion D 80
81 Μοναδική ευθύνη Κάθε κλάση/συστατικό πρέπει να έχει μία και μοναδική ευθύνη. A class should have only one reason to change. 81
82 Ανοικτό/κλειστό Κάθε κλάση/συστατικό πρέπει να είναι ανοικτή σε επεκτάσεις π.χ. προσθήκη νέων πεδίων ή μεθόδων. Κάθε κλάση/συστατικό πρέπει να είναι κλειστή και οριοθετημένη έτοιμη προς χρήση από τρίτα συστατικά. 82
83 Δυνατότητα αντικατάστασης Αν το S είναι υποτύπος του Τ τότε όλα τα αντικείμενα του δεύτερου θα πρέπει να μπορούν να αντικατασταθούν με αντικείμενα του πρώτου χωρίς να αλλοιωθεί κανένα από τα επιθυμητά χαρακτηριστικά του συστήματος. Strong behavioral subtyping. 83
84 Επιμερισμός διεπαφών Κανένα συστατικό δεν πρέπει να εξαρτάται από μεθόδους που δε χρησιμοποιεί. Χρήση μικρών και διαφορετικών interfaces για τη θέσπιση των διεπαφών μεταξύ συστατικών. 84
85 Ανιστροφή εξαρτήσεων Τα υψηλού επιπέδου συστατικά δεν πρέπει να εξαρτώνται από τα χαμηλού επιπέδου συστατικά. Και τα δύο θα πρέπει να εξαρτώνται από κοινές αφαιρέσεις. Οι αφαιρέσεις δεν πρέπει να εξαρτώνται από λεπτομέρειες. Οι λεπτομέρειες θα πρέπει να εξαρτώνται από τις αφαιρέσεις. 85
86 Παράδειγμα class DataAccessLayer { private Function<Item> updateindex =... //private MySQLDatastore store //bad private Datastore store //good DataAccessLayer() { store = new MySQLDatastore() //bad store = Config.get('Datastore') //good } void save(item item) { store.save(item item, updateindex) } } Dependency Inversion Injection 86
87 5. Η έννοια του τεχνικού χρέους technical/design/code debt 87
88 Ποιοτικά ζητούμενα σχεδιασμού Performance Scalability Maintainability Extensibility Security Safety Robustness Fault tolerance Usability Reliability 88
89 Σχεδιασμός = Συμβιβασμός Συνήθως δεν είναι εφικτό να γίνουν όλα καλά με την πρώτη Επιλογή των επιθυμητών trade offs 89
90 Τεχνικό χρέος Το κόστος της πρόσθετης δουλειάς που θα απαιτηθεί από την επιλογή μιας εύκολης και γρήγορης υλοποίησης αντί για την εφαρμογή της συνολικά καλύτερης λύσης. 90
91 Τέσσερα είδη By Martin Fowler 91
92 Το κλασικότερο trade off Efficiency vs Abstraction Programmers have spent far too much time worrying about efficiency in the wrong places at the wrong times; premature optimization is the root of all evil. Donald Knuth 92
05 Ανάλυση Απαιτήσεων
05 Ανάλυση Απαιτήσεων Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Εαρινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Περιεχόμενα 1. Οι
Διαβάστε περισσότερα07 Σχεδιασμός λογισμικού
07 Σχεδιασμός λογισμικού Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Εαρινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Περιεχόμενα 1.
Διαβάστε περισσότεραΤεχνολογία Λογισμικού
Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Τεχνολογία Λογισμικού 8ο Εξάμηνο 2018 19 Σχεδιαστικές αρχές λογισμικού Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Περιεχόμενα 1. Βασικές σχεδιαστικές αρχές λογισμικού
Διαβάστε περισσότερα05 Ανάλυση απαιτήσεων
05 Ανάλυση απαιτήσεων Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Εαρινό εξάμηνο 2016 17 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Ανάλυση και Σχεδιασμός Η διαδικασία που μας επιτρέπει να:
Διαβάστε περισσότερα06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός
06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Εαρινό εξάμηνο 2016 17 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Αφαίρεση Abstraction "Η εννοιολογική
Διαβάστε περισσότερα08 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο
08 Η γλώσσα UML I Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Unified Modeling Language
Διαβάστε περισσότερα09 Η γλώσσα UML II. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο
09 Η γλώσσα UML II Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Μοντελοποίηση συμπεριφοράς
Διαβάστε περισσότερα10α Έλεγχος και επαλήθευση λογισμικού
10α Έλεγχος και επαλήθευση λογισμικού Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr
Διαβάστε περισσότεραΤεχνολογία Λογισμικού
Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Τεχνολογία Λογισμικού 8ο Εξάμηνο 2018 19 Εισαγωγή στη διαχείριση έργων λογισμικού Δρ. Κώστας Σαΐδης saiko@di.uoa.gr A. Διαχείριση έργου γενικά Ορισμοί Βασικές
Διαβάστε περισσότεραΤεχνολογία Λογισμικού
Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Τεχνολογία Λογισμικού 8ο Εξάμηνο 2018 19 Unified Modeling Language II Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Μοντελοποίηση δομής Διαγράμματα κλάσεων Class diagrams
Διαβάστε περισσότερα02α Διαχείριση Έργων Λογισμικού
02α Διαχείριση Έργων Λογισμικού Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Διαχείριση
Διαβάστε περισσότερα09 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Εαρινό εξάμηνο
09 Η γλώσσα UML I Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Εαρινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Unified Modeling Language
Διαβάστε περισσότεραΕισαγωγή στη Σχεδίαση Λογισμικού
Εισαγωγή στη Σχεδίαση Λογισμικού περιεχόμενα παρουσίασης Τι είναι η σχεδίαση λογισμικού Έννοιες σχεδίασης Δραστηριότητες σχεδίασης Σχεδίαση και υποδείγματα ανάπτυξης λογισμικού σχεδίαση Η σχεδίαση του
Διαβάστε περισσότεραΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Μεθοδολογίες Ανάπτυξης Συστημάτων Πληροφορικής Απαντούν στα εξής ερωτήματα Ποιά βήματα θα ακολουθηθούν? Με ποιά σειρά? Ποιά τα παραδοτέα και πότε? Επομένως,
Διαβάστε περισσότεραΑρχιτεκτονική Λογισμικού
Αρχιτεκτονική Λογισμικού περιεχόμενα παρουσίασης Τι είναι η αρχιτεκτονική λογισμικού Αρχιτεκτονική και απαιτήσεις Σενάρια ποιότητας Βήματα αρχιτεκτονικής σχεδίασης Αρχιτεκτονικά πρότυπα Διαστρωματωμένη
Διαβάστε περισσότεραΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για
Διαβάστε περισσότεραΠληροφορική 2. Τεχνολογία Λογισμικού
Πληροφορική 2 Τεχνολογία Λογισμικού 1 2 Κρίση Λογισμικού (1968) Στην δεκαετία του 1970 παρατηρήθηκαν μαζικά: Μεγάλες καθυστερήσεις στην ολοκλήρωση κατασκευής λογισμικών Μεγαλύτερα κόστη ανάπτυξης λογισμικού
Διαβάστε περισσότεραΜάθημα «Υπηρεσίες Ηλεκτρονικής Υγείας»
Μάθημα «Υπηρεσίες Ηλεκτρονικής Υγείας» M. Σπανάκης, Μ. Τσικνάκης Εαρινό Εξάμηνο 2014 Μάθημα 1 Παρουσίαση Εργασίας και Εισαγωγή στην ανάλυση απαιτήσεων Εισαγωγή Αρχική συζήτηση αναφορικά με την ανάλυση
Διαβάστε περισσότεραΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης
Διαβάστε περισσότεραΤεχνολογία Λογισμικού
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Ενότητα #1 : Εισαγωγή Σταμέλος Ιωάννης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό
Διαβάστε περισσότεραFORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016
FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 Μ6. Φάσεις ανάπτυξης λογισμικού: προδιαγραφές, σχεδίαση, υλοποίηση, επαλήθευση, τεκμηρίωση, συντήρηση προγραμμάτων Δρ. Γεώργιος Παπαλάμπρου Επικ.
Διαβάστε περισσότεραFORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016
FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016 Μ6. Φάσεις ανάπτυξης λογισμικού: προδιαγραφές, σχεδίαση, υλοποίηση, επαλήθευση, τεκμηρίωση, συντήρηση προγραμμάτων Δρ. Γεώργιος Παπαλάμπρου Επικ.
Διαβάστε περισσότεραΕλληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής
1 Ελληνικό Ανοικτό Πανεπιστήµιο Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας ρ. Πάνος Φιτσιλής Περιεχόµενα Βασικές έννοιες αντικειµενοστεφούς τρόπου ανάπτυξης Τι είναι κλάση Τι είναι αντικείµενο 2 Βασικές
Διαβάστε περισσότεραΑνάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)
Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 8: Σχεδίαση Συστήματος Σχεδίαση Συστήματος 2 Διεργασία μετατροπής του προβλήματος σε λύση. Από το Τί στο Πώς. Σχέδιο: Λεπτομερής περιγραφή της λύσης. Λύση:
Διαβάστε περισσότεραπεριεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης
Περιπτώσεις Χρήσης περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης περιπτώσεις χρήσης Τι θα κάνει το λογισμικό για κάποιον
Διαβάστε περισσότεραΠληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής
Εισαγωγή στις Βάσεις Δεδομένων Εισαγωγή στις Βάσεις Δεδομένων Ορισμός Βάσης Δεδομένων Σύστημα Διαχείρισης Βάσης Δεδομένων ΣΔΒΔ (DBMS) Χαρακτηριστικά προσέγγισης συστημάτων αρχειοθέτησης Χαρακτηριστικά
Διαβάστε περισσότεραUse Cases: μια σύντομη εισαγωγή. Heavily based on UML & the UP by Arlow and Neustadt, Addison Wesley, 2002
Use Cases: μια σύντομη εισαγωγή Heavily based on UML & the UP by Arlow and Neustadt, Addison Wesley, 2002 (γενικές εισαγωγικές ιδέες) ΣΥΛΛΟΓΗ ΑΠΑΙΤΗΣΕΩΝ 2 Ανάλυση απαιτήσεων Λειτουργικές απαιτήσεις: τι
Διαβάστε περισσότεραΓλώσσες προγραµµατισµού. Ανάπτυξη Συστηµάτων Λογισµικού
ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ http://courses.softlab.ntua.gr/softeng/ ιδάσκοντες: (nickie@softlab.ntua.gr) Βασίλης Βεσκούκης (bxb@softlab.ntua.gr) Γλώσσες Προγραµµατισµού και Ανάπτυξη Συστηµάτων Λογισµικού ΤΛ
Διαβάστε περισσότεραΑπαιτήσεις Λογισμικού
Απαιτήσεις Λογισμικού περιεχόμενα παρουσίασης Τι είναι οι απαιτήσεις Δραστηριότητες προσδιορισμού απαιτήσεων Η εξαγωγή απαιτήσεων τι είναι οι απαιτήσεις Πριν βρούμε τη λύση πρέπει να καταλάβουμε το πρόβλημα.
Διαβάστε περισσότεραΕργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο
Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων Εξάμηνο 7 ο Procedures and Functions Stored procedures and functions are named blocks of code that enable you to group and organize a series of SQL and PL/SQL
Διαβάστε περισσότεραΠίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού
Πρόλογος...21 μέρος A Εισαγωγή στην Τεχνολογία Λογισμικού 1 Εισαγωγή στην Τεχνολογία Λογισμικού 1.1 Το λογισμικό...25 1.1.1 Ο ρόλος και η σημασία του λογισμικού...26 1.1.2 Οικονομική σημασία του λογισμικού...28
Διαβάστε περισσότεραΟι περιπτώσεις χρήσης
1 Ελληνικό Ανοικτό Πανεπιστήµιο Οι περιπτώσεις χρήσης ρ. Πάνος Φιτσιλής 2 Περιεχόµενα Το µοντέλο των περιπτώσεων χρήσης Τα διαγράµµατα των περιπτώσεων χρήσης Λεκτική περιγραφή των περιπτώσεων χρήσης Τρόπος
Διαβάστε περισσότεραΑντικειμενοστρεφής Προγραμματισμός
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Αντικειμενοστρεφής Προγραμματισμός Ενότητα 15: Σχεδίαση Εφαρμογών Γρηγόρης Τσουμάκας, Επικ. Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΕργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 4 ο Εργαστήριο -
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ 3 ο ΕΞΑΜΗΝΟ Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 4 ο Εργαστήριο - ΕΠΙΜΕΛΕΙΑ ΜΑΘΗΜΑΤΟΣ: Πρέντζα Ανδριάννα ΕΠΙΜΕΛΕΙΑ ΕΡΓΑΣΤΗΡΙΟΥ: Στουγιάννου
Διαβάστε περισσότερα12 Έλεχος και επαλήθευση λογισμικού
12 Έλεχος και επαλήθευση λογισμικού Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Εαρινό εξάμηνο 2016 17 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Πώς εξασφαλίζουμε ότι το λογισμικό είναι σύμφωνο
Διαβάστε περισσότερα8 Τεχνικός Εφαρμογών Πληροφορικής με Πολυμέσα
Περιεχόμενα Πρόλογος... 9 Κεφάλαιο 1: Δομή και λειτουργία του υπολογιστή... 11 Κεφάλαιο 2: Χρήση Λ.Σ. DOS και Windows... 19 Κεφάλαιο 3: Δίκτυα Υπολογιστών και Επικοινωνίας... 27 Κεφάλαιο 4: Unix... 37
Διαβάστε περισσότερα02 Αντικειμενοστρεφής Προγραμματισμός
02 Αντικειμενοστρεφής Προγραμματισμός Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Εαρινό εξάμηνο 2016 17 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Αντικειμενοστρέφεια Στον προγραμματισμό object
Διαβάστε περισσότεραΜοντελοποίηση Πεδίου
Μοντελοποίηση Πεδίου περιεχόμενα παρουσίασης Εννοιολογικές κλάσεις Συσχετίσεις εννοιολογικών κλάσεων Τύποι ιδιοτήτων Γενίκευση Συχνά σφάλματα μοντελοποίησης πεδίου Εννοιολογικές κλάσεις και κλάσεις λογισμικού
Διαβάστε περισσότεραΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007
Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Αν κάπου κάνετε κάποιες υποθέσεις να αναφερθούν στη σχετική ερώτηση. Όλα τα αρχεία που αναφέρονται στα προβλήματα βρίσκονται στον ίδιο φάκελο με το εκτελέσιμο
Διαβάστε περισσότεραΕισαγωγή στη Δασική Πληροφορική
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Εισαγωγή στη Δασική Πληροφορική Ενότητα 3: Θεωρία, Ανάλυση και Σχεδιασμός Πληροφοριακών Συστημάτων Ζαχαρούλα Ανδρεοπούλου Δασολογίας &
Διαβάστε περισσότεραΕιδικά θέματα τεχνολογίας λογισμικού
Ειδικά θέματα τεχνολογίας λογισμικού Σχεδιασμός λογισμικού Διομήδης Σπινέλλης Τμήμα Διοικητικής Επιστήμης και Τεχνολογίας Οικονομικό Πανεπιστήμιο Αθηνών dds@aueb.gr http://www.dmst.aueb.gr/dds @CoolSWEng
Διαβάστε περισσότεραΤεχνολογία Λογισμικού
Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Η/Υ Εθνικό Μετσόβιο Πολυτεχνείο Τεχνολογία Λογισμικού 7ο / 9ο Εξάμηνο 2018 19 Ν.Παπασπύρου, Αν.Καθ. ΣΗΜΜΥ, nickie@softlab.ntua,gr Β.Βεσκούκης, Αν.Καθ. ΣΑΤΜ, v.vescoukis@cs.ntua,gr
Διαβάστε περισσότερα11β Δομικά πρότυπα σχεδίασης
11β Δομικά πρότυπα σχεδίασης Τεχνολογία Λογισμικού Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Χειμερινό εξάμηνο 2017 18 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Δομικά πρότυπα
Διαβάστε περισσότερα3 Αλληλεπίδραση Αντικειμένων
Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή
Διαβάστε περισσότεραΤεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)
Τεχνολογία Λογισμικού Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative
Διαβάστε περισσότεραΔιαχείριση Ετερογενών Δικτύων
Διαχείριση Ετερογενών Δικτύων Δημήτρης Ι. Χρόνης (Ο.Τ.Ε) Λάμπρος Ράπτης (Ε.Μ.Π) Περιεχόμενα Παροχή υπηρεσιών σε ετερογενή δίκτυα Αρχιτεκτονική διαχείρισης ετερογενών δικτύων Λειτουργικές απαιτήσεις Τεχνικά
Διαβάστε περισσότεραΑρχές Τεχνολογίας Λογισμικού Εργαστήριο
Αρχές Τεχνολογίας Λογισμικού Εργαστήριο Κωδικός Μαθήματος: TP323 Ώρες Εργαστηρίου: 2/εβδομάδα (Διαφάνειες Νίκου Βιδάκη) 1 JAVA Inheritance Εβδομάδα Νο. 3 2 Προηγούμενο μάθημα (1/2) Τι είναι αντικείμενο?
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ
ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Μάθημα 4: Ανάλυση Απαιτήσεων Μαρίνος Θεμιστοκλέους Email: mthemist@unipi.gr Ανδρούτσου 150 Γραφείο 206 Τηλ. 210 414 2723 Ώρες Γραφείου: Δευτέρα 11-12 AM Απαιτήσεις Οι απαιτήσεις
Διαβάστε περισσότεραΜέθοδοι. Υποσυστήµατα και πακέτα. Μοντέλα αντικειµενοστραφούς σχεδίασης. Αντικειµενοστραφής Σχεδίαση. Στα πρώτα στάδια της ανάλυσης
Αντικειµενοστραφής Σχεδίαση Αντώνης Καραγεώργος Τµήµα Μηχανικών Η/Υ και ικτύων Πανεπιστήµιο Θεσσαλίας karageorgos@inf.uth.gr Μέθοδοι Στα πρώτα στάδια της γράφουµε µόνο τα ονόµατα των µεθόδων Γράφουµε τις
Διαβάστε περισσότεραΠροδιαγραφές Απαιτήσεων Επικύρωση Απαιτήσεων
Προδιαγραφές Απαιτήσεων Επικύρωση Απαιτήσεων περιεχόμενα παρουσίασης Προδιαγραφές Απαιτήσεων Έγγραφο Προδιαγραφών Απαιτήσεων λογισμικού (ΕΠΑΛ) Επικύρωση απαιτήσεων Ιχνηλάτηση απαιτήσεων προδιαγραφές απαιτήσεων
Διαβάστε περισσότεραΣχεδιασµός βασισµένος σε συνιστώσες
Σχεδιασµός βασισµένος σε συνιστώσες 1 Ενδεικτικά περιεχόµενα του κεφαλαίου Ποια είναι τα "άτοµα", από τα οποία κατασκευάζονται οι υπηρεσίες; Πώς οργανώνουµε τις συνιστώσες σε ένα αρµονικό σύνολο; Τι είναι
Διαβάστε περισσότεραΠανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική»
Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Πληροφορική» Μεταπτυχιακή Διατριβή Τίτλος Διατριβής Επίκαιρα Θέματα Ηλεκτρονικής Διακυβέρνησης Ονοματεπώνυμο Φοιτητή Σταμάτιος
Διαβάστε περισσότεραBizagi Modeler: Συνοπτικός Οδηγός
Bizagi Modeler: Συνοπτικός Οδηγός Α. Τσαλγατίδου - Γ.-Δ. Κάπος Πρόγραμμα Μεταπτυχιακών Σπουδών Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών 2017-2018 Bizagi Modeler Εμπορική εφαρμογή για μοντελοποίηση
Διαβάστε περισσότερα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?
Διαβάστε περισσότεραΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Τεχνολογίες και Εφαρμογές Διαδικτύου. Σχεδίαση Συστήματος
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Σχεδίαση Συστήματος Κατερίνα Πραματάρη Διαφορετικοί τύποι έργων ανάπτυξης λογισμικού Μικρή εφαρμογή, ανάπτυξη από την αρχή, σχετικά
Διαβάστε περισσότεραΕνότητες στην C Τεχνική Υλοποίησης Αφαιρετικών Τύπων Δεδομένων στην C
Ενότητες στην C Τεχνική Υλοποίησης Αφαιρετικών Τύπων Δεδομένων στην C Δυσκολία: Προγράμματα που λύνουν «πραγματικά προβλήματα» μπορεί να είναι μεγάλα (χιλιάδες ή εκατομμύρια γραμμές κώδικα). Κανείς δεν
Διαβάστε περισσότεραΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07 Αλγόριθμος: Βήμα προς βήμα διαδικασία για την επίλυση κάποιου προβλήματος. Το πλήθος των βημάτων πρέπει να είναι πεπερασμένο. Αλλιώς: Πεπερασμένη
Διαβάστε περισσότεραΠληροφοριακά Συστήματα, Οργανισμοί και Επιχειρησιακές Διαδικασίες
Ενότητα 4 Πληροφοριακά Συστήματα, Οργανισμοί και Επιχειρησιακές Διαδικασίες Πληροφοριακά Συστήματα Διοίκησης Ι Διδάσκων: Νίκος Καρακαπιλίδης 4-1 Στόχοι και αντικείμενο ενότητας Περιγραφή των χαρακτηριστικών
Διαβάστε περισσότεραΚΑΤΑΛΟΓΟΣ ΕΚΠΑΙΔΕΥΣΗΣ
ΚΑΤΑΛΟΓΟΣ ΕΚΠΑΙΔΕΥΣΗΣ www.witside.com Υπηρεσίες Εκπαίδευσης QlikView Οι Υπηρεσίες Εκπαίδευσης QlikView παρέχουν κατάρτιση σχετικά με την ανάπτυξη εφαρμογών QlikView. Τα μαθήματα είναι διαθέσιμα σε μια
Διαβάστε περισσότεραΚεφάλαιο 7: Τεχνολογία Λογισμικού
Κεφάλαιο 7: Τεχνολογία Λογισμικού Η Επιστήμη των Υπολογιστών: Μια Ολοκληρωμένη Παρουσίαση (δέκατη αμερικανική έκδοση) J. Glenn Brookshear Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Διαβάστε περισσότεραΑνάλυση Περιπτώσεων Χρήσης
Ανάλυση Περιπτώσεων Χρήσης ανάλυση απαιτήσεων ü Διαγράμματα Δραστηριότητας. Επιχειρησιακή μοντελοποίηση και ροή εργασιών σε περιπτώσεις χρήσης ü Μοντελοποίηση Πεδίου. Δημιουργία διαγραμμάτων κλάσεων για
Διαβάστε περισσότεραΑΦAΙΡΕΤΙΚΟΣ (ή ΑΦΗΡΗΜΕΝΟΣ) ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ (ΑΤΔ) (Abstract Data Type-ADT) - σύνολο δεδομένων (data, objects) - σύνολο πράξεων στα δεδομένα
Τύπος Δεδομένων: ΑΦAΙΡΕΤΙΚΟΣ (ή ΑΦΗΡΗΜΕΝΟΣ) ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ (ΑΤΔ) (Abstract Data Type-ADT) - σύνολο δεδομένων (data, objects) - σύνολο πράξεων στα δεδομένα - Ένας ΑΤΔ είναι ένα μαθηματικό μοντέλο (οντότητα)
Διαβάστε περισσότεραΕισαγωγή στην ανάλυση
Εισαγωγή στην ανάλυση & σχεδίαση Π.Σ. Τα προϊόντα λογισμικού έχουν (και αυτά) ένα κύκλο ζωής που ξεκινά από τη σύλληψη μιας νέας ιδέας για την ανάπτυξη ενός συγκεκριμένου προϊόντος και φθάνει μέχρι την
Διαβάστε περισσότεραΑνάλυση Πληροφοριακών Συστημάτων. «Βασικές Έννοιες Αντικειμενοστρεφούς Προγραμματισμού Διαγράμματα κλάσεων» Βασίλειος Καρακόιδας
Ανάλυση Πληροφοριακών Συστημάτων «Βασικές Έννοιες Αντικειμενοστρεφούς Προγραμματισμού Διαγράμματα κλάσεων» Βασίλειος Καρακόιδας 7 12 2005 Περιεχόμενα Παρουσίασης Βασικές Έννοιες Αντικειμενοστραφούς προγραμματισμού
Διαβάστε περισσότεραEE512: Error Control Coding
EE512: Error Control Coding Solution for Assignment on Finite Fields February 16, 2007 1. (a) Addition and Multiplication tables for GF (5) and GF (7) are shown in Tables 1 and 2. + 0 1 2 3 4 0 0 1 2 3
Διαβάστε περισσότεραΕισαγωγή στην. Γιάννης Σμαραγδάκης
Εισαγωγή στην Τεχνολογία Λογισμικού Γιάννης Σμαραγδάκης Γιατί μελετάμε την Τεχνολογία Λογισμικού Λογισμικό υπάρχει παντού σε όλους τους τεχνικούς τομείς (π.χ. αεροδιαστημική) σε όλες τις επιστήμες στον
Διαβάστε περισσότεραΣχεδίαση Κλάσεων. Γρηγόρης Τσουµάκας. Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης. Έκδοση:
Σχεδίαση Κλάσεων Γρηγόρης Τσουµάκας Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Έκδοση: 2010.11.19 Εισαγωγή 2 ιαρκής συντήρηση και επέκταση λογισµικού Οι εταιρίες συνήθως συντηρούν, επεκτείνουν
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΜΣ «ΠΡΟΗΓΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΚΗΣ» ΚΑΤΕΥΘΥΝΣΗ «ΕΥΦΥΕΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΑΝΘΡΩΠΟΥ - ΥΠΟΛΟΓΙΣΤΗ»
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΜΣ «ΠΡΟΗΓΜΕΝΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΚΗΣ» ΚΑΤΕΥΘΥΝΣΗ «ΕΥΦΥΕΙΣ ΤΕΧΝΟΛΟΓΙΕΣ ΕΠΙΚΟΙΝΩΝΙΑΣ ΑΝΘΡΩΠΟΥ - ΥΠΟΛΟΓΙΣΤΗ» ΜΕΤΑΠΤΥΧΙΑΚΗ ΙΑΤΡΙΒΗ ΤΟΥ ΕΥΘΥΜΙΟΥ ΘΕΜΕΛΗ ΤΙΤΛΟΣ Ανάλυση
Διαβάστε περισσότεραΛογισµικό (Software SW) Γλώσσες
Λογισµικό (Software SW) Γλώσσες Προγραµµατισµού Οι γενιές των γλωσσών προγραµµατισµού Προβλήµατα που επιλύονται σε ένα περιβάλλον στο οποίο ο άνθρωπος πρέπει να προσαρµόζεται στα χαρακτηριστικά της µηχανής
Διαβάστε περισσότεραΣΧΕΔΙΑΣΗ & ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ
ΣΧΕΔΙΑΣΗ & ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ Διδάσκουσα: Χαρίκλεια Τσαλαπάτα Πανεπιστήμιο Θεσσαλίας ΤΗΜΜΥ 420 htsalapa@inf.uth.gr (e-ce.uth.gr) 1 Εκπαιδευτικό υλικό μαθήματος Ιστοσελίδα: http://eclass.uth.gr/eclass/courses/mhx330/
Διαβάστε περισσότεραΜοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές
Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές Ελληνικό Ανοικτό Πανεπιστήμιο ΓΤΠ61 Πληροφορική Πολυμέσα Αγγελική Μαζαράκη Τι είναι η UML Είναι μια γραφική γλώσσα μοντελοποίησης συστημάτων.
Διαβάστε περισσότεραΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΜΟΝΤΕΛΑ ΣΥΣΤΗΜΑΤΟΣ Διδάσκων: Γ. Χαραλαμπίδης, Επ. Καθηγητής
Διαβάστε περισσότεραΒάσεις Δεδομένων Εισαγωγή
Βάσεις Δεδομένων Εισαγωγή Σκοποί ενότητας Εκμάθηση Συστημάτων Διαχείρισης Βάσεων Δεδομένων Δημιουργία E-R διαγραμμάτων 2 Περιεχόμενα ενότητας Συστήματα Διαχείρισης Βάσεων Δεδομένων Διάγραμμα οντοτήτων
Διαβάστε περισσότεραΥποδείγματα Ανάπτυξης
Υποδείγματα Ανάπτυξης περιεχόμενα παρουσίασης Αποσύνθεση Αφαίρεση Μοντελοποίηση Η δεδομένο λειτουργική προσέγγιση Η αντικειμενοστρεφής προσέγγιση αποσύνθεση Όταν επιχειρούμε τη λύση ενός προβλήματος, πρώτα
Διαβάστε περισσότεραΔιαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση
Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται
Διαβάστε περισσότεραΕλληνικό Ανοικτό Πανεπιστήµιο. Η Υλοποίηση στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής
1 Ελληνικό Ανοικτό Πανεπιστήµιο Η Υλοποίηση στην Ενοποιηµένη ιαδικασία ρ. Πάνος Φιτσιλής Περιεχόµενα Πρωτοτυποποίηση Προγραµµατισµός υλοποίησης Ανάπτυξη συστήµατος Μοναδιαίος έλεγχος Ολοκλήρωση 2 3 Η υλοποίηση
Διαβάστε περισσότεραΥπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ
Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ Μάθημα Πρώτο Εισαγωγή στις Υπηρεσίες Ιστού (Web Services) Μοντέλα WS JSON Χρήση (consume) WS μέσω python Πρόσβαση σε WS και άντληση δεδομένων Παραδείγματα
Διαβάστε περισσότεραΔιαχείριση Πληροφοριακών Συστημάτων
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Διαχείριση Πληροφοριακών Συστημάτων Ενότητα #7: UML Χρήστος Δρόσος Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό
Διαβάστε περισσότεραΔιδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 6: Αφαιρετικότητα, Βιβλιοθήκες Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: - Αφαιρετικότητα -Βιβλιοθήκες (packages) Διδάσκων: Παναγιώτης Ανδρέου ΕΠΛ233 Αντικειμενοστρεφής Προγραμματισμός
Διαβάστε περισσότεραΠροδιαγραφές Απαιτήσεων Γιάννης Σμαραγδάκης
Προδιαγραφές Απαιτήσεων Γιάννης Σμαραγδάκης Τα κυριότερα παραδοτέα/προϊόντα μιας διεργασίας ανάπτυξης λογισμικού Άρθρωση του προβλήματος, κατανόηση (προδιαγραφές απαιτήσεων) α ) Ποιο πρόβλημα λύνουμε;
Διαβάστε περισσότεραΑρχές Προγραμματισμού Υπολογιστών
Αρχές Προγραμματισμού Υπολογιστών Ανάπτυξη Προγράμματος Β ΕΠΑΛ Τομέας Πληροφορικής Βελώνης Γεώργιος Καθηγητής Πληροφορικής ΠΕ20 Κύκλος ανάπτυξης προγράμματος/λογισμικού Η διαδικασία ανάπτυξης λογισμικού,
Διαβάστε περισσότεραΈγγραφο Περιγραφής Απαιτήσεων Λογισμικού
Ιστορικό Ημερομηνία Έκδοση Περιγραφή Συγγραφέας Σελ. 2 Πίνακας Περιεχομένων 1. Εισαγωγή xx
Διαβάστε περισσότεραΣχεδιασμός Οικολογικού Διαμεσολαβητή για την εποπτεία και διαχείριση δικτύου διανομής ηλεκτρικής ενέργειας
Σχεδιασμός Οικολογικού Διαμεσολαβητή για την εποπτεία και διαχείριση δικτύου διανομής ηλεκτρικής ενέργειας Σωτηρία Δριβάλου Εθνικό Μετσόβιο Πολυτεχνείο Μονάδα Εργονομίας Συστήματα διανομής ηλεκτρικής ενέργειας
Διαβάστε περισσότεραΠληροφοριακά Συστήματα Διοίκησης Ενότητα 1: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (1ο Μέρος)
Πληροφοριακά Συστήματα Διοίκησης Ενότητα 1: Βασικές Αρχές Αντικειμενοστραφούς Σχεδίασης Συστημάτων και Εφαρμογών (1ο Μέρος) Γρηγόριος Μπεληγιάννης Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης
Διαβάστε περισσότεραUML. Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις. Παραδείγματα
ΕΙΣΑΓΩΓΗ ΣΤΗ UML UML Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις ιαγράµµατα Παραδείγματα Ορισμός του μοντέλου Αποτελεί µια αφηρηµένη περιγραφή ενός Φυσικού συστήµατος. Αποτελεί ένα σχέδιο για την
Διαβάστε περισσότεραΕγχειρίδιο χρήσης Intalio Designer Εγχειρίδιο χρήσης Intalio Designer
Εγχειρίδιο χρήσης Intalio Designer Σελίδα 1 Copyright Copyright 2007 Atlantis Group. Ιστορικό εγγράφου Έκδοση Εγχειριδίου: 1.0 Ημερομηνία δημιουργίας: 26/11/2007 Σελίδα 2 ΠΕΡΙΕΧΟΜΕΝΑ 1 Εισαγωγή... 4 2
Διαβάστε περισσότεραΑρχιτεκτονικές Συστημάτων
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Αρχιτεκτονικές Συστημάτων Κατερίνα Πραματάρη Αρχιτεκτονικές Συστημάτων Σχεδίαση και Αρχιτεκτονική Συστήματος Αρχιτεκτονική Πελάτη-Εξυπηρετητή
Διαβάστε περισσότεραΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 18: Διαδικασία Σχεδίασης Ψηφιακών Συστηµάτων - Επανάληψη
ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 18: Διαδικασία Σχεδίασης Ψηφιακών Συστηµάτων - Επανάληψη ΧΑΡΗΣ ΘΕΟΧΑΡΙΔΗΣ Επίκουρος Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy) Περίληψη
Διαβάστε περισσότεραΕλληνικό Ανοικτό Πανεπιστήµιο. Η Ανάλυση και ο Σχεδιασµός στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής
1 Ελληνικό Ανοικτό Πανεπιστήµιο Η και ο στην Ενοποιηµένη ιαδικασία ρ. Πάνος Φιτσιλής Περιεχόµενα Γενικές αρχές ανάλυσης και σχεδιασµού Τα βήµατα της ανάλυσης και του σχεδιασµού Συµπεράσµατα 2 3 Η ανάλυση
Διαβάστε περισσότεραΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ (ΑΤΔ) (Abstract Data Type-ADT)
Τύπος Δεδομένων: ΑΦAΙΡΕΤΙΚΟΣ (ή ΑΦΗΡΗΜΕΝΟΣ) ΤΥΠΟΣ ΔΕΔΟΜΕΝΩΝ (ΑΤΔ) (Abstract Data Type-ADT) - σύνολο δεδομένων (data, objects) - σύνολο πράξεων στα δεδομένα - Ένας ΑΤΔ είναι ένα μαθηματικό μοντέλο (οντότητα)
Διαβάστε περισσότεραΠεριεχόμενο του μαθήματος
ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Απαιτήσεις Λογισμικού Περιπτώσεις χρήσης Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Περιεχόμενο του μαθήματος
Διαβάστε περισσότεραΣχεδίαση Περιβάλλοντος εργασίας ενός Οργανισμού και Σχεδίαση Χάρτη διαδικασιών ενός Οργανισμού και
ΜΕΘΟΔΟΛΟΓΙΕΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ ΔΙΑΔΙΚΑΣΙΩΝ ΔΗΜΟΣΙΩΝ ΥΠΗΡΕΣΙΩΝ Σχεδίαση Περιβάλλοντος εργασίας ενός Οργανισμού και Σχεδίαση Χάρτη διαδικασιών ενός Οργανισμού και ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ
Διαβάστε περισσότεραUNIVERSITY OF CALIFORNIA. EECS 150 Fall ) You are implementing an 4:1 Multiplexer that has the following specifications:
UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences EECS 150 Fall 2001 Prof. Subramanian Midterm II 1) You are implementing an 4:1 Multiplexer that has the following specifications:
Διαβάστε περισσότεραInstruction Execution Times
1 C Execution Times InThisAppendix... Introduction DL330 Execution Times DL330P Execution Times DL340 Execution Times C-2 Execution Times Introduction Data Registers This appendix contains several tables
Διαβάστε περισσότεραΠολιτικές Ασφάλειας Πληροφοριακών Συστημάτων. Σωκράτης Κ. Κάτσικας Τμήμα Μηχ/κών Πληροφοριακών & Επικοινωνιακών Συστημάτων Πανεπιστήμιο Αιγαίου
Πολιτικές Ασφάλειας Πληροφοριακών Συστημάτων Σωκράτης Κ. Κάτσικας Τμήμα Μηχ/κών Πληροφοριακών & Επικοινωνιακών Συστημάτων Πανεπιστήμιο Αιγαίου Στόχοι της παρουσίασης H παρουσίαση αυτή στοχεύει στην απάντηση
Διαβάστε περισσότερα5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ
5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ 5.1 Εισαγωγή στους αλγορίθμους 5.1.1 Εισαγωγή και ορισμοί Αλγόριθμος (algorithm) είναι ένα πεπερασμένο σύνολο εντολών οι οποίες εκτελούν κάποιο ιδιαίτερο έργο. Κάθε αλγόριθμος
Διαβάστε περισσότεραΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική
ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται
Διαβάστε περισσότεραΤεχνολογία Ψυχαγωγικού Λογισμικού και Εικονικοί Κόσμοι Ενότητα 8η - Εικονικοί Κόσμοι και Πολιτιστικό Περιεχόμενο
Τεχνολογία Ψυχαγωγικού Λογισμικού και Εικονικοί Κόσμοι Ενότητα 8η - Εικονικοί Κόσμοι και Πολιτιστικό Περιεχόμενο Ιόνιο Πανεπιστήμιο, Τμήμα Πληροφορικής, 2015 Κωνσταντίνος Οικονόμου, Επίκουρος Καθηγητής
Διαβάστε περισσότεραAssalamu `alaikum wr. wb.
LUMP SUM Assalamu `alaikum wr. wb. LUMP SUM Wassalamu alaikum wr. wb. Assalamu `alaikum wr. wb. LUMP SUM Wassalamu alaikum wr. wb. LUMP SUM Lump sum lump sum lump sum. lump sum fixed price lump sum lump
Διαβάστε περισσότεραC.S. 430 Assignment 6, Sample Solutions
C.S. 430 Assignment 6, Sample Solutions Paul Liu November 15, 2007 Note that these are sample solutions only; in many cases there were many acceptable answers. 1 Reynolds Problem 10.1 1.1 Normal-order
Διαβάστε περισσότερα