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

Σχετικά έγγραφα
Μεθοδολογίες Παραγωγής Λογισµικού

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

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

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

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

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

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

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

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

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

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

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

Rational Unified Process:

Α.Ε.Ι. Πειραιά Τ.Τ. Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Διαχείριση Έργων Αυτοματισμού και Πληροφορικής

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

UML: Unified modelling language

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

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

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

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

Ανθρωποκεντρικός σχεδιασμός πολυμέσων

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

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

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

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

Αρχές Προγραμματισμού Υπολογιστών

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

09 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Εαρινό εξάμηνο

Ελληνικό Ανοικτό Πανεπιστήµιο Εισαγωγή στη Ενοποιηµένη Προσέγγιση Unified Process (UP) ρ. Πάνος Φιτσιλής

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

Σχεδιασµός Λογισµικού

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

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

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

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

Κεφάλαιο 2ο. Κατανοώντας την αντικειμενοστρέφεια

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

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

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

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

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

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

ΕΠΛ 435: Αλληλεπίδραση Ανθρώπου Υπολογιστή

Παρουσίαση: Ανθρωποκεντρικός σχεδιασμός πολυμέσων ΜΙΚΡΟΠΟΥΛΟΥ ΕΥΓΕΝΙΑ ΓΤΠ61

08 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο

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

12.Μοντέλα και Μεθοδολογίες Σχεδιασµού Λογισµικού

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

Υποδείγµατα ωριµότητας. Παραδείγµατα Υποδειγµάτων Ωριµότητας

Εισαγωγή στα συστήματα σχεδιομελέτης και παραγωγής με χρήση υπολογιστή - Computer aided design and manufacture (cad/cam)

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

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

Στρατηγική Επιλογή Capital B.O.S. Capital B.O.S.

Θέματα Ατομικής Διπλωματικής Εργασίας - DRAFT Ακαδημαϊκό Έτος 2015/2016. Γεωργία Καπιτσάκη (Λέκτορας)

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

METROPOLIS. Ένα περιβάλλον σχεδιασμού για ετερογενή συστήματα

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

Tεχνολογία Λογισµικού II

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Περιεχόμενα. ΚΕΦΑΛΑΙΟ 1 Εισαγωγή στη UML... 19

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

Οδηγός Διεξαγωγής Εργαστηρίου Ακ. Έτος

Διαχείριση Πληροφοριακών Συστημάτων

Αλλάξτε τον τρόπο που κάνετε τη δουλειά σας

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

Ηλεκτρονικό Εργαστήριο Φυσικής. ρακόπουλος Γρηγόρης, ΠΕ04, Ελληνογαλλική Σχολή Καλαµαρί,

Παρουσίαση Εφαρμογής i-flow Protocol. (Ηλεκτρονική Διαχείριση Αλληλογραφίας Οργανισμών)

Εισαγωγή στην Ανάπτυξη Πληροφοριακών Συστημάτων

Dynamic Business Systems. Παρουσίαση Εφαρμογής

Δράσεις κατάρτισης/ επιμόρφωσης. Επιχειρηματικότητα στις υπηρεσίες #δράση 14. Φορέας υλοποίησης

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

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

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

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

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός

Στρατηγική Επιλογή. Το xline ERP - Λογιστικές Εφαρμογές αποτελείται από:

UML. Γενικά χαρακτηριστικά Στοιχεία µοντέλων Συσχετίσεις. Παραδείγματα

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

Εταιρική Παρουσίαση της DBS (Dynamic Business Solutions) Υπηρεσίες Πληροφορικής Α.Ε. Χριστιανουπόλεως 122, Γαλάτσι

ΣΥΣΤΗΜΑΤΑ ΛΗΨΗΣ ΑΠΟΦΑΣΕΩΝ

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

Ενότητα 3 (κεφάλαιο 16) Επαναχρησιμοποίηση Λογισμικού

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

Η διδασκαλία του μαθήματος Επικοινωνίας Ανθρώπου-Μηχανής στο Τμήμα Πληροφορικής & Τηλεπικοινωνιών του ΕΘΝΙΚΟΥ ΚΑΠΟΔΙΣΤΡΙΑΚΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΑΘΗΝΩΝ

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

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

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

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

ΥΠΟΔΟΧΗ ΠΡΩΤΟΕΤΩΝ ΦΟΙΤΗΤΩΝ Παρουσίαση του Τµήµατος

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

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

K15 Ψηφιακή Λογική Σχεδίαση 1: Εισαγωγή

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

Οδηγίες για τη διδασκαλία µαθηµάτων Πληροφορικής του Ενιαίου Λυκείου

09 Η γλώσσα UML II. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο

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

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

Εισαγωγή στην ανάλυση

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

Transcript:

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

Αντικείµενο & Σκοπός Παρουσίαση και ανάλυση όλων των σταδίων της διαδικασίας ανάπτυξης συστηµάτων λογισµικού, από την ανάλυση απαιτήσεων και τον σχεδιασµό µέχρι την ανάπτυξη και τη επαλήθευση. Μελέτη σύγχρονων µεθοδολογιών, µοντέλων και ολοκληρωµένων εργαλείων για την ανάπτυξη πληροφοριακών συστηµάτων Πρακτική εξοικείωση µέσα από την εκτετεµένη χρήση εργαλείων ανάλυσης, σχεδίασης και υλοποίησης λογισµικού

Λογισµικό ΩΩς λογισµικό θεωρούνται όχι µόνο τα προγράµµατα, αλλά και η σχετική τεκµηρίωση όπως φυλλάδια απαιτήσεων, µοντέλα σχεδίασης, εγχειρίδια χρήσης, αρχεία ρυθµίσεων. Γενικής χρήσης Κατά παραγγελία σύµφωνα µε προδιαγραφές Οι οικονοµίες όλων των ανεπτυγµένων χωρών εξαρτώνται σε µεγάλο βαθµό (άµεσα & έµµεσα) από το λογισµικό Οι δαπάνες για λογισµικό αντιπροσωπεύουν συνεχώς αυξανόµενο µέρος του ΑΕΠ Ανοικτό λογισµικό δαπάνες εγκατάστασης, παραµετροποίησης και υποστήριξης

Κόστος Λογισµικού Το κόστος του λογισµικού αποτελεί συχνά το µεγαλύτερο ποσοστό του συνολικού κόστος ενός υπολογιστικού συστήµατος. Το κόστος συντήρησης του λογισµικού υπερβαίνει αυτό της ανάπτυξής του για συστήµατα µε µεγάλη διάρκεια ζωής, το κόστος συντήρησης µπορεί να είναι πολλαπλάσιο του κόστους ανάπτυξης.

Τεχνολογία Λογισµικού Η τεχνολογία λογισµικού (software engineering) καταπιάνεται µε θεωρίες, µεθόδους και εργαλεία ανάπτυξης επαγγελµατικού λογισµικού. Περιλαµβάνει όλες τις πτυχές της παραγωγής λογισµικού Συστηµατική και οργανωµένη προσέγγιση Χρήση κατάλληλων εργαλείων και τεχνικών ανάλογα µε το πρόβληµα προς επίλυση, τους περιορισµούς ανάπτυξης και τους διαθέσιµους πόρους Αποτελεσµατική, από την άποψη του κόστους, παραγωγή λογισµικού.

Διαδικασία Παραγωγής Λογισµικού Ένα σύνολο δραστηριοτήτων µε στόχο την ανάπτυξη ή εξέλιξη ενός προϊόντος λογισµικού. Οι θεµελιώδεις δραστηριότητες, κοινές σε όλες τις διαδικασίες παραγωγής λογισµικού, είναι: εξαγωγή προδιαγραφών - τι πρέπει να κάνει το σύστηµα και ποιοί είναι οι περιορισµοί της ανάπτυξης και λειτουργίας του σχεδίαση συστήµατος λογισµικού ανάπτυξη - παραγωγή του συστήµατος λογισµικού επικύρωση - το λογισµικό ελέγχεται ώστε να εξασφαλιστεί ότι είναι αυτό που ζητάει ο πελάτης εξέλιξη - το λογισµικό τροποποιείται ώστε να προσαρµοστεί στις µεταβαλλόµενες απαιτήσεις.

Μοντέλο Διαδικασίας Παραγωγής Λογισµικού Μια απλοποιηµένη αναπαράσταση διαδικασίας παραγωγής λογισµικού, θεωρούµενη από κάποια συγκεκριµένη άποψη. Παραδείγµατα τύπων µοντέλων διαδικασιών παραγωγής: Μοντέλο ροής εργασιών - δείχνει την ακολουθία των δραστηριοτήτων, Μοντέλο ροής δεδοµένων - αναπαριστά τη ροή πληροφοριών, Μοντέλο ρόλων/ενεργειών - αναπαριστά τους ρόλους των συµµετεχόντων. Γενικά µοντέλα (υποδείγµατα) διαδικασιών ανάπτυξης λογισµικού Μοντέλο καταρράκτη Επαναληπτική ανάπτυξη Τεχνολογία λογισµικού βάσει συστατικών στοιχείων

Μέθοδοι Τεχνολογίας Λογισµικού Δοµηµένες προσεγγίσεις για την ανάπτυξη λογισµικού: Περιγραφές µοντέλων συστήµατος Περιγραφές των µοντέλων αναπαράστασης που πρέπει να αναπτυχθούν και σηµειογραφίας για την αναπαράστασή τους π.χ. object model, state machine etc Κανόνες Περιορισµοί που ισχύουν πάντοτε για τα µοντέλα συστήµατος π.χ. κάθε οντότητα διαφορετικό όνοµα Συστάσεις Συµβουλές για την καλή πρακτική σχεδιασµού στη συγκεκριµένη µέθοδο π.χ. κάθε αντικείµενο δεν πρέπει να έχει περισσότερες από 7 συνδέσεις Καθοδήγηση για τη διαδικασία Οργάνωση των δραστηριοτήτων που µπορεί κανείς να ακολουθήσει π.χ. ορισµός των ιδιοτήτων των αντικειµένων πριν τον ορισµό των µεθόδων Παραδείγµατα: function-based object-oriented

Χαρακτηριστικά καλού λογισµικού Το λογισµικό θα πρέπει να προσφέρει: την απαιτούµενη λειτουργικότητα συντηρησιµότητα - να µπορεί να εξελίσσεται για να ανταποκρίνεται στις µεταβαλλόµενες ανάγκες των πελατών φερεγγυότητα & αξιοπιστία αποδοτικότητα όσον αφορά διαθέσιµους πόρους του συστήµατος αποδοχή - πρέπει να είναι αποδεκτό από τους χρήστες για τους οποίους σχεδιάστηκε συµβατότητα µε άλλα συστήµατα

Βασικές Προκλήσεις Τεχν. Λογισµικού Ετερογένεια Ανάπτυξη τεχνικών παραγωγής λογισµικού που µπορεί να ανταπεξέλθει σε ετερογενείς πλατφόρµες και περιβάλλοντα εκτέλεσης, συνδυασµός µε legacy systems Χρόνος παράδοσης Ανάπτυξη τεχνικών που οδηγούν σε συντόµευση του χρόνου παράδοσης του λογισµικού χωρίς υποβάθµιση της ποιότητας Εµπιστοσύνη Ανάπτυξη τεχνικών που καταδεικνύουν ότι οι χρήστες µπορούν να εµπιστεύονται το λογισµικό.

Δοµή Μαθήµατος Θεωρητικό µέρος Ανάλυση και µελέτη µεθοδολογιών και εργαλείων για την σχεδίαση και υλοποίηση εφαρµογών και συστηµάτων Εργαστηριακό µέρος Πρακτική χρήση της µεθοδολογίας RUP και της UML για τη σχεδίαση και υλοποίηση εφαρµογών µε το εργαλείο JDeveloper

Εργασία και βαθµολόγηση 50% γραπτή εξέταση 50% εργασία (σε 4 µέρη) Η εργασία σε οµάδες των 2-3 ατόµων Απαιτείται προβιβάσιµος βαθµός και στα 2 ξεχωριστά!! Ατοµική βαθµολόγηση

Βιβλιογραφία Ian Sommerville, Βασικές Αρχές Τεχνολογίας Λογισµικού, Addison Wesley, 2011 Alan Dennis, Barbara Haley Wixom, David Tegarden, Ανάλυση και Σχεδιασµός Συστηµάτων νε τη UML 2.0,Wiley 2009 Yλικό που θα ανανεώνεται στο eclass (http:// eclass.hua.gr) Tutorials για τη UML και το εργαλείο JDeveloper

Διαδικασία Παραγωγής Λογισµικού

Δραστηριότητες Διαδικασιών Παραγωγής Λογισµικού Καθορισµός απαιτήσεων και εξαγωγή προδιαγραφών λογισµικού Σχεδιασµός λογισµικού Υλοποίηση λογισµικού Επικύρωση λογισµικού Εξέλιξη λογισµικού

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

Βασικά Γενικά Μοντέλα Μοντέλο καταρράκτη (waterfall model) Ξεχωριστές φάσεις καθορισµού απαιτήσεων και ανάπτυξης, επικύρωσης, εξέλιξης Εξελικτική ανάπτυξη (evolutionary development) Ανάµιξη των δραστηριοτήτων της εξαγωγής προδιαγραφών, της ανάπτυξης, και της επικύρωσης, γρήγορη ανάπτυξη prototype και ανάδραση από πελάτη Τεχνολογία λογισµικού βάσει συστατικών στοιχείων (component-based) Το σύστηµα συγκροτείται στο µεγαλύτερο µέρος του από τον συνδυασµό υπαρχόντων συστατικών στοιχείων Παραλλαγές των ανωτέρω Ορθολογική Ενοποιηµένη Διαδικασία (Rational Unified Process)

Μοντέλο Καταρράκτη

Εξελικτική Ανάπτυξη

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

Σπειροειδής Ανάπτυξη

Ενδεικτική Βιβλιογραφία Κεφάλαιο 1 ο του βιβλίου «Βασικές Αρχές Τεχνολογίας Λογισµικού» του Ian Sommerville Κεφάλαιο 1 ο Εισαγωγή στην Ανάλυση και το Σχεδιασµό Συστηµάτων (σελ. 25-65) του βιβλίου «Ανάλυση και Σχεδιασµός Συστηµάτων µε τη UML 2.0 των Davis, Wixon, Tegarden

Ενδεικτικά Ζητήµατα Η Έννοια της Τεχνολογίας Λογισµικού Η έννοια και ο στόχος της Ανάλυσης Συστηµάτων Οι φάσεις της διαδικασίας Ανάλυσης Συστηµάτων