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

Σχετικά έγγραφα
05 Ανάλυση Απαιτήσεων

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

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

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

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

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

12 Έλεχος και επαλήθευση λογισμικού

06 Αντικειμενοστρεφής ανάλυση και σχεδιασμός

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

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

ΙΔΡΥΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΡΕΥΝΑΣ (ITE)

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

10α Έλεγχος και επαλήθευση λογισμικού

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

2.3 Κριτήρια Ανάθεσης

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

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

03 Ανάλυση Απαιτήσεων και Σχεδιασμός Λογισμικού

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

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

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

Πολιτικές Ασφάλειας Πληροφοριακών Συστημάτων. Σωκράτης Κ. Κάτσικας Τμήμα Μηχ/κών Πληροφοριακών & Επικοινωνιακών Συστημάτων Πανεπιστήμιο Αιγαίου

14o ΕΤΗΣΙΟ ΣΥΝΕΔΡΙΟ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΨΗΦΙΑΚΩΝ 16/10/2012

Η Διαλειτουργικότητα στην Υπηρεσία του Πολίτη

Μοντελοποίηση Πεδίου

Διαχείριση Έργου Λογισμικού. Πασχαλίδης Παύλος ΤΕΙ ΘΕΣΣΑΛΙΑΣ

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

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

02α Διαχείριση Έργων Λογισμικού

κώστας βεργίδης εισαγωγή στις βασικές έννοιες των επιχειρησιακών διεργασιών γραφείο 322 κτίριο Γ

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

ΕΡΓΑΣΙΑ: Ετήσιας Συντήρησης και Υποστήριξης Λειτουργίας Δημοτικής Διαδικτυακής Πύλης

ΒΙΟΜΗΧΑΝΙΚΗ ΠΛΗΡΟΦΟΡΙΚΗ

Π3.1 ΣΧΕΔΙΟ ΑΞΙΟΛΟΓΗΣΗΣ

Εκπόνηση σχεδίων. 1a. Διαδικασία Εκκίνησης (Project Initiation) Επιχειρηματικό σχέδιο έργου (Project Business Case)

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Ενδιάμεσο πληροφοριακό σύστημα αξιολόγησης μαθημάτων: λειτουργία και συμπεράσματα

Διαχείριση Πολιτισμικών Δεδομένων

ΔΙΕΥΚΡΙΝΙΣΤΙΚΕΣ ΑΠΑΝΤΗΣΕΙΣ

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

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

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

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

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

ΟΠΣ ΕΣΠΑ Ειδική Υπηρεσία Ολοκληρωμένου Πληροφοριακού Συστήματος (ΕΥ ΟΠΣ) 1/17

ΕταιρικήΠαρουσίαση ΠΟΛΙΤΙΚΕΣ ΚΑΙ ΔΙΑΔΙΚΑΣΙΕΣ ΔΙΑΧΕΙΡΙΣΗΣ ΑΣΦΑΛΕΙΑΣ ΠΡΟΣΩΠΙΚΩΝ ΔΕΔΟΜΕΝΩΝ ΜΑΪΟΣ 2018

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

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

Αρχιτεκτονική Υπολογιστών

CYPDIS BI Platform. ών Υπηρεσιών

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

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

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

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

Προδιαγραφές Απαιτήσεων Επικύρωση Απαιτήσεων

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

Πληροφοριακά Συστήματα

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

Οι περιπτώσεις χρήσης

Διαλειτουργικότητα αυξημένης παραγωγικότητας έλλειψη συνεργασίας

ISMS κατά ISO Δεκέμβριος 2016

Μεθοδική Ανάπτυξη Δικτυακής Υποδομής. Παρουσίαση στην ημερίδα για Σύγχρονες τάσεις στις Τηλεπικοινωνίες και Τεχνολογίες Αιχμής

Λ. Μεσογείων 56, Αμπελόκηποι, Αθήνα, Τηλ: , Fax:

Διάλεξη 1. Εισαγωγή Επισκόπηση άσκησης

Rational Unified Process:

GDPR: Εχθρός (?) προ των πυλών. 18 Απριλίου 2018 Δημήτρης Στασινόπουλος IT Governance Deputy Director

Λογισμικό Open Source στις Υπηρεσίες των Βιβλιοθηκών του Πανεπιστημίου Αθηνών

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

ΕΛΕΓΧΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΕΠΙΧΕΙΡΗΣΙΑΚΗΣ ΣΥΝΕΧΕΙΑΣ (Auditing Business Continuity Plan & Disaster Recovery Plan)

Αριθμός Δέσμης Δράσεων. Δέσμη Δράσης Σεπ-14 Οκτ-Δεκ Ιαν-Ιουν Ιουλ-Δεκ Ιαν - Ιουν Ιουλ-Δεκ2

GDPR General Data Protection Regulation

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

Η απαίτηση δεν αφορά στις συγκεκριμένες υλοποιήσεις ΠΣ που ήδη λειτουργούν στα Πανεπιστήμια/ΤΕΙ αλλά στις κατηγορίες των ΠΣ γενικότερα.

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

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

Τα στοιχεία των ΠΣ στο πλαίσιο της ΔΔ Μοντέλο Δεδομένων Data Model

ΑΔΑ: ΒΛ9Θ9-ΓΣ3 ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ

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

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

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

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

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

Δείχτες Επιτυχίας και Δείχτες Επάρκειας

Πληροφοριακά Συστήματα, Οργανισμοί και Επιχειρησιακές Διαδικασίες

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

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων

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

Συστήματα Πληροφοριών Διοίκησης

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

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

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

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

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα CAD / CAM

ΕΠΛ 003.1: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Για διοικητικά στελέχη

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

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

5 ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΑΛΓΟΡΙΘΜΩΝ

Transcript:

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

Ανάλυση και Σχεδιασμός Η διαδικασία που μας επιτρέπει να: Αναλύσουμε ένα πολύπλοκο σύστημα σε επιμέρους απλούστερα τμήματα. Σχεδιάσουμε ξεχωριστά το ένα τμήμα από το άλλο. Συνθέσουμε ξανά τα τμήματα και τις αλληλεπιδράσεις τους σε ένα ενιαίο σύνολο. Επικοινωνήσουμε το αποτέλεσμα στους εμπλεκόμενους. 2

Περιεχόμενα Ανάλυση απαιτήσεων Συγγραφή προδιαγραφών 3

Ανάλυση απαιτήσεων Λειτουργικές απαιτήσεις Μη λειτουργικές απαιτήσεις Απαιτήσεις συστήματος Αναδυόμενες απαιτήσεις 4

Λειτουργικές απαιτήσεις Οι απαιτήσεις της λειτουργίας του λογισμικού συνήθως η νέα λειτουργικότητα που πρέπει να αναπτυχθεί στο πλαίσιο του έργου Παραδείγματα: επιχειρησιακή λογική, διαπίστευση και δικαιοδοσία χρηστών, διαχειριστικές λειτουργίες 5

Επιχειρησιακή λογική business logic Οι επιχειρησιακές διαδικασίες business processes Οι επιχειρησιακοί κανόνες business rules Μερική ή πλήρης "ηλεκτρονικοποίηση" των λειτουργιών του οργανισμού 6

Διαπίστευση χρηστών user authentication Σημεία εισόδου στο σύστημα entry points μηχανισμοί διαπίστευσης χρηστών Επιβεβαίωση ότι ο χρήστης είναι: "υπαρκτός" π.χ. ο λογαριασμός του είναι εγγεγραμμένος στον "πίνακα" των χρηστών της ΒΔ "έγκυρος" π.χ. γνωρίζει το προσωπικό του "μυστικό" που έχει συνδεθεί με το λογαριασμό του "ενεργός" π.χ. δεν έχει απενεργοποιηθεί από το διαχειριστή 7

Δικαιοδοσία χρηστών user authorization Διαχείριση δικαιωμάτων: ποιος χρήστης επιτρέπεται να εκτελέσει ποια ενέργεια. Ανάθεση/ανάκληση δικαιωμάτων Ρόλοι, Access Control List ACL 8

Διαχειριστικές λειτουργίες administrative functions Ποιες είναι οι διαχειριστικές λειτουργίες; Πώς εκτελούνται; Θα παραμετροποιούνται από το χρήστη και πόσο; 9

Λειτουργίες αναφορών reporting requirements Τι αναφορές απαιτούνται ; Πόσο παραμετροποιήσιμες πρέπει να είναι; Ποιος έχει δικαίωμα να τις προσπελαύνει; 10

Μη λειτουργικές απαιτήσεις Απαιτήσεις για ποιοτικά χαρακτηριστικά του λογισμικού Προσβασιμότητα από ΑμεΑ Διαθεσιμότητα Ανάνηψη από καταστροφές Ασφάλεια Ακεραιότητα Ευελιξία Επεκτασιμότητα Απόδοση Απροκρισιμότητα Στην πράξη, κάποιες απαιτήσεις μπορεί να βρίσκονται "κάπου ανάμεσα" στις λειτουργικές και στις μη λειτουργικές 11

Απαιτήσεις συστήματος Απαιτήσεις σχετικές με το "σύστημα" ή το "περιβάλλον" στο οποίο εντάσσεται το υπό ανάπτυξη λογισμικό π.χ. μπορεί να είναι συστατικό ενός μεγαλύτερου όλου Απαιτήσεις υλικού, απαιτήσεις δικτύου, απαιτήσεις διαλειτουργικότητας, κ.ά 12

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

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

Τήρηση ημερολογίων audit tracking Ποιες ενέργεις καταγράφονται σε ημερολόγια; Σε ποιο βαθμό λεπτομέρειας; Και με ποια τελική χρήση; 15

Μαζική εισαγωγή / εξαγωγή δεδομένων Data import / export Απατείται η μαζική εισαγωγή / εξαγωγή δεδομένων; Θα παραμετροποιείται από το χρήστη και πόσο; Ποιοι μορφότυποι αρχείων / δεδομένων θα πρέπει να υποστηρίζονται; 16

Διαλειτουργικότητα interoperability Το υπό ανάπτυξη σύστημα θα διαλειτουργεί με τρίτα συστήματα; Τι είδους δεδομένα θα ανταλλάσονται; Με ποιους μηχανισμούς, μορφότυπους και πρωτόκολλα; 17

Νομικές ή κανονιστικές απαιτήσεις Το υπό ανάπτυξη σύστημα θα πρέπει να είναι σύννομο προσωπικά δεδομένα, πνευματικά δικαιώματα, κτλ. Το υπό ανάπτυξη σύστημα μπορεί να διέπεται από συγκεκριμένο νομικό ή κανονιστικό πλαίσιο για παράδειγμα, πληροφοριακά συστήματα δημοσίου τομέα. 18

Συγγραφή Προδιαγραφών Το κείμενο που μετατρέπει τις απαιτήσεις σε τεχνικές προδιαγραφές Η συγγραφή του λαμβάνει χώρα ΠΡΙΝ την υλοποίηση Και αποτελεί το "συμβόλαιο" "κοινό τόπο" για το τι θα αναπτυχθεί 19

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

Οπτικοποίηση των προδιαγραφών UML διαγράμματα ER διαγράμματα DF διαγράμματα Διάφορα διαγράμματα και εργαλεία μοντελοποίησης ανά περίπτωση π.χ. business process modeling Wireframes Software prototyping 21

Ζητούμενα από το κείμενο των προδιαγραφών Σαφής καθορισμός των ορίων του λογισμικού και της αλληλεπίδρασής του με το παραγωγικό του περιβάλλον production environment Αρχιτεκτονικός σχεδιασμός και συστατικά του λογισμικού Επαληθευσιμότητα, ακρίβεια και σαφήνεια των απαιτήσεων Σύνδεση των απαιτήσεων με τις ανάγκες πηγή/προέλευση απαίτησης Οριοθέτηση αποδοχής/απόρριψης παραδοτέων Χρονοπρογραμματισμός έργου και παραδοτέα: σε επόμενη διάλεξη 22

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

Πρακτικές συμβουλές α Αν δεν καταλαβαίνεις εσύ τι γράφεις, μην περιμένεις να το καταλάβουν οι άλλοι Θα πρέπει το κείμενο να είναι κατανοητό από όλους τους συμμετέχοντες στην ανάλυση με την εξαίρεση, ενδεχομένως, των πολύ τεχνικών σημείων Δημιουργία ενιαίου αφηγήματος Ανάδειξη των αναγκών και των στόχων 24

Πρακτικές συμβουλές β Ιεράρχηση και διάκριση των ζητημάτων πλήρως ή μερικώς απαραίτητο, πρωτεύον ή δευτερεύον, προαπαιτούμενο ή επακόλουθο Ισοβαρής ανάλυση των σημαντικών ζητημάτων Οριοθέτηση των αποδεκτών εναλλακτικών Χρήση εικόνων, σχημάτων και διαγραμμάτων αλλά όχι υπερβολική Χρήση όσο το δυνατό πιο μικρών προτάσεων για τα πιο τεχνικά μέρη 25