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

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

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

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

Προσφερόμενα Διπλώματα (Προσφερόμενοι Τίτλοι)

κεφάλαιο Βασικές Έννοιες Επιστήμη των Υπολογιστών

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

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

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

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

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

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

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

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

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

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

Providing Integrated e-health Services for Personalized Medicine utilizing Cloud Infrastructure (PINCLOUD)

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

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

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

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

Οι Τομείς (κατευθύνσεις ειδικότητας) του Τμήματος Πληροφορικής & Επικοινωνιών είναι:

Εισαγωγή στην Επιστήμη των Υπολογιστών

J. Glenn Brookshear. Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

Πληροφορική. Μάθημα Κατεύθυνσης

OMICRON SYSTEMS ΕΤΑΙΡΙΚΟ ΠΡΟΦΙΛ. Σεπτέμβριος 2018

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

Πτυχί ο στην Εφαρμοσμέ νη Πληροφορίκη

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ Η/Υ

Ενότητα 1: Πληροφοριακά Συστήματα και Άνθρωποι

Η Πληροφορική ως γνώση και εργαλείο για τον σύγχρονο μηχανικό. Νικόλαος Μήτρου Καθηγητής, ΕΜΠ

Τεχνολογίες Πληροφορίας & Επικοινωνιών στην Εκπαίδευση (ΤΠΕ-Ε)

Managing Information. Lecturer: N. Kyritsis, MBA, Ph.D. Candidate Athens University of Economics and Business.

Μάθημα «Υπηρεσίες Ηλεκτρονικής Υγείας»

Μηχανική Λογισμικού με Ανοιχτό Λογισμικό Δρ. Γεώργιος Κακαρόντζας Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Α.Τ.Ε.Ι. Θεσσαλίας

Ενότητα 2. Πηγές Λογισμικού. Πληροφοριακά Συστήματα Διοίκησης ΙI Νίκος Καρακαπιλίδης 2-1

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

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

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

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

Το Διαδικτυακό Προσαρμοστικό Συνεργατικό Περιβάλλον Μάθησης SCALE

Μάιος 02. Αναγνωστόπουλος - Παν. Αθηνών 1

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

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

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

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

web mobile multimedia ανάπτυξη εφαρμογών

Μέθοδος : έρευνα και πειραματισμός

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

711 Πληροφορικής ΤΕΙ Αθήνας

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

Μετάβαση σε ένα κορυφαίο Σύστημα Διαχείρισης Κτιρίων (BMS)

221 Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Πάτρας

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

ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΜΗΧΑΝΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΤΕ ΣΧΕΔΙΑΣΗ ΜΗΧΑΝΟΛΟΓΙΚΩΝ ΚΑΤΑΣΚΕΥΩΝ ΜΕ Η/Υ (CAD) Διαλέξεις και Εργαστηριακές Ασκήσεις ,5

723 Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών ΤΕΙ Λάρισας

Πληροφορική ΟΠΑ και Προοπτικές Απασχόλησης

4.2.1 Α εξάμηνο Β εξάμηνο Γ εξάμηνο 4.2. ΣΥΝΟΠΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΑΝΑ ΕΞΑΜΗΝΟ

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

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

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

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

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

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

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

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

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

ΚΕΦΑΛΑΙΟ 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών. ΚΕΦΑΛΑΙΟ 6 Περιβάλλοντα Ανάπτυξης Εφαρμογών. Α Γενικού Λυκείου

Σχεδίαση Middleware Εγχειρίδιο Μελέτης

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

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

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

Μάθημα 6: Αρχιτεκτονική TCP/IP

RobotArmy Περίληψη έργου

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

22/9/ o Τεχνολογίες του Λογισμικού, με έμφαση στην ανάλυση, στο σχεδιασμό και στην υλοποίηση συστημάτων λογισμικού

Εισαγωγή στην εκτίμηση κόστους Λογισμικού / Μέθοδος COCOMO

Ποιο είναι το νέο τοπίο στην Ιατρική Εκπαίδευση: Από την Συνεχιζόμενη Ιατρική Εκπαίδευση (CME) στην Συνεχιζόμενη Επαγγελματική Ανάπτυξη (CPD)

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

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

Ποιότητα Λογισμικού και Πιστοποίηση

Κεφάλαιο 1 Προγραμματισμός Υπολογιστή. Εφαρμογές Πληροφορικής Κεφ. 7 Καραμαούνας Πολύκαρπος 1

Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

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

Διαγράμματα UML για την τεκμηρίωση της Αρχιτεκτονικής

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

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

Ανάπτυξη πληροφοριακών συστημάτων

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

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

Τα Διδακτικά Σενάρια και οι Προδιαγραφές τους. του Σταύρου Κοκκαλίδη. Μαθηματικού

Κεφάλαιο 6 ο Εισαγωγή στον Προγραμματισμό 1

ΒΕΛΤΙΣΤΟΠΟΙΗΣΤΕ ΤΟ ΕΝΕΡΓΕΙΑΚΟ ΠΑΡΚΟ ΣΑΣ.

Τεχνολογία Επικοινωνιών Τεχνολογικής Κατεύθυνσης (Β Ημερησίου και Γ Εσπερινού Γενικού Λυκείου)

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική II. Ενότητα 4 : Τεχνολογία λογισμικού. Δρ.

Μη Καταστροφικός Έλεγχος

Υποστηρικτικό Υλικό για τους εκπαιδευτές

Ερευνητικό Κέντρο Ευφυών Συστημάτων και Δικτύων Κοίος

ΑΚΑΔΗΜΙΑ ΤΩΝ ΠΟΛΙΤΩΝ

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

Α/Α Τίτλος θέματος Επιβλέπων Σύντομη περιγραφή Προαπαιτούμενα γνωστικά πεδία 1 ΚΛΙΜΑΤΙΚΕΣ ΠΟΛΙΤΙΚΕΣ ΤΗΣ Ε. Ε. Δρ. Ι.

Transcript:

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

Εισαγωγή Τεχνολογία Λογισμικού (Τ.Λ.) = Software Engineering = Mηχανική Λογισμικού Αντιμετωπίζει προβλήματα που εμφανίζονται στην ανάπτυξη μεγάλων και σύνθετων πληροφοριακών συστημάτων Απαιτείται η συμμετοχή πολλών ανθρώπων για μεγάλο χρονικό διάστημα, κατά το οποίο μπορεί να αλλάξουν οι απαιτήσεις αλλά και το προσωπικό Στόχος Τ.Λ. Να ορίσει αρχές που κατευθύνουν τη διαδικασία ανάπτυξης λογισμικού και οδηγούν σε αποδοτικά και αξιόπιστα προϊόντα λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-2

Κεφάλαιο 7: Τεχνολογία Λογισμικού Ο τομέας της τεχνολογίας λογισμικού Ο κύκλος ζωής λογισμικού Μεθοδολογίες τεχνολογίας λογισμικού Τμηματικότητα Εργαλεία της δουλειάς Διασφάλιση ποιότητας Τεκμηρίωση Η διασύνδεση ανθρώπου-μηχανής Ιδιοκτησία και ευθύνη λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-3

Σχεδιάστε και επιβλέψτε την κατασκευή ενός κτιριακού συγκροτήματος Απαιτήσεις εμφάνισης Απαιτήσεις κατασκευής Χρονοπρογραμματισμός Υπολογισμός Κόστους (χρήμα, χρόνος, άλλοι πόροι) Χωρισμός σε τμήματα για ευκολότερη διαχείριση Συμβατότητα τμημάτων Τρόποι επικοινωνίας ατόμων ομάδας Διαχείριση λεπτομερειών (π.χ. επιλογή των πομόλων, σχεδιασμός σωληνώσεων για το σύστημα κεντρικής θέρμανσης) Έλεγχος προόδου του έργου Έλεγχος τελικού προϊόντος Συντήρηση Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-4

Διαφορές λογισμικού από άλλα πεδία μηχανικής (1/2) Δυνατότητα κατασκευής από προκατασκευασμένα συστατικά στοιχεία Περιορισμένη διαθεσιμότητα γενικών συστατικών Παραδοσιακά, τα πολύπλοκα συστήματα λογισμικού κατασκευάζονται από το μηδέν Υπάρχει πρόοδος σε αυτόν το τομέα, π.χ. Component-based development, service engineering, και η έρευνα συνεχίζεται Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-5

Διαφορές λογισμικού από άλλα πεδία μηχανικής (2/2) Έλλειψη μετρικών μεθόδων για ποσοτική μέτρηση των ιδιοτήτων λογισμικού, π.χ. Υπολογισμός κόστους -> προϋποθέτει υπολογισμό της πολυπλοκότητας Αξιολόγηση ποιότητας και Αξιοπιστίας π.χ. στις μηχανικές συσκευές ένα μέτρο ποιότητας μπορει να είναι η μέση διάρκεια ζωής, ή ο μέσος όρος μεταξύ των φθορών, το λογισμικό όμως δεν φθείρεται Οι δυσκολίες στη μέτρηση των ιδιοτήτων του λογισμικού με ποσοτικό τρόπο είναι ένας από τους βασικούς λόγους που υπάρχει έλλειψη θεωρητικής βάσης στο πεδίο της Τεχνολογίας Λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-6

Πρόοδος στην Τεχνολογία Λογισμικού (1/2) Πρακτικοί και θεωρητικοί ερευνητές Πρακτικοί -> ανάπτυξη τεχνικών για άμεση εφαρμογή Πολλές μεθοδολογίες αντικαθίστανται γιατί αναπτύχθηκαν σε υποκειμενική βάση Θεωρητικοί -> ψάχνουν για υποκείμενες βάσεις και θεωρίες για να αναπτυχθούν στο μέλλον πιο σταθερές τεχνικές Αργή πρόοδος Ανάγκη για πρόοδο Οικονομία, Υγεία κλπ βασίζονται σε μεγάλα συστήματα λογισμικού Σφάλματα λογισμικού υπεύθυνα για πολλές καταστροφές ή παρολίγον καταστροφές Απώλεια διαστημικών οχημάτων, έκλυση ραδιενέργειας κλπ Η πρόοδος των θεωρητικών είναι αργή Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-7

Πρόοδος στην Τεχνολογία Λογισμικού (2/2) Σημαντική πρόοδος σε Προκατασκευασμένα συστατικά στοιχεία Μετρικές IDE (Integrated development environments)-> συνδυάζουν εργαλεία για ανάπτυξη λογισμικού σ ένα ενοποιημένο πακέτο που μπορεί να υποστηρίζει και οπτικό προγραμματισμό CASE (Computer Aided Software Engineering) tools Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-8

Eργαλεία CASE Computer Aided Software Engineering (CASE) Υποστηρίζουν Σχεδιασμό έργου Διαχείριση έργου Τεκμηρίωση Δημιουργία πρωτοτύπων και προσομοίωση Σχεδιασμό διασύνδεσης Προγραμματισμό Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-9

Integrated development environment (IDE) Ενοποιημένο πακέτο λογισμικού που βοηθά τους προγραμματιστές να αναπτύξουν λογισμικό. Συνήθως περιλαμβάνει: source code editor and/or visual editor, διορθωτές κειμένου, εργαλεία αποσφαλμάτωσης. Μπορεί να περιλαμβάνει interpreters ή compiles ή και όχι Παραδείγματα IDEs: Microsoft Visual Studio, Eclipse, Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-10

Τυποποίηση στην Τεχνολογίας Λογισμικού Μεγάλη ανάγκη για περαιτέρω πρόοδο στην Τ.Λ. όχι μονο από ερευνητές Επαγγελματικοί οργανισμοί και οργανισμοί τυποποίησης, π.χ.: ISO (Διεθνής οργανισμός Τυποποίησης) ACM (Association for Computing Machinery) IEEE (Ινστιτούτο Ηλεκτρολόγων και Ηλεκτρονικών Μηχανικών), κ.λ.π. Οι παραπάνω οργανισμοί ορίζουν: Κώδικες επαγγελματικής ηθικής -> ενισχύουν τον επαγγελματισμό και καταπολεμούν την αδιαφορία για τις ευθύνες Πρότυπα -> για μέτρηση ποιότητας των οργανισμών ανάπτυξης λογισμικού και κατευθυντήριες γραμμές για βελτίωση Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-11

Association of Computing Machinery (A.C.M.) Ιδρύθηκε το 1947 ως διεθνής επιστημονικός εκπαιδευτικός οργανισμός Σκοπός: προώθηση τεχνών, επιστημών και εφαρμογών της τεχνολογίας πληροφοριών Έδρα: Νέα Υόρκη Πολλές ομάδες ειδικού ενδιαφέροντος σε θέματα όπως: Αρχιτεκτονική Η/Υ, Τεχνητή νοημοσύνη, Τεχνολογία Λογισμικού, Γραφικά, Βιο Ιατρική Πληροφορική κλπ. Κώδικας Δεοντολογίας και Επαγγελματικής Συπεριφοράς http://www.acm.org/about/code-of-ethics Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-12

Ινστιτούτο Ηλεκτρολόγων και Ηλεκτρονικών Μηχανικών Institute of Electrical and Electronics Engineers IEEE Ιδρύθηκε το 1963 ως συγχώνευση του ΙΕΕ (1884) και ΙRE (1912), εδρεύει στο New Jersey Περιλαμβάνει πολλές τεχνικές ενώσεις: Ένωση Αεροδιαστημικής και Ηλ. Συστημ, Ένωση Λεϊζερ και Ηλεκτροοπτικών, Ένωση Ρομποτικής και Αυτοματισμού κλπ Δραστηριότητες: δημιουργία προτύπων κλπ http://www.ieee.org/about/whatis/code.html Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-13

Στη συνέχεια Θα εξετάσουμε μερικές από τις θεμελιώδεις αρχές της Τ.Λ., όπως: Ο κύκλος ζωής λογισμικού Η τμηματικότητα Κλπ. Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-14

Ο κύκλος ζωής λογισμικού Ένα πρόγραμμα, αφού δημιουργηθεί, εισέρχεται σ ένα κύκλο χρήσης και συντήρησης για το υπόλοιπο της ζωής του Διαφορά από τη συντήρηση άλλων προϊόντων Λογισμικό -> διορθώνεται, βελτιώνεται, επεκτείνεται Άλλα προϊόντα -> επιδιορθώνονται Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-15

Ο κύκλος ζωής λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-16

Ο κύκλος ζωής λογισμικού Φάση Συντήρησης Μια δύσκολη διαδικασία Πολλές φορές είναι προτιμότερο να αποσύρεται το πρόγραμμα και να κατασκευάζεται ένα νέο πρόγραμμα από την αρχή Λίγη επιπλέον προσπάθεια στην ανάπτυξη του λογισμικού μπορεί να έχει τεράστια διαφορά στη συντήρηση Το μεγαλύτερο μέρος της έρευνας στην Τ.Λ. εστιάζεται στην ανάπτυξη λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-17

Η παραδοσιακή φάση ανάπτυξης του κύκλου ζωής λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-18

Φάση καθορισμού απαιτήσεων (1/3) ΤΙ πρέπει να κάνει το σύστημα Απαιτήσεις προσανατολισμένες στις ανάγκες της εφαρμογής Καθορίζουν: Απαιτούμενη λειτουργικότητα, Προσφερόμενες υπηρεσίες, χρονικοί περιορισμοί, απαιτήσεις ασφάλειας, διασύνδεση με το εξωτερικό περιβάλλον, κλπ Εμπλεκόμενοι (stakeholders): μελλοντικοί χρηστες και ενδιαφερόμενοι, παρέχουν τις απαιτήσεις Μελέτη σκοπιμότητας, έρευνα αγοράς κλπ οδηγούν στο λεπτομερή καθορισμό απαιτήσεων Χρησιμοποιούνται μεθοδολογίες και εργαλεία Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-19

Φάση καθορισμού απαιτήσεων (2/3) ΤΙ πρέπει να κάνει το σύστημα Συγκέντρωση και ανάλυση αναγκών του χρήστη Διαπραγμάτευση με τους εμπλεκόμενους του έργου σχετικά με συμβιβασμούς που αφορούν ανάγκες, επιθυμίες, επιτευξιμότητα Ολοκλήρωση απαιτήσεων Χρησιμοποιούνται μεθοδολογίες και εργαλεία Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-20

Φάση καθορισμού απαιτήσεων (3/3) Έγγραφο καθορισμού απαιτήσεων λογισμικού Περιλαμβάνει όλες τις απαιτήσεις Συνιστά γραπτή συμφωνία μεταξύ των ενδιαφερόμενων μερών Καθοδηγεί την ανάπτυξη λογισμικού Είναι μέσο επίλυσης διαφορών Αποτελεί τη βάση για το σχεδιασμό του συστήματος Μπορεί να χρειαστεί αλλαγές λόγω της έλλειψης καλής επικοινωνίας και των συνεχώς μεταβαλλομένων απαιτήσεων Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-21

Προβλήματα στην ανάπτυξη λογισμικού λόγω έλλειψης καλής επικοινωνίας Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-22

Η παραδοσιακή φάση ανάπτυξης του κύκλου ζωής λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-23

Καθορισμός απαιτήσεων vs. Σχεδιασμός Καθορισμός απαιτήσεων -> προσδιορίζει το πρόβλημα προς επίλυση ΤΙ θα κάνει το σύστημα Εμπλέκει τους χρήστες: δίνουν τις απαιτήσεις και επιβεβαιώνουν την ορθή τους καταγραφή Σχεδιασμός -> αναπτύσσει τη λύση για το πρόβλημα ΠΩΣ θα το κάνει Χρησιμοποιεί σαν βάση τις καταγραμμένες απαιτήσεις Στην πράξη, πολλές φορές το ΤΙ και το ΠΩΣ εμπλέκονται και στις δύο φάσεις Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-24

Φάση σχεδιασμού (1/2) ΠΩΣ το σύστημα ικανοποιεί τις απαιτήσεις του Δημιουργία σχεδίου (design) συστήματος που είναι ο οδηγός της κατασκευής τους. Περιλαμβάνει Την Εσωτερική Δομή του συστήματος Τα Δεδομένα Την Ανθρώπινη Διασύνδεση Χρειάζονται μεθοδολογίες και εργαλεία μοντελοποίησης Εξελίσσονται διαρκώς Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-25

Φάση σχεδιασμού (2/2) ΠΩΣ το σύστημα ικανοποιεί τις απαιτήσεις του Αποτέλεσμα: λεπτομερής περιγραφή της δομής του συστήματος που μπορεί να μετατραπεί σε πρόγραμμα Αν το design έχει γίνει με CASE tool μπορεί να παραχθεί αυτόματα κώδικας Η ανθρώπινη διασύνδεση απαιτεί γνώσεις ψυχολογίας και εργονομίας Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-26

Η παραδοσιακή φάση ανάπτυξης του κύκλου ζωής λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-27

Φάση Υλοποίησης Δημιουργία συστήματος από το σχεδιασμό Συγγραφή προγραμμάτων Δημιουργία αρχείων δεδομένων Ανάπτυξη βάσεων δεδομένων Ρόλος του «αναλυτή λογισμικού» (ή «αναλυτή συστημάτων») έναντι του «προγραμματιστή» ασαφής διάκριση της ορολογίας Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-28

Η παραδοσιακή φάση ανάπτυξης του κύκλου ζωής λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-29

Φάση Ελέγχου (1/2) Στην παραδοσιακή φάση ανάπτυξης περιλαμβάνει Έλεγχο εγκυρότητας Επιβεβαίωση ότι το σύστημα ικανοποιεί τις προδιαγραφές Έλεγχο ατελειών Εύρεση σφαλμάτων Σήμερα ο έλεγχος δεν αφορά μόνο στα προγράμματα αλλά σε όλα τα αποτελέσματα των ενδιάμεσων βημάτων ανάπτυξης λογισμικού αποτελεί ένα μέρος της διαδικασίας Διασφάλισης Ποιότητας και διαπερνά όλο τον κύκλο ζωής λογισμικού Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-30

Φάση Ελέγχου (2/2) Στην πράξη (και το υποστηρίζουν πολλοί) ο έλεγχος δεν αποτελεί ξεχωριστό στάδιο αλλά ενσωματώνεται βασικά στάδια ανάπτυξης λογισμικού Καθορισμός Απαιτήσεων και Επιβεβαίωση Σχεδιασμός και Επαλήθευση Υλοποίηση και Έλεγχος Παρ όλες τις σύγχρονες τεχνικές διασφάλισης ποιότητας εξακολουθούν να υπάρχουν σφάλματα Η έρευνα σ αυτό τον τομέα συνεχίζεται Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-31

Συνεχίζεται Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7-32