ΠΕΡΙΕΧΟΜΕΝΑ. 2.5 Παράδειγµα πληροφοριακού συστήµατος Παράδειγµα συστήµατος πραγµατικού χρόνου

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

Download "ΠΕΡΙΕΧΟΜΕΝΑ. 2.5 Παράδειγµα πληροφοριακού συστήµατος Παράδειγµα συστήµατος πραγµατικού χρόνου"

Transcript

1 ΠΕΡΙΕΧΟΜΕΝΑ 1 Η σηµασία της τεχνολογίας λογισµικού Τι σηµαίνει τεχνολογία λογισµικού; Πόσο επιτυχηµένοι ήµασταν µέχρι τώρα; Τι σηµαίνει "καλό λογισµικό"; Ποιος αναλαµβάνει την τεχνολογία λογισµικού; Προσέγγιση από την πλευρά του συστήµατος Προσέγγιση από την πλευρά της σχεδίασης Τα µέλη της οµάδας ανάπτυξης Πώς µετεξελίχθηκε η τεχνολογία λογισµικού Παράδειγµα πληροφοριακού συστήµατος Παράδειγµα συστήµατος πραγµατικού χρόνου Η σηµασία αυτού του κεφαλαίου για σας Η σηµασία αυτού του κεφαλαίου για την οµάδα ανάπτυξης Η σηµασία αυτού του κεφαλαίου για τους ερευνητές Εργασία εξαµήνου Σηµαντικές πήγες αναφοράς Ασκήσεις Μοντελοποίηση διεργασιών και κύκλου ζωής λογισµικού Η σηµασία της έννοιας "διεργασία" Μοντέλα διεργασιών ανάπτυξης λογισµικού Εργαλεία και τεχνικές µοντελοποίησης διεργασιών Πρακτικές εφαρµογές της µοντελοποίησης διεργασιών Παράδειγµα πληροφοριακού συστήµατος Παράδειγµα συστήµατος πραγµατικού χρόνου Η σηµασία αυτού του κεφαλαίου για σας Η σηµασία αυτού του κεφαλαίου για την οµάδα ανάπτυξης Η σηµασία αυτού του κεφαλαίου για τους ερευνητές Εργασία εξαµήνου Σηµαντικές πηγές αναφοράς Ασκήσεις

2 xviii Περιεχόµενα 3 Σχεδιασµός και διοίκηση του έργου Παρακολούθηση της προόδου Το προσωπικό του έργου Εκτίµηση προσπάθειας ιαχείριση κίνδυνων Το πλάνο του έργου Μοντέλα διεργασιών και διοίκηση έργων Παράδειγµα πληροφοριακού συστήµατος Παράδειγµα συστήµατος πραγµατικού χρόνου Η σηµασία αυτού του κεφαλαίου για σας Η σηµασία αυτού του κεφαλαίου για την οµάδα ανάπτυξης Η σηµασία αυτού του κεφαλαίου για τους ερευνητές Εργασία εξαµήνου Σηµαντικές πήγες αναφοράς Ασκήσεις Η εξαγωγή των απαιτήσεων Η διεργασία των απαιτήσεων Τύποι απαιτήσεων Τα χαρακτηριστικά των απαιτήσεων Τρόποι έκφρασης των απαιτήσεων Άλλες σηµειογραφίες απαιτήσεων Πρωτοτυποποίηση των απαιτήσεων Τεκµηρίωση των απαιτήσεων Οι συµµετέχοντες στη διεργασία απαιτήσεων Επικύρωση απαιτήσεων Μετρήσεις των απαιτήσεων Επιλογή τεχνικής για την προδιαγραφή απαιτήσεων Παράδειγµα πληροφοριακού συστήµατος Παράδειγµα συστήµατος πραγµατικού χρόνου Η σηµασία αυτού του κεφαλαίου για σας Η σηµασία αυτού του κεφαλαίου για την οµάδα ανάπτυξης Η σηµασία αυτού του κεφαλαίου για τους ερευνητές Εργασία εξαµήνου Σηµαντικές πήγες αναφοράς Ασκήσεις

3 Περιεχόµενα xix 5 Η σχεδίαση του συστήµατος Ο ορισµός του σχεδίου Αποσύνθεση και τµηµατικότητα Στυλ και στρατηγικές στην αρχιτεκτονική Ζητήµατα στη δηµιουργία του σχεδίου Τα χαρακτηριστικά του καλού σχεδίου Τεχνικές για τη βελτίωση του σχεδίου Επαλήθευση και επικύρωση σχεδίασης Η τεκµηρίωση του σχεδίου Παράδειγµα πληροφοριακού συστήµατος Παράδειγµα συστήµατος πραγµατικού χρόνου Η σηµασία αυτού του κεφαλαίου για σας Η σηµασία αυτού του κεφαλαίου για την οµάδα ανάπτυξης Η σηµασία αυτού του κεφαλαίου για τους ερευνητές Εργασία εξαµήνου Σηµαντικές πήγες αναφοράς Ασκήσεις Αντικείµενα Προσανατολισµός σε αντικείµενα Η αντικειµενοστρεφής διεργασία ανάπτυξης Περιπτώσεις χρήσης Αντικειµενοστρεφής αναπαράσταση: Ένα παράδειγµα µε χρήση της UML Αντικειµενοστρεφής σχεδίαση συστήµατος Αντικειµενοστρεφής σχεδίαση προγραµµάτων Μετρήσεις στα αντικειµενοστρεφή συστήµατα Παράδειγµα πληροφοριακού συστήµατος Παράδειγµα συστήµατος πραγµατικού χρόνου Η σηµασία αυτού του κεφαλαίου για σας Η σηµασία αυτού του κεφαλαίου για την οµάδα ανάπτυξης Η σηµασία αυτού του κεφαλαίου για τους ερευνητές Εργασία εξαµήνου Σηµαντικές πήγες αναφοράς Ασκήσεις

4 xx Περιεχόµενα 7 Η συγγραφή των προγραµµάτων Πρότυπα και διαδικασίες προγραµµατισµού Κατευθυντήριες γραµµές προγραµµατισµού Τεκµηρίωση Παράδειγµα πληροφοριακού συστήµατος Παράδειγµα συστήµατος πραγµατικού χρόνου Η σηµασία αυτού του κεφαλαίου για σας Η σηµασία αυτού του κεφαλαίου για την οµάδα ανάπτυξης Η σηµασία αυτού του κεφαλαίου για τους ερευνητές Εργασία εξαµήνου Σηµαντικές πήγες αναφοράς Ασκήσεις Ευρετήριο

5 Κεφάλαιο 5: Η σχεδίαση του συστήµατος 333 σχεδίου θα αποφασίσουµε για τον τρόπο που θα χειριστούµε τον µη ντετερµινισµό. Πρότυπα σχεδίων και επαναχρησιµοποίηση Πολύ συχνά, σχεδιάζουµε και κατασκευάζουµε συστήµατα που είναι παρόµοια σε ορισµένα σηµεία µε άλλα συστήµατα που έχουµε κατασκευάσει στο παρελθόν. Για παράδειγµα, κατασκευάζουµε µερικές φορές µια σειρά από συστήµατα ελέγχου για εγκαταστάσεις επεξεργασίας υγρών λυµάτων κάθε σύστηµα είναι µια βελτίωση ή αντικατάσταση, του προηγουµένου. Άλλες φορές, σχεδιάζουµε και κατασκευάζουµε µια σειρά εφαρµογών που έχουν παρόµοια λειτουργικότητα αλλά πρέπει να εκτελεστούν σε διαφορετικά περιβάλλοντα τα έτοιµα εµπορικά προϊόντα όπως τα συστήµατα διαχείρισης βάσεων δεδοµένων ή τα συστήµατα ηλεκτρονικού ηµερολογίου σχεδιάζονται συνήθως µε αυτό τον τρόπο. Άρα, θέλουµε να εκµεταλλευτούµε την οµοιότητα ανάµεσα σε ορισµένα συστήµατα, ώ- στε να µη χρειάζεται να αναπτύξουµε τα καινούργια συστήµατα από την αρχή. Ένας δηµοφιλής τρόπος αναγνώρισης των οµοιοτήτων είναι να εξετάσουµε την ύπαρξη προτύπων σχεδίων. Μπορούµε τότε να χρησιµοποιήσουµε ξανά τα πρότυπα, όπως και τον κώδικα, του ελέγχους και τα έγγραφα που σχετίζονται µε αυτά, όταν κατασκευάσουµε το επόµενο παρόµοιο σύστηµα. Ένα πρότυπο ή υπόδειγµα σχεδίου (design pattern) ονοµάζει, εξετάζει αφαιρετικά, και αναγνωρίζει τις κρίσιµες πλευρές µιας κοινής δοµής σχεδίου που είναι χρήσιµη για τη δηµιουργία ενός επαναχρησιµοποιήσιµου... σχεδίου. Το πρότυπο σχεδίου α- ναγνωρίζει τις συµµετέχουσες κλάσεις και στιγµιότυπα, τους ρόλους και τις συνεργασίες τους, και την κατανοµή των ευθυνών (Gamma κ.α., 1995). Όπως θα δούµε σε επόµενα κεφάλαια, στην ιδανική περίπτωση θέλουµε να χρησιµοποιήσουµε ξανά τα σχέδια όπως ακριβώς έχουν, χωρίς καµιά τροποποίηση, συχνά όµως πρέπει να αλλάξουµε το σχέδιο για να ταιριάζει µε τις απαιτήσεις και τους περιορισµούς του τρέχοντος συστήµατος, οι οποίοι διαφέρουν από τους αντίστοιχους των προηγουµένων συστηµάτων. Άρα, είναι σηµαντικό να κατασκευάζουµε πρότυπα σχεδίων µε τρόπους που δεν τα συνδέουν τόσο στενά µε τις ιδιαιτερότητες ενός συγκεκριµένου συστήµατος. Αυτό σηµαίνει ότι, ενώ υλοποιούµε τις απαιτήσεις του τρέχοντος συστήµατος, επιθυµούµε παράλληλα να µεγιστοποιήσουµε τις δυνατότητες επαναχρησιµοποίησης του σχεδίου µας. 5.5 ΤΑ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ ΤΟΥ ΚΑΛΟΥ ΣΧΕ ΙΟΥ Στο Κεφάλαιο 1 εξετάσαµε διάφορα µοντέλα ποιότητας λογισµικού και βρήκαµε τα χαρακτηριστικά που είναι επιθυµητά για τα προϊόντα που κατασκευάζουµε. Καθώς σχεδιάζουµε ένα σύστηµα, επιθυµούµε να εξασφαλίσουµε ότι περιλαµβά-

6 334 Τεχνολογία λογισµικού νονται κάποια από αυτά τα χαρακτηριστικά ποιότητας. Τα σχέδια υψηλής ποιότητας πρέπει να διαθέτουν χαρακτηριστικά που οδηγούν σε ποιοτικά προϊόντα: ευκολία κατανόησης, ευκολία υλοποίησης, ευκολία ελέγχου, ευκολία τροποποιήσεων, και σωστή µετάφραση από την προδιαγραφή των απαιτήσεων. Η ευκολία τροποποίησης είναι εξαιρετικά σηµαντική, καθώς οι αλλαγές στις απαιτήσεις ή οι αλλαγές που χρειάζονται για τη διόρθωση των σφαλµάτων µερικές φορές οδηγούν στην αλλαγή του σχεδίου. Στην παρούσα ενότητα, εξετάζουµε µε περισσότερες λεπτοµέρειες τα χαρακτηριστικά που αντανακλούν την ποιότητα της σχεδίασης. Ανεξαρτησία των συστατικών του σχεδίου Η αφαίρεση και η απόκρυψη πληροφοριών µας επιτρέπουν να εξετάσουµε τους τρόπους µε τους οποίους τα συστατικά σχετίζονται µεταξύ τους στα πλαίσια του συνολικού σχεδίου. Το Θέµα 5.4 περιγράφει τον τρόπο που θέµατα που αφορούν τον έλεγχο των συστατικών µπορούν να ληφθούν υπόψη στα σχέδιά µας. Προσπαθούµε στα περισσότερα σχέδια να καταστήσουµε ανεξάρτητα τα συστατικά µεταξύ τους. Με αυτό τον τρόπο είναι ευκολότερο να κατανοήσουµε τον τρόπο λειτουργίας ενός συστατικού (εάν δεν συνδέεται περίπλοκα µε τα υπόλοιπα), αλλά ταυτόχρονα είναι πολύ ευκολότερο να τροποποιηθεί ένα ανεξάρτητο συστατικό. Παροµοίως, όταν προσπαθούµε να βρούµε τις αιτίες δυσλειτουργίας του συστήµατος προχωρώντας προς τα πίσω από τον κώδικα στο σχέδιο, τα ανεξάρτητα συστατικά µπορούν να µας βοηθήσουν να αποµονώσουµε και να διορθώσουµε την αιτία. Εικόνα 5.12 Σύζευξη συστατικών

7 Κεφάλαιο 5: Η σχεδίαση του συστήµατος 335 Για να αναγνωρίσουµε και να µετρήσουµε το βαθµό της ανεξαρτησίας των συστατικών σε ένα σχέδιο, χρησιµοποιούµε δύο έννοιες: τη σύζευξη και τη συνεκτικότητα (Yourdon και Constantine 1978). Σύζευξη (coupling). Λέµε ότι δύο συστατικά υπόκεινται σε υψηλή σύζευξη (highly coupled) όταν υπάρχει µεγάλος βαθµός εξάρτησης µεταξύ τους. Τα συστατικά µε χαλαρή σύζευξη (loosely coupled) εξαρτώνται σε κάποιο βαθµό, αλλά οι διασυνδέσεις ανάµεσά τους είναι λίγες. Τα µη συζευγµένα (uncoupled) συστατικά δε διαθέτουν καθόλου διασυνδέσεις είναι εντελώς ανεξάρτητα, όπως φαίνεται στην Εικόνα Υπάρχουν πολλοί τρόποι εξάρτησης των συστατικών µεταξύ τους, εποµένως η σύζευξη εξαρτάται από διάφορα πράγµατα: Τις αναφορές που γίνονται από το ένα συστατικό στα υπόλοιπα. Για παράδειγµα, το συστατικό Α µπορεί να καλεί το συστατικό Β, εποµένως το συστατικό Α εξαρτάται από το συστατικό Β όσον αφορά την ολοκλήρωση της λειτουργίας ή της διεργασίας του. Την ποσότητα δεδοµένων που περνούν από το ένα συστατικό στα υπόλοιπα. Για παράδειγµα, το συστατικό Α µπορεί να περνά µια παράµετρο, τα περιεχόµενα ενός πίνακα, ή ένα µπλοκ δεδοµένων, στο συστατικό Β. Την ποσότητα ελέγχου που ένα συστατικό εξασκεί επί των άλλων. Για παράδειγµα, το συστατικό Α µπορεί να περνά µια σηµαία ελέγχου στο στοιχείο Β. Η τιµή αυτής της σηµαίας προσδιορίζει στο συστατικό Β την κατάσταση κάποιου πόρου ή υποσυστήµατος, τη διεργασία που πρέπει να καλέσει ή το αν πρέπει να καλέσει τελικά κάποια διεργασία. Το βαθµό πολυπλοκότητας στη διασύνδεση ανάµεσα στα συστατικά. Για παράδειγµα, το συστατικό Α περνά µια παράµετρο στο συστατικό Β, για να το καθοδηγήσει στην εκτέλεσή του. Όµως, τα συστατικό Γ και ανταλλάσσουν τιµές πριν το να ολοκληρώσει την εκτέλεσή του, εποµένως η διασύνδεση ανάµεσα στα Α και Β είναι λιγότερο περίπλοκη σε σχέση µε αυτή των Γ και. Η χρήση ενός αποµονωτή ή ενός φρουρού είναι ακόµη πιο περίπλοκη. Εποµένως, µπορούµε να µετρήσουµε τη σύζευξη µε βάση ένα εύρος εξαρτήσεων, από την πλήρη εξάρτηση έως την πλήρη ανεξαρτησία, όπως φαίνεται στην Εικόνα Στην πραγµατικότητα, είναι απίθανο ένα σύστηµα να κατασκευαστεί µε βάση αποκλειστικά µη συζευγµένα συστατικά. Μπορούµε να σκεφτούµε την περίπτωση ενός τραπεζιού και των καρεκλών που το περιβάλλουν: παρά το γεγονός

8 336 Τεχνολογία λογισµικού Εικόνα 5.13 Το εύρος των µετρικών σύζευξης ότι τα συστατικό αυτά είναι ανεξάρτητα µεταξύ τους, µπορούν να συνδυαστούν για να δηµιουργηθεί ένα σύνολο τραπεζαρίας, από φαινοµενικά µη συζευγµένα συστατικά τα οποία όµως συνδέονται έµµεσα. Άρα, ο στόχος µας δεν είναι απαραίτητα η πλήρης ανεξαρτησία, αλλά αντιθέτως είναι µάλλον η διατήρηση του βαθµού σύζευξης όσο το δυνατόν σε χαµηλότερα επίπεδα. Αυτό σηµαίνει ότι, θέλουµε να ε- λαχιστοποιήσουµε την εξάρτηση ανάµεσα στα συστατικά, καθώς υπάρχουν σοβαροί λόγοι για να υιοθετήσουµε αυτή την τακτική. Αν ένα στοιχείο επηρεάζεται από µια ενέργεια του συστήµατος, θέλουµε πάντα να γνωρίζουµε πιο συστατικό προκάλεσε το αντίστοιχο γεγονός σε µια δεδοµένη χρονική στιγµή. Αυτή η γνώση µας ε- πιτρέπει να αλλάξουµε ένα τµήµα του σχεδίου του συστήµατος χωρίς να επιφέρου- µε µεγάλη αναστάτωση (όσο αυτό είναι δυνατόν). Για παράδειγµα, ας υποθέσουµε ότι στη διόρθωση ενός σφάλµατος ή στην αντιµετώπιση µιας αλλαγής των απαιτήσεων του πελάτη, αποφασίζουµε ότι µια λειτουργία ή ένας τύπος δεδοµένων πρέπει να αντικατασταθεί από κάτι άλλο. Στην ιδανική περίπτωση, θα θέλαµε απλούστατα να αλλάξουµε το παλιό συστατικό µε το καινούργιο. Αν έχουµε ένα αρθρωτό σχέδιο µε χαλαρή σύνδεση ανάµεσα στα συστατικά, τότε το σενάριο απλής εισαγωγής και εξαγωγής συστατικών µπορεί να εφαρµοστεί θαυµάσια. Αν η σύζευξη είναι χαλαρή τότε µόνο ελάχιστα άλλα συστατικά θα επηρεαστούν από την αλλαγή και θα είναι υποψήφια για τροποποίηση ή αντικατάσταση. Αν όµως η σύζευξη είναι υψηλή, τότε µεγάλα τµήµατα του συστήµατος θα διαταραχτούν από την αλλαγή. Επο- µένως, η χαλαρή σύζευξη µας βοηθά να ελαχιστοποιήσουµε τον αριθµό των συστατικών που χρειάζονται αναθεώρηση. Μερικοί τύποι σύζευξης είναι λιγότερο επιθυµητοί από τους υπόλοιπους. Ο λιγότερο επιθυµητός τύπος προκύπτει όταν ένα συστατικό τροποποιεί στην πραγ- µατικότητα ένα άλλο. Τότε το τροποποιηµένο συστατικό εξαρτάται πλήρως από

9 Κεφάλαιο 5: Η σχεδίαση του συστήµατος 337 Εικόνα 5.14 Παράδειγµα σύζευξης περιεχοµένου αυτό που το τροποποιεί. Αυτή η σχέση ονοµάζεται σύζευξη περιεχοµένου (content coupling). Η σύζευξη περιεχοµένου µπορεί να προκύψει όταν ένα συστατικό τροποποιεί ένα εσωτερικό δεδοµένο σε κάποιο άλλο στοιχείο ή όταν ένα συστατικό διακλαδώνεται στο µέσο ενός άλλου συστατικού. Στην Εικόνα 5.14, το συστατικό B διακλαδώνεται µέσα στο D, παρά το γεγονός το D υποτίθεται ότι βρίσκεται υπό τον έλεγχο του C. Μπορούµε να µειώσουµε κάπως τη σύζευξη οργανώνοντας το σχέδιό µας έτσι ώστε τα δεδοµένα να είναι προσπελάσιµα µέσω ενός κοινού αποθηκευτικού χώρου δεδοµένων. Ωστόσο, υπάρχει ακόµη και σε αυτή την περίπτωση εξάρτηση, καθώς µια αλλαγή στα κοινά δεδοµένα σηµαίνει ότι οδηγούµαστε πίσω σε όλα τα στοιχεία τα οποία προσπελαύνουν αυτά τα δεδοµένα για να εκτιµήσουµε τα αποτελέσµατα αυτής της αλλαγής. Αυτό το είδος εξάρτησης ονοµάζεται σύζευξη κοινών δεδοµένων (common coupling). Στη σύζευξη κοινών δεδοµένων, µπορεί να είναι δύσκολο να εξακριβώσουµε ποιο συστατικό είναι υπεύθυνο για τον ορισµό της τιµής µιας συγκεκριµένης τιµής σε µια µεταβλητή. Η Εικόνα 5.15 επεξηγεί τον τρόπο εργασίας της σύζευξης κοινών δεδοµένων. Όταν ένα συστατικό περνά παραµέτρους για να ελέγξει τη δραστηριότητα ενός άλλου συστατικού, λέµε ότι πρόκειται για σύζευξη ελέγχου (control coupling) ανάµεσα σε αυτά τα δύο. Το ελεγχόµενο συστατικό είναι αδύνατον να λειτουργήσει χωρίς καθοδήγηση του ελέγχοντος συστατικού. Σε ένα σχέδιο µε σύζευξη ελέγχου, υπάρχει πλεονέκτηµα εάν κάθε συστατικό εκτελεί µόνο µια λειτουργία ή µια διεργασία. Αυτός ο περιορισµός ελαχιστοποιεί την ποσότητα

10 338 Τεχνολογία λογισµικού Εικόνα 5.15 Παράδειγµα σύζευξης κοινών δεδοµένων των πληροφοριών ελέγχου που πρέπει να περάσουν από το ένα συστατικό στο άλλο και εντοπίζει τον έλεγχο σε ένα σταθερό και αναγνωρίσιµο σύνολο παραµέτρων που δηµιουργούν µια καλά ορισµένη διασύνδεση. Όταν µια δοµή δεδοµένων χρησιµοποιείται για να περάσουν πληροφορίες από ένα συστατικό σε ένα άλλο, και περνά η ίδια η δοµή δεδοµένων, έχουµε σύζευξη αντιγράφου (stamp coupling) ανάµεσα στα στοιχεία αν περνούν µόνο δεδοµένα, τα στοιχεία συνδέονται µε σύζευξη δεδοµένων (data coupling). Στη σύζευξη αντιγράφου, οι τιµές, η µορφή, και η οργάνωση των δεδοµένων πρέπει να ταιριάζουν στα συστατικά που αλληλεπιδρούν. Εποµένως, η σύζευξη δεδοµένων είναι απλούστερη και αφήνει λιγότερα περιθώρια για λάθη. Αν πρέπει να υπάρχει σύζευξη ανάµεσα στα συστατικά ο πιο επιθυµητός τύπος είναι η σύζευξη αντιγράφου είναι ο ευκολότερος τρόπος για να γίνεται ιχνηλάτιση των δεδοµένων και να πραγµατοποιούνται αλλαγές. Τα συστατικά σε µια αντικειµενοστρεφή σχεδίαση έχουν συνήθως µικρή σύζευξη, καθώς ο ορισµός κάθε συστατικού (αντικειµένου) περιέχει τους ορισµούς των πράξεων που γίνονται από αυτό (και επί αυτού). Εποµένως, η µικρή σύζευξη είναι ένα αυτόµατο όφελος της αντικειµενοστρεφούς προσέγγισης. Συνεκτικότητα (cohesion). Αντί να µετράται η αµοιβαία εξάρτηση των στοιχείων, η συνεκτικότητα αναφέρεται στην εσωτερική "συνοχή" µε βάση την οποία κατασκευάζεται ένα συστατικό. Όσο πιο συνεκτικό είναι ένα συστατικό, τόσο πιο πολύ σχετίζονται τα εσωτερικά µέρη του συστατικού µεταξύ τους και

11 Κεφάλαιο 5: Η σχεδίαση του συστήµατος 339 εξυπηρετούν το συνολικό σκοπό του. Με άλλα λόγια, ένα συστατικό είναι συνεκτικό αν όλα τα τµήµατά του προορίζονται και είναι απαραίτητα για την εκτέλεση της ίδιας εργασίας. Οι αρχικοί ορισµοί αυτών των επιπέδων βασίζονται στις έννοιες της λειτουργικής αποσύνθεσης. Ένας κοινός στόχος της σχεδίασης ήταν να γίνει κάθε συστατικό όσο συνεκτικότερο γίνεται, έτσι ώστε κάθε τµήµα της επεξεργασίας ενός συστατικού να σχετίζεται µε τη µία και µοναδική λειτουργία του συστατικού. Μπορούµε να γενικεύσουµε αυτή την ιδέα ώστε να εφαρµοστεί σε κάθε τύπο αποσύνθεσης. Αυτό σηµαίνει ότι, µπορούµε να δηµιουργήσουµε επίπεδα συνεκτικότητας για τα συστατικά, ανεξάρτητα µε τον τρόπο που έχει δηµιουργηθεί η αποσύνθεση. Η Εικόνα 5.16 παρουσιάζει τους διάφορους τύπους συνεκτικότητας. Ο χειρότερος τύπος συνεκτικότητας, η συµπτωµατική (coincidental), εµφανίζεται σε ένα συστατικό του οποίου τα τµήµατα δε σχετίζονται µεταξύ τους. Σε αυτή την περίπτωση, άσχετες λειτουργίες, διεργασίες, ή δεδοµένα βρίσκονται στο ίδιο συστατικό για λόγους άνεσης και εύκολης εύρεσης. Για παράδειγµα, ένα συστατικό που ελέγχει την κατηγορία ασφαλείας ενός χρήστη και τυπώνει επίσης τη µισθοδοσία της τρέχουσας εβδοµάδας είναι συµπτωµατικά συνεκτικό. Το επόµενο επίπεδο αποτελείται από την λογική (logical) συνεκτικότητα (η οποία επίσης δεν είναι επιθυµητή), όπου διάφορες λογικά σχετιζόµενες συναρτήσεις ή δεδοµένα τοποθετούνται στο ίδιο συστατικό. Για παράδειγµα, ένα συστατικό µπορεί να διαβάζει όλα τα είδη εισόδου (από ταινία, δίσκο, και θύρα τηλεπικοινωνιών), ανεξάρτητα από την πηγή της εισόδου ή τον τρόπο χρήσης της "η είσοδος" είναι η κόλλα που συνδέει τα µέρη αυτού του συστατικού. Παρά το γεγονός ότι είναι περισσότερο σωστή από τη συµπτωµατική συνεκτικότητα, τα Εικόνα 5.16 Τύποι συνεκτικότητας

12 340 Τεχνολογία λογισµικού τµήµατα ενός λογικά συνεκτικού συστατικού δε σχετίζονται λειτουργικά. Στο παράδειγµά µας, καθώς η είσοδος µπορεί να εξυπηρετεί διαφορετικούς σκοπούς για διαφορετικά συστατικά, εκτελούµε πολλές ασυσχέτιστες λειτουργίες σε ένα σηµείο. Μερικές φορές χρησιµοποιείται ένα συστατικό για να αρχικοποιηθεί ένα σύστηµα ή ένα σύνολο µεταβλητών. Ένα τέτοιο στοιχείο εκτελεί διάφορες λειτουργίες στη σειρά, αλλά οι λειτουργίες σχετίζονται µόνο µε βάση τη χρονική περίοδο στην οποία εκτελούνται, εποµένως αυτή η συνεκτικότητα είναι χρονική (temporal). Τόσο τα συστατικά µε χρονική συνεκτικότητα όσο και τα συστατικά µε λογική συνεκτικότητα αλλάζουν πολύ δύσκολα. Ας υποθέσουµε ότι πρέπει να τροποποιήσετε το σχέδιο της λειτουργίας Χ ενός συστήµατος. Επειδή τα συστατικά που έχουν λογική ή χρονική συνεκτικότητα εκτελούν πολλές διαφορετικές λειτουργίες, για να αλλάξει η λειτουργία Χ, πρέπει να εξεταστούν όλα τα συστατικά για να βρεθούν τα µέρη τους που σχετίζονται µε την Χ. Πολύ συχνά, πρέπει να εκτελούνται κάποιες λειτουργίες µε συγκεκριµένη σειρά. Για παράδειγµα, τα δεδοµένα πρέπει να εισαχθούν πριν ελεγχθούν και γίνουν κάποιοι υπολογισµοί που τα αφορούν: πρόκειται για τρεις λειτουργίες µε βάση µια συγκεκριµένη ακολουθία. Όταν οι λειτουργίες οµαδοποιούνται σε ένα συστατικό µόνο για να εξασφαλιστεί αυτή η σειρά, αυτό το συστατικό είναι διαδικασιακά συνεκτικό (procedurally cohesive). Εναλλακτικά, µπορούµε να συσχετίσουµε συγκεκριµένες λειτουργίες επειδή παράγουν το ίδιο σύνολο δεδοµένων ή ενεργούν επί αυτού. Για παράδειγµα, µερικές φορές ασυσχέτιστα δεδοµένα προσκοµίζονται µαζί επειδή η µεταφορά αυτή µπορεί να γίνει µε µία µόνο προσπέλαση δίσκου ή ταινίας. Τα στοιχεία που κατασκευάζονται µε αυτό τον τρόπο είναι επικοινωνιακώς συνεκτικά (communicationally cohesive). Ωστόσο, η επικοινωνιακή συνεκτικότητα καταστρέφει συχνά την τµηµατικότητα και τη λειτουργική ανεξαρτησία του σχεδίου. Αν η έξοδος από ένα τµήµα ενός συστατικού παράγει την είσοδο για το ε- πόµενο τµήµα, το συστατικό διαθέτει ακολουθιακή συνεκτικότητα (sequential cohesion). Επειδή και πάλι το στοιχείο δεν έχει κατασκευαστεί µε βάση λειτουργικές σχέσεις, υπάρχει η πιθανότητα να µην περιέχει όλη την επεξεργασία που σχετίζεται µε µία λειτουργία. Την ιδανική περίπτωση αποτελεί η λειτουργική συνεκτικότητα (functional cohesion), όπου κάθε τµήµα επεξεργασίας είναι απαραίτητο για την απόδοση µιας µόνο λειτουργίας, και όλα αυτά τα θεµελιώδη τµή- µατα περιέχονται σε ένα στοιχείο. Ένα λειτουργικώς συνεκτικό στοιχείο εκτελεί µόνο τη λειτουργία για την οποία έχει σχεδιαστεί, και ταυτόχρονα δεν κάνει απολύτως τίποτα άλλο. Η Εικόνα 5.17 παρουσιάζει παραδείγµατα των διάφορων τύπων συνεκτικότητας.

13 Κεφάλαιο 5: Η σχεδίαση του συστήµατος 341 Εικόνα 5.17 Παραδείγµατα συνεκτικότητας. Η έννοια της συνεκτικότητας µπορεί να επεκταθεί σε αντικειµενοστρεφή και άλλα σχέδια όπου τα συστατικά βασίζονται σε δεδοµένα ή γεγονότα τα οποία αφορούν το συνολικό σκοπό: να τοποθετηθούν τα αντικείµενα και οι ενέργειες µαζί µόνο όταν υπάρχει ένας κοινός και λογικός σκοπός. Για παράδειγµα, λέµε ότι ένα συστατικό αντικειµενοστρεφούς σχεδίου είναι συνεκτικό αν κάθε χαρακτηριστικό, µέθοδος, ή ενέργεια είναι θεµελιώδης για το αντικείµενο. Τα αντικει- µενοστρεφή συστήµατα έχουν συχνά σχέδια µε υψηλή συνεκτικότητα, επειδή η διεργασία σύνθεσης του σχεδίου εξαναγκάζει τις ενέργειες να τοποθετούνται µαζί µε τα αντικείµενα που επηρεάζουν. Αναγνώριση και χειρισµός εξαιρέσεων Όταν µαθαίνουµε να οδηγούµε ένα αυτοκίνητο, ο δάσκαλος µας τονίζει ότι πρέπει να οδηγούµε "αµυντικά". Αυτό σηµαίνει ότι, έχουµε ένα ενεργό ρόλο, όχι µόνο για να αποκρινόµαστε στα συµβάντα καθώς αυτά προκύπτουν, αλλά ταυτόχρονα για να λαµβάνουµε προφυλάξεις καθώς η τρέχουσα κατάσταση µπορεί να γίνει επικίνδυνη, ενώ παίρνουµε τα κατάλληλα µέτρα για να αποφύγουµε τα προβλήµατα. Με

14 342 Τεχνολογία λογισµικού ΘΕΜΑ 5.4 ΖΗΤΗΜΑΤΑ ΕΛΕΓΧΟΥ Στις περισσότερες σχεδιάσεις, πρέπει να αποφασίσουµε για τον αριθµό των συστατικών που βρίσκονται υπό τον έλεγχο κάποιου άλλου συστατικού. Στο σχεδιάγραµµα δοµής για το σύστηµα 1 στην Εικόνα 5.18 ένα βέλος συνδέει ένα συστατικό µε ένα άλλο µόνο αν το πρώτο συστατικό µπορεί να καλέσει το δεύτερο. Για κάποιο συγκεκριµένο συστατικό, το σύνολο των συστατικών προς τα οποία σχεδιάζονται βέλη ο- νοµάζεται εύρος ελέγχου (scope of control) για το συγκεκριµένο συστατικό. Τα συστατικά που καλούνται από το συγκεκριµένο συστατικό αυτό καλούνται όλα µαζί εύρος επίδρασης (scope of effect). Κανένα συστατικό δε µπορεί να βρίσκεται στο εύρος επίδρασης αν δε βρίσκεται στο εύρος ελέγχου. Αν το εύρος επίδρασης ενός συστατικού είναι µεγαλύτερο από το εύρος ελέγχου του, είναι σχεδόν αδύνατο να εξασφαλιστεί ότι µια αλλαγή στο συστατικό δεν θα καταστρέψει ολόκληρο το σχέδιο. Ας θεωρήσουµε τα συστήµατα 1 και 2 ως δύο πιθανά σχέδια για το ίδιο σύστη- µα. Το πλήθος εισόδων (fan-in) είναι ο αριθµός των συστατικών που ελέγχουν ένα συγκεκριµένο συστατικό, και το πλήθος εξόδων (fan-out) είναι ο αριθµός των συστατικών που ελέγχονται από κάποιο συστατικό. Εποµένως, το συστατικό Α έχει πλήθος εξόδων 3 στο σύστηµα 1, αλλά πλήθος εξόδων 5 στο σύστηµα 2. Παροµοίως, το εύρος εισόδων για το στοιχείο C και στα δυο συστήµατα είναι 1. Ποιο είναι το καλύτερο σχέδιο; Στη γενική περίπτωση θέλουµε να ελαχιστοποιήσουµε τον αριθµό των συστατικών που έχουν υψηλό πλήθος εξόδων. Αν ένα συστατικό ελέγχει πολλά άλλα συστατικά, συνήθως κάνει περισσότερα από όσα πρέπει το συστατικό που ελέγχει τα άλλα εκτελεί πιθανότατα περισσότερες από µία λειτουργίες. Εποµένως, το σύστηµα 1 µπορεί να διαθέτει καλύτερο σχέδιο από το σύστηµα 2 επειδή τα συστατικά του έχουν χαµηλότερο πλήθος εξόδων. Από την άλλη µεριά, καθώς αυξάνουµε τον αριθµό των επιπέδων στο σχέδιο, µερικές φορές επιθυµούµε να χρησιµοποιήσουµε ένα συγκεκριµένο συστατικό περισσότερες από µία φορές. Για παράδειγµα, σε πολλές περιπτώσεις, µπορεί να χρειαστεί να ψάξουµε σε ένα αλφαριθµητικό για έναν συγκεκρι- µένο χαρακτήρα. Αν σχεδιάσουµε ένα συστατικό γενικού σκοπού για να επιτελεί αυτή την εργασία, και στη συνέχεια καλούµε αυτό το συστατικό από πολλά άλλα, το σχέδιο που προκύπτει είναι πολύ αποτελεσµατικό και πιο εύκολα ελέγξιµο και τροποποιήσιµο σε σχέση µε ένα άλλο που διαθέτει πάρα πολλές παρόµοιες συναρτήσεις που ψάχνουν αλφαριθµητικά. Εποµένως, για ένα σχέδιο που έχει µεγάλο αριθµό επιπέδων µπορούµε να δηµιουργήσουµε ένα σύνολο από συστατικά-βοηθήµατα (utility components): πρόκειται για εργαλεία ή δοµικά στοιχεία τα οποία χρησιµοποιούνται από άλλα συστατικά για να εκτελούνται εργασίες που γίνονται συχνά. Ένα τυπικό βοηθητικό συστατικό διαθέτει υψηλό πλήθος εισόδων επειδή καλείται από πολλά άλλα συστατικά. Ένας από τους στόχους στη σχεδίαση συστηµάτων είναι να δηµιουργούνται συστατικά µε υψηλό πλήθος εισόδων και χαµηλό πλήθος εξόδων.

Εισαγωγή στη Σχεδίαση Λογισμικού

Εισαγωγή στη Σχεδίαση Λογισμικού Εισαγωγή στη Σχεδίαση Λογισμικού περιεχόμενα παρουσίασης Τι είναι η σχεδίαση λογισμικού Έννοιες σχεδίασης Δραστηριότητες σχεδίασης Σχεδίαση και υποδείγματα ανάπτυξης λογισμικού σχεδίαση Η σχεδίαση του

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

Τεχνολογία Λογισμικού

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

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

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 8: Σχεδίαση Συστήματος Σχεδίαση Συστήματος 2 Διεργασία μετατροπής του προβλήματος σε λύση. Από το Τί στο Πώς. Σχέδιο: Λεπτομερής περιγραφή της λύσης. Λύση:

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

Αρχιτεκτονική Λογισμικού

Αρχιτεκτονική Λογισμικού Αρχιτεκτονική Λογισμικού περιεχόμενα παρουσίασης Τι είναι η αρχιτεκτονική λογισμικού Αρχιτεκτονική και απαιτήσεις Σενάρια ποιότητας Βήματα αρχιτεκτονικής σχεδίασης Αρχιτεκτονικά πρότυπα Διαστρωματωμένη

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

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού

Πίνακας Περιεχομένων. μέρος A 1 Εισαγωγή στην Τεχνολογία Λογισμικού Πρόλογος...21 μέρος A Εισαγωγή στην Τεχνολογία Λογισμικού 1 Εισαγωγή στην Τεχνολογία Λογισμικού 1.1 Το λογισμικό...25 1.1.1 Ο ρόλος και η σημασία του λογισμικού...26 1.1.2 Οικονομική σημασία του λογισμικού...28

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

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

Ελληνικό Ανοικτό Πανεπιστήµιο. Η ιαχείριση Απαιτήσεων στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Η ιαχείριση Απαιτήσεων στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Η ιαχείριση Απαιτήσεων στην Ενοποιηµένη ιαδικασία ρ. Πάνος Φιτσιλής Περιεχόµενα Τι είναι διαχείριση απαιτήσεων Ποια είναι η ροή των εργασιών στη φάση της καταγραφής των

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

ΠΕΡΙΕΧΟΜΕΝΑ. 8.11 Η σηµασία αυτού του κεφαλαίου για σας... 70. 9.15 Εργασία εξαµήνου... 172

ΠΕΡΙΕΧΟΜΕΝΑ. 8.11 Η σηµασία αυτού του κεφαλαίου για σας... 70. 9.15 Εργασία εξαµήνου... 172 ΠΕΡΙΕΧΟΜΕΝΑ 8. Έλεγχος προγραµµάτων... 1 8.1 Σφάλµατα και δυσλειτουργίες λογισµικού... 1 8.2 Θέµατα έλεγχου... 10 8.3 Έλεγχος µονάδων... 18 8.4 Έλεγχος ολοκλήρωσης... 38 8.5 Έλεγχος αντικειµενοστρεφών

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

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι κ. ΠΕΤΑΛΙΔΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

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

Α. Ερωτήσεις Ανάπτυξης

Α. Ερωτήσεις Ανάπτυξης οµηµένος Προγραµµατισµός-Κεφάλαιο 7 Σελίδα 1 α ό 10 ΕΝΟΤΗΤΑ ΙΙΙ (ΠΡΟΓΡΑΜΜΑΤΑ) ΚΕΦΑΛΑΙΟ 7: Είδη, Τεχνικές και Περιβάλλοντα Προγραµµατισµού Α. Ερωτήσεις Ανάπτυξης 1. Τι ονοµάζουµε γλώσσα προγραµµατισµού;

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

Εισαγωγή στην Τεχνολογία Λογισµικού

Εισαγωγή στην Τεχνολογία Λογισµικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Μάθηµα "Τεχνολογία Λογισµικού", 9ο εξάµηνο Εισαγωγή στην Τεχνολογία Λογισµικού Νίκος Παπασπύρου Γιάννης Μαΐστρος Βασίλης

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

Τεχνολογία Λογισµικού Ι Κεφάλαια 1-21

Τεχνολογία Λογισµικού Ι Κεφάλαια 1-21 ΕΛΛΗΝΙΚΟ ΑΝΟΙΧΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Πρόγραµµα σπουδών "ΠΛΗΡΟΦΟΡΙΚΗ" - Θ.Ε. ΠΛΗ11 Τεχνολογία Λογισµικού Ι Κεφάλαια 1-21 Βασίλειος Βεσκούκης ιδάκτωρ Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών v.vescoukis@cs.ntua.gr

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

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

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

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

Κεφάλαιο 10 ο Υποπρογράµµατα

Κεφάλαιο 10 ο Υποπρογράµµατα Κεφάλαιο 10 ο Υποπρογράµµατα Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Η αντιµετώπιση των σύνθετων προβληµάτων και η ανάπτυξη των αντίστοιχων προγραµµάτων µπορεί να γίνει µε την ιεραρχική σχεδίαση,

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

Ελεγχος, Αξιοπιστία και Διασφάλιση Ποιότητας Λογισµικού Πολυπλοκότητα

Ελεγχος, Αξιοπιστία και Διασφάλιση Ποιότητας Λογισµικού Πολυπλοκότητα Ελεγχος, Αξιοπιστία και Διασφάλιση Ποιότητας Λογισµικού Πολυπλοκότητα Τµήµα Διοίκησης Επιχειρήσεων Τει Δυτικής Ελλάδας Μεσολόγγι Δρ. Α. Στεφανή Διάλεξη 5 2 Εγκυροποίηση Λογισµικού Εγκυροποίηση Λογισµικού

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

Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού

Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού Μάρα Νικολαϊδου Δραστηριότητες Διαδικασιών Παραγωγής Λογισµικού Καθορισµός απαιτήσεων και εξαγωγή προδιαγραφών

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

Εισαγωγή στην Τεχνολογία Λογισµικού

Εισαγωγή στην Τεχνολογία Λογισµικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Μάθηµα "Τεχνολογία Λογισµικού", 9ο εξάµηνο Τι είναι Λογισµικό; Προγράµµατα ηλεκτρονικού υπολογιστή οµές δεδοµένων µε µόνιµη

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

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται

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

ΣΧΕ ΙΑΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ ΜΕ ΑΡΜΟ ΙΟΤΗΤΕΣ. Ορισµός σχεδιαστικών προτύπων Εφαρµογή των 9 GRASP προτύπων

ΣΧΕ ΙΑΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ ΜΕ ΑΡΜΟ ΙΟΤΗΤΕΣ. Ορισµός σχεδιαστικών προτύπων Εφαρµογή των 9 GRASP προτύπων ΣΧΕ ΙΑΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ ΜΕ ΑΡΜΟ ΙΟΤΗΤΕΣ Ορισµός σχεδιαστικών προτύπων Εφαρµογή των 9 GRASP προτύπων 1 Γενικά Εξαιρετικά σηµαντικά: η απόφαση για το που ανήκουν οι µέθοδοι, και πως αλληλεπιδρούν τα αντικείµενα

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

Ακρότατα υπό συνθήκη και οι πολλαπλασιαστές του Lagrange

Ακρότατα υπό συνθήκη και οι πολλαπλασιαστές του Lagrange 64 Ακρότατα υπό συνθήκη και οι πολλαπλασιαστές του Lagrage Ας υποθέσουµε ότι ένας δεδοµένος χώρος θερµαίνεται και η θερµοκρασία στο σηµείο,, Τ, y, z Ας υποθέσουµε ότι ( y z ) αυτού του χώρου δίδεται από

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

Περιεχόμενα. Κεφάλαιο 2 Κοινωνικοτεχνικά συστήματα 49

Περιεχόμενα. Κεφάλαιο 2 Κοινωνικοτεχνικά συστήματα 49 Περιεχόμενα Πρόλογος 5 Μέρος 1 Επισκόπηση 27 Κεφάλαιο 1 Εισαγωγή 29 1.1 Συχνές ερωτήσεις για την τεχνολογία λογισμικού 31 1.2 Επαγγελματική και ηθική ευθύνη 41 Κύρια σημεία 46 Πρόσθετες πηγές 46 Ασκήσεις

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

ΣΧΕΔΙΑΣΗ & ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ

ΣΧΕΔΙΑΣΗ & ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΣΧΕΔΙΑΣΗ & ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ Διδάσκουσα: Χαρίκλεια Τσαλαπάτα Πανεπιστήμιο Θεσσαλίας ΤΗΜΜΥ 420 htsalapa@inf.uth.gr (e-ce.uth.gr) 1 Εκπαιδευτικό υλικό μαθήματος Ιστοσελίδα: http://eclass.uth.gr/eclass/courses/mhx330/

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

Εισαγωγή στην Τεχνολογία Λογισµικού

Εισαγωγή στην Τεχνολογία Λογισµικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Μάθηµα "Τεχνολογία Λογισµικού", 9ο εξάµηνο Εισαγωγή στην Τεχνολογία Λογισµικού Βασίλειος Βεσκούκης ρ Ηλεκτρολόγος Μηχανικός

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

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ.

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής Περιεχόµενα Κατηγορίες Π.Σ. ιαχείρισης Πράξεων ιοίκησης Υποστήριξης Αποφάσεων Έµπειρα Συστήµατα Ατόµων και Οµάδων Ο κύκλος ζωής Π.Σ. Ορισµός Φάσεις Χρήστες

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

Σχεδιασµός βασισµένος σε συνιστώσες

Σχεδιασµός βασισµένος σε συνιστώσες Σχεδιασµός βασισµένος σε συνιστώσες 1 Ενδεικτικά περιεχόµενα του κεφαλαίου Ποια είναι τα "άτοµα", από τα οποία κατασκευάζονται οι υπηρεσίες; Πώς οργανώνουµε τις συνιστώσες σε ένα αρµονικό σύνολο; Τι είναι

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

Σχεδίαση Κλάσεων. Γρηγόρης Τσουµάκας. Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης. Έκδοση:

Σχεδίαση Κλάσεων. Γρηγόρης Τσουµάκας. Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης. Έκδοση: Σχεδίαση Κλάσεων Γρηγόρης Τσουµάκας Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Έκδοση: 2010.11.19 Εισαγωγή 2 ιαρκής συντήρηση και επέκταση λογισµικού Οι εταιρίες συνήθως συντηρούν, επεκτείνουν

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

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 17/12/2018 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Σχεδίαση Συστήματος

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

for for for for( . */

for for for for( . */ Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται

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

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού

Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ Κεφάλαιο 7 : Είδη, Τεχνικές, και Περιβάλλοντα Προγραµµατισµού ( Απαντήσεις & Λύσεις Βιβλίου) 1. Σκοποί κεφαλαίου Κύκλος ανάπτυξης προγράµµατος Κατηγορίες γλωσσών προγραµµατισµού

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

ΚΕΦΑΛΑΙΟ 7 ΕΙ Η, ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

ΚΕΦΑΛΑΙΟ 7 ΕΙ Η, ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΚΕΦΑΛΑΙΟ 7 ΕΙ Η, ΤΕΧΝΙΚΕΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ 7.1. Ανάπτυξη Προγράµµατος Τι είναι το Πρόγραµµα; Το Πρόγραµµα: Είναι ένα σύνολο εντολών για την εκτέλεση ορισµένων λειτουργιών από τον υπολογιστή.

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

Η ΤΕΧΝΗ ΤΟΥ ΙΑΒΑΣΜΑΤΟΣ ΜΕΤΑΞΥ ΤΩΝ ΑΡΙΘΜΩΝ (ΠΑΡΕΜΒΟΛΗ ΚΑΙ ΠΡΟΣΕΓΓΙΣΗ)

Η ΤΕΧΝΗ ΤΟΥ ΙΑΒΑΣΜΑΤΟΣ ΜΕΤΑΞΥ ΤΩΝ ΑΡΙΘΜΩΝ (ΠΑΡΕΜΒΟΛΗ ΚΑΙ ΠΡΟΣΕΓΓΙΣΗ) Η ΤΕΧΝΗ ΤΟΥ ΙΑΒΑΣΜΑΤΟΣ ΜΕΤΑΞΥ ΤΩΝ ΑΡΙΘΜΩΝ (ΠΑΡΕΜΒΟΛΗ ΚΑΙ ΠΡΟΣΕΓΓΙΣΗ) ΜΙΧΑΛΗΣ ΤΖΟΥΜΑΣ ΕΣΠΟΤΑΤΟΥ 3 ΑΓΡΙΝΙΟ. ΠΕΡΙΛΗΨΗ Η έννοια της συνάρτησης είναι στενά συνυφασµένη µε τον πίνακα τιµών και τη γραφική παράσταση.

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

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Ανάλυση και ο Σχεδιασµός στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Ανάλυση και ο Σχεδιασµός στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Η και ο στην Ενοποιηµένη ιαδικασία ρ. Πάνος Φιτσιλής Περιεχόµενα Γενικές αρχές ανάλυσης και σχεδιασµού Τα βήµατα της ανάλυσης και του σχεδιασµού Συµπεράσµατα 2 3 Η ανάλυση

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

Μεθοδολογίες Παραγωγής Λογισµικού

Μεθοδολογίες Παραγωγής Λογισµικού Μεθοδολογίες Παραγωγής Λογισµικού Βασικά Γενικά Μοντέλα Μοντέλο καταρράκτη (waterfall model) Ξεχωριστές φάσεις καθορισµού απαιτήσεων και ανάπτυξης, επικύρωσης, εξέλιξης Εξελικτική ανάπτυξη (evolutionary

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

Αρχιτεκτονικές Συστημάτων

Αρχιτεκτονικές Συστημάτων ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Αρχιτεκτονικές Συστημάτων Κατερίνα Πραματάρη Αρχιτεκτονικές Συστημάτων Σχεδίαση και Αρχιτεκτονική Συστήματος Αρχιτεκτονική Πελάτη-Εξυπηρετητή

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ 31 5 2007 Γ Τάξη Ηµερήσιου Γενικού Λυκείου

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ 31 5 2007 Γ Τάξη Ηµερήσιου Γενικού Λυκείου ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ 31 5 2007 Γ Τάξη Ηµερήσιου Γενικού Λυκείου Θέµα 1 ο ΛΥΣΕΙΣ ΘΕΜΑΤΩΝ - ΣΧΟΛΙΑ Α) 1) Σωστό 2) Λάθος 3) Σωστό 4) Λάθος 5) Λάθος Β) 1) i) σελ 127 σχολικού (πλεονεκτήµατα

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

Δοµές Δεδοµένων. 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων. Ε. Μαρκάκης

Δοµές Δεδοµένων. 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων. Ε. Μαρκάκης Δοµές Δεδοµένων 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων Ε. Μαρκάκης Περίληψη Χρήση αναδροµικών εξισώσεων στην ανάλυση αλγορίθµων Αφηρηµένοι τύποι δεδοµένων Συλλογές στοιχείων Στοίβα

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

Προγραμματισμός Η/Υ. Συναρτήσεις & Υποπρογράμματα. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Προγραμματισμός Η/Υ. Συναρτήσεις & Υποπρογράμματα. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος Προγραμματισμός Η/Υ Συναρτήσεις & Υποπρογράμματα ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος Τμηματικός Προγραμματισμός Η επίλυση ενός προβλήματος διευκολύνεται

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

2. Missing Data mechanisms

2. Missing Data mechanisms Κεφάλαιο 2 ο 2. Missing Data mechanisms 2.1 Εισαγωγή Στην προηγούµενη ενότητα περιγράψαµε κάποια από τα βασικά µοτίβα εµφάνισης των χαµένων τιµών σε σύνολα δεδοµένων. Ένα άλλο ζήτηµα που µας απασχολεί

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

Επιχειρηµατικές ιαδικασίες: Εισαγωγικές Έννοιες & Αρχικά στάδια µοντελοποίησης

Επιχειρηµατικές ιαδικασίες: Εισαγωγικές Έννοιες & Αρχικά στάδια µοντελοποίησης ΟΙΚΟΝΟΜΙΚΌ ΠΑΝΕΠΙΣΤΉΜΙΟ ΑΘΗΝΏΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ & ΤΕΧΝΟΛΟΓΙΑΣ Επιχειρηµατικές ιαδικασίες: Εισαγωγικές Έννοιες & Αρχικά στάδια µοντελοποίησης 1o φροντιστήριο στο µάθηµα Ανάλυση και µοντελοποίηση

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

Aρχές Σπονδυλωτού Προγραµµατισµού σε Kατανεµηµένα Συστήµατα. Προοπτικές. Kεφάλαιο Tρία - Mεγέθους και ιαµελισµού Eνός Συστήµατος σε Συστατικά

Aρχές Σπονδυλωτού Προγραµµατισµού σε Kατανεµηµένα Συστήµατα. Προοπτικές. Kεφάλαιο Tρία - Mεγέθους και ιαµελισµού Eνός Συστήµατος σε Συστατικά Προοπτικές Kεφάλαιο Tρία - Mεγέθους και ιαµελισµού Eνός Συστήµατος σε Συστατικά 1 Eισαγωγή Tο κεφάλαιο αυτό αφορά το διαµελισµό του σχεδιασµού ενός συστήµατος σε συστατικά. H κατασκευή ενός γενικού συστατικού

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

ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ

ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ ΚΥΚΛΟΣ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ και ΔΙΑΓΡΑΜΜΑΤΑ ΡΟΗΣ ΔΕΔΟΜΕΝΩΝ Ο κύκλος ζωής λογισµικού (συνοπτικά) Η παραδοσιακή φάση ανάπτυξης του κύκλου ζωής λογισµικού Φάση καθορισµού απαιτήσεων (1/2) ΤΙ πρέπει να κάνει το

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

Εισαγωγή στην Τοπολογία

Εισαγωγή στην Τοπολογία Ενότητα: Συνεκτικότητα Γεώργιος Κουµουλλής Τµήµα Μαθηµατικών Αδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε

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

Β06Σ03 ΣΤΑΤΙΣΤΙΚΗ ΠΕΡΙΓΡΑΦΙΚΗ ΕΦΑΡΜΟΣΜΕΝΗ ΣΤΗΝ ΨΥΧΟΠΑΙΔΑΓΩΓΙΚΗ

Β06Σ03 ΣΤΑΤΙΣΤΙΚΗ ΠΕΡΙΓΡΑΦΙΚΗ ΕΦΑΡΜΟΣΜΕΝΗ ΣΤΗΝ ΨΥΧΟΠΑΙΔΑΓΩΓΙΚΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΑΓΩΓΗΣ ΠΑΙΔΑΓΩΓΙΚΟ ΤΜΗΜΑ ΔΗΜΟΤΙΚΗΣ ΕΚΠΑΙΔΕΥΣΗΣ Β06Σ03 ΣΤΑΤΙΣΤΙΚΗ ΠΕΡΙΓΡΑΦΙΚΗ ΕΦΑΡΜΟΣΜΕΝΗ ΣΤΗΝ ΨΥΧΟΠΑΙΔΑΓΩΓΙΚΗ Ενότητα 2: Επαγωγική-περιγραφική στατιστική, παραµετρικές

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

Αριθµητική Ανάλυση. Ενότητα 5 Προσέγγιση Συναρτήσεων. Ν. Μ. Μισυρλής. Τµήµα Πληροφορικής και Τηλεπικοινωνιών,

Αριθµητική Ανάλυση. Ενότητα 5 Προσέγγιση Συναρτήσεων. Ν. Μ. Μισυρλής. Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Αριθµητική Ανάλυση Ενότητα 5 Προσέγγιση Συναρτήσεων Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Καθηγητής: Ν. Μ. Μισυρλής Αριθµητική Ανάλυση - Ενότητα 5 1 / 55 Παρεµβολή Ας υποθέσουµε ότι δίνονται

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

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Υλοποίηση στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Υλοποίηση στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Η Υλοποίηση στην Ενοποιηµένη ιαδικασία ρ. Πάνος Φιτσιλής Περιεχόµενα Πρωτοτυποποίηση Προγραµµατισµός υλοποίησης Ανάπτυξη συστήµατος Μοναδιαίος έλεγχος Ολοκλήρωση 2 3 Η υλοποίηση

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ ΘΕΜΑ ο 2.5 µονάδες ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΝΕΥΡΩΝΙΚΑ ΙΚΤΥΑ Τελικές εξετάσεις 2 Σεπτεµβρίου 2005 5:00-8:00 Σχεδιάστε έναν αισθητήρα ercetro

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

Τεχνολογία Λογισµικού Ι Κεφάλαιο 5

Τεχνολογία Λογισµικού Ι Κεφάλαιο 5 ΕΛΛΗΝΙΚΟ ΑΝΟΙΧΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Πρόγραµµα σπουδών "ΠΛΗΡΟΦΟΡΙΚΗ" - Θ.Ε. ΠΛΗ11 Τεχνολογία Λογισµικού Ι Κεφάλαιο 5 Βασίλειος Βεσκούκης ιδάκτωρ Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών v.vescoukis@cs.ntua.gr

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

ΠΕΡΙΕΧΟΜΕΝΑ. 1.1. Υλικό και Λογισμικό.. 1 1.2 Αρχιτεκτονική Υπολογιστών.. 3 1.3 Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6

ΠΕΡΙΕΧΟΜΕΝΑ. 1.1. Υλικό και Λογισμικό.. 1 1.2 Αρχιτεκτονική Υπολογιστών.. 3 1.3 Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6 ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή στην Δομή, Οργάνωση, Λειτουργία και Αξιολόγηση Υπολογιστών 1.1. Υλικό και Λογισμικό.. 1 1.2 Αρχιτεκτονική Υπολογιστών.. 3 1.3 Δομή, Οργάνωση και Λειτουργία Υπολογιστών 6 1.3.1 Δομή

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

Ειδικά θέματα τεχνολογίας λογισμικού

Ειδικά θέματα τεχνολογίας λογισμικού Ειδικά θέματα τεχνολογίας λογισμικού Σχεδιασμός λογισμικού Διομήδης Σπινέλλης Τμήμα Διοικητικής Επιστήμης και Τεχνολογίας Οικονομικό Πανεπιστήμιο Αθηνών dds@aueb.gr http://www.dmst.aueb.gr/dds @CoolSWEng

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

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ

ΚΕΦΑΛΑΙΟ 10 ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΚΕΦΑΛΑΙΟ 10 Όπως είδαμε και σε προηγούμενο κεφάλαιο μια από τις βασικότερες τεχνικές στον Δομημένο Προγραμματισμό είναι ο Τμηματικός Προγραμματισμός. Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης

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

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Γενικά Η αρχιτεκτονική ανάπτυξης τους πληροφοριακού συστήµατος Γραµµατεία 2000 υποσύστηµα διαχείρισης προσωπικού

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

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου J-GANNO ΓΕΝΙΚΕΥΜΕΝΟ ΠΑΚΕΤΟ ΥΛΟΠΟΙΗΣΗΣ ΤΕΧΝΗΤΩΝ ΝΕΥΡΩΝΙΚΩΝ ΙΚΤΥΩΝ ΣΤΗ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ JAVA Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β,

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

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

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 10 ΟΥ ΚΕΦΑΛΑΙΟΥ ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ 1. Πως ορίζεται ο τμηματικός προγραμματισμός; Τμηματικός προγραμματισμός

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

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4 Διαδικασίες παραγωγής λογισμικού Στόχοι Παρουσίαση μοντέλων παραγωγής λογισμικού Περιγραφή τριών γενικών μοντέλων παραγωγής λογισμικού και πότε μπορούν να χρησιμοποιούνται Γενική περιγραφή των μοντέλων

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

Μοντέλα. χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες.

Μοντέλα. χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες. Γλώσσες Περιγραφής Μοντέλα Ένα µοντέλο ενός κυκλώµατος είναι µία αναπαράσταση που παρουσιάζει χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες. Τα τυπικά µοντέλα έχουν καλά ορισµένη σύνταξη. Τα αυτόµατα

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

Φάση 3: Λεπτομερής Σχεδιασμός

Φάση 3: Λεπτομερής Σχεδιασμός 76 Φάση 3: Λεπτομερής Σχεδιασμός Διαδικασίες που περιλαμβάνει: Βιομηχανικός Σχεδιασμός (ολοκληρώνεται) Σχεδιασμός για το περιβάλλον (ολοκληρώνεται) Σχεδιασμός για τη παραγωγή Πρωτοτυποποίηση Εύρωστος Σχεδιασμός

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

Εισαγωγή στην αντικειµενοστρεφή τεχνολογία

Εισαγωγή στην αντικειµενοστρεφή τεχνολογία 1 Ελληνικό Ανοικτό Πανεπιστήµιο Εισαγωγή στην αντικειµενοστρεφή τεχνολογία ρ. Πάνος Φιτσιλής Περιεχόµενα Γιατί µοντελοποιούµε Εισαγωγή στη UML Ένα απλό παράδειγµα 2 Γιατί µοντελοποιούµε; Ησηµασία της µοντελοποίησης

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

Ελληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας ρ. Πάνος Φιτσιλής Περιεχόµενα Βασικές έννοιες αντικειµενοστεφούς τρόπου ανάπτυξης Τι είναι κλάση Τι είναι αντικείµενο 2 Βασικές

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

ΑΞΙΟΠΙΣΤΙΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ

ΑΞΙΟΠΙΣΤΙΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ ΑΞΙΟΠΙΣΤΙΑ ΥΛΙΚΟΥ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ Εισαγωγή Ηεµφάνιση ηλεκτρονικών υπολογιστών και λογισµικού σε εφαρµογές µε υψηλές απαιτήσεις αξιοπιστίας, όπως είναι διαστηµικά προγράµµατα, στρατιωτικές τηλεπικοινωνίες,

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

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

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

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή στην Access...9. Κεφάλαιο 2 Χειρισμός πινάκων... 25 Περιεχόμενα Κεφάλαιο 1 Εισαγωγή στην Access...9 Γνωριμία με την Access... 12 Δημιουργία βάσης δεδομένων... 18 Άνοιγμα και κλείσιμο βάσης δεδομένων... 21 Ερωτήσεις ανακεφαλαίωσης... 22 Πρακτική εξάσκηση...

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

Σχεδίαση τροχιάς. (α) (β) (γ) (δ) Σχήµα 2.5

Σχεδίαση τροχιάς. (α) (β) (γ) (δ) Σχήµα 2.5 Σχεδίαση τροχιάς Η πιο απλή κίνηση ενός βραχίονα είναι από σηµείο σε σηµείο. Με την µέθοδο αυτή το ροµπότ κινείται από µία αρχική θέση σε µία τελική θέση χωρίς να µας ενδιαφέρει η ενδιάµεση διαδροµή που

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

Αδιέξοδα (Deadlocks)

Αδιέξοδα (Deadlocks) Αδιέξοδα (Deadlocks) Περίληψη Αδιέξοδα (deadlocks) Τύποι πόρων (preemptable non preemptable) Μοντελοποίηση αδιεξόδων Στρατηγικές Στρουθοκαµηλισµός (ostrich algorithm) Ανίχνευση και αποκατάσταση (detection

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

ΜΕΤΑΒΑΤΙΚΕΣ ΠΡΟΫΠΟΘΕΣΕΙΣ ΑΠΟΚΤΗΣΗΣ ΠΤΥΧΙΟΥ

ΜΕΤΑΒΑΤΙΚΕΣ ΠΡΟΫΠΟΘΕΣΕΙΣ ΑΠΟΚΤΗΣΗΣ ΠΤΥΧΙΟΥ ΜΕΤΑΒΑΤΙΚΕΣ ΠΡΟΫΠΟΘΕΣΕΙΣ ΑΠΟΚΤΗΣΗΣ ΠΤΥΧΙΟΥ Για τους φοιτητές που έχουν εισαχθεί στο Τµήµα από το Ακαδηµαϊκό Έτος 1999-2000 έως το Ακαδηµαϊκό Έτος 2003-2004 1 1. Εγγραφή και παρακολούθηση για τουλάχιστον

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

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

05 Ανάλυση απαιτήσεων 05 Ανάλυση απαιτήσεων Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Εαρινό εξάμηνο 2016 17 Δρ. Κώστας Σαΐδης saiko@di.uoa.gr Ανάλυση και Σχεδιασμός Η διαδικασία που μας επιτρέπει να:

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

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού Τεχνολογία Λογισμικού Προαπαιτήσεις Γνώση Αρχών Προγραμματισμού Γνώση Γλώσσας Προγραμματισμού (C++, Java, Pascal) Χρήση Η/Υ (Σχεδίαση, Επεξ. Κειμένου) Κριτική και Συνθετική Ικανότητα Σκοπός μαθήματος Γνωριμία

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΔΙΑΔΙΚΑΣΙΕΣ ΠΑΡΑΓΩΓΗΣ ΛΟΓΙΣΜΙΚΟΥ Διδάσκων: Γ. Χαραλαμπίδης,

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΜΟΝΤΕΛΑ ΣΥΣΤΗΜΑΤΟΣ Διδάσκων: Γ. Χαραλαμπίδης, Επ. Καθηγητής

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

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα.

ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ. Κάθε υποπρόγραμμα έχει μόνο μία είσοδο και μία έξοδο. Κάθε υποπρόγραμμα πρέπει να είναι ανεξάρτητο από τα άλλα. ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ Τμηματικός προγραμματισμός ονομάζεται η τεχνική σχεδίασης και ανάπτυξης των προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων. Όταν ένα τμήμα προγράμματος επιτελεί ένα αυτόνομο

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

ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή

ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή Οι σηµερινές δραστηριότητες των επιχειρήσεων δηµιουργούν την ανάγκη για όσο το δυνατό µεγαλύτερη υποστήριξη από τα πληροφοριακά τους

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

Εισαγωγή στον Προγραµµατισµό. Σύντοµες Σηµειώσεις. Γιώργος Μανής

Εισαγωγή στον Προγραµµατισµό. Σύντοµες Σηµειώσεις. Γιώργος Μανής Εισαγωγή στον Προγραµµατισµό Σύντοµες Σηµειώσεις Γιώργος Μανής Νοέµβριος 2012 Αλγόριθµοι και Λογικά ιαγράµµατα Αλγόριθµος λέγεται µία πεπερασµένη διαδικασία καλά ορισµένων ϐηµάτων µου ακολουθείται για

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

5.1 Θεωρητική εισαγωγή

5.1 Θεωρητική εισαγωγή ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 5 ΚΩ ΙΚΟΠΟΙΗΣΗ BCD Σκοπός: Η κατανόηση της µετατροπής ενός τύπου δυαδικής πληροφορίας σε άλλον (κωδικοποίηση/αποκωδικοποίηση) µε τη µελέτη της κωδικοποίησης BCD

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

Γραµµική Άλγεβρα. Εισαγωγικά. Μέθοδος Απαλοιφής του Gauss

Γραµµική Άλγεβρα. Εισαγωγικά. Μέθοδος Απαλοιφής του Gauss Γραµµική Άλγεβρα Εισαγωγικά Υπάρχουν δύο βασικά αριθµητικά προβλήµατα στη Γραµµική Άλγεβρα. Το πρώτο είναι η λύση γραµµικών συστηµάτων Aλγεβρικών εξισώσεων και το δεύτερο είναι η εύρεση των ιδιοτιµών και

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

Η στοίβα (stack) H στοίβα είναι ένας αποθηκευτικός χώρος οργανωµένος κατά τέτοιο τρόπο ώστε να υποστηρίζει δύο βασικές λειτουργίες:

Η στοίβα (stack) H στοίβα είναι ένας αποθηκευτικός χώρος οργανωµένος κατά τέτοιο τρόπο ώστε να υποστηρίζει δύο βασικές λειτουργίες: Άσκηση 5Α_5 26/3/2003 11.5. Άσκηση 5A - [αναγνώριση αντικειµένων-διάγραµµα κλάσεων] [Σε αντικατάσταση της άσκησης 5 του κεφαλαίου 11] 11.5.1. Περιγραφή Η άσκηση αυτή είναι η πρώτη από µία σειρά ασκήσεων

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

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 8/1/12, 22:00

ΣΕΤ ΑΣΚΗΣΕΩΝ 4. Προθεσµία: 8/1/12, 22:00 ΣΕΤ ΑΣΚΗΣΕΩΝ 4 ΕΡΓΑΣΤΗΡΙΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ I, ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2011-2012 Προθεσµία: 8/1/12, 22:00 Περιεχόµενα Διαβάστε πριν ξεκινήσετε Εκφώνηση άσκησης Οδηγίες αποστολής άσκησης Πριν ξεκινήσετε (ΔΙΑΒΑΣΤΕ

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

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Δομές Δεδομένων Ενότητα 1 - Εισαγωγή Χρήστος Γκουμόπουλος Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Αντικείμενο μαθήματος Δομές Δεδομένων (ΔΔ): Στην επιστήμη υπολογιστών

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

Rational Unified Process:

Rational Unified Process: ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ - Μεταπτυχιακό µάθηµα: ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΕΙΣ ΜΕΘΟ ΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΛΟΓΙΣΜΙΚΟΥ Καθ. Ε. Σκορδαλάκης, ρ. Β. Βεσκούκης Rational Unified

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

4 η Θεµατική Ενότητα : Συνδυαστική Λογική. Επιµέλεια διαφανειών: Χρ. Καβουσιανός

4 η Θεµατική Ενότητα : Συνδυαστική Λογική. Επιµέλεια διαφανειών: Χρ. Καβουσιανός 4 η Θεµατική Ενότητα : Συνδυαστική Λογική Επιµέλεια διαφανειών: Χρ. Καβουσιανός Λογικά Κυκλώµατα Ø Τα λογικά κυκλώµατα διακρίνονται σε συνδυαστικά (combinational) και ακολουθιακά (sequential). Ø Τα συνδυαστικά

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

Aρχές Σπονδυλωτού Προγραµµατισµού σε Kατανεµηµένα Συστήµατα. Kεφάλαιο ύο - Tι Eίναι και Tι δεν Eίναι Συστατικό

Aρχές Σπονδυλωτού Προγραµµατισµού σε Kατανεµηµένα Συστήµατα. Kεφάλαιο ύο - Tι Eίναι και Tι δεν Eίναι Συστατικό Kεφάλαιο ύο - Tι Eίναι και Tι δεν Eίναι Συστατικό 1 Tι Eίναι και τι δεν E ίναι Συστατικό H σύγχιση µεταξύ συστατικού (component) και αντικειµένου (object): Kαι τα δύο προέρχονται από τύπους ή κατηγορίες

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

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για: Σελίδα 1 από 11 Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για: την επικοινωνία, µε τα υπόλοιπα ολοκληρωµένα κυκλώµατα του υπολογιστικού συστήµατος. την παροχή τροφοδοσίας

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

6. ΔΙΑΝΥΣΜΑΤΙΚΟΙ ΧΩΡΟΙ ΚΑΙ ΑΝΤΙΣΤΡΟΦΑ ΠΡΟΒΛΗΜΑΤΑ

6. ΔΙΑΝΥΣΜΑΤΙΚΟΙ ΧΩΡΟΙ ΚΑΙ ΑΝΤΙΣΤΡΟΦΑ ΠΡΟΒΛΗΜΑΤΑ 6. ΔΙΑΝΥΣΜΑΤΙΚΟΙ ΧΩΡΟΙ ΚΑΙ ΑΝΤΙΣΤΡΟΦΑ ΠΡΟΒΛΗΜΑΤΑ 6. Διανυσματικοί χώροι παραμέτρων και μετρήσεων. Θα δανειστούµε για µία ακόµη φορά έννοιες της Γραµµικής Άλγεβρας προκειµένου να δούµε πως µπορούµε να χειριστούµε

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

Παράρτηµα 3 Εξισώσεις Διαφορών και Στοχαστικές Διαδικασίες

Παράρτηµα 3 Εξισώσεις Διαφορών και Στοχαστικές Διαδικασίες Γιώργος Αλογοσκούφης, Θέµατα Δυναµικής Μακροοικονοµικής, Αθήνα 0 Παράρτηµα 3 Εξισώσεις Διαφορών και Στοχαστικές Διαδικασίες Στο παράρτηµα αυτό εξετάζουµε τις ιδιότητες και τους τρόπους επίλυσης των εξισώσεων

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

Μάθηµα 1. Κεφάλαιο 1o: Συστήµατα. γ R παριστάνει ευθεία και καλείται γραµµική εξίσωση µε δύο αγνώστους.

Μάθηµα 1. Κεφάλαιο 1o: Συστήµατα. γ R παριστάνει ευθεία και καλείται γραµµική εξίσωση µε δύο αγνώστους. Μάθηµα 1 Κεφάλαιο 1o: Συστήµατα Θεµατικές Ενότητες: A. Συστήµατα Γραµµικών Εξισώσεων B. Συστήµατα 3x3 Α. ΣΥΣΤΗΜΑΤΑ ΓΡΑΜΜΙΚΩΝ ΕΞΙΣΩΣΕΩΝ Ορισµοί Κάθε εξίσωση της µορφής α x+β =γ, µε α, β, γ R παριστάνει

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

ζωγραφίζοντας µε τον υπολογιστή

ζωγραφίζοντας µε τον υπολογιστή ζωγραφίζοντας µε τον υπολογιστή Μια από τις εργασίες που µπορούµε να κάνουµε µε τον υπολογιστή είναι και η ζωγραφική. Για να γίνει όµως αυτό πρέπει ο υπολογιστής να είναι εφοδιασµένος µε το κατάλληλο πρόγραµµα.

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

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Διαδικασίες παραγωγής λογισμικού Περιεχόμενα Παρουσίαση μοντέλων διεργασίας ανάπτυξης λογισμικού Περιγραφή τριών γενικών μοντέλων διεργασίας ανάπτυξης λογισμικού Γενική περιγραφή των διαδικασιών που περιλαμβάνονται

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

Οι πράξεις που χρειάζονται για την επίλυση αυτών των προβληµάτων (αφού είναι απλές) µπορούν να τεθούν σε µια σειρά και πάρουν µια αλγοριθµική µορφή.

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

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

Μηχανική ΙI. Λαγκρανζιανή συνάρτηση. Τµήµα Π. Ιωάννου & Θ. Αποστολάτου 3/2001

Μηχανική ΙI. Λαγκρανζιανή συνάρτηση. Τµήµα Π. Ιωάννου & Θ. Αποστολάτου 3/2001 Τµήµα Π Ιωάννου & Θ Αποστολάτου 3/2001 Μηχανική ΙI Λαγκρανζιανή συνάρτηση Είδαµε στο προηγούµενο κεφάλαιο ότι ο δυναµικός νόµος του Νεύτωνα είναι ισοδύναµος µε την απαίτηση η δράση ως το ολοκλήρωµα της

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

Επικοινωνία:

Επικοινωνία: Σπύρος Ζυγούρης Καθηγητής Πληροφορικής Επικοινωνία: spzygouris@gmail.com Πως ορίζεται ο τμηματικός προγραμματισμός; Πρόγραμμα Εντολή 1 Εντολή 2 Εντολή 3 Εντολή 4 Εντολή 5 Εντολή 2 Εντολή 3 Εντολή 4 Εντολή

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

Είναι το ηλεκτρικό ρεύµα διανυσµατικό µέγεθος;

Είναι το ηλεκτρικό ρεύµα διανυσµατικό µέγεθος; Είναι το ηλεκτρικό ρεύµα διανυσµατικό µέγεθος; Για να εξετάσουµε το κύκλωµα LC µε διδακτική συνέπεια νοµίζω ότι θα πρέπει να τηρήσουµε τους ορισµούς που δώσαµε στα παιδιά στη Β Λυκείου. Ας ξεκινήσουµε

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

Η Γλώσσα Προγραµµατισµού 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 Θα

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

Ανάλυση Απαιτήσεων Mεθοδολογίες Ανάπτυξης

Ανάλυση Απαιτήσεων Mεθοδολογίες Ανάπτυξης ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ Ανάλυση Απαιτήσεων Mεθοδολογίες Ανάπτυξης Μάρα Νικολαϊδου Μοντελοποίηση Συστήµατος Περιπτώσεις χρήσης Οι περιπτώσεις χρήσης είναι µια τεχνική

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

Από Ανάλυση στη Σχεδίαση

Από Ανάλυση στη Σχεδίαση Σχεδίαση Λογισµικού ΙΙ Αντώνης Καραγεώργος Τµήµα Μηχανικών Η/Υ και ικτύων Πανεπιστήµιο Θεσσαλίας karageorgos@inf.uth.gr Πρότυπα σχεδίων και επαναχρησιµοποίηση Θέλουµε ναεκµεταλλευτούµε τακοινά χαρακτηριστικά

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

Περιεχόµενο. ΕΠΛ 422: Συστήµατα Πολυµέσων. Σχεδίαση και Ανάπτυξη Πολυµεσικών Εφαρµογών. Βιβλιογραφία. Καγιάφας [2000]: Κεφάλαιο 9, [link]

Περιεχόµενο. ΕΠΛ 422: Συστήµατα Πολυµέσων. Σχεδίαση και Ανάπτυξη Πολυµεσικών Εφαρµογών. Βιβλιογραφία. Καγιάφας [2000]: Κεφάλαιο 9, [link] Περιεχόµενα ΕΠΛ 422: Συστήµατα Πολυµέσων Σχεδίαση και Ανάπτυξη Πολυµεσικών Εφαρµογών Βασικά ζητήµατα σχεδίασης Η διαδικασία ανάπτυξης πολυµεσικών εφαρµογών Η οµάδα ανάπτυξης πολυµεσικών εφαρµογών Σχεδίαση

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

Η συμβολή στην επιτυχία ενός οργανισμού, παρουσιάζοντας σχετικά δεδομένα με τη χρήση τεχνικών 2Δ ή 3Δ τεχνολογίας. Αρμοδιότητα

Η συμβολή στην επιτυχία ενός οργανισμού, παρουσιάζοντας σχετικά δεδομένα με τη χρήση τεχνικών 2Δ ή 3Δ τεχνολογίας. Αρμοδιότητα Σχεδιαστής Ψηφιακών Κινούμενων Σχεδίων ή Digital Animator 1. Περιγραφή Ρόλου Τίτλος Προφίλ Σχε Σχεδιαστής Ψηφιακών Κινούμενων Σχεδίων ή Digital Animator Γνωστό και ως Ειδικός Σχεδιασμού 2Δ- 3Δ γραφικών,

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

Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι

Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι Εισαγωγή, Βασικές Έννοιες, Οφέλη και Κίνδυνοι Ευθύμιος Ταμπούρης tambouris@uom.gr Επιστημονική Επιχειρηματική Χρήση των Η/Υ Η επιστημονική κοινότητα ασχολείται με τη λύση πολύπλοκων μαθηματικών προβλημάτων

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

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης ΜΟΝΤΕΛΟΠΟΙΗΣΗ Ε ΟΜΕΝΩΝ, ΚΛΑΣΙΚΑ ΜΟΝΤΕΛΑ Ε ΟΜΕΝΩΝ

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης ΜΟΝΤΕΛΟΠΟΙΗΣΗ Ε ΟΜΕΝΩΝ, ΚΛΑΣΙΚΑ ΜΟΝΤΕΛΑ Ε ΟΜΕΝΩΝ Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Αγρονόµων Τοπογράφων Μηχανικών Βάσεις εδοµένων Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης v.vescoukis@cs.ntua.gr ΜΟΝΤΕΛΟΠΟΙΗΣΗ Ε ΟΜΕΝΩΝ, ΚΛΑΣΙΚΑ ΜΟΝΤΕΛΑ Ε ΟΜΕΝΩΝ Βάσεις εδοµένων

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

Τα διαγράµµατα πακέτων

Τα διαγράµµατα πακέτων 1 Ελληνικό Ανοικτό Πανεπιστήµιο Τα διαγράµµατα πακέτων ρ. Πάνος Φιτσιλής 2 Περιεχόµενα Βασικές έννοιες Πως αποικοδοµούµε ένα σύστηµα σε πακέτα Παραδείγµατα διαγράµµατος πακέτων Στερεότυπα πακέτων 3 Οχωρισµός

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

HY118- ιακριτά Μαθηµατικά

HY118- ιακριτά Μαθηµατικά HY118- ιακριτά Μαθηµατικά Τρίτη, 19/04/2016 Το υλικό των Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr 1 Συνδυαστική 2 Πείραµα Πείραµα: Οποιαδήποτε διαδικασία που µπορεί να οδηγήσει σε ένα αριθµό παρατηρήσιµων

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

Γραµµατικές για Κανονικές Γλώσσες

Γραµµατικές για Κανονικές Γλώσσες Κανονικές Γραµµατικές Γραµµατικές για Κανονικές Γλώσσες Ταξινόµηση Γραµµατικών εξιά Παραγωγικές Γραµµατικές εξιά Παραγωγικές Γραµµατικές και NFA Αριστερά Παραγωγικές Γραµµατικές Κανονικές Γραµµατικές Γραµµατικές

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

Εισαγωγή ΕΙΣΑΓΩΓΗ ΣΤΑ ΓΣΠ

Εισαγωγή ΕΙΣΑΓΩΓΗ ΣΤΑ ΓΣΠ ΕΙΣΑΓΩΓΗ ΣΤΑ ΓΣΠ Τα τελευταία 25 χρόνια, τα προβλήµατα που σχετίζονται µε την διαχείριση της Γεωγραφικής Πληροφορίας αντιµετωπίζονται σε παγκόσµιο αλλά και εθνικό επίπεδο µε την βοήθεια των Γεωγραφικών

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