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

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

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

Transcript

1 Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 4/10/2018 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια

2 Πρακτικά Θέματα Διαλέξεις Δευτέρα 11:15-14:00, αίθουσα 107 Παρουσιάσεις διαλέξεων επιπλέον χρήσιμο υλικό Στο site του μαθήματος Εργαστήρια Ώρες γραφείου: Τρίτη 15:00-16:00 κτίριο Ανδρούτσου, γραφείο 204

3 Αξιολόγηση / Βαθμολόγηση επίδοσης Βαθμολογία Εξετάσεις 80% Εργαστήρια Ασκήσεις Εργασία 30% Βαθμός εξετάσεων >= 5 ΥΠΟΧΡΕΩΤΙΚΑ για να μετρήσει ο βαθμός της εργασίας

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

5 Στόχοι - ειδικότερα Γνωριμία με την επιστημονική περιοχή της Τεχνολογίας Λογισμικού (Software Engineering) Παρουσίαση των πιο διαδεδομένων Μοντέλων Κύκλου Ζωής Λογισμικού Κατανόηση βασικών εννοιών στην ανάπτυξη συστημάτων και ειδικότερα συστημάτων λογισμικού Εξοικείωση με τις μεθοδολογίες ανάπτυξης συστημάτων λογισμικού Δομημένη ανάλυση και σχεδίαση λογισμικού Αντικειμενοστρεφής ανάλυση και σχεδίαση λογιμσικού Εξοικείωση με τεχνικές ελέγχου, εντοπισμού και διόρθωσης σφαλμάτων στο λογισμικό Εξοικίωση με τη χρήση προτύπων τεκμηρίωσης λογισμικού Γνώση και εφαρμογή διαγραμματικών τεχνικών μοντελοποίησης με ιδιαίτερη έμφαση στη Unified Modelling Language (UML) Πρακτική εξάσκηση εφαρμογής μεθοδολογιών ανάλυσης και σχεδίασης στην εκπόνηση ενός έργου λογισμικού

6 Βιβλίο - Βιβλιογραφία Βασικά Συγγράμματα R. Pressman, B. Maxim «Τεχνολογία Λογισμικού», 8 η έκδοση, επιμέλεια Α. Πρέντζα, Κ. Σαΐδης, εκδόσεις Τζιόλα, 2018 S. L. Pfleeger, «Τεχνολογία Λογισμικού Θεωρία και πράξη», 2η έκδοση, εκδόσεις Κλειδάριθμος, 2011 Προτεινόμενη Βιβλιογραφία I. Sommerville, «Βασικές αρχές Τεχνολογίας Λογισμικού», 8 η αγγλική έκδοση, εκδόσεις Κλειδάριθμος Β. Βεσκούκης «Τεχνολογία Λογισμικού Ι», ΕΑΠ, ΠΑΤΡΑ, 2000 G. Hoffer, Valacich, «Ανάλυση και Σχεδίαση Πληροφοριακών Συστημάτων», 5η έκδοση, εκδόσεις Τζιόλα

7 Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Εισαγωγή

8 Τεχνολογία Λογισμικού (1/4) Πρώτη φορά ακούστηκε το 1968! Πολλά έχουν αλλάξει από τότε! Συνεχώς αυξανόμενη εξάρτηση από το λογισμικό! Επομένως χρειάζεται υπευθυνότητα! Πρέπει η σύνθετη, άυλη, πολύπλοκη ανθρώπινη κατασκευή, το λογισμικό, να είναι Αξιόπιστη Συντηρήσιμη Προσαρμόσιμη και Αξιοποιήσιμη από τον άνθρωπο Δυνατή η υλοποίηση εντός προκαθορισμένων ορίων χρόνου, κόστους και ποιότητας!!!

9 Τεχνολογία Λογισμικού (2/4) Εφαρμόζεται από ομάδες για την παραγωγή υψηλής ποιότητας, μεγάλης κλίμακας, οικονομικά αποδοτικού λογισμικού που ικανοποιεί τις ανάγκες των χρηστών και μπορεί να συντηρηθεί σε βάθος χρόνου. Χρήστες: συνεπάγεται την ανάγκη για απαιτήσεις Ομάδες: συνεπάγεται την ανάγκη για επικοινωνία και διεπαφές Σε βάθος χρόνου: υποδηλώνει ότι το σύστημα πρέπει να είναι σε θέση να αλλάξει χωρίς να γίνεται εύθραυστο Υψηλής ποιότητας: προτείνει κριτήρια απόδοσης, όχι μόνο λειτουργικές δυνατότητες Μεγάλης κλίμακας: σημαίνει διαφορετική αρχιτεκτονική θεώρηση σχετικά με την απόδοση και άλλες ιδιότητες/χαρακτηριστικά Κατανόηση των δαπανών και των συμβιβασμών (trade-offs ) στο σχεδιασμό θα είναι πολύ σημαντική Αναγνωρίζοντας τις ανάγκες των εμπλεκομένων μερών και όχι μόνο των χρηστών είναι επίσης πολύ σημαντικό

10 Τεχνολογία Λογισμικού (3/4) Διαδικασία εξειδίκευσης, σχεδιασμού, υλοποίησης, επικύρωσης, εγκατάστασης και διατήρησης κοινωνικοτεχνικών συστημάτων. Σχέδια/σκίτσα με μέγεθος θέσης, σχήμα, σκοπό, διάταξη δωματίων που προκύπτουν από τις συνομιλίες μεταξύ του πελάτη και του αρχιτέκτονα Σχέδια του αρχιτέκτονα με κατόψεις, τομές, εικόνες έτσι ώστε ο ιδιοκτήτης να σχετίζεται με αυτά και είτε συμφωνεί ή διαφωνεί μηχανική απαιτήσεων: κατανόηση και καθορισμός απαιτήσεων Σκίτσα/σχέδια του αρχιτέκτονα: το μοντέλο του τελικού προϊόντος από την πλευρά του ιδιοκτήτη Σκίτσα/σχέδια του αρχιτέκτονα που μετατρέπονται σε τελικά σχέδια του αρχιτέκτονα: το μοντέλο του τελικού προϊόντος από την πλευρά του σχεδιαστή Σχέδια του αρχιτέκτονα: καθορισμός των υλικών που θα χρησιμοποιηθούν για την κατασκευή και που θα χρησιμοποιηθούν ως βάση για τις διαπραγματεύσεις με γενικό ανάδοχο Ο ανάδοχος μετατρέπει τα σχέδια του αρχιτέκτονα στα σχέδια του εργολάβου που αντιπροσωπεύουν την πλευρά του κατασκευαστή. Τα σχέδια του αναδόχου παρέχουν την περιγραφή "πώς να το χτίσει"

11 Τεχνολογία Λογισμικού (4/4) Έτσι, πρώτα σχεδιάζουμε το σύστημα όπως βρίσκεται στο περιβάλλον Τα μοντέλα περιλαμβάνουν περιπτώσεις χρήσης μοντελοποιημένες από την πλευρά του ιδιοκτήτη Η προοπτική του ιδιοκτήτη μπορεί επίσης να περιλαμβάνει σενάρια τα οποία μπορούν να προσομοιωθούν Η προοπτική του σχεδιαστή αποτελείται από διάφορα μοντέλα που περιγράφουν από διάφορες πλευρές το πώς πρέπει να σχεδιαστεί το σύστημα (με τη χρήση της UML) Η προοπτική του κατασκευαστή βασίζεται στην προοπτική του σχεδιαστή, αλλά θεωρεί συγκεκριμένες γλώσσες, τεχνολογίες και εργαλεία που θα χρησιμοποιηθούν και καθορίζει τη σειρά των δραστηριοτήτων

12 Γιατί Τεχνολογία Λογισμικού? Γιατί η ανάπτυξη λογισμικού είναι δύσκολη?! Πολύ σημαντική η διάκριση μεταξύ εύκολων συστημάτων (ένας developer, ένας χρήστης, πειραματική χρήση μόνο) και δύσκολων συστημάτων (πολλοί developers, πολλοί χρήστες, προϊόντα) Η εμπειρία με εύκολα συστήματα εξαπατά Oι τεχνικές ενός ατόμου δεν κλιμακώνονται (do not scale up) Αναλογία με το χτίσιμο γεφυριού: Πάνω από ένα ρυάκι = εύκολο, δουλειά ενός ατόμου Στο Ρίο-Αντίρριο? (οι τεχνικές δεν κλιμακώνονται)

13 Γιατί Τεχνολογία Λογισμικού? Το πρόβλημα είναι η πολυπλοκότητα Το μέγεθος του λογισμικού είναι σημαντικό: Το UNIX περιέχει 4 εκατομμύρια γραμμές κώδικα Τα Windows 2000 περιέχουν 10 8 γραμμές κώδικα Η Τεχνολογία Λογισμικού είναι για να διαχειρίζεται αυτή την πολυπλοκότητα!

14 Υπολογιστές και Λογισμικό Η/Υ: ένα από τα σημαντικότερα γεγονότα που σηματοδότησαν τον 20 ο αιώνα Εκτέλεση εργασιών αυτοματοποίηση Τεράστια βελτίωση χαρακτηριστικών και δυνατοτήτων Κοινωνία της Πληροφορίας Πώς??? Το λογισμικό καθιστά χρήσιμο τον Η/Υ

15 Τεχνολογία λογισμικού Οι οικονομίες ΟΛΩΝ των αναπτυγμένων χωρών εξαρτώνται από το λογισμικό Ολοένα και περισσότερα συστήματα ελέγχονται από λογισμικό Η τεχνολογία λογισμικού καταπιάνεται με θεωρίες, μεθόδους και εργαλεία ανάπτυξης επαγγελματικού λογισμικού Οι δαπάνες σε λογισμικό αντιπροσωπεύουν σημαντικό μέρος του ΑΕΠ σε όλες τις αναπτυγμένες χώρες

16 Συστήματα λογισμικού Τα συστήματα λογισμικού (ΣΛ) αποτελούν αναντικατάστατο στυλοβάτη της σύγχρονης οικονομίας Με αυτά όμως σχετίζονται δύο δυσκολίες! (Α) Η δυσκολία της ανάλυσης και της σχεδίασής τους (Β) Η διδασκαλία της ανάλυσης και σχεδίασής τους

17 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ Η διαδικασία ανάλυσης και σχεδίαση ενός ΣΛ είναι πολυσύνθετη, ανοικτή και επομένως δύσκολη!

18 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

19 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

20 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

21 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

22 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

23 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

24 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

25 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

26 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

27 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

28 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

29 (Α) Η δυσκολία της ανάλυσης και σχεδίασης ΣΛ

30 (Β) Η διδασκαλία της ανάλυσης και σχεδίασης ΣΛ Η σπουδαιότητα του θέματος, η ευρύτητά του, καθώς και η εξάρτησή του από τις διαρκώς εξελισσόμενες και μεταβαλλόμενες «βασικές» τεχνολογίες πληροφορικής (hardware, γλώσσες προγραμματισμού, βάσεις δεδομένων, τηλεπικοινωνίες) καθιστούν τη διδασκαλία του, έργο δύσκολο, αλλά απαραίτητο. Περιεχόμενο ΣΚΥΛΛΑ Λιτό Ελλειπές Μεγάλο Ασυνάρτητο ΧΑΡΥΒΔΗ

31 Άλλες δυσκολίες Δεν υπάρχει απολύτως δόκιμη ορολογία Πολλές φορές οι ίδιες έννοιες αναφέρονται με διαφορετικό όνομα σε διαφορετικά βιβλία Το πρόβλημα αυτό υπάρχει και την αγγλική και στην ελληνική βιβλιογραφία Ένα από τα πλεονεκτήματα της UML είναι ότι μας παρέχει μια κοινώς αποδεκτή ορολογία

32 Προβλήματα στην Ανάπτυξη ΣΛ Τι μπορεί να πάει στραβά; Μόνο αν κατανοήσουμε τι μπορεί να πάει στραβά κατά τη διάρκεια ανάπτυξης ενός Συστήματος Λογισμικού, μπορούμε να ελπίζουμε ότι θα καταφέρουμε να αποφύγουμε την αποτυχία!

33 Προβλήματα από τη Σκοπιά του Χρήστη Ποιο σύστημα; Δεν αντιλήφθηκα κανένα νέο σύστημα... Μπορεί να δουλεύει αλλά είναι απαίσιο στη χρήση... Είναι πολύ συμπαθητικό. Κάνει όμως τίποτε χρήσιμο;

34 Προβλήματα από τη Σκοπιά του Ιδιοκτήτη Αν ήξερα από την αρχή το συνολικό του κόστος, δεν θα είχα συμφωνήσει. Τι να το κάνουμε σήμερα; Το σύστημα έπρεπε να είχε εγκατασταθεί πριν 8 μήνες. Ok. Δουλεύει, αλλά η εγκατάστασή του και η πρώτη εβδομάδα λειτουργίας του ήταν τόσο μπερδεμένη και προβληματική, που το προσωπικό μου ποτέ δεν θα το εμπιστευθεί. Από την πρώτη στιγμή δεν το ήθελα. Όλα έχουν πλέον αλλάξει. Χρειαζόμαστε ένα εντελώς διαφορετικό σύστημα.

35 Προβλήματα από τη Σκοπιά του Κατασκευαστή Εμείς κατασκευάσαμε αυτό που αυτοί μας είπαν ότι ήθελαν. Δεν υπήρχε χρόνος για τίποτα καλύτερο. Μην μας κατηγορείτε αδίκως. Δεν είχαμε ποτέ κάνει Ανάλυση και Σχεδιασμό Συστημάτων. Μας πώς να το διορθώσουμε αφού δεν καταλαβαίνουμε πώς υποτίθεται ότι πρέπει να δουλεύει. Όταν εμείς λέγαμε ότι αυτό ήταν αδύνατο κανείς δεν μας άκουγε. Το σύστημα είναι μια χαρά. Το πρόβλημα είναι οι χρήστες.

36 Η αξία της σωστής ανάλυσης και σχεδίασης Παραδείγματα κακής σχεδίασης

37

38 Η απουσία σχεδιασμού

39

40 Γιατί να κάνουμε Ανάλυση και Σχεδίαση? Γιατί κάνουμε ένα σχεδιάγραμμα πριν γράψουμε μια έκθεση; Γιατί σχεδιάζουμε ένα σπίτι πριν το κτίσουμε; Γιατί σχεδιάζουμε έναν δρόμο πριν μπούμε στις μπουλντόζες; Γιατί σχεδιάζουμε ένα αυτοκίνητο πριν αρχίζουμε τη συναρμολόγηση; Ανάλυση και σχεδίαση ακόμα και στα έργα τέχνης: κινηματογράφος, λογοτεχνία, θέατρο, γλυπτική, φωτογραφία, κλπ

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

42 Σύστημα Από το ρήμα «συνίσταμαι» «σύνολο στοιχείων που αλληλοεπιδρούν και αλληλοεξαρτώνται με βάση καθορισμένους κανόνες» [Λεξικό Γ. Μπαμπινιώτη] Προβληματική η χρήση του όρου! Κάτι ολοκληρωμένο και πλήρες - στερεοφωνικό σύστημα Κάποια διαδικασία - εκπαιδευτικό σύστημα Κάποια άκαμπτη γραφειοκρατική κατάσταση - το σύστημα Σύνολο πραγμάτων του οποίου τα μέρη βρίσκονται μεταξύ τους σε στενή σχέση ενότητας και αλληλοεξάρτησης - λειτουργικό σύστημα

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

44 Είσοδος-έξοδος-επεξεργασία Είσοδος: εισαγωγή ενέργειας Επεξεργασία: μετασχηματισμός εισόδου σε έξοδο Έξοδος: αποτέλεσμα επεξεργασίας προσέγγιση (ή απόκλιση) του στόχου του συστήματος Στα ζωντανά συστήματα η διαδικασία είναι επαναληπτική

45 Έλεγχος Εσωτερική διαδικασία του συστήματος. Έλεγχος αποτελεσμάτων εξόδου και σύγκριση με τα αναμενόμενα αποτελέσματα (αναμενόμενη συμπεριφορά η επίτευξη του σκοπού). Εντοπισμός και διόρθωση αποκλίσεων. Απαιτούμενη ποικιλία: ο μηχανισμός ελέγχου πρέπει να διαθέτει τόσους εναλλακτικούς τρόπους δράσης, όσα και τα ενδεχόμενα γεγονότα που μπορεί να συμβούν.

46 Έλεγχος Επανατροφοδότησης είσοδος επεξεργασία έξοδος Σύγκριση/διόρθωση ανιχνευτής πρότυπα Σύστημα Ανάδραση: Δεδομένα σχετικά με την απόκλιση της εξόδου επαναεισάγονται στο σύστημα, αναγκάζοντάς το να αλλάξει τρόπο λειτουργίας ή συμπεριφορά.

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

48 Όρια συστήματος Η νοητή διαχωριστική γραμμή που οριοθετεί (ξεχωρίζει) το σύστημα από το περιβάλλον του. Καθορισμός ορίων: 1. Έχει το συγκεκριμένο στοιχείο (ή δραστηριότητα) κάποια άμεση σχέση με τους στόχους του συστήματος; 2. Μπορεί το σύστημα να κάνει άμεσα κάτι για το συγκεκριμένο στοιχείο (ή δραστηριότητα);

49 Τι είναι Λογισμικό? Προγράμματα ηλεκτρονικού υπολογιστή / εντολές - όταν εκτελούνται επιτυγχάνουν επιθυμητά αποτελέσματα λειτουργίες και επιδόσεις Δομές δεδομένων επιτρέπουν στα προγράμματα να διαχειριστούν με επάρκεια πληροφορίες Κείμενα, διαγράμματα κτλ. περιγράφουν τη λειτουργία και χρήση των προγραμμάτων τεκμηρίωση των παραπάνω

50 Τι είναι Λογισμικό? Προγράμματα υπολογιστών και αντίστοιχη τεκμηρίωση Τα προϊόντα λογισμικού μπορεί να αναπτυχθούν για ένα συγκεκριμένο πελάτη ή μπορεί να αναπτυχθούν γενικά για την αγορά Τα προϊόντα λογισμικού μπορεί να είναι Generic έχουν αναπτυχθεί για να πωληθούν σε ένα εύρος διαφορετικών πελατών Bespoke (custom) έχουν αναπτυχθεί για ένα συγκεκριμένο πελάτη σύμφωνα με τις προδιαγραφές του

51 Κατασκευή λογισμικού Αντίστοιχη με την κατασκευή ενός τεχνικού έργου: Κατανόηση / Καταγραφή αναγκών & προβλημάτων Συστηματική εφαρμογή σειράς βημάτων Αξιολόγηση αποτελεσμάτων / ποιότητας

52 Τεχνικές κατασκευές και Λογισμικό Τεχνικές κατασκευές Έχουν υλική υπόσταση Περιγράφονται και γίνονται αντιληπτές με μοναδικό τρόπο Το λογισμικό είναι ιδεατή οντότητα - πολύπλοκο τεχνικό κατασκεύασμα Μη απτή φύση λογισμικού μόνο τα αποτελέσματα χρήσης του μπορούν να είναι αντιληπτά-ορατά Δεν περιγράφεται εύκολα και μοναδικά «Σκόπευση κινούμενου στόχου από κινούμενο έδαφος και με όπλο που συνεχώς αλλάζει τη συμπεριφορά του» Μεταβαλλόμενες απαιτήσεις χρηστών (ακόμη και μέσα στην ίδια την εφαρμόγή) Εξελισσόμενο περιβάλλον ανάπτυξης λογισμικού και υλικού Μεταβαλλόμενες μεθοδολογίες, εργαλεία, περιβάλλοντα ανάπτυξης και λειτουργίας λογισμικού

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

54 Απάντηση Ομοιότητες 1. Συγκεκριμένο περιοριστικό χρονοδιάγραμμα και προϋπολογισμός 2. Κατασκευή σε διακριτές φάσεις που σχετίζονται μεταξύ τους 3. Χρήση λεπτομερούς σχεδίου προκειμένου να γίνει η κατασκευή 4. Η διάταξη και αλληλοσύνδεση επιμέρους στοιχείων επηρεάζουν συνολική συμπεριφορά και εικόνα προς τους χρήστες 5. Οι απαιτήσεις τίθενται από τους χρήστες αυτών

55 Απάντηση Διαφορές 1. Ποιοτικά χαρακτηριστικά έργου οδοποιίας συνήθως ορατά με γυμνό μάτι 2. Η ευστάθεια και η διάρκεια στο χρόνο ενός έργου οδοποιίας απειλείται συνήθως από φυσικά φαινόμενα και όχι από φυσιολογική χρήση όπως το λογισμικό 3. Πολύ μικρή πιθανότητα αλλαγής απαιτήσεων πελάτη και εκκίνησης από μηδενική βάση σε έργο οδοποιίας 4. Σχέδια έργων οδοποιίας σαφή και ακολουθούν καθολικά αποδεκτό πρότυπο

56 Μύθοι σχετικά με το Λογισμικό Μύθοι του management Υπάρχουν στην εταιρεία πρότυπα και διαδικασίες για το χτίσιμο του λογισμικού. Άρα παρέχονται στους developers όλα όσα χρειάζεται να ξέρουν Η εταιρεία διαθέτει state-of-the-art συστήματα ανάπτυξης λογισμικού και το καλύτερο hardware Αν ένα έργο βγει από το χρονοπρογραμματισμό του μπορούμε να το επαναφέρουμε προσθέτοντας ανθρώπινους πόρους «Adding people to a late software project makes it later»

57 Μύθοι σχετικά με το Λογισμικό Μύθοι του πελάτη Μια γενική διατύπωση των στόχων είναι επαρκής για την αρχή της συγγραφής των προγραμμάτων. Οι λεπτομέρειες μπορούν να καθοριστούν αργότερα Οι διαρκώς μεταλλασσόμενες απαιτήσεις ενός έργου μπορούν να αντιμετωπιστούν εύκολα λόγω της ευελιξίας που έχει το λογισμικό

58 Μύθοι σχετικά με το Λογισμικό Μύθοι του προγραμματιστή Το έργο του προγραμματιστή τελειώνει τη στιγμή που θα εκτελεστεί το πρόγραμμα Δεν είναι δυνατό να εκτιμηθεί η ποιότητα έως ότου εκτελεστεί το πρόγραμμα Το μόνο παραδοτέο για ένα επιτυχημένο έργο είναι κώδικας που τρέχει Η τεχνολογία λογισμικού δημιουργεί τεράστια και άχρηστη τεκμηρίωση και σίγουρα επιβραδύνει τη διαδικασία

59 Βασικά σημεία κρίσης λογισμικού Εξαιρετικά δύσκολη διαδικασία κατασκευής όχι πάντα σαφές ποια βήματα πρέπει να γίνουν, με ποια σειρά, ενδιάμεσα προϊόντα Ανεπαρκής ή και κακή ποιότητα τελικού προϊόντος λάθη στην κατασκευή, μη ικανοποίηση σκοπού, δεν συμπεριφέρεται σύμφωνα με τις προδιαγραφές Μη τήρηση χρονοδιαγραμμάτων υπερβολικές και «αδικαιολόγητες» καθυστερήσεις Υπερβάσεις προϋπολογισμών κακές εκτιμήσεις κόστους, τελικά προϊόντα με πολλαπλάσιο κόστος από το αρχικό Μεγάλη δυσκολία και συνεπαγόμενο κόστος συντήρησης παρενέργειες μεταβολών σε στοιχεία που πριν λειτουργούσαν Σπάνια η προσαρμογή σε μεταβαλλόμενες απαιτήσεις Δύσκολη κατανόηση εγγράφων, σχεδίων κτλ από διαφορετικούς κατασκευαστές Ανακάλυψη σφαλμάτων μετά την παράδοση Δυσκολίες στην επικοινωνία μεταξύ των εμπλεκομένων

60 Παράγοντες αποτυχίας Απαιτήσεις: το έργο προχωράει OK αλλά παραδίδει ένα σύστημα το οποίο είναι μόνο μερικώς ή καθόλου χρήσιμο για τους χρήστες Διαχείριση έργου: το έργο καθυστερεί και/ή over budget Ποιότητα: το σύστημα παραδίδεται με πολλά μικρά bugs, και προβλήματα υπηρεσιών και χρηστικότητας, οπότε η κοινότητα χρηστών στην πράξη δεν μπορεί να το χρησιμοποιήσει, αν και αντιμετωπίζει τα προβλήματά της Τεχνική βλάβη (σπάνια): οι μηχανικοί δεν μπορούν να προγραμματίσουν το σύστημα κατά τέτοιο τρόπο ώστε να λειτουργεί Εξωτερικές συνθήκες: υπάρχει μια αλλαγή στο περιβάλλον του έργου (όπως οικονομική κρίση, ή αλλαγή αγοράς) με άσχημες επιπτώσεις για το έργο Οποιοσδήποτε συνδυασμός των παραπάνω

61 Κόστος αλλαγών

62 Η κρίση του λογισμικού σε αριθμούς Ποσοστά επιτυχούς ανάπτυξης έργου στις ΗΠΑ: 29% όσον αφορά στον προϋπολογισμό, λειτουργικότητα, έγκαιρη υλοποίηση Σοβαρά προβλήματα: 53% Ολοκληρωτική αποτυχία: 18% Λαμβάνοντας υπόψη το κόστος (budget) <$750,000: επιτυχία = 55% >$10,000,000 : επιτυχία = 0% Αγγλία (δημόσιος τομέας): 84% μερική ή ολική αποτυχία Συνολική εκτίμηση: 20-30% έργα είναι ολικές αποτυχίες H αποτυχία ανάπτυξης μεγάλων και πολύπλοκων πληροφοριακών συστημάτων είναι σε μεγάλο βαθμό αναπόφευκτη Source: DangerousEnthusiams: Gauldand Goldfinch

63 Η κρίση του λογισμικού σε αριθμούς Η.Π.Α., 1979: Από έργα 6.8 Μ$ 47% πληρώθηκε αλλά δεν παραδόθηκε προς χρήση 29% παραδόθηκε αλλά δεν χρησιμοποιήθηκε 19% τροποποιήθηκε μετά την παράδοση 3% χρησιμοποιήθηκε με μικρές αλλαγές 2% χρησιμοποιήθηκε όπως παραδόθηκε

64 Παραδείγματα Αρχές '90: Therac-25, σύστημα ελέγχου ακτινοβόλησης ασθενών: Κακή σχεδίαση του λογισμικού: Θάνατος αρκετών ασθενών από υπερβολικές δόσεις ακτινοβολίας 4/6/1996: Καταστροφή πυραύλου Arian-5 μετά από εκτροπή από την πορεία του Σφάλμα λογισμικού (προδιαγραφών) παρά τον προτυποποιημένο σχεδιασμό και ανάπτυξη Κόστος >> 500 Μ$

65 Ορισμός μία άποψη? ΟΧΙ Τεχνολογία Λογισμικού είναι η περιοχή εκείνη της επιστήμης της μηχανικής η οποία ασχολείται με την εύρεση και θεμελίωση μεθόδων για την παραγωγή (περιγραφή, κατασκευή και συντήρηση) λογισμικού που ικανοποιεί τις προδιαγραφές του, με την καλύτερη δυνατή ποιότητα παραδίδεται μέσα σε προδιαγεγραμμένα χρονικά όρια και το κόστος ανάπτυξής του βρίσκεται μέσα σε προδιαγεγραμμένα όρια. Σε αντίθεση με το: «Προγραμματισμός είναι η επιστήμη/τέχνη/μαγεία συγγραφής προγραμμάτων που δεν είναι να δυνατό να κατανοηθούν και να συντηρηθούν από κανέναν άλλον πέρα από το συγγραφέα τους».

66 Τι είναι η Τεχνολογία Λογισμικού? Software engineering is an engineering discipline which is concerned with all aspects of software production Οι μηχανικοί λογισμικού πρέπει να Υιοθετούν μία συστηματική και οργανωμένη προσέγγιση στη δουλειά τους Χρησιμοποιούν κατάλληλα εργαλεία και τεχνικές που εξαρτώνται από Το πρόβλημα που πρέπει να επιλυθεί, Τους περιορισμούς ανάπτυξης, και Τους διαθέσιμους πόρους

67 Σημαντικά χαρακτηριστικά λογισμικού & διαδικασίας κατασκευής Ποιότητα Αυτοματοποίηση Παραγωγικότητα Κόστος παραγωγής και συντήρησης ΑΛΛΑ Αντίθετες έννοιες! ΕΠΟΜΕΝΩΣ Ισορροπία μεγεθών

68 Τι περιλαμβάνεται στην ΤΛ? Καθορισμός ενεργειών και ακολουθία με την οποία αυτές γίνονται (software process) Περιγραφή με σαφή και κατανοητό τρόπο των προϊόντων που παράγονται κατά την εκτέλεση των ενεργειών

69 Φάσεις ανάπτυξης λογισμικού 1. Διερεύνηση 2. Ανάλυση απαιτήσεων (λειτουργικές απαιτήσεις) 3. Σχεδιασμός του συστήματος (προδιαγραφές συστήματος) 4. Υλοποίηση (κωδικοποίηση) 5. Έλεγχος 6. Εγκατάσταση 7. Λειτουργία (χρήση) Συντήρηση του συστήματος 8. Απόσυρση

70 Τελικό παραδοτέο προϊόν ενέργειας ανάπτυξης λογισμικού «Εκτελέσιμος κώδικας»: σύνολο εντολών άμεσα εκτελέσιμων από έναν Η/Υ κάτω από συγκεκριμένες (και γνωστές εκ των προτέρων) προϋποθέσεις + Υλικό τεκμηρίωσης!!! Το σύνολο αυτών των εντολών αποτελεί περιγραφή τρόπου εκτέλεσης των εργασιών που αυτοματοποιούνται με τη χρήση εφαρμογής λογισμικού

71 Τροποποιήσεις στο λογισμικό Διόρθωση σφαλμάτων Βελτιστοποίηση απόδοσης «Το καλό μπορεί να γίνει πάντα καλύτερο» Αυτοματοποίηση εκτέλεσης νέων εργασιών Ενσωμάτωση μεταβολών που οφείλονται σε αλλαγές που συμβαίνουν στον πραγματικό κόσμο Συντήρηση Λογισμικού (software maintenance)

72 Ο ρόλος του Τεχνολόγου Λογισμικού Επιστήμη υπολογιστών Πελάτης Θεωρίες Λειτουργίες υπολογιστή Πρόβλημα Σχεδιασμός & Ανάπτυξη Λογισμικού Εργαλεία & τεχνικές για την επίλυση προβλημάτων

73 ΠΡΟΒΛΗΜΑ Επίλυση προβλημάτων Ανάλυση Υποπρόβλη μα 1 Υποπρόβλημα 2 Υποπρ όβλημα 3 Υποπρό βλημα 4 Λύση 1 Λύση 2 Λύση 3 Λύση 4 Σύνθεση ΛΥΣΗ

74 Το οπλοστάσιο της Τεχνολογίας Λογισμικού Ανάλυση και Σύνθεση του προβλήματος Σπάσιμο του προβλήματος σε επιμέρους μικρότερα προβλήματα Λύση των μικρότερων επιμέρους προβλημάτων «Συναρμολόγηση» λύσης με χρήση των επιμέρους λύσεων Μέθοδοι ή Τεχνικές: Τυπικές ακολουθίες βημάτων (σωστός χρονισμός και σωστά συστατικά...) Εργαλεία: Βοηθήματα ή αυτοματοποιημένα συστήματα για την αυτόματη εφαρμογή μεθόδων/τεχνικών Διαδικασίες: Συνδυασμός μεθόδων και εργαλείων (συνταγή...) Πρότυπα/Υποδείγματα: Γενικές περιγραφές, προσέγγιση, φιλοσοφία (γαλλική, κινέζικη κουζίνα...)

75 Κύκλος ζωής λογισμικού Όλες οι φάσεις από τις οποίες διέρχεται το λογισμικό (software life cycle) Η Τεχνολογία Λογισμικού δεν ασχολείται μόνο με την κατασκευή, ΑΛΛΑ με ολόκληρο τον κύκλο ζωής λογισμικού Δηλ. από τη σύλληψη της ιδέας κατασκευής μιας εφαρμογής λογισμικού μέχρι την απόσυρση αυτής από τη χρήση

76 Λογισμικό ως μέρος συστημάτων Το λογισμικό αποτελεί εσωτερικό συστατικό ενός τεχνητού μη υπολογιστικού συστήματος Το λογισμικό λειτουργεί αυτοτελώς σε ένα υπολογιστικό σύστημα

77 Λογισμικό μέρος του συστήματος ΣΥΣΤΗΜΑ ΛΟΓΙΣΜΙΚΟ ΧΡΗΣΤΗΣ Υ/Σ 1 Υ/Σ 2 Υ/Σ Ν Ο χρήστης αλληλεπιδρώντας με τα συστήματα, χρησιμοποιεί λογισμικό χωρίς να έχει άμεση αντίληψη του γεγονότος αυτού

78 Παραδείγματα Μηχανές αυτόματης πώλησης Αυτόματο ανταλλακτήριο συναλλάγματος Αυτόματος κλιματισμός χώρου Σύστημα ελέγχου ανελκυστήρα Συσκευή video, audio CD και λοιπά ψηφιακά ηχητικά μηχανήματα Κινητό τηλέφωνο Ηλεκτρικό κάθισμα αυτοκινήτου με μνήμες Συστήματα χρονομέτρησης αγώνων Ιατρικά μηχανήματα ανάλυσης και απεικόνισης Συστήματα ελέγχου εναέριας κυκλοφορίας Σύνθετα συστήματα

79 Λογισμικό λειτουργεί αυτοτελώς στο υπολογιστικό σύστημα Αποτελεί με τη ΛΕΙΤΟΥΡΓΙΚΗ και όχι με τη δομική έννοια μέρος ενός ευρύτερου συστήματος/περιβάλλοντος από το οποίο προσδιορίζεται και το οποίο με τη σειρά του επηρεάζει

80 Το λογισμικό στο περιβάλλον του

81 Λογισμικό ως προϊόν Λογισμικό συστήματος Λογισμικό εφαρμογών

82 Λογισμικό συστήματος Το λογισμικό χωρίς το οποίο δεν είναι δυνατή η λειτουργία ενός Η/Υ Λειτουργικά συστήματα γενικής χρήσης MS Windows Linux OS 32 DOS Λογισμικό προγραμματισμού αυτόματων ελεγκτών

83 Λογισμικό εφαρμογών Όλες οι υπόλοιπες περιπτώσεις! Επιχειρηματικές εφαρμογές Εφαρμογές πραγματικού χρόνου Επιστημονικές εφαρμογές Εκπαιδευτικές εφαρμογές Εφαρμογές προσωπικής χρήσης Εφαρμογές τεχνητής νοημοσύνης

84 Τρίγωνο επιτυχίας/αποτυχίας Εμπλεκόμενοι Μεθοδολογία Γλώσσα Μοντελοποίησης και Εργαλεία

85 Εμπλεκόμενοι (δικαιούχοι) Οι άνθρωποι που έχουν ένα ρόλο στο έργο: Πελάτες (χρήστες και ιδιοκτήτες συστήματος) Κατασκευαστές (αναλυτές, σχεδιαστές, προγραμματιστές) Τα Πληροφοριακά Συστήματα είναι κοινωνικά συστήματα (social systems): Αναπτύσσονται από ανθρώπους (κατασκευαστές) για ανθρώπους (πελάτες) Οι αιτίες αποτυχίας λογισμικού οφείλονται κυρίως στον ανθρώπινο παράγοντα Είτε του πελάτη, ή του κατασκευαστή

86 Μεθοδολογία Ορίζει και οργανώνει τις δραστηριότητες παραγωγής και συντήρησης λογισμικού Μια μεθοδολογία (ή αλλιώς μοντέλο διαδικασίας (process model)): Ορίζει τη σειρά των εργασιών και δραστηριοτήτων Καθορίζει ποια τεχνουργήματα (artifacts) πρέπει να παραδοθούν και πότε Αναθέτει εργασίες και τεχνουργήματα στους κατασκευαστές Προσφέρει κριτήρια για την παρακολούθηση και μέτρηση της προόδου του έργου Δεν επιδέχεται αυστηρής τυποποίησης / αυτοματοποίησης

87 Γλώσσα μοντελοποίησης και Εργαλεία Τα τεχνουργήματα πρέπει να συνοδεύονται από τεκμηρίωση (documentation) και να είναι επικοινωνιακά (εύκολα κατανοήσιμα) UML (Unified Modeling Language) Γενικού σκοπού οπτική (γραφική) γλώσσα μοντελοποίησης που χρησιμοποιείται για την προδιαγραφή, οπτικοποίηση, κατασκευή και τεκμηρίωση των τεχνουργημάτων ενός συστήματος λογισμικού CASE (Computer-Assisted Software Engineering) tools Επιτρέπουν την κατασκευή, αποθήκευση και ανάκτηση μοντέλων σε ένα κεντρικό αποθηκευτικό χώρο και τη γραφική και κειμενική επεξεργασία τους στην οθόνη του επεξεργαστή

88 Λογισμικό ως προϊόν... Επιβάλλει τη διατύπωση ενός συνόλου κανόνων και διαδικασιών ανάπτυξης που να ισορροπούν μεταξύ: Τεχνικής ορθότητας Οικονομικής εφικτότητας Η ανάπτυξη λογισμικού πρέπει να γίνεται σε «λογικό» χρόνο έτσι ώστε είσοδος στην αγορά όταν έχουμε υψηλή ζήτηση, ΑΡΑ κέρδη στον κατασκευαστή

89 Ανάγκη για «καλό λογισμικό» Αυτονόητη και επιτακτική διότι... Ο ρόλος των υπολογιστών... Στην οικονομία και την παραγωγή Στην ενημέρωση και την ψυχαγωγία Στην εκπαίδευση και αλλού... εκπληρώνεται μόνο με Λογισμικό το οποίο: Κάνει σωστά τη δουλειά του... παράγεται με λογικό κόστος,... σε λογικό χρόνο,... και είναι καλής ποιότητας

90 Ανάγκη για «καλό λογισμικό» Εξαρτάται από την εφαρμογή Παιχνίδια vs. mission-critical συστήματα Εξαρτάται από την οπτική: Ποιότητα προϊόντος Ποιότητα διαδικασίας Ποιότητα στα πλαίσια του επιχειρηματικού περιβάλλοντος

91 Ποιότητα προϊόντος Άποψη χρηστών με βάση τη λειτουργικότητα, τις αστοχίες, την ευκολία χρήσης Άποψη δημιουργών με βάση τα εσωτερικά χαρακτηριστικά Μοντέλα συσχέτισης της άποψης των χρηστών με αυτή των δημιουργών

92 Ποιότητα διαδικασίας Ποιότητα της διαδικασίας ανάπτυξης και συντήρησης εξίσου σημαντική και αλληλένδετη με την τελική ποιότητα του προϊόντος Μοντελοποίηση και βελτιστοποίηση της διαδικασίας Πού/πότε συναντάται συγκεκριμένο είδος ελαττώματος; Πώς μπορούν ελαττώματα να εντοπιστούν νωρίς στη διαδικασία ανάπτυξης; Πώς μπορούμε να ενσωματώσουμε ανοχή σε σφάλματα; Εναλλακτικές για τη βελτιστοποίηση της διαδικασίας χωρίς βλάβη της ποιότητας;

93 Ποιότητα ως προς το επιχειρηματικό περιβάλλον Απόδοση επένδυσης με βάση: Το χρηματικό κόστος (κυβερνήσεις) μείωση λειτουργικών δαπανών εξοικονόμηση ποσών Την απαιτούμενη προσπάθεια (εταιρείες) Εκπαίδευση Χρονοδιάγραμμα Κίνδυνος Παραγωγικότητα Ποιότητα

94 Ανάγκη για «καλό λογισμικό» Επιπλέον... Το Λογισμικό θα πρέπει να έχει τα εξής χαρακτηριστικά: Συντηρησιμότητα: ακολουθεί-εξελίσσεται για να ανταποκρίνεται στις μεταβαλλόμενες απαιτήσεις των πελατών Φερεγγυότητα: περιλαμβάνει σύνολο χαρακτηριστικών όπως αξιοπιστία, προστασία από εξωτερικούς κινδύνους και ασφάλεια δεν προκαλεί υλικές ή οικονομικές ζημιές σε περίπτωση αστοχίας συστήματος Αποδοτικότητα: χρησιμοποιεί αποδοτικά τους πόρους του συστήματος μνήμη, CPU κτλ Ευχρηστία: μπορεί να χρησιμοποιείται άνετα από τους χρήστες για τους οποίους σχεδιάστηκε κατάλληλο user interface και documentation Αποδοχή: Το λογισμικό πρέπει να είναι αποδεκτό από τους χρήστες για τους οποίους σχεδιάστηκε. Δηλαδή πρέπει να είναι κατανοητό, εύχρηστο και συμβατό με άλλα συστήματα.

95 Βασικές προκλήσεις για την ΤΛ Ετερογένεια πρόκληση για την ανάπτυξη τεχνικών για κατασκευή φερέγγυου λογισμικού αρκετά ευέλικτο έτσι ώστε να αντιμετωπίζει την ετερογένεια Χρόνος παράδοσης πρόκληση για τη μείωση χρόνων παράδοσης για μεγάλα και πολύπλοκα έργα χωρίς συμβιβασμό στην ποιότητα Εμπιστοσύνη πρόκληση για την ανάπτυξη τεχνικών οι οποίες επιδεικνύουν ότι μπορούν να εμπιστευτούν το συγκεκριμένο λογισμικό οι χρήστες του Υπάρχοντα συστήματα παλαιά, σημαντικά συστήματα πρέπει να συντηρηθούν και να ενημερωθούν

96 Συστατικά στοιχεία Λογισμικού ΟΧΙ μόνο ο εκτελέσιμος κώδικας Πηγαίος κώδικας, βιβλιοθήκες Προδιαγραφές, εκθέσεις, αναφορές, κείμενα γενικά Σχέδια Διαγράμματα Επομένως ΟΛΑ τα προϊόντα που παράγονται κατά την ανάπτυξη του λογισμικού, τα οποία αποτελούν αναπόσπαστο μέρος αυτού

97 Τεκμηρίωση λογισμικού Περιγραφή δομής και συμπεριφοράς λογισμικού ΟΧΙ γιατί το λογισμικό εκτελεί κάποιες εργασίες ή γιατί τις εκτελεί έτσι ΑΛΛΑ Ποιες εργασίες εκτελεί Πώς εκτελεί τις εργασίες Ποιες δομές δεδομένων χρησιμοποιούνται

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

99 Πρότυπα??? Πλήθος συμβόλων, τίτλων, ορισμών... Πολλές μεθοδολογίες, γλώσσες, εργαλεία Χρήση από κατασκευαστές δικών τους άτυπων συμβολισμών και δομών ΓΙΑΤΙ? Αρχική ανωριμότητα σε κάθε νέο ερευνητικό πεδίο Ανταγωνισμός για εμπορική επικράτηση ΙΕΕΕ Institute of Electrical and Electronics Engineers

100 Συνοψίζοντας... Τεχνολογία Λογισμικού είναι η περιοχή εκείνη της επιστήμης της μηχανικής που ασχολείται με την εύρεση και θεμελίωση μεθόδων για την περιγραφή, κατασκευή και συντήρηση λογισμικού καλής ποιότητας με τη μεγαλύτερη δυνατή αυτοματοποίηση και παραγωγικότητα και το ελάχιστο δυνατό κόστος Το Λογισμικό δεν περιγράφεται εύκολα...

101 Πηγές Ε. Κιουντούζης, Μεθοδολογίες Ανάλυσης και Σχεδιασμού Πληροφοριακών Συστημάτων,Εκδόσεις Α.Σταμούλη, Αθήνα 2002 Γιάννης Τζίτζικας. Ανάλυση και Σχεδίαση Πληροφοριακών Συστημάτων, Πανεπιστήμιο Κρήτης Shari Lawrence Pfleeger. Τεχνολογία Λογισμικού: Θεωρία και Πράξη, Κλειδάριθμος, Αθήνα Leszek A. Maciaszek, Requirements Analysis and System Design (2nd edition), Addison Wesley, 2005 A.Dennis, B. Haley Wixom, D. Tegarden, Systems Analysis and Design with UML Version 2.0 (2nd edition) Wiley, 2005 Αφροδίτη Τσαλγατίδου. Εισαγωγή στη UML, Καποδιστριακό Πανεπιστήμιο Αθηνών Ιωάννης Γαβιώτης. Πληροφοριακά Συστήματα Μοντελοποίηση με UML, Πανεπιστήμιο Αιγαίου Αντικειμενοστρεφής Ανάπτυξη Λογισμικού με τη UML, επιμέλεια Π. Φιτσιλής, Κλειδάριθμος 2006 Martin Fowler, Εισαγωγή στη UML, Κλειδάριθμος, Αθήνα, 2004 Β. Βεσκούκης «Τεχνολογία Λογισμικού Ι», ΕΑΠ, ΠΑΤΡΑ, 2000 Χ. Αντωνόπουλος «Ανάπτυξη και Σχεδίαση Λογισμικού», Τμήμα Μηχ. Η/Υ, Τηλεπικοινωνιών και Δικτύων, Παν. Θεσσαλίας, 2007 I. Sommerville, «Βασικές αρχές Τεχνολογίας Λογισμικού», 8η αγγλική έκδοση (μετάφραση, εκδ. Κλειδάριθμος) Roger S. Pressman. Software Engineering - A Practitioner's Approach. McGraw-Hill, 8th edition, 2018 Leon S. Sterling and Kuldar Taveter, The art of agent-oriented modeling, The MIT Press, Cambridge, Massachusetts, London, England, 2009.

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

Τεχνολογία Λογισμικού Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού 2/10/2017 Διδάσκοντες: Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Εργαστήριο: Ελευθερία Στουγιάννου Μέλος ΕΔΙΠ estoug@unipi.gr

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

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 3/10/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Πρακτικά Θέματα Διαλέξεις Δευτέρα 11:15-14:00,

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

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 21/11/2016. Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια.

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

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

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

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420) Διάλεξη 1: Εισαγωγή Βασικές Έννοιες Εσείς; 2 Έτος; Background; Τι περιμένετε από το μάθημα; Περιεχόμενο Μαθήματος 3 Εισαγωγή Σημασία και βασικές έννοιες της Τεχνολογίας

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

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

Εισαγωγή στην τεχνολογία λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 1 Εισαγωγή στην τεχνολογία λογισμικού Στόχοι Έννοια της τεχνολογίας λογισμικού (ΤΛ) και ερμηνεία της σημασίας της Απαντήσεις σε θεμελιώδεις ερωτήσεις για την ΤΛ Ανάδειξη ηθικών και επαγγελματικών ζητημάτων

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

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

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

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

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων 14/11/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Class Diagrams Διαγράμματα Κλάσεων Άξονες

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

Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού

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

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

Σκοπός του μαθήματος

Σκοπός του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εισαγωγή Βασικές Έννοιες Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Σκοπός του μαθήματος Η απόκτηση των γνώσεων

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Εισαγωγή στην Τεχνολογία Λογισμικού Εισαγωγή στην Τεχνολογία Λογισμικού περιεχόμενα παρουσίασης Αντικείμενο της Τεχνολογίας Λογισμικού Η ανάπτυξη λογισμικού Μοντέλα διαδικασίας λογισμικού τεχνολογία λογισμικού Κλάδος της πληροφορικής που

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

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

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

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

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

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

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

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

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

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

Πληροφορική 2. Τεχνολογία Λογισμικού

Πληροφορική 2. Τεχνολογία Λογισμικού Πληροφορική 2 Τεχνολογία Λογισμικού 1 2 Κρίση Λογισμικού (1968) Στην δεκαετία του 1970 παρατηρήθηκαν μαζικά: Μεγάλες καθυστερήσεις στην ολοκλήρωση κατασκευής λογισμικών Μεγαλύτερα κόστη ανάπτυξης λογισμικού

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

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

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

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

Σχεδιαστικά Προγράμματα Επίπλου

Σχεδιαστικά Προγράμματα Επίπλου Σχεδιαστικά Προγράμματα Επίπλου Καθηγήτρια ΦΕΡΦΥΡΗ ΣΩΤΗΡΙΑ Τμήμα ΣΧΕΔΙΑΣΜΟΥ & ΤΕΧΝΟΛΟΓΙΑΣ ΞΥΛΟΥ - ΕΠΙΠΛΟΥ Σχεδιαστικά Προγράμματα Επίπλου Η σχεδίαση με τον παραδοσιακό τρόπο απαιτεί αυξημένο χρόνο, ενώ

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

Κεφάλαιο 7: Τεχνολογία Λογισμικού

Κεφάλαιο 7: Τεχνολογία Λογισμικού Κεφάλαιο 7: Τεχνολογία Λογισμικού Η Επιστήμη των Υπολογιστών: Μια Ολοκληρωμένη Παρουσίαση (δέκατη αμερικανική έκδοση) J. Glenn Brookshear Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

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

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

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

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

Διάλεξη 1. Εισαγωγή στην Τεχνολογία Λογισμικού. Χ. Αντωνόπουλος Μ. Μπίμπη

Διάλεξη 1. Εισαγωγή στην Τεχνολογία Λογισμικού. Χ. Αντωνόπουλος Μ. Μπίμπη Διάλεξη 1 Εισαγωγή στην Τεχνολογία Λογισμικού 1 Δομή Μαθήματος Εισαγωγή Μοντέλα διεργασιών ανάπτυξης λογισμικού Διαχείριση έργων λογισμικού Το μοντέλο CoCoMo Εξαγωγή απαιτήσεων Περιπτώσεις χρήσης Μοντέλα

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

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

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

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

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

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

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

Εισαγωγή στην Τεχνολογία Λογισμικού. Ματίνα Μπίμπη Τμήμα Μηχανικών Η/Υ Τηλεπικοινωνιών & Δικτύων, Πανεπιστήμιο Θεσσαλίας

Εισαγωγή στην Τεχνολογία Λογισμικού. Ματίνα Μπίμπη Τμήμα Μηχανικών Η/Υ Τηλεπικοινωνιών & Δικτύων, Πανεπιστήμιο Θεσσαλίας Διάλεξη 1 Εισαγωγή στην Τεχνολογία Λογισμικού 1 Περιεχόμενα Η σημασία της Τεχνολογίας Λογισμικού Το ιστορικό της Τεχνολογίας Λογισμικού Η έννοια του «καλού λογισμικού» Προσέγγιση από πλευράς συστήματος

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

Θέματα ποιότητας (1/5)

Θέματα ποιότητας (1/5) Θέματα ποιότητας (1/5) Καλό λογισμικό ποιότητα Ποιότητα: Προϊόντος Σε σχέση με διεργασίες του επιχειρηματικού περιβάλλοντος 1 Θέματα ποιότητας (2/5) Άποψη χρηστών με βάση τη λειτουργικότητα, τις αστοχίες,

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

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

ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Μεθοδολογίες Ανάπτυξης Συστημάτων Πληροφορικής Απαντούν στα εξής ερωτήματα Ποιά βήματα θα ακολουθηθούν? Με ποιά σειρά? Ποιά τα παραδοτέα και πότε? Επομένως,

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

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εργαλεία CASE Computer Assisted Systems Engineering Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2011-2012 1 Εργαλεία CASE

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

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

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

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

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Επιχειρηματική Μοντελοποίηση. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

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

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

Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού

Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού Ενότητα 2- Οι αρχές της agile προσέγγισης Δρ. Δημήτριος Τσέλιος Καθηγητής Εφαρμογών Τμήμα Μηχανικών Πληροφορικής Τ.Ε.- ΤΕΙ Θεσσαλίας Μεταπτυχιακό Πρόγραμμα

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

Εισαγωγή στη Δασική Πληροφορική

Εισαγωγή στη Δασική Πληροφορική ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Εισαγωγή στη Δασική Πληροφορική Ενότητα 3: Θεωρία, Ανάλυση και Σχεδιασμός Πληροφοριακών Συστημάτων Ζαχαρούλα Ανδρεοπούλου Δασολογίας &

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

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

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

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

Σημειώσεις στο μάθημα «Στοιχεία Προγραμματισμού σε Γραφικό Περιβάλλον»

Σημειώσεις στο μάθημα «Στοιχεία Προγραμματισμού σε Γραφικό Περιβάλλον» 1. Κύκλος ζωής λογισμικού Ο κύκλος ζωής λογισμικού είναι οι φάσεις (τα στάδια) από τις οποίες διέρχεται μία εφαρμογή λογισμικού, από την σύλληψη της ιδέας, τη διαδικασία κατασκευής / ανάπτυξης, τη λειτουργία

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

Κεφάλαιο 4: Λογισμικό Συστήματος

Κεφάλαιο 4: Λογισμικό Συστήματος Κεφάλαιο 4: Λογισμικό Συστήματος Ερωτήσεις 1. Να αναφέρετε συνοπτικά τις κατηγορίες στις οποίες διακρίνεται το λογισμικό συστήματος. Σε ποια ευρύτερη κατηγορία εντάσσεται αυτό; Το λογισμικό συστήματος

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

Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ

Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ Εισαγωγή στις Αρχές της Επιστήμης των ΗΥ 2.3.1.1. Παπαγιάννη Νάσια Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών ΕΜΠ 1 περιλαμβάνει: Η έννοια του προγράμματος Επίλυση προβλήματος 1. Ακριβή προσδιορισμό

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

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

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

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

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΑΛΓΟΡΙΘΜΟΥΣ ΚΑΙ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Διδάσκουσα Δρ Β Καβακλή Χειμερινό Εξάμηνο 2001 Στόχοι του Μαθήματος! Ανάπτυξη αναλυτικής

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

Μοντελοποίηση δεδομένων με UML Χρήση σε πολυμεσικές εφαρμογές

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

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

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

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

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

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Rational Unified Process Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική Θεσσαλονίκη, Σεπτέμβριος 2013 ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

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

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

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

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

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

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

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

8 Τεχνικός Εφαρμογών Πληροφορικής με Πολυμέσα

8 Τεχνικός Εφαρμογών Πληροφορικής με Πολυμέσα Περιεχόμενα Πρόλογος... 9 Κεφάλαιο 1: Δομή και λειτουργία του υπολογιστή... 11 Κεφάλαιο 2: Χρήση Λ.Σ. DOS και Windows... 19 Κεφάλαιο 3: Δίκτυα Υπολογιστών και Επικοινωνίας... 27 Κεφάλαιο 4: Unix... 37

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

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Τεχνολογία Λογισμικού. Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Τεχνολογία Λογισμικού Ενότητα 1: Εισαγωγή στην UML Καθηγητής Εφαρμογών Ηλίας Γουνόπουλος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative

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

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

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

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

ΚΕΦΑΛΑΙΟ 1 ΓΝΩΡΙΜΙΑ ΜΕ ΤΗΝ ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ. Σκοπός. Προσδοκώμενα αποτελέσματα. Έννοιες-κλειδιά

ΚΕΦΑΛΑΙΟ 1 ΓΝΩΡΙΜΙΑ ΜΕ ΤΗΝ ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ. Σκοπός. Προσδοκώμενα αποτελέσματα. Έννοιες-κλειδιά ΚΕΦΑΛΑΙΟ 1 ΓΝΩΡΙΜΙΑ ΜΕ ΤΗΝ ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Σκοπός Σκοπός του κεφαλαίου αυτού είναι ο ορισμός της έννοιας του λογισμικού, η τοποθέτησή του μέσα στις δραστηριότητες των οποίων η εκτέλεση πραγματοποιείται

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

Σχεδιαστής Ιστοσελίδων

Σχεδιαστής Ιστοσελίδων Σχεδιαστής Ιστοσελίδων 1. Περιγραφή Ρόλου Τίτλος Προφίλ Σχεδιαστής Ιστοσελίδων Γνωστό και ως Συνοπτική Ένας σχεδιαστής ιστοσελίδων κατασκευάζει και ενημερώνει ιστοσελίδες ως προς τη σχεδίαση και τη διαμόρφωση

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

Περιεχόμενο του μαθήματος

Περιεχόμενο του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Απαιτήσεις Λογισμικού Περιπτώσεις χρήσης Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Περιεχόμενο του μαθήματος

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

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

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

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

Προγραμματισμός Η/Υ. Προτεινόμενα θέματα εξετάσεων Εργαστήριο. Μέρος 1 ό. ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής

Προγραμματισμός Η/Υ. Προτεινόμενα θέματα εξετάσεων Εργαστήριο. Μέρος 1 ό. ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής Προγραμματισμός Η/Υ Προτεινόμενα θέματα εξετάσεων Εργαστήριο Μέρος 1 ό ΤΕΙ Λάρισας- Σχολή Τεχνολογικών Εφαρμογών Τμήμα Πολιτικών Έργων Υποδομής Ιανουάριος 2011 Καλογιάννης Γρηγόριος Επιστημονικός/ Εργαστηριακός

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

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

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ. Ενότητα 1 η : Ανάπτυξη Λογισμικού & Προγραμματισμός

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ. Ενότητα 1 η : Ανάπτυξη Λογισμικού & Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Προγραμματισμός Η/Υ Ενότητα 1 η : Ανάπτυξη Λογισμικού & Προγραμματισμός Ι. Ψαρομήλιγκος Χ. Κυτάγιας Τμήμα Λογιστικής & Χρηματοοικονομικής

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

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

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

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

Τεχνολογία Λογισμικού & Ανάλυση Συστημάτων

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

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

Έγγραφο Περιγραφής Απαιτήσεων Λογισμικού

Έγγραφο Περιγραφής Απαιτήσεων Λογισμικού Ιστορικό Ημερομηνία Έκδοση Περιγραφή Συγγραφέας Σελ. 2 Πίνακας Περιεχομένων 1. Εισαγωγή xx

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

Συστήµατα Τηλεκπαίδευσης: Κύκλος ζωής εκπαιδευτικού υλικού

Συστήµατα Τηλεκπαίδευσης: Κύκλος ζωής εκπαιδευτικού υλικού 1 Συστήµατα Τηλεκπαίδευσης: Κύκλος ζωής εκπαιδευτικού υλικού Τµήµα Διοίκησης Επιχειρήσεων Τει Δυτικής Ελλάδας Μεσολόγγι Δρ. Α. Στεφανή Διάλεξη 3 Το Εκπαιδευτικό Υλικό Το Εκπαιδευτικό Υλικό, έχει έντυπη

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

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι Λειτουργικά Συστήματα 1 Λογισμικό του Υπολογιστή Για να λειτουργήσει ένας Η/Υ εκτός από το υλικό του, είναι απαραίτητο και το λογισμικό Το σύνολο των προγραμμάτων που συντονίζουν τις λειτουργίες του υλικού

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

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

ΣΥΝΘΕΣΗ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΟΜΑΔΩΝ ΠΑΡΑΓΩΓΗΣ ΕΦΑΡΜΟΓΩΝ ΠΟΛΥΜΕΣΩΝ ΣΥΝΘΕΣΗ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΟΜΑΔΩΝ ΠΑΡΑΓΩΓΗΣ ΕΦΑΡΜΟΓΩΝ ΠΟΛΥΜΕΣΩΝ Εργασία στην Ενότητα Πληροφορική-Πολυμέσα του ΜΠΣ «Γραφικές Τέχνες Πολυμέσα» του ΕΑΠ Μ. Μαργαριτόπουλος ΠΕΡΙΕΧΟΜΕΝΑ ΠΑΡΟΥΣΙΑΣΗΣ Σκοπός παρουσίασης

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

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

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

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

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ MANAGEMENT INFORMATION SYSTEMS (M.I.S.)

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ MANAGEMENT INFORMATION SYSTEMS (M.I.S.) ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ MANAGEMENT INFORMATION SYSTEMS (M.I.S.) 1.1 Κωνσταντίνος Ταραμπάνης Καθηγητής Τμήμα Οργάνωσης και Διοίκησης Επιχειρήσεων Πανεπιστήμιο Μακεδονίας Γρ. 307 2310-891-578 kat@uom.gr

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

Εισαγωγή στην. Γιάννης Σμαραγδάκης

Εισαγωγή στην. Γιάννης Σμαραγδάκης Εισαγωγή στην Τεχνολογία Λογισμικού Γιάννης Σμαραγδάκης Γιατί μελετάμε την Τεχνολογία Λογισμικού Λογισμικό υπάρχει παντού σε όλους τους τεχνικούς τομείς (π.χ. αεροδιαστημική) σε όλες τις επιστήμες στον

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

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

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Μάθημα 10: Ανάπτυξη ΠΣ Μαρίνος Θεμιστοκλέους Email: mthemist@unipi.gr Ανδρούτσου 150 Γραφείο 206 Τηλ. 210 414 2723 Ώρες Γραφείου: Δευτέρα 11-12 πμ Ενδεικτικά Περιεχόμενα Εργασίας

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

. Μεθοδολογία Προγραμματισμού. Εισαγωγή. Νικόλαος Πεταλίδης. Εισαγωγή Εαρινό Εξάμηνο 2014

. Μεθοδολογία Προγραμματισμού. Εισαγωγή. Νικόλαος Πεταλίδης. Εισαγωγή Εαρινό Εξάμηνο 2014 .. Μεθοδολογία Προγραμματισμού Νικόλαος Πεταλίδης Τμήμα Μηχανικών Η/Υ ΤΕΙ Κεντρικής Μακεδονίας Εαρινό Εξάμηνο 2014 Ν. Πεταλίδης (ΤΕΙ Κεντρικής Μακεδονίας) Μεθοδολογία Προγραμματισμού 1 / 24 Μεθοδολογία

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

Προγραμματισμός και Επιλογή Συστημάτων

Προγραμματισμός και Επιλογή Συστημάτων Ενότητα 4 Προγραμματισμός και Επιλογή Συστημάτων Πληροφοριακά Συστήματα Διοίκησης ΙI Νίκος Καρακαπιλίδης 4-1 Μαθησιακοί στόχοι Κατανόηση των διαδικασιών προσδιορισμού και επιλογής έργων ανάπτυξης ΠΣ Κατανόηση

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

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

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

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

Απαιτήσεις Λογισμικού

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

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

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

Τεχνολογία Λογισμικού Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ Τεχνολογία Λογισμικού 8ο Εξάμηνο 2018 19 Εισαγωγή στη διαχείριση έργων λογισμικού Δρ. Κώστας Σαΐδης saiko@di.uoa.gr A. Διαχείριση έργου γενικά Ορισμοί Βασικές

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

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ. 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΜΑΘΗΜΑ: Εισαγωγή στις Αρχές της Επιστήμης των Η/Υ 1 η ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Στόχος Θεματικής Ενότητας Οι μαθητές να περιγράφουν τους βασικούς τομείς της Επιστήμης των Υπολογιστών και να μπορούν

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

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

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

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

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών ΕΠΛ362: Τεχνολογία Λογισμικού ΙΙ (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Software Engineering, 9/E, Ian Sommerville, 2011) Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών Οι διαφάνειες αυτές

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

Κεφάλαιο 1. Εισαγωγή στα συστήματα σχεδιομελέτης και παραγωγής με χρήση υπολογιστή computer aided design and manufacture (cad/cam)

Κεφάλαιο 1. Εισαγωγή στα συστήματα σχεδιομελέτης και παραγωγής με χρήση υπολογιστή computer aided design and manufacture (cad/cam) Κεφάλαιο 1 Εισαγωγή στα συστήματα σχεδιομελέτης και παραγωγής με χρήση υπολογιστή computer aided design and manufacture (cad/cam) 1.1 Ορισμός σχεδιομελέτης και παραγωγής με χρήση υπολογιστή CAD (Computer

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

Σχεδιασμός Οικολογικού Διαμεσολαβητή για την εποπτεία και διαχείριση δικτύου διανομής ηλεκτρικής ενέργειας

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

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

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

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

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

Εισαγωγή. Τμήμα Μηχανικών Σχεδίασης Προϊόντων και Συστημάτων, ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ. Παναγιώτης Κουτσαμπάσης

Εισαγωγή. Τμήμα Μηχανικών Σχεδίασης Προϊόντων και Συστημάτων, ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ. Παναγιώτης Κουτσαμπάσης Αλληλεπίδραση λ Αθώ Ανθρώπου-Υπολογιστή Εισαγωγή γή Τμήμα Μηχανικών Σχεδίασης Προϊόντων και Συστημάτων, ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ Παναγιώτης Κουτσαμπάσης Αλληλεπίδραση η Ανθρώπου-Υπολογιστή «μελετά τη σχεδίαση,

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

Σχεδιασμός Κατασκευών Ενότητα 2: Βασικές Έννοιες Τεχνικών Συστημάτων & Οργάνωση Ανάπτυξης ενός Προϊόντος

Σχεδιασμός Κατασκευών Ενότητα 2: Βασικές Έννοιες Τεχνικών Συστημάτων & Οργάνωση Ανάπτυξης ενός Προϊόντος ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Σχεδιασμός Κατασκευών Ενότητα 2: Βασικές Έννοιες Τεχνικών Συστημάτων & Οργάνωση Ανάπτυξης ενός Προϊόντος Δρ Κ. Στεργίου Τμήμα

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

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

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

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

Έγγραφο Προδιαγραφών Απαιτήσεων Λογισμικού για το παιχνίδι: Asylum : The Escape

Έγγραφο Προδιαγραφών Απαιτήσεων Λογισμικού για το παιχνίδι: Asylum : The Escape Έγγραφο Προδιαγραφών Απαιτήσεων Λογισμικού για το παιχνίδι: Asylum : The Escape Επιμέλεια: Γκέκα Ασπασία Ιωάννου Ελένη Κούνουπα Άννα Τμήμα Εφαρμογών Πληροφορικής Α 1 Εξάμηνο Δ.ΙΕΚ Αιγάλεω 1 ΠΕΡΙΕΧΟΜΕΝΑ

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

Σχολ.έτος Κεφάλαιο 5 ο Γνωριμία με το Λογισμικό του Υπολογιστή.

Σχολ.έτος Κεφάλαιο 5 ο Γνωριμία με το Λογισμικό του Υπολογιστή. Σχολ.έτος 2015-16 Κεφάλαιο 5 ο Γνωριμία με το Λογισμικό του Υπολογιστή. Διδακτικοί στόχοι Στο τέλος της διδακτικής ώρας οι μαθητές θα πρέπει : Να εξηγούν τις έννοιες πρόγραμμα, λογισμικό υπολογιστή. Να

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

Τεχνολογία Λογισμικού & Πνευματική Ιδιοκτησία. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

Τεχνολογία Λογισμικού & Πνευματική Ιδιοκτησία. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Τεχνολογία Λογισμικού & Πνευματική Ιδιοκτησία ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική Κύκλος ζωής λογισμικού source: Forouzan, Mosharraf Τροποποιήσεις διόρθωση σφαλμάτων, αλλαγή απαιτήσεων χρήστη,...

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

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

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

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

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

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

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

Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού

Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού Agile Προσέγγιση στη Διαχείριση Έργων Λογισμικού Ενότητα 1-Το γενικό πλαίσιο της agile προσέγγισης Δρ. Δημήτριος Τσέλιος Καθηγητής Εφαρμογών Τμήμα Μηχανικών Πληροφορικής Τ.Ε.- ΤΕΙ Θεσσαλίας Μεταπτυχιακό

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

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 1: Εισαγωγή στη C - Αλγόριθμοι Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε

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

Rational Unified Process:

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

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

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ http://leitourgika-systhmata-epal-b.ggia.info/ Σύγχρονο Λειτουργικό Σύστημα - ΛΣ Λειτουργικό Σύστημα:

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

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

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

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

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

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

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

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

ΣΕΧΝΟΛΟΓΙΑ ΛΟΓΙΜΙΚΟΤ ΔΕΤΣΕΡΗ ΔΙΑΛΕΞΗ ΔΙΑΔΙΚΑΙΑ ΠΑΡΑΓΩΓΗ ΛΟΓΙΜΙΚΟΤ ΣΕΧΝΟΛΟΓΙΑ ΛΟΓΙΜΙΚΟΤ ΔΕΤΣΕΡΗ ΔΙΑΛΕΞΗ ΔΙΑΔΙΚΑΙΑ ΠΑΡΑΓΩΓΗ ΛΟΓΙΜΙΚΟΤ ΠΕΡΙΕΦΟΜΕΝΑ Δομικά τοιχεία Λογισμικού Διαδικασία Παραγωγής Λογισμικού Αυτοματοποίηση Διαδικασιών Παραγωγής Λογισμικού Θεμελιώδεις Δραστηριότητες

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

Θεωρία του Έργου. Διαχείριση Έργου Κύκλος Ζωής. Μαρίνα Α.Τσιρώνη Πολιτικός Μηχανικός, MSc ΕΔΑ Περιφέρειας Κεντρικής Μακεδονίας.

Θεωρία του Έργου. Διαχείριση Έργου Κύκλος Ζωής. Μαρίνα Α.Τσιρώνη Πολιτικός Μηχανικός, MSc ΕΔΑ Περιφέρειας Κεντρικής Μακεδονίας. Θεωρία του Έργου Διαχείριση Έργου Κύκλος Ζωής Μαρίνα Α.Τσιρώνη Πολιτικός Μηχανικός, MSc ΕΔΑ Περιφέρειας Κεντρικής Μακεδονίας Οκτώβριος 2009 Διαχείριση του Έργου (Project Management) Ορισμοί Κάθε μιά όχι

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

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

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

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

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΜΑΤΟΣ. Ευέλικτες μέθοδοι στη διοίκηση έργων ΠΙΣΤΩΤΙΚΕΣ ΜΟΝΑΔΕΣ: 8 ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ (ΑΝΑ ΕΒΔΟΜΑΔΑ):

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΜΑΤΟΣ. Ευέλικτες μέθοδοι στη διοίκηση έργων ΠΙΣΤΩΤΙΚΕΣ ΜΟΝΑΔΕΣ: 8 ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ (ΑΝΑ ΕΒΔΟΜΑΔΑ): ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΜΑΤΟΣ ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΜΑΤΟΣ A ΜΕΡΟΣ 1. ΓΕΝΙΚΑ ΚΩΔΙΚΟΣ ΜΑΘΗΜΑΤΟΣ: ΕΞΑΜΗΝΟ: ΜΑΘΗΜΑ: Ευέλικτες μέθοδοι στη διοίκηση έργων ΠΙΣΤΩΤΙΚΕΣ ΜΟΝΑΔΕΣ: 8 ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ (ΑΝΑ ΕΒΔΟΜΑΔΑ): ΓΛΩΣΣΑ ΔΙΔΑΣΚΑΛΙΑΣ:

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