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

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

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

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

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

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

Τεχνολογία Λογισµικού (software. engineering)

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

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

ΚΕΦΑΛΑΙΟ 2 ΜΟΝΤΕΛΑ ΚΥΚΛΟΥ ΖΩΗΣ ΛΟΓΙΣΜΙΚΟΥ. Σκοπός. Έννοιες-κλειδιά

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

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

Αποτελείται από τρεις (3) τόμους. Τόμος Α : Τεχνολογία Λογισμικού Ι Τόμος Β : Βάσεις Δεδομένων και Τόμος Γ : Λειτουργικά Συστήματα Ι.

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

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

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

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

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

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

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

Αλληλεπίδραση Ανθρώπου- Υπολογιστή & Ευχρηστία

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

Εισαγωγή στην πληροφορική

ΣΗΜΕΙΩΣΕΙΣ ΓΙΑ ΤΟ ΜΑΘΗΜΑ

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

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

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

περιεχόμενα παρουσίασης

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

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

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

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

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

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

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

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

ΤΕΧΝΟΛΟΓΙΑ, ΚΑΙΝΟΤΟΜΙΑ ΚΑΙ ΕΠΙΧΕΙΡΗΜΑΤΙΚΟΤΗΤΑ 9 Ο εξάμηνο Χημικών Μηχανικών

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

Ορισμός Ευκαιρίας. 2.Διαδικασία Αναγνώρισης Ευκαιρίας

Περιεχόμενα. 1 Υποδείγματα αλληλεπίδρασης, αρχές & μοτίβα σχεδίασης Περίληψη... 19

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

Η Διαδικασία Σχεδιασμού Συστημάτων

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

Τεχνολογία λογισμικού στην πράξη

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

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

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

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

Επιχειρησιακός Σχεδιασμός & Επιχειρηματικότητα

Ανάλυση ευαισθησίας Ανάλυση ρίσκου

Προηγμένες Υπηρεσίες Τηλεκπαίδευσης στο ΤΕΙ ΔΙΟΙΚΗΣΗ. Νικόλαος Καρανάσιος Επίκουρος Καθηγητής

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Αξιολόγηση των Σχεδιαστικών Προτύπων και της Ποιότητας του Λογισμικού μέσω Μετρικών, στις Περιπτώσεις Προσθήκης Λειτουργικότητας και

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

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

Η προσεγγιση της. Αρχιτεκτονικης Συνθεσης. ΜΑΡΓΑΡΙΤΑ ΓΡΑΦΑΚΟΥ Καθηγητρια της Σχολης Αρχιτεκτονων Ε.Μ.Π.

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

UML: Unified modelling language

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

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

Εξώφυλλο. Η κατανόηση της έννοιας του αριθμού από μαθητές 4-5 χρόνων. Αλεξανδρούπολη, Ιανουάριος 2016

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

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

Προγραµµατιστικές τεχνικές

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

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

Υποδείγματα Ανάπτυξης

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

Προγραμματιστικές τεχνικές

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

Εισαγωγή στην πληροφορική

Ανάλυση προβλήματος. Κεφάλαιο 1

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

1 Ανάλυση Προβλήματος

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ UML ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΕΠΙΧΕΙΡΗΜΑΤΙΚΩΝ ΔΙΑΔΙΚΑΣΙΩΝ (ΔΙΑΓΡΑΜΜΑΤΑ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ & ΠΕΡΙΠΤΩΣΕΩΝ ΧΡΗΣΗΣ) (7-8)

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

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

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

Προδιαγραφές Απαιτήσεων Γιάννης Σμαραγδάκης

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

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

4.2 Δραστηριότητα: Ολικά και τοπικά ακρότατα

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

Πληροφορική 2. Αλγόριθμοι

Ανάπτυξη ηλεκτρονικών μαθημάτων στην πλατφόρμα Open eclass. Γνωριμία με την Open eclass

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

Α. ΔΙΑΓΡΑΜΜΑ ΔΙΑΣΠΟΡΑΣ Απεικόνιση της σχέσης(θετική, αρνητική, απροσδιόριστη) δύο μεταβλητών. Παραδείγματα σχέσεων. Παράδειγμα

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

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

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

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

Ανάλυση ευαισθησίας Ανάλυση ρίσκου. Μαυρωτά Γιώργου Αναπλ. Καθηγητή ΕΜΠ

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

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

Τι πρέπει να γνωρίζουν οι κατασκευαστές μετρικών οργάνων - Ο Ρόλος και οι Υποχρεώσεις τους

Μάθηση σε νέα τεχνολογικά περιβάλλοντα

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

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

Προγραµµατιστικές τεχνικές

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων

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

Transcript:

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τεχνολογία Λογισμικού, 7ο/9ο εξάμηνο 2018-2019 Τεχνολογία Λογισμικού Ν.Παπασπύρου, Αν.Καθ. ΣΗΜΜΥ, nickie@softlab.ntua,gr Β.Βεσκούκης, Αν.Καθ. ΣΑΤΜ, v.vescoukis@cs.ntua,gr Κ.Σαΐδης, ΠΔ 407, saiko@softlab.ntua.gr

Κύκλος ζωής λογισμικού

Κύκλος ζωής Λογισμικού Οι φάσεις από τις οποίες διέρχεται μια εφαρμογή Λογισμικού από την σύλληψή της κατά την κατασκευή, χρήση, συντήρησή της μέχρι την απόσυρσή της Ενα μοντέλο κύκλου ζωής περιγράφει Ποιες είναι αυτές οι φάσεις Ποιες εργασίες γίνονται και ποια προϊόντα παράγονται σε καθεμία Πώς διαδέχονται η μία την άλλη Σε ποια έκταση (του λογισμικού) εκτελούνται

Problem solving, iterative, creative!...

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

Χαρακτηριστικά μοντέλα κύκλου ζωής λογισμικού Το μοντέλο του καταρράκτη Το μοντέλο πρωτοτυποποίησης Το μοντέλο λειτουργικής επαύξησης Το σπειροειδές μοντέλο Το μοντέλο του πίδακα Ένα γενικό μοντέλο κύκλου ζωής

Το μοντέλο του καταρράκτη Ολόκληρη η εφαρμογή λογισμικού διέρχεται από διακριτές φάσεις ανάπτυξης.

Το μοντέλο πρωτοτυποποίησης Κατασκευάζονται διαδοχικά πρωτότυπα με ολοένα και περισσότερα χαρακτηριστικά.

Το μοντέλο λειτουργικής επαύξησης Κατάτμηση του λογισμικού και εφαρμογή του μοντέλου του καταρράκτη σε κάθε τμήμα. Συνένωση στο τέλος

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

Το μοντέλο του πίδακα Ανάπτυξη με αντικειμενοστρεφή φιλοσοφία και επαναχρησιμοποίηση έτοιμων συστατικών

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

Σύγκριση μοντέλων κύκλου ζωής λογισμικού (κάπως υποκειμενική) Μοντέλο Καταρράκτη Πρωτοτυποποίησης Λειτουργικής επαύξησης Σπειροειδές Μέγεθος εφαρμογών Μικρό έως μεσαίο Μικρό ως μεσαίο Μεσαίο ως μεγάλο Μεσαίο ως μεγάλο Μεταβολές στις απαιτήσεις Ανεπιθύμητες Δεκτές Ανεπιθύμητες Δεκτές Προσαρμοστικότητα στον κατασκευαστή Καμία Μικρή Καμία Αρκετή Διάδοση Μεγάλη με τάση μείωσης Μικρή με τάση αύξησης Μικρή με τάση μείωσης Μικρή με τάση μείωσης Πίδακα Οποιοδήποτε Δεκτές Αρκετή Μικρή Γενικό Οποιοδήποτε Δεκτές Μεγάλη Μικρή με ισχυρές τάσεις αύξησης

Περιγραφή εργασιών και συστατικών στοιχείων λογισμικού Διαδοχικά επίπεδα λεπτομέρειας, ανάλογα με το σημείο εστίασης της προσοχής του παρατηρητή. Καθολικό ΦΑΣΗ ΔΙΑΔΙΚΑΣΙΑ ΠΡΟΙΟΝ Εποπτικό Αναλυτική περιγραφή διαδικασίας Αναλυτική περιγραφή προϊόντος Ατομικό

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

abstraction

Περιγραφή συστατικών στοιχείων λογισμικού Μοντέλα, δηλαδή αναπαραστάσεις κάποιων χαρακτηριστικών του λογισμικού Αφαιρετικά, δηλαδή δεν περιέχουν όλες τις λεπτομέρειες Συμπληρωματικά, δηλαδή πολλά μαζί περιγράφουν πλήρως το λογισμικό Υλοποιήσιμα, δηλαδή μπορούν να καθοδηγούν την κατασκευή λογισμικού Δομημένο κείμενο (πρότυπα) Συμβολισμοί Διαγράμματα Αλλοι τρόποι (π.χ. ψευδοκώδικας)

Προβλήματα στην περιγραφή στοιχείων λογισμικού Οι συμβολισμοί και οι ορισμοί είναι Μη καθολικά αποδεκτοί Αντιληπτοί με διφορούμενα Με πλουραλισμό διατυπώσεων Ανάγκη για Πρότυπα Παρέχουν τη δομή της περιγραφής του Λογισμικού Εξασφαλίζουν μια ελάχιστη πειθαρχία Αποτελούν ένα κοινό σημείο αναφοράς των κατασκευαστών Το πρόβλημα των οργανισμών τυποποίησης IEEE, ACM, OMG, κ.ά.

Συζήτηση