Μοντελοποίηση Λειτουργιών (Functional Modeling)



Σχετικά έγγραφα
Μοντελοποίηση Λειτουργιών (Functional Modeling)

CS 351: Information Systems Analysis and Design

CS 351: Information Systems Analysis and Design. Why we model?

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

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

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

Use Cases: μια σύντομη εισαγωγή. Heavily based on UML & the UP by Arlow and Neustadt, Addison Wesley, 2002

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

Στο εστιατόριο «ToDokimasesPrinToBgaleisStonKosmo?» έξω από τους δακτυλίους του Κρόνου, οι παραγγελίες γίνονται ηλεκτρονικά.

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

περιεχόμενα παρουσίασης Actors Σενάρια Περιεχόμενο περιπτώσεων χρήσης Πρότυπα περιπτώσεων χρήσης Διαγράμματα περιπτώσεων χρήσης

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

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

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

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

Οδηγίες Αγοράς Ηλεκτρονικού Βιβλίου Instructions for Buying an ebook

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

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

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

Περίπτωση Χρήσης Use case

Activity Diagrams Examples and Enterprise Architect v6.5

Ανάλυση Περιπτώσεων Χρήσης

Περιπτώσεις Χρήσης και Διαγράµµατα Περιπτώσεων Χρήσης. Use Cases and Use Case Diagrams

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

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

Bizagi Modeler: Συνοπτικός Οδηγός

Ανάλυση Πληροφοριακών Συστημάτων. «Διαγράμματα περιπτώσεων χρήσης» Βασίλειος Καρακόιδας

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 2 ο Εργαστήριο -

How to register an account with the Hellenic Community of Sheffield.

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 1 ο Εργαστήριο

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 8 ο & 9 ο Εργαστήριο -

Τμήμα Μηχανικών Η/Υ Τηλεπικοινωνιών & Δικτύων,

1 η ΑΣΚΗΣΗ ΕΡΓΑΣΤΗΡΙΟΥ (ομαδική: 2 ή 3 ατόμων) (Ημερομηνία Παράδοσης: 18/11/2017) (Ζητούμενο)

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

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

PDF created with pdffactory Pro trial version

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

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο

Ενότητα 2 Εργαλεία για την αναζήτηση εργασίας: Το Βιογραφικό Σημείωμα

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

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

Μέθοδοι μοντελοποίησης

Διαγράμματα UML στην Ανάλυση. Μέρος Γ Διαγράμματα Επικοινωνίας Διαγράμματα Ακολουθίας Διαγράμματα Μηχανής Καταστάσεων

Μεταπτυχιακή Εργασία Διαχείριση Επιχειρησιακών Διαδικασιών με τη χρήση Τεχνολογίας BPMN

Δημιουργία Λογαριασμού Διαχείρισης Business Telephony Create a Management Account for Business Telephony

Εργαστήριο Τεχνολογίας Λογισμικού και Ανάλυσης Συστημάτων - 5 ο Εργαστήριο -

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

Διαχείριση Έργων Πληροφορικής

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

Requirements Απαιτήσεις

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

Προσομοίωση BP με το Bizagi Modeler

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

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

Θεωρίες Μάθησης και Εκπαιδευτικό Λογισμικό

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

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

Εννοιολογικό Μοντέλο. Conceptual Model

Διάλεξη 10: Αντικειμενοστρεφής Σχεδιασμός ΙI. Διδάσκων: Παναγιώτης Ανδρέου

Φροντιστήριο 5. Ημερομηνία: 01/12/2006 Θεματική Ενότητα: Μοντελοποίηση Συμπεριφοράς Θέμα: Διαγράμματα αλληλεπίδρασης και καταστάσεων

Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade

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

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

SOAP API. Table of Contents

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

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

UML: Unified modelling language

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

Advanced Subsidiary Unit 1: Understanding and Written Response

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

Μοντελοποίηση ροών εργασίας

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών. Business Process Modeling Notation (BPMN)

UNIVERSITY OF CALIFORNIA. EECS 150 Fall ) You are implementing an 4:1 Multiplexer that has the following specifications:

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

ΟΔΗΓΙΕΣ ΓΙΑ ΧΡΗΣΗ ΤΟΥ ΕΡΓΑΛΕΙΟΥ RATIONAL ROSE

Τ.Ε.Ι. ΚΡΗΤΗΣ, Σ.Δ.Ο., Τμήμα Λογιστικής. Business Processes

Kanban μέθοδος για τη Διαχείριση Έργων Λογισμικού

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

Εισαγωγή στα Πληροφοριακά Συστήματα. Ενότητα 4:

Ανάλυση Πληροφοριακών Συστημάτων. «Εισαγωγή στην UML» Βασίλειος Καρακόιδας

Architecture οf Integrated Ιnformation Systems (ARIS)

Ελληνικό Ανοικτό Πανεπιστήµιο. Τα διαγράµµατα UML. ρ. Πάνος Φιτσιλής

Πανεπιστήµιο Πειραιώς Τµήµα Πληροφορικής

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

Test Data Management in Practice

Φροντιστήριο 3. <logo image> Ημερομηνία: Παρασκευή 10/11/2006 Θεματική Ενότητα: Activity Diagrams

(C) 2010 Pearson Education, Inc. All rights reserved.

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

Instruction Execution Times

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

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

CYTA Cloud Server Set Up Instructions

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

Διαχείριση Έργων Ανάπτυξης Πληροφοριακών Συστημάτων

Ηλεκτρονικό Κατάστημα

Πληροφοριακά Συστήματα Διοίκησης Ενότητα 8: Διαγράμματα Δραστηριοτήτων

Lecture 2: Dirac notation and a review of linear algebra Read Sakurai chapter 1, Baym chatper 3

Ανάλυση Πληροφοριακών Συστημάτων. «Βασικές Έννοιες Αντικειμενοστρεφούς Προγραμματισμού Διαγράμματα κλάσεων» Βασίλειος Καρακόιδας

Χρειάζεται να φέρω μαζί μου τα πρωτότυπα έγγραφα ή τα αντίγραφα; Asking if you need to provide the original documents or copies Ποια είναι τα κριτήρια

TMA4115 Matematikk 3

Transcript:

Management Doctor Make payment arrangements Produce schedule information Record Availability «extend» «include» Manage schedule «include» Make old pat. app Make appointment Make new pat. app «include» Create new pat. New Patient Patient Old Patient [ rush order ] Overnight Deli very Fill Receive [ else ] Regular Delivery Cl ose End Send Invoice Receive Payment Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης Υπολογιστών ΗΥ351: Ανάλυση και Σχεδίαση Πληροφοριακών Συστημάτων Information Systems Analysis and Design Μοντελοποίηση Λειτουργιών (Functional Modeling) Appointment System Γιάννης Τζίτζικας ιάλεξη : 8 Ημερομηνία : Θέμα : U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 1 ιάρθρωση Μοντελοποίηση Λειτουργιών (Functional Modeling) Μοντελοποίηση Λειτουργιών με τη UML Περιπτώσεις Χρήσης (Use Cases) Διαγράμματα Περιπτώσεων Χρήσης Διαγράμματα Δραστηριοτήτων (Activity Diagrams) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 2

Υψηλού επιπέδου επιχειρηματικές ανάγκες καταγεγραμμένες στην Πρόταση Συστήματος Καθορισμός Απαιτήσεων Αναλυτική Καταγραφή Συγκεκριμένων απαιτήσεων Επόμενο βήμα Μοντελοποίηση του Συστήματος Λειτουργική /Δομική/Συμπεριφοράς (Functional/Structural/Behavioral) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 3 Τι είναι η Μοντελοποίηση Λειτουργιών; Ως κύριο στόχο έχει την περιγραφή: των επιχειρηματικών επεξεργασιών (business processes), και της αλληλεπίδρασης του Πληροφοριακού Συστήματος με το περιβάλλον του U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 4

Πως μοντελοποιούμε τις λειτουργίες στην Αντικειμενοστρεφή Ανάλυση και Σχεδίαση; Συνήθως χρησιμοποιούμε δύο τύπους διαγραμμάτων της UML: Διαγράμματα Δραστηριοτήτων (Activity Diagrams) Επιτρέπουν την μοντελοποίηση ροών εργασιών (του οργανισμού ή του συστήματος) Περιπτώσεις Χρήσης και Διαγράμματα Περιπτώσεων Χρήσης Επιτρέπουν την μοντελοποίηση των βασικών αλληλεπιδράσεων μεταξύ του πληροφοριακού συστήματος και του περιβάλλοντος του. Παρατηρήσεις: Μπορούμε να τα χρησιμοποιήσουμε για να περιγράψουμε το υπάρχον (χειρογραφικό ή μηχανογραφημένο) ή το προς κατασκευή πληροφοριακό σύστημα. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 5 Τι διαφέρουν τα ιαγράμματα ραστηριοτήτων από τα ιαγράμματα Περιπτώσεων Χρήσης; Activity Diagrams Τα χρησιμοποιούμε κυρίως για να μοντελοποιήσουμε τις «εσωτερικές» λειτουργίες του συστήματος Π.χ. για να περιγράψουμε πως λειτουργεί ο οργανισμός, ή πως λειτουργεί εσωτερικά μια μέθοδος μιας κλάσης Use Cases & Use Case Diagrams Τα χρησιμοποιούμε για να μοντελοποιήσουμε τις «εξωτερικές» λειτουργίες (τις άμεσα εμφανείς) του συστήματος Π.χ. πως αλληλεπιδρά με τους χρήστες του συστήματος ή με άλλα πληροφοριακά συστήματα U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 6

Ένας οργανισμός U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 7 Τα ιαγράμματα ραστηριοτήτων επιτρέπουν την μοντελοποίηση των επιχειρηματικών διαδικασιών του οργανισμού Receive Display Current Computer Get Request Fill Send Invoice [ timeout ] Display Purchase Form [ rush order ] Overnight Deli very [ else ] Regular Delivery Get Purchase Details [ incomplete ] [ OK ] Store Receive Payment Email Details Cl ose End Οργανισμός U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 8

Οι Περιπτώσεις Χρήσης μοντελοποιούν την αλληλεπίδραση μεταξύ το Πληροφοριακού Συστήματος και του Περιβάλλοντος του use case use case use case Information System use case U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 9 Περιπτώσεις Χρήσης Use Cases

Τι μπορούμε να μοντελοποιήσουμε με Περιπτώσεις Χρήσης; Μοντελοποιούν την εξωτερική λειτουργική όψη του συστήματος Πως αλληλεπιδρά με το περιβάλλον του (π.χ. με τους χρήστες Περιγράφουν τι μπορούν να κάνουν οι χρήστες και πως ανταποκρίνεται το σύστημα Πλέον αποτελούν βασικό εργαλείο για την ανάπτυξη και προγραμματισμό πληροφοριακών συστημάτων. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 11 Τι είναι μια Περίπτωση Χρήσης (Use Case); Περίπτωση Χρήσης (Use Case) = ένα σύνολο σεναρίων για την επίτευξη ενός σκοπού του χρήστη Σενάριο = μια ακολουθία βημάτων που περιγράφουν την αλληλεπίδραση μεταξύ χρήστη και συστήματος Παράδειγμα Σεναρίου Ο πελάτης πλοηγείται στον κατάλογο και προσθέτει τα επιθυμητά προϊόντα στο καλάθι αγοράς. Αν θελήσει να πληρώσει τότε περιγράφει τον επιθυμητό τρόπο αποστολής, δίδει τα στοιχεία της πιστωτικής του κάρτας και επιβεβαιώνει την αίτηση αγοράς. Το σύστημα ελέγχει τα στοιχεία της κάρτας και επιβεβαιώνει την αγορά (αμέσως και με την αποστολή η-μηνύματος επιβεβαίωσης). U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 12

Περιεχόμενο και μορφότυπος μια Περίπτωσης Χρήσης Μια Περ. Χ. συνήθως περιλαμβάνει: Ένα συνηθισμένο σενάριο (όπου όλα πάνε καλά) (all-goes-well scenario) Διάφορες ενναλακτικές ροές O μορφότυπος (format) μιας Περίπτωσης Χρήσης Ακολουθία αριθμημένων βημάτων Εναλλακτικές (alternatives) ως παραλλαγές αυτής της ακολουθίας Προαιρετικό: προσθήκη μιας γραμμής με προσυνθήκες (preconditions), ήτοι συνθήκες που πρέπει να είναι αληθείς για να ξεκινήσει η Περίπτωση Χρήσης Πόσο λεπτομερής πρέπει να είναι μια Περίπτωση Χρήσης; Όσο μεγαλύτερο είναι το ρίσκο τόσο πιο αναλυτικοί πρέπει να είμαστε U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 13 Παράδειγμα: Περίπτωση Χρήσης Αγορά Προϊόντος Αγορά Προϊόντος 1. Ο Πελάτης πλοηγείται στον κατάλογο και επιλέγει τα προϊόντα που επιθυμεί να αγοράσει 2. Ο Πελάτης επιλέγει τη λειτουργία «Παραγγελία» 3. Ο Πελάτης συμπληρώνει τα στοιχεία αποστολής (δνση, παράδοση σε 24 ώρες, παράδοση σε 3 ημέρες) 4. Το Σύστημα του παρουσιάζει αναλυτικά την τιμή της παραγγελίας (περιλαμβανομένων των εξόδων αποστολής) 5. Ο Πελάτης συμπληρώνει τα στοιχεία της πιστωτικής του κάρτας 6. Το Σύστημα ελέγχει τα στοιχεία της κάρτας (εξουσιοδότηση, πιστωτικό όριο,..) 7. Το Σύστημα επιβεβαιώνει την πώληση αμέσως 8. Το Σύστημα στέλνει ένα η-μήνυμα επιβεβαίωσης στον Πελάτη Εναλλακτική: Authorization Failure Στο βήμα 6, το Σύστημα αποτυγχάνει να εγκρίνει την αγορά μέσω πιστωτικής. Ο Πελάτης μπορεί να ξαναδώσει τα στοιχεία της πιστωτικής του κάρτας και να ξαναπροσπαθήσει Εναλλακτική: Μόνιμος (Σταθερός) Πελάτης 3α. Το σύστημα παρουσιάζει τη διεύθυνση του και τα 4 τελευταία ψηφία της πιστωτικής του 3β. Ο Πελάτης μπορεί να δεχθεί ή να επικαλύψει αυτά τα στοιχεία Επιστροφή στο βήμα 8 του αρχικού σεναρίου U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 14

Παράδειγμα Buy Buy a Product Product 1. 1. Customer Customer browses browses through through catalog catalogand and selects selects items items to to buy buy 2. 2. Customer Customer goes goes to to check check out out 3. 3. Customer Customer fills fills in in shipping shipping information information (address, (address, next-day next-day or or 3-day 3-day delivery) delivery) 4. 4. System System presents presents full full pricing pricing information, information, including including shipping shipping 5. 5. Customer Customer fills fills in in credit credit card card information information 6. 6. System System authorizes authorizes purchase purchase 7. 7. System System confirms confirms sale sale immediately immediately 8. 8. System System sends sends confirming confirming email email to to customer customer Alternative: Alternative: Authorization Authorization Failure Failure At At step step 6, 6, system system fails fails to to authorize authorize credit credit purchase purchase Allow Allow customer customer to to re-enter re-enter credit credit card card information information and and re-try re-try Alternative: Alternative: Regular Regular Customer Customer 3a. 3a. System System displays displays current current shipping shipping information, information, pricing pricing information, information, and and last last 4 digits digits of of credit credit card card information information 3b. 3b. Customer Customer may may accept accept or or override override these these details details Return Return to to primary primary scenario scenario at at step step 6 U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 15 Τύποι Περιπτώσεων Χρήσης Εποπτικές/ Βασικές (Overview/Essential): Υψηλού επιπέδου, που συνήθως συντάσσονται στην αρχή του έργου. Περιγράφουν τα ελάχιστα που χρειάζεται για να κατανοήσουμε την λειτουργικότητα του συστήματος. Είναι ανεξάρτητες υλοποίησης (αλλιώς λέγονται Business Use Cases ή Overview Use Cases) Λεπτομερείς/Πραγματικές (Detailed/Real) Εκλεπτύνουν και περιγράφουν ακριβώς τις εποπτικές. Περιγράφουν συγκεριμένα βήματα (π.χ. η γραμματέας προσθέτει ένα.pdf έγγραφο στο σύστημα και μετά..) (αλλιώς λέγονται System Use Cases) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 16

Elements of a Use-Case Description Use Case Name: ID: Importance Level: Primary Actor: Use Case Type: Stakeholders and Interests: Brief Description: Trigger: Relationships: (Association, Include, Extend, Generalization) Normal Flow of Events: Subflows: Alternate/Exceptional Flows: Taken from Dennis et al. 2005 U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 17 Παράδειγμα: Κλείσιμο Ιατρικού Ραντεβού (1/3) Όνομα Περίπτωσης Χρήσης: Κλείσιμο Ραντεβού Αριθμός: 2 Σπουδαιότητα: Υψηλή Κύριος Δράστης: Ασθενής Τύπος Περ. Χρήσης: Αναλυτική/Ουσιώδης Εμπλεκόμενοι και Στόχοι: Ασθενής: θέλει να ορίσει, αλλάξει ή ακυρώσει ένα ιατρικό ραντεβού Σύντομη Περιγραφή: Οασθενήςθέλειναορίσει, αλλάξει ή ακυρώσει ένα ιατρικό ραντεβού Ερέθισμα (συμβάν ενεργοποίησης): Ο ασθενής συνδέεται και επιλέγει ΡΑΝΤΕΒΟΥ Τύπος ερεθίσματος: Εξωτερικό Σχέσεις: Συσχέτιση (association) : Ασθενής Περιλαμβάνει (include) : «Διευθέτηση Τρόπου Πληρωμής» Επεκτείνει (extend) : «Δημιουργία Νέου Ασθενούς» Εξειδικεύει (generalizaiton) : U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 18

Παράδειγμα: Κλείσιμο Ιατρικού Ραντεβού (2/3) Φυσιολογική ροή γεγονότων: 1. Ο ασθενής συνδέεται με τον ιστόχωρο 2. Ο ασθενής πληκτρολογεί το όνομα του και τον αριθμό μητρώου του 3. Το σύστημα επιβεβαιώνει ότι ο ασθενής είναι καταγεγραμμένος στη βάση 4. Το σύστημα εκκινεί την περίπτωση χρήσης «Διευθέτηση Τρόπου Πληρωμής» 5. Ο ασθενής επιλέγει τι θέλει να κάνει: αν θέλει νέο ραντεβού, δες Ρ1 αν θέλει ακύρωση ραντεβού, δες Ρ2 αν θέλει αλλαγή ραντεβού δες Ρ3 6. Το σύστημα εμφανίζει τα αποτελέσματα του 5 στον χρήστη Συνιστώσες ροές γεγονότων Ρ1: Νέο ραντεβού 1. Το σύστημα ρωτά τον χρήστη για την επιθυμητή ημερομηνία και ώρα 2. Το σύστημα προγραμματίζει το νέο ραντεβού λαμβάνοντας υπόψη τις επιθυμίες του ασθενή και τις διαθέσιμες ημερομηνίες U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 19 Παράδειγμα: Κλείσιμο Ιατρικού Ραντεβού (3/3) Ρ2: Ακύρωση ραντεβού 1. Το σύστημα ρωτά τον χρήστη την ημερομηνία του προς ακύρωση ραντεβού 2. Το σύστημα βρίσκει και διαγράφει την αντίστοιχη εγγραφή από το πρόγραμμα των ραντεβού Ρ3: Αλλαγή ραντεβού 1. Το σύστημα εκτελεί το Ρ2 2. Το σύστημα εκτελεί το Ρ1 Εναλλακτικές Ροές - Εξαιρέσεις 3α: Το σύστημα εκτελεί την περίπτωση χρήσης «Δημιουργία Νέου Ασθενούς» Ρ1.2α1: Το σύστημα προτείνει εναλλακτικές ημερομηνίες/ώρες Ρ1.2α2: Ο ασθενής επιλέγει μια από αυτές ή αποφασίζει να μην κλείσει ραντεβού U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 20

Οδηγίες για τη σύνταξη Περιπτώσεων Χρήσης (Guidelines for Creating Use Case Descriptions) Write each step in Subject-Verb-Object form Clarify who is the initiator in each step Describe the steps as if you were an independent external observer Write at the same level of abstraction Ensure that there is a sensible set of steps, like: the primary actor initiates the dialog and sends data to the system the system checks the validity of the data/request the system processes the request the system returns to the actor the results of the processing Apply KISS principle liberally Write repeating instructions after the set of steps to be repeated. Adapted from Dennis et al. 2005 U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 21 ιαγράμματα Περιπτώσεων Χρήσης Use Case Diagrams

ιαγράμματα Περιπτώσεων Χρήσης Use Case Diagrams Σκοπός: Οπτικοποίηση πολλών Περιπτώσεων Χρήσης Ένα Διάγραμμα Περιπτώσεων Χρήσης (Use Case Diagram) αποτελείται από: Ένα πλαίσιο που υποδηλώνει το σύστημα Το πλαίσιο περιέχει ένα οβάλ για κάθε Περίπτωση Χρήσης Τα οβαλ των Περιπτώσεων Χρήσης μπορούν να συνδέονται με σχέσεις εγκλεισμού (include), γενίκευσης (isa) και επέκτασης (extend) Έξω από το πλαίσιο υπάρχουν σύμβολα που υποδηλώνουν τους Δράστες (Actors), που είναι οι χρήστες (άνθρωποι ή άλλα συστήματα) του συστήματος οι οποίοι συνδέονται με ακμές με τα οβαλ των ΠεριτπώσεωνΧρήσηςστιςοποίεςμπορούνναλάβουνμέρος. Οι δράστες μπορεί να συνδέονται με ακμές τύποι isa. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 23 Use Case Diagrams > Actors ράστες (Actors) Οι Δράστες «εκτελούν» τις Περιπτώσεις Χρήσης Δράστης = ρόλος που ένας χρήστης μπορεί να έχει σε σχέση με το σύστημα Ένας χρήστης μπορεί να ενσαρκώσει πολλούς ρόλους Οι δράστες δεν είναι πάντα άνθρωποι: Μπορεί να είναι ένα εξωτερικό σύστημα που χρειάζεται κάποιες πληροφορίες από το εν λόγω. AddTask ToDo User FileSystem Remove Task U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 24

Παράδειγμα Το πλαίσιο οριοθετεί το σύστημα (Boundary of the system) Taken from Volere Requirements Specification Document U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 25 Συσχετίσεις μετάξύ των περιπτώσεων χρήσης Use Case Diagrams > UC Relationships Include UC UC Για αποφυγή επαναλήψεων (άρα για να αποφύγουμε το copy-paste) ISA UC UC Η ειδική ΠΧ μπορεί να υπερκαλύψει (override) οποιοδήποτε τμήμα της γενικής ΠΧ. Παρά ταύτα η ειδική πρέπει να αφορά στον γενικό στόχο του χρήστη στον οποίο αφορά και η γενική. extend UC UC Μοιάζει με την ISA. Η εκτεταμένη UC μπορεί να έχει επιπλέον συμπεριφορά αλλά μόνο σε δηλωμένα «σημεία επέκτασης» ( extension points ) της βασικής ΠΧ. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 26

Παράδειγμα Γενίκευσης Example: Generalization Επικύρωση Χρήστη isa isa Έλεγχος Συνθήματος (Check Password) Σάρωση Αμφιβληστροειδούς (Retinal Scan) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 27 Παράδειγμα Γενίκευσης και Εγκλεισμού Example: Generalization + Include Place «include» Validate User isa Check Password Retinal Scan U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 28

Παράδειγμα Γενίκευσης, Εγκλεισμού και Επέκτασης Example: Generalization + Include + Extend Place extension points set priority «include» Validate User «extend» (set priority) Place Rush Check Password isa Retinal Scan <<extend>> (payment info, shipping info) RegularCustomer Buy a Product U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 29 Παράδειγμα διαγράμματος που μοντελοποιεί τις λειτουργίες ενός συστήματος κράτησης ραντεβού Appointment System Make appointment Patient Management Produce schedule information Doctor Record Availability U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 30

Εξειδίκευση ραστών (Specializing an actor) Appointment System Make appointment Patient Management Doctor Produce schedule information Record Availability isa New Patient U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 31 Use Case Diagram for an Appointment System Προσθήκη «include» Appointment System Make appointment Patient Produce schedule information «include» isa Management Manage schedule New Patient Record Availability «include» Doctor U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 32

Use Case Diagram for an Appointment System Προσθήκη «Isa» και «extend» Appointment System Make payment arrangements «extend» Make appointment Patient Management Produce schedule information «include» Manage schedule Make old pat. app Make new pat. app «include» New Patient Record Availability «include» Create new pat. Old Patient Doctor U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 33 Παράδειγμα: Πληροφοριακό Σύστημα Κινηματογράφου Στόχος: Αύξηση των κερδών μέσω μείωσης των λειτουργικών εξόδων και αύξησης των πελατών. Η αύξηση των πελατών αναμένεται να επιτευχθεί με την παροχή καλύτερων υπηρεσιών ενημέρωσης και εξυπηρέτησης πελατών. Το τελευταίο περιλαμβάνει κάρτα πελατών. Η μείωση των λειτουργικών εξόδων αναμένεται να επιτευχθεί με μείωση του προσωπικού για την έκδοση εισιτηρίων. Επίσης αναμένεται μείωση του χρόνου αναμονής στα εκδοτήρια εισιτηρίων και καλύτερη ενημέρωση πελατών για το πρόγραμμα προβολών μέσω email/sms U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 34

Πληροφοριακό Σύστημα Κινηματογράφου U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 35 Μεθοδολογικά Ζητήματα Μπορούμε να ξεκινήσουμε από το Use Case Diagram και κατόπιν να περιγράψουμε κάθε Use Case Μετά μπορούμε να αναθεωρήσουμε και να βελτιώσουμε το UCD Πόσες Περιπτώσεις Χρήσης να ορίσουμε? Π.χ. για ένα έργο 10 ανθρωποχρόνων 12 Περιπτώσεις Χρήσης U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 36

Βήματα Σύνταξης Περιπτώσεων Χρήσης (Steps in Writing Use Cases) A/ Identify the major UCs B/ Expand the major UCs C/ Confirm the major UCs 1 Review the Activity Diagram (in case it is available) 2 Identify the system s boundaries 3 List the primary actors and their goals 4 Identify and write the major use cases 5 Carefully review use cases 6 Choose one major use case to expand 7 Fill in details on the use-case template 8 Fill in the steps of the normal flow of events 9 Normalize the size of each step 10 Describe alternate or exceptional flows 11 Simplify and organize as necessary 12 Review the current set (check semantics, involve the users) 13 Iterate the entire set of steps D/ Create the UC diagram 14 Start with system boundary 15 Place elements in order to be easy to read 16 Place actors on the diagram, connect them with UCs U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 37 Μερικά Πλεονεκτήματα των Περιπτώσεων Χρήσης Αντί της μοντελοποίησης και της κατανόησης ολόκληρου του οργανισμού, προσπαθούμε να καταλάβουμε κάθε Περίπτωση Χρήσης ξεχωριστά Από τις Περιπτώσεις Χρήσης μπορούμε να εκτιμήσουμε το χρόνο και την προσπάθεια που θα απαιτηθεί για το σχεδιασμό και υλοποίηση του συστήματος Ο Διευθυντής του έργου (Project manager) μπορεί να ελέγξει την πρόοδο του έργου παρατηρώντας την πρόοδο της κάθε Περίπτωσης Χρήσης U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 38

ιαγράμματα ραστηριοτήτων Activity Diagrams Τι μπορούμε να μοντελοποιήσουμε με ιαγράμματα ραστηριοτήτων; Μπορούν να χρησιμοποιηθούν για να μοντελοποιήσουν οποιαδήποτε διαδικασία Από επιχειρηματικές υψηλού επιπέδου, έως τη ροή ελέγχου μιας Περίπτωσης Χρήσης, ή τη ροή ελέγχου μιας συγκεκριμένης μεθόδου μιας κλάσης Μοιάζουν με διαγράμματα ροής (flow charts) αλλά έχουν την επιπλέον δυνατότητα να αναπαριστούν παραλληλία (parallelism), σύμπτωση (concurrency ) και σύνθετες αποφάσεις (complex decisions). Συνδυάζουν ιδέες από διάφορες τεχνικές όπως: event diagrams, SDL state modeling, workflow modeling, Petri Nets U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 40

ραστηριότητες και ιαγράμματα ραστηριοτήτων Activities and Activity Diagrams Activity (or activity state) Είναι μια κατάσταση πράττειν (state of doing something): είτε στον πραγματικό κόσμο (π.χ. πλήκτριση ενός γράμματος) ή στον υπολογιστή (π.χ. εκτέλεση μιας ρουτίνας λογισμικού) Μπορεί να παριστάνει μια χειρονακτική ή μια αυτοματοποιημένη δραστηριότητα Κάθε δραστηριότητα έχει ένα όνομα Παραδείγματα ονομάτων: Λήψη Παραγγελίας, Κράτηση Ραντεβού, κλπ. Activities vs Actions Actions: άτομα (non decomposable) Activities: μπορούν να αναλυθούν σε άλλες activities ή/και actions. Activity Diagram Περιγράφει την ακολουθία των δραστηριοτήτων και υποστηρίζει συνθήκες και παραλληλία U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 41 Καθημερινά παραδείγμτα (πηγή: http://odl-skopje.etf.ukim.edu.mk/uml-help/) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 42

Ένα απλό παράδειγμα ιαγράμματος ραστηριοτήτων Περιγράφει τον «κλασσικό» τρόπο Λήψεως Παραγγελιών σε ένα ιστότοπο. Εντολή Παραγγελίας [timeout] Εμφάνιση Δελτίου Παραγγελίας Συμπλήρωση Δελτίου Παραγγελίας [ατελή στοιχεία] Αποθήκευση Παραγγελίας Αποστολή Email με τα στοιχεία της παραγγελίας U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 43 Ένα διάγραμμα δραστηριοτήτων Διαχείριση Παραγγελιών Receive start activity fork (parallel behaviour) διακλάδωση Fill Send Invoice πηρούνι branch condition [ rush order ] [ else ] Overnight Deli very Regular Delivery merge συνένωση Receive Payment ζεύξη join (end of parallel behaviour, Cl ose synchronization point) End end U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 44

Ένα διάγραμμα δραστηριοτήτων Διαχείριση Παραγγελιών Receive Fill Send Invoice [ rush order ] Overnight Deli very Deliver [ else ] Regular Delivery Receive Payment This means that it has been decomposed Cl ose End U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 45 Άλλο ένα παράδειγμα Διαχείριση Ραντεβού Νοσοκομείου Get Patient Info [old patient] [new patient] Create new patient Make payment arrangements Create appointment Cancel Appointment Change Appointment U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 46

Another Example with conditional thread Παράδειγμα με «υποθετικό» νήμα Ετοιμασία Δείπνου Cook Spaghetti Mix Carbonara Sauce Open Red Wine [desire for wine] Combine U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 47 Γραμμές Κολύμβησης Swimlanes Τα ΔΔρ περιγράφουν τι συμβαίνει αλλά δεν μας λένε ποιος κάνει τι Π.χ. δεν μας λέει ποια κλάση είναι υπεύθυνη για την κάθε εργασία, ποιό τμήμα ενός οργανισμού είναι υπεύθυνο για την περιγραφόμενη δραστηριότητα κλπ. Receive Fill Send Invoice Management [ rush order ] Overnight Deli very [ else ] Regular Delivery Receive Payment? Customer Service Shipment Finance Cl ose End => Γραμμές Κολύμβησης (Swimlanes ) Χωρίζουν το διάγραμμα σε κατακόρυφες ζώνες. Κάθε ζώνη είναι αρμοδιότητα ενός συγκεκριμένου δράστη ή κλάσης Στην UML V.2.0: οι γραμμές κολύμβησης ονομάζονται Partitions U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 48

Γραμμές Κολύμβησης: Παράδειγμα Διαχείριση Παραγγελιών Τμήμα Αποστολών Γραφείο Εξυπηρέτησης Πελατών Τμήμα Οικονομικών Receive Fill Send Invoice [ rush order ] [ else ] Overnight Delivery Regular Delivery Receive Payment Close U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 49 End Παράδειγμα: Login (and register if new user) Πηγή:http://www.sparxsystems.com.au/resources/map_uc.html (Entreprise Architect) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 50

Παράδειγμα: Login (and register if new user) Enterprise Architect provides a method of overlaying Use Cases onto activity diagrams. In the example below, the Use Case 'Login to System' has been overlayed onto the previous diagram. The Red bordered areas above are linked to existing Use Cases by setting the classifier. These 'Use Case Instances' then can be overlayed onto the associated Activities to indicate how particular business process is going to be implemented in the proposed system. Mapping Use Cases onto Activity Diagrams provides a good means of visualizing the overlay of system behavior onto business process. U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 51 Ροή Αντικειμένων (Object flow) Get Patient Info Έστω οτι έχουμε μοντελοποιήσει κάπως τη δομική πλευρά του συστήματος και έχουμε ήδη ένα σύνολο κλάσεων (που είτε αντιστοιχούν στις βασικές έννοιες του πεδίου εφαρμογής ή στις κλάσεις του υπό κατασκευή συστήματος. [old patient] [new patient] Create new patient Make payment arrangements Create appointment Cancel Appointment Change Appointment Πως μπορούμε να δείξουμε τα αντικείμενα που εμπλέκονται στη ροή ελέγχου? U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 52

Ανάδειξη της Ροής Αντικειμένων (Adding Object Flow) Διαχείριση Ραντεβού Νοσοκομείου Get Patient Info [new patient] αντικείμενο Appt. Request Info [old patient] Create new patient Appt. Request Info αντικείμενο Make payment arrangements Create appointment Cancel Appointment Change Appointment αντικείμενο Appt. Appt. αντικείμενο U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 53 ιαφορετικοί αλλά ισοδύναμοι τρόποι απεικόνισης μιας ακμής Receive Invoice Make Payment Receive Invoice A A Make Payment connectors (useful to avoid crossings) Receive Invoice Make Payment Object flow Receive Invoice Make Payment Pins (can be used to denote transformations) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 54

Παραδείγματα σταδιακής ανάλυσης μιας δραστηριότητας Receive order Receive order Receive order Get Item Compute Cost Process Ship Send bill Ship Send bill Τι λείπει? Μια παραγγελία μπορεί να αφορά πολλά στοιχεία (Items) Πως μπορούμε να παραστήσουμε κάτι τέτοιο; U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 55 Παραδείγματα ανάλυσης μιας δραστηριότητας Περιοχές Επέκτασης (Expansion Regions) Receive order Receive order : :LineItem collection type collection input scalar type Get Item Compute Cost Get Item Compute Cost Ship Send bill :Product :Money :Shipment :Bill collection output Expansion Regions: Allow us to model loops (i.e we can illustrate operations performed on a set of elements) Ship Send bill U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 56

Άλλο ένα παράδειγμα με περιοχές επέκτασης Προετοιμασία ΗΥ351 Choose Topics Prepare Slides Publish slides at ~hy351 Choose Topics Prepare Slides Publish slides at ~hy351 Choose Topics list of topics Collect material from books Collect material from articles Make slides Publish slides at ~hy351 U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 57 Περιοχές επέκτασης και Τέρματα Ροής (Flow finals) Υποδηλώνουν το τέλος μια συγκεκριμένης ροής, χωρίς να τερματίζουν όλη τη διαδικασία Choose Topics Collect material from books Collect material from articles Make slides Publish slides at ~hy351 Choose Topics Collect material from books Collect material from articles Make slides [topic not good for hy351] Publish slides at ~hy351 U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 58

Παράδειγμα: ραστηριότητα Τελική Εξέταση U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 59 ραστηριότητα Τελική Εξέταση U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 60

ραστηριότητα Τελική Εξέταση προσθήκη partitions U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 61 Παράδειγμα: Ανάληψη Χρημάτων U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 62

Σήματα Signals Τα ΔΔρ έχουν ένα ξεκάθαρο σημείο εκκίνησης (start point) Που μπορεί να είναι η κλήση ενός προγράμματος ή μιας ρουτίνας Μπορούμε όμως να έχουμε και actions που ανταποκρίνονται σε σήματα Τύποι Σημάτων Χρόνου (Time signal) Μπορεί να υποδηλώνουν το τέλος ενός μήνα, το τέλος του ακαδημαικού έτους, ή το τέλος ενός χιλιοστού του δευτερολέπτου σε έναν ελεγκτή πραγματικού χρονου (real time controller) Λήψης (Accept signal) Αποστολής (Send signals) U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 63 Παράδειγμα με Χρονικό Σήμα (Time Signal) 23:00 Full Backup [weekend] Web Site Backup U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 64

Παράδειγμα με Σήμα Χρόνου και Σήμα Αποδοχής (Time and Accept signals) 4 hours before flight Pack luggage Leave for Airport Taxi arrives U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 65 Παράδειγμα με Σήμα Χρόνου και Σήμα Αποστολής (Example with Time and Send Signal) 23:00 Full Backup Administrator login Do backup Backup [weekend] Web Site Backup U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 66

Παράδειγμα με Σήμα Χρόνου και Σήμα Αποστολής(2) (Example with Time and Send Signal) 23:00 Full Backup Administrator login Do backup Backup [weekend] Web Site Backup What s the difference? U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 67 Περιγραφή των Ζεύξεων Join specifications Λογικές εκφράσεις (boolean) μπορούν να προσδεθούν στις ζεύξεις Boolean expressions attached to joins Choose Drink D Deliver Drink Insert Coins C [value of C > value of D] U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 68

Παράδειγμα Τι περιγράφει; U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 69 Library Example Source: http://odl-skopje.etf.ukim.edu.mk/uml-help/html/images/day05/activitymember.gif U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 70

U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 71 U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 72

Μοντελοποίηση Επιχειρηματικών ιαδικασιών με ιαγράμματα ραστηριοτήτων ιαγράμματα ραστηριότητας και Μεθοδολογίες Ανάπτυξης Πληροφοριακών Συστημάτων Αντικειμενοστρεφείς Μεθοδολογίες (Object-Oriented Methodologies) Τα Διαγράμματα Δραστηριοτήτων χρησιμοποιούνται για να μοντελοποιήσουν τη συμπεριφορά μιας επιχειρηματικής δραστηριότητας ανεξάρτητα από τα αντικείμενα Δομημένες Μεθοδολογίες (Structured Methodologies) Θα μπορούσαν να θεωρηθούν ως σύνθετα διαγράμματα ροής δεδομένων τα οποία χρησιμοποιούνται σε συνδυασμό με την δομημένη ανάλυση (structured analysis) Αρχικά η Αντικειμενοστρεφής Αν&Σχ δεν περιελάμβανε Διαγράμματα Δραστηριοτήτων (αλλά μόνο Περιπτώσεις Χρησης) Σήμερα η τάση είναι να φτιάχνουμε μερικά από τις απαιτήσεις αφού συχνά βοηθούν την επικοινωνία με τον πελάτη Δεν πρέπει όμως να υπερβάλλουμε και να καταλήξουμε να κάνουμε αναλυτική αποσύνθεση λειτουργιών (functional decomposition) Στις περισσότερες περιπτώσεις κάθε δραστηριότητα θα συσχετισθεί με μια Περίπτωση Χρήσης U. of Crete, Information Systems Analysis and Design Yannis Tzitzikas, Fall 2006 74