ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

Embed Size (px)

Citation preview

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    1/17

     

    ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΣΟ ΠΑΝΕΠΙΣΗΜΙΟ ΧΟΛΗ ΘΕΣΙΚΩΝ ΕΠΙΣΗΜΩΝ ΚΑΙ ΣΕΧΝΟΛΟΓΙΑ  

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

    ΘΕΜΑΣΙΚΗ ΕΝΟΣΗΣΑ ΔΤ50 ΒΑΙΚΕ ΣΕΧΝΟΛΟΓΙΕ ΔΙΚΣΤΩΝ ΚΑΙ ΛΟΓΙΜΙΚΟΤ  ΑΚΑΔΗΜΑΪΚΟ ΕΣΟ: 2015-16

    ΣΟΙΧΕΙΑ ΠΟΤ ΤΜΠΛΗΡΩΝΕΙ Ο ΦΟΙΣΗΣΗ / Η ΦΟΙΣΗΣΡΙΑ 

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ 

    ΑΡΙΘΜΟ ΜΗΣΡΩΟΤ 

    ΚΩΔΙΚΟ ΘΕ  Choose an item. 

    ΚΩΔΙΚΟ ΣΜΗΜΑΣΟ  Α/Α ΓΡΑΠΣΗ ΕΡΓΑΙΑ  3θ ΕΡΓΑΙΑ 

    ΗΜΕΡΟΜΗΝΙΑ ΑΠΟΣΟΛΗ  Click here to enter a date. 

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ ΚΑΘΗΓΗΣΗ 

    ΧΟΛΙΑ ΠΡΟ ΚΑΘΗΓΗΣΗ 

    Υπεφθυνη Δήλωση Φοιτητή: Βεβαιώνω ότι είμαι ςυγγραφζασ αυτήσ τησ εργαςίασ και ότι κάθε βοήθεια την οποία είχα για την

    προετοιμαςία αυτήσ τησ εργαςίασ, είναι πλήρωσ αναγνωριςμζνη και αναφζρεται είτε ςτο ςημείο «Σχόλια προσ καθηγητή» είτε

     μζςα ςτην εργαςία. Επίςησ ζχω αναφζρει τισ όποιεσ πηγζσ από τισ οποίεσ ζκανα χρήςη δεδομζνων, ιδεών ή λζξεων, είτε αυτζσ

    αναφζρονται ακριβώσ είτε παραφραςμζνεσ. Επίςησ βεβαιώνω ότι αυτή η εργαςία προετοιμάςτηκε από εμζνα προςωπικά

    ειδικά για τη ςυγκεκριμζνη Θεματική Ενότητα.  

    ☒υμων α αποδζχομα τθν ανωτζρω διλωςθ  

    ☐ Δε ςυμων α δεν αποδζχομα τθν ανωτζρω διλωςθ (ςτθν περίπτωςθ αυτι, ο Κ - ζχε δαίωμα να μθν αξολογιςε τθν

    εργαςία του οτθτι) 

    Ημερομηνία ανακοίνωςησ εργαςίασ: 27/1/2016

    Ημερομηνία παράδοςησ εργαςίασ: 21/2/2016

    Καταληκτική ημερομηνία παραλαβήσ: 24/2/2016

    Καταληκτική ημερομηνία παραλαβήσ ςε περίπτωςη ατομικήσ παράδοςησ: 

    2/3/2016

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    2/17

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    3/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 3 

    Κριτήρια αξιολόγηςησ:

    Ερώτημα  Περιγραή  Ποςοςτό  Βαθμόσ Α  Ανάπτυξη Κατανεμημζνου υςτήματοσ  45

    Α.1  Τλοποίθςθ ατανεμθμζνου ςυςτιματοσ  40

    Α.2 Χριςθ των callbacks  5

    Β  Νήματα  25

    Β.1  Πρόβλθμα Παραγωγοφ-Καταναλωτι  19

    Β.2  υγχρονςμόσ νθμάτων  6

    Γ  Διομότιμα υςτήματα & Σεχνολογίεσ Τλοποίηςησ Κ  25

    Γ.1  DHT α Pastry  9

    Γ.2 Δρομολόγθςθ ςε Pastry  6

    Γ.3 RMI, CORBA, Web Services 10

    Κανόνεσ ςυγγραήσ  5

    φνολο  100

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    4/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 4 

    ΣΟΙΧΕΙΑ ΕΚΠΑΙΔΕΤΣΙΚΟΤ ΕΝΔΙΑΦΕΡΟΝΣΟ 

    κοπόσ ΓΕ 

    Ο ςοπόσ τθσ ΓΕ είνα να εμπεδωκεί θ φλθ των εαλαίων 4, 5, 7, 8 α 10 από το ββλίο

    των Coulouris et al α το εάλαο 4 του Εγχερδίου Μελζτθσ. 

    Προςδοκώμενα (μαθηςιακά) αποτελζςματα 

      Κατανόθςθ βαςν ςτοχείων πρωτοόλλων δαδεργαςαισ επονωνίασ γα

    ατανεμθμζνα ςυςτιματα.

      Κατανόθςθ τθσ επονωνίασ μεταξφ δεργαςν ςε ζνα ατανεμθμζνο ςφςτθμα

    υπό το παράδεγμα τθσ απομαρυςμζνθσ επίλθςθσ.

      Κατανόθςθ μοντζλων προγραμματςμοφ ατανεμθμζνων εαρμογν (RMI, Web

    Services)  Κατανόθςθ τθσ χριςθσ των νθμάτων ςτθν ανάπτυξθ ατανεμθμζνων εαρμογν. 

      Κατανόθςθ τθσ ανάγθσ γα ςυγχρονςμό νθμάτων

      Κατανόθςθ τθσ ζννοασ τθσ ςυνκιθσ ανταγωνςμοφ 

      Χριςθ μθχανςμν γα ςυγχρονςμό νθμάτων που παρζχοντα από τθ γλςςα Java

      Εαρμογι των κεωρθτν γνςεων γα τθν ανάπτυξθ ατανεμθμζνων εαρμογν

    χρθςμοποντασ τθν τεχνολογία Java RMI α τθν τεχνολογία Web Services 

      Κατανόθςθ τθσ δαδαςίασ εςαγωγισ νζου όμβου ςτα ςυςτιματα Pastry

      Κατανόθςθ του αλγορίκμου δρομολόγθςθσ ςτα ςυςτιματα Pastry.

    φνδεςη με χρονοδιάγραμμα μελζτησ 

    Η κεματολογία των αςιςεων αλφπτε τσ εβδομάδεσ μελζτθσ 11-18.

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    5/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 5 

    ΤΠΟΔΕΙΞΕΙ ΓΙΑ ΣΗ ΤΓΓΡΑΦΗ ΣΗ ΕΡΓΑΙΑ 

    1.  Γα τθν απάντθςθ τθσ εργαςίασ κα πρζπε να χρθςμοποθκεί το υπόδεγμα τθσ

    εργαςίασ το οποίο κα βρείτε ςτσ ςελίδεσ τθσ ΔΤ50 ςτθ δτυαι πφλθ του ΕΑΠ. το

    υπόδεγμα: 

      υμπλθρςτε όλα τα ςτοχεία πεδίων ι με ζνδεξθ “”. 

      Μθν ξεχάςετε να δθλςετε εάν θ εργαςία αποτελεί προϊόν απολεςτά δισ ςασ

    εργαςίασ. 

      Ενςωματςτε τσ απαντιςεσ μετά το άκε ερτθμα.. 

      Αν προβλζπετα παράδοςθ δα, κα πρζπε να αναζρετε τθν πλιρθ περγραι

    των βθμάτων που ζχετε αολουκιςε γα τθν ανάπτυξι του ακσ α αναλυτά

    ςχόλα ςε όποα ςθμεία αυτοφ ρίνετε απαραίτθτο. 

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

    αντίςτοχθ ββλογραία (π.χ. ββλία, άρκρα, ςτοςελίδεσ) ι ςτα εργαλεία που

    ζχετε χρθςμοποιςε.

      Αν δεν ζχετε απαντιςε ςε ζνα ερτθμα γράψτε «ΔΕΝ ΑΠΑΝΣΗΘΗΚΕ». 

      Αν απαντιςατε με ελλείψεσ ςε ζνα ερτθμα γράψτε «ΑΠΑΝΣΗΘΗΚΕ ΕΛΛΙΠΩ». 

    2.  Η ςυνεργαςία ςτθν ανάλυςθ τθσ εργαςίασ επτρζπετα, αλλά αλό είνα να αναερκεί

    ςτον εδό χρο ςτθν πρτθ ςελίδα τθσ εργαςίασ. Η ςυνεργαςία δεν πρζπε να οδθγεί

    ςε από ονοφ επίλυςθ α ςυγγραι τθσ εργαςίασ. Η υποβολι ονν απαντιςεων

    από δαορετοφσ οτθτζσ που ςυνεργάςτθαν δεν επτρζπετα α κεωρείτα ωσ

    ΑΝΣΙΓΡΑΦΗ. Ο απαντιςεσ ελζγχοντα, τόςο μεταξφ των οτθτν του δίου τμιματοσ,

    όςο α μεταξφ οτθτν δαορετν τμθμάτων. Η αντγραι ζχε ωσ αποτζλεςμα τοΜΗΔΕΝΙΜΟ ΣΗ ΕΡΓΑΙΑ ΤΝΟΛΙΚΑ α τθν παραπομπι των παραβατν ςτθν

    Κοςμθτεία τθσ χολισ Θετν Επςτθμν & Σεχνολογίασ, ςφμωνα με τον εςωτερό

    ανονςμό του ΕΑΠ. 

    3.  Ο οτθτισ κα πρζπε να ςτείλε τθν εργαςία με μορι ςυμπεςμζνου αρχείου zip ι

    rar. Σο όνομα του αρχείου κα είνα: SDYxx_xERG_EPITHETO_ONOMA.

    (ςυμπλθρςτε ανάλογα με τον ωδό τθσ ΘΕ xx α τον αρκμό x τθσ εργαςίασ). Να

    γίνε χριςθ λατνν χαρατιρων γα τθν απουγι προβλθμάτων. 

    4.  Σο ςυμπεςμζνο αρχείο κα πρζπε να αποτελείτα από: 

       Ζνα αρχείο εμζνου με όνομα SDYxx_xERG_EPITHETO_ONOMA.doc που κα

    περζχε τθν απάντθςθ τθσ εργαςίασ (ςυμπλθρςτε ανάλογα με τον ωδό τθσ ΘΕxx α τον αρκμό x τθσ εργαςίασ).

       Ζνα αρχείο rar/zip το οποίο κα περζχε τθν υλοποίθςθ του Μζρουσ Α τθσ εργαςίασ

    ςασ. 

       Ζνα αρχείο rar/zip το οποίο κα περζχε τθν υλοποίθςθ του Μζρουσ B τθσ εργαςίασ

    ςασ. 

    H εαρμογι των παραπάνω ανόνων είνα ΤΠΟΧΡΕΩΣΙΚΗ α βακμολογείτα ςφμωνα μετο αντίςτοχο ρτιρο αξολόγθςθσ. Η μθ εαρμογι του πρτου ανόνα μπορεί να

    οδθγιςε ςε ςυνολι απόρρψθ τθσ εργαςίασ. 

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    6/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 6 

    Θ.Ε. ΔΤ50  – ΑΚΑΔΗΜΑΪΚΟ ΕΣΟ 2015-163η ΕΡΓΑΙΑ 

    Μζροσ –  νάπτυξη Κατανεμημζνου Συςτήματοσ  45μονάδεσ 

    Θεωροφμε ζνα ςφςτθμα δαπραγμάτευςθσ μετοχν του οποίου ο ςτόχοσ είνα να επτρζπε

    ςε χρθματςτζσ να βλζπουν μζςω υπολογςτι τσ τελευταίεσ πλθροορίεσ ςχετά με τσ

    τμζσ των μετοχν που τουσ ενδαζρουν. Ο πλθροορίεσ κάνουν ςτο ςφςτθμα  από

    πολλζσ δαορετζσ εξωτερζσ πθγζσ με τθ μορι ενθμερςεων γα ορςμζνα ι όλα τα

    αντείμενα που αναπαρςτοφν τσ μετοχζσ. Ο χρθματςτζσ ςυνικωσ ενδαζροντα μόνο

    γα ςυγερμζνεσ μετοχζσ που παραολουκοφν. το πλαίςο τθσ εργαςίασ κα υλοποθκείμα απλοποθμζνθ ζδοςθ του παραπάνω ςυςτιματοσ. 

    Ερώτημα 1 – Υλοποίηςη κατανεμημζνου ςυςτήματοσ 

    Να υλοποθκεί ζνα  ςφςτθμα δαπραγμάτευςθσ μετοχν ςε Java χρθςμοποντασ το

    μοντζλο RMI γα τθ δαδεργαςαι επονωνία. Η υλοποίθςθ κα πρζπε να ανοποεί τσ

    αόλουκεσ απατιςεσ:

    1.  Σο ςφςτθμα  κα πρζπε να υλοποθκεί ςτο Netbeans α κα πρζπε να μπορεί να

    ετελείτα μζςα από το περβάλλον του εργαλείου χωρίσ να χρεάηοντα εξωτερζσ

    παρεμβάςεσ από τθ ςτγμι που ζχε γίνε build (π.χ. εξωτερι ετζλεςθ του

    registry, αλλαγι άποου μονοπατοφ .λπ.)

    2.  Η υλοποίθςθ κα περλαμβάνε δφο δαορετά projects, με τον δα του πελάτθ

    α τον δα του εξυπθρετθτι. Ονομάςτε τα projects με τα αόλουκα ονόματα:

     _AM_StockClient,  _AM_StockServer. To project του client

    κα υλοποεί τρείσ ρόλουσ πελατν ωσ εξισ: 

    i.  Ο πρτοσ ρόλοσ πελάτθ υλοποείτα από μα λάςθ που κα τθν ονομάςετε

    StockPriceModifier. Αυτόσ ο πελάτθσ κα χρθςμοποθκεί γα να δθμουργεί

    γεγονότα αλλαγισ των τμν  των μετοχν. Ο χριςτθσ δίνε από το

    πλθτρολόγο εντολζσ τθσ παραάτω μορισ: 

     

     Ζνα παράδεγμα αλλθλεπίδραςθσ με τον χριςτθ είνα το παραάτω: 

    Δώστε όνομα μετοχής και νέα τιμή ή # για τερματισμό:

    DEH 3.76

    OTE 2.34

    INTRALOT 3.56

    OPAP 5.23

    DEH 3.85

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    7/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 7 

    OPAP 5.20

    Γα άκε μετοχι που δίνε ο χριςτθσ αλείτα ο server περνντασ του τα

    νζα δεδομζνα ςτε να ενθμερωκοφν ο δομζσ του (χριςθ τθσ

    απομαρυςμζνθσ μεκόδου stockChange()). Επίςθσ, είνα ςτθν ευκφνθ του

    server να ενθμερςε τουσ πελάτεσ  που ζχουν εδθλςε ενδαζρον να

    ενθμερνοντα γα αλλαγζσ ςτθν τμι τθσ ςυγερμζνθσ μετοχισ  (callback

    μζκοδοσ).

    ii.  Ο  δεφτεροσ  ρόλοσ  πελάτθ υλοποείτα από μα  λάςθ  που κα τθν

    ονομάςετε  StockPriceMonitor. H λάςθ αυτι κα πρζπε να υλοποεί ζνα 

    remote interface που ονομάηετα StockPriceListener . To interface αυτό

    ορίηε δφο απομαρυςμζνεσ μεκόδουσ με ονόματα stockPriceUpdate  α

    terminate. Κα ο δφο μζκοδο  αλοφντα από τθν πλευρά του server. H

    μζκοδοσ stockPriceUpdate() ενθμερνε τον πελάτθ γα τθν αλλαγι τθσ

    τμισ μασ μετοχισ. H ετζλεςθ τθσ μεκόδου απλά τυπνε τθ νζα τμι τθσ

    μετοχισ ςτθ δεπαι του χριςτθ (π.χ. ςτο output παράκυρο του Netbeans).

    Η μζκοδοσ terminate() ενθμερνε τον πελάτθ ότ ο server ςταματά να

    ενθμερνε τον ςυγερμζνο πελάτθ  γα τσ τμζσ των μετοχν  (δότ ο

    χριςτθσ ηιτθςε τον τερματςμό του  ςυγερμζνου πελάτθ) οπότε ο

    πελάτθσ  μπορεί να τατοποιςε όποεσ ερεμότθτζσ του πρν από τον

    τερματςμό του. H ετζλεςθ του πελάτθ ηθτά από τον χριςτθ α δαβάηε

    ζνα username α  αολοφκωσ αλεί τθν απομαρυςμζνθ  μζκοδο

    addStockPriceListener()   του server (ορίηετα ςτο StockPriceProvider 

    interface). Ο ςοπόσ τθσ λιςθσ αυτισ τθσ μεκόδου είνα να παρζχε ςτον

    server μα απομαρυςμζνθ αναορά ςτσ απομαρυςμζνεσ μεκόδουσ του 

    client (callback μζκοδο).

    iii.  Ο τρίτοσ ρόλοσ πελάτθ υλοποείτα από μα λάςθ που κα τθν ονομάςετε

    StockRegistration. Αυτόσ ο πελάτθσ δίνε τθ δυνατότθτα ςε άποο χριςτθ 

    γα εγγραι (Register) ι δαοπι τθσ εγγραισ (Unregister) ςχετά με τθν

    παραολοφκθςθ τθσ τμισ μασ μετοχισ. H ετζλεςθ του πελάτθ ηθτά από

    τον χριςτθ α δαβάηε ζνα username α αολοφκωσ ο χριςτθσ δίνε από

    το πλθτρολόγο εντολζσ τθσ παραάτω μορισ: 

    R ή U

    Γα παράδεγμα, ζςτω ότ ο  χριςτθσ με username Dimitriou  δίνε  τσ

    παραάτω εντολζσ: 

    R ΟΤΕ 

    R DEH

    R OPAP

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    8/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 8 

    U DEH

    #

    Με τθν πρτθ εντολι ο πελάτθσ Dimitriou  εγγράετα γα τθν

    παραολοφκθςθ τθσ τμισ τθσ μετοχισ OTE. Κατά ςυνζπεα αυτόσ ο

    πελάτθσ κα αρχίςε να λαμβάνε ενθμερςεσ γα τσ τμζσ τθσ μετοχισ ΟΤΕ 

    άκε ορά που αυτζσ κα είνα δακζςμεσ (δείτε τθν περγραι τθσ

    λετουργότθτασ του πελάτθ StockPriceModifier). Η εντολι U DEH 

    αντίςτοχα προαλεί τθν δαοπι τθσ παροχισ ενθμερςεων γα αλλαγζσ

    ςτθν τμι τθσ μετοχισDEH.

    Αν ο χριςτθσ ηθτιςε τον τερματςμό αυτοφ του πελάτθ, τότε ο server

    ενθμερνετα με μα λιςθ τθσ απομαρυςμζνθσ μεκόδου

    removeStockPriceListener() . Αολοφκωσ ο server αλεί τθν callback μζκοδο

    terminate() ςτθν πλευρά του client (βλζπε τθν περγραι τθσ

    λετουργότθτασ του πελάτθ StockPriceMonitor).

    Είνα προανζσ  ότ γα ζναν  χριςτθ-χρθματςτι με ζνα username απατοφντα

    ςτγμότυπα α των δφο τελευταίων πελατν (StockPriceMonitor,

    StockRegistration) γα να εγγράετα ςε μετοχζσ α να παραολουκεί τσ

    μεταβολζσ ςτσ τμζσ τουσ.

    3.  Ο  server υλοποεί  ζνα  remote interface που  ονομάηετα  StockPriceProvider. To

    interface αυτό ορίηε τσ παραάτω απομαρυςμζνεσ μεκόδουσ: 

    i.  stockChange()  : αλείτα από τον πελάτθ  StockPriceModifier γα να

    προαλζςε γεγονότα αλλαγισ τμν μετοχν.

    ii.  register() : αλείτα από τον πελάτθ StockRegistration γα να εγγράψε το

    ενδαζρον ενόσ χριςτθ γα μα μετοχι. 

    iii.  unRegister() : αλείτα από τον πελάτθ StockRegistration γα να δαόψε το

    ενδαζρον ενόσ χριςτθ γα μα μετοχι. 

    iv.  addStockPriceListener()  : αλείτα από τον πελάτθ StockPriceMonitor γα να

    ενθμερνετα από τον server όταν ςυμβαίνουν αλλαγζσ ςτσ τμζσ των

    μετοχν που ενδαζρετα. 

    v.  removeStockPriceListener()   : αλείτα  από  τον  πελάτθ  StockRegistration

    όταν τερματίηετα.

    Η υλοποίθςθ του StockPriceProvider interface ηθτείτα να γίνε ςε μα λάςθ που

    ονομάηετα StockPriceProviderServant .

    4.  Γα τθν υλοποίθςθ των λετουργν των remote interfaces που αναζρκθαν

    παραπάνω κα χρεαςτεί να αποαςίςετε γα το πλικοσ α το είδοσ των ορςμάτων

    α των επςτρεόμενων τμν που απατοφντα. 

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    9/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 9 

    5.  Δε  ηθτείτα  θ υλοποίθςθ άποασ  Βάςθσ  Δεδομζνων. Αρεί να χρθςμοποθκοφν

    ατάλλθλεσ δομζσ δεδομζνων που κα υποςτθρίξουν τθ λετουργία τθσ εαρμογισ.

    ασ ςυςτινετα να χρθςμοποιςετε τουλάχςτον μα δομι δεδομζνων που καςυςχετίηε τουσ χριςτεσ-πελάτεσ  με τσ αντίςτοχεσ  αναορζσ  απομαρυςμζνων

    αντεμζνων  γα τα callbacks α μα δομι δεδομζνων  που κα ςυςχετίηε άκε

    μετοχι με τθ λίςτα των πελατν που ενδαζροντα γα τθν παραολοφκθςι τθσ. 

    Αν παρόλα αυτά επκυμείτε να υλοποιςετε άποα ΒΔ αυτι κα πρζπε να

    υλοποθκεί ωσ μα JAVA DB που υποςτθρίηετα από το Netbeans (είνα θ δανομι

    από τθν Oracle του ςυςτιματοσ δαχείρςθσ ΒΔ ανοτοφ δα Apache Derby).

    6. 

    Να χρθςμοποιςετε υποχρεωτά τουλάχςτον τα αόλουκα ονόματα μετοχν:

    DEH, OTE OPAP, INTRALOT α INTRACOM. Ο τμζσ μπορεί να είνα α δεαδζσ. 

    7. 

    Ο λετουργίεσ που ζχουν προδαγραεί κα πρζπε να υλοποθκοφν ατάλλθλατόςο ςτθν πλευρά του πελάτθ όςο α ςτθν πλευρά των εξυπθρετθτν εν κα

    πρζπε να γίνοντα όλο ο απαραίτθτο ζλεγχο γα τθν ομαλι λετουργία τθσ

    ατανεμθμζνθσ εαρμογισ (π.χ. ζλεγχοσ εγυρότθτασ εντολν α μορισ τμν).

    8.  Εόςον δεν ζχετε δίτυο υπολογςτν ςτε να τρζξετε τσ δεργαςίεσ πελάτθ α

    εξυπθρετθτι ςε δαορετοφσ όμβουσ μπορείτε να χρθςμοποιςετε τθ

    δεφκυνςθ localhost (IP address 127.0.0.1) θ οποία δίνε τθν ψευδαίςκθςθ ενόσ

    δτφου με ζναν όμβο.

    9.  Εόςον δεν προβλζπετα θ δυναμι όρτωςθ λάςεων από το δίτυο μπορείτε να

    μθν υλοποιςετε άποον security manager ι security policy γα τθν εαρμογι

    αυτι.

    10. Δε χρεάηετα να υλοποιςετε άποα δαδαςία αυκεντοποίθςθσ χρθςτν. 

    11. Να αναζρετε τυχόν παραδοχζσ  που ζχετε άνε, πζραν των προδαγραν που

    ςασ ζχουν δοκεί.

    12. Σζλοσ, να ςυμπερλάβετε, αν χρεάηετα, εδζσ οδθγίεσ γα τθν ετζλεςθ τθσ  

    εαρμογισ. 

    [40 μονάδεσ+ 

    Ενδεικτική απάντηςη 

    Επςυνάπτετα θ ςχολαςμζνθ υλοποίθςθ ςτο περβάλλον Netbeans.

    Γα τθν ετζλεςθ τθσ εαρμογισ κα πρζπε πρτα να «τρζξε» ο server (StockServer), ςτθ

    ςυνζχεα γα άκε χριςτθ-χρθματςτι κα πρζπε να «τρζξε» το ηευγάρ των εαρμογν

    πελάτθ: StockPriceMonitor α StockRegistration. Γα τθ δθμουργία γεγονότων αλλαγισ

    των τμν των μετοχν ετελοφμε τθν εαρμογι πελάτθ StockPriceModifier.

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    10/17

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    11/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 11 

    Μζροσ Β – Νήματα  5μονάδεσ 

    Ερώτημα 1 – Πρόβλημα Παραγωγοφ-Καταναλωτή 

     Ζνα  αντείμενο  τθσ λάςθσ  Παραγωγός  (Producer) παράγε ζναν αζραο αρκμό

    μεταξφ 0 α 9 α τον αποκθεφε ςε ζνα αντείμενο τθσ λάςθσ Buffer, α τυπνε τον

    παραγόμενο αρκμό. Ζνα  αντείμενο  τθσ λάςθσ  Καταναλωτής  (Consumer),

    αταναλνε όλουσ τουσ αζραουσ αρκμοφσ από τον Buffer  (το ίδο αρβσ

    αντείμενο ςτο οποίο ο Producer  βάηε  τουσ αζραουσ αρκμοφσ), α τυπνε τον

    αρκμό που αταναλνε. Η ζξοδοσ που παράγετα από τθν ετζλεςθ μασ εαρμογισ που

    περλαμβάνε τσ παραπάνω λάςεσ πρζπε να είνα: 

    Παραγωγός τοποθετεί: 0

    Καταναλωτής παίρνει: 0

    Παραγωγός τοποθετεί: 1

    Καταναλωτής παίρνει: 1

    … 

    Παραγωγός τοποθετεί: 9

    Καταναλωτής παίρνει: 9 

    Η υλοποίθςθ του παραπάνω ςεναρίου γίνετα με δφο νιματα (αοροφν ςτον Producer 

    α ςτονConsumer

    ) α με τθν παραάτω λάςθBuffer

    .

    class Buffer {

    private int item;

    public int get() {

    return item;

    }

    public void put(int value) {

    item = value;

    }

    α) Σ πρόβλθμα μπορεί να παρουςαςτεί  ςτθ λετουργία τθσ εαρμογισ από τθ χριςθ τθσ

    λάςθσ Buffer; Δςτε ζνα ςχετό παράδεγμα ςτο οποίο κα αίνετα το πρόβλθμα που

    αναγνωρίςατε. *5 μονάδεσ+ 

    β) Πσ μπορεί να αντμετωπςτεί το προθγοφμενο  πρόβλθμα; Σροποποιςτε τθν λάςθ

    Buffer ςτε να αντμετωπςκεί το πρόβλθμα. [7 μονάδεσ+ 

    γ) Δςτε μα ολολθρωμζνθ υλοποίθςθ ςτο NetBeans γα τθν λφςθ που προτείνατε ςτο

    παραπάνω ερτθμα. *7 μονάδεσ+ 

    (~ 350 λζξεσ) 

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    12/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 12 

    Τπόδεξθ: Γα τθν υλοποίθςθ να εςάγετε μα τυχαία ακυςτζρθςθ (π.χ. εφρουσ 100 ms)

    μεταξφ άκε ςτοχείου που τοποκετεί το νιμα του παραγωγοφ ι αταναλνε το νιμα

    αταναλωτι ςτε να ελζγξετε τθ λφςθ ςασ ςε ζνα περβάλλον όπου θ εναλλαγι τωννθμάτων δε γίνετα ντετερμνςτά.

    [19 μονάδεσ+ 

    Ενδεικτική απάντηςη 

    α) 

     Ζνα πρόβλθμα που μπορεί να προφψε είνα όταν ο Producer είνα ταχφτεροσ από τον

    Consumer α δθμουργεί δφο αρκμοφσ, πρν ο Consumer αταζρε να αταναλςε

    τον πρτο. Ζτς, ο Consumer κα ζχανε ζναν αρκμό. Μζροσ τθσ εξόδου τθσ εαρμογισ κα

    μποροφςε να είνα:

    . . .

    Καταναλωτής παίρνει: 3

    Παραγωγός τοποθετεί: 4

    Παραγωγός τοποθετεί: 5

    Καταναλωτής παίρνει: 5

    . . .

     Ζνα παρόμοο πρόβλθμα που μπορεί να προφψε είνα όταν ο Consumer  είνα

    ταχφτεροσ από τον Producer α αταναλνε τον ίδο αρκμό δφο ορζσ. ε αυτι τθν

    περίπτωςθ ο Consumer κα τυπςε τθν ίδα τμι δφο ορζσ α μζροσ τθσ εξόδου τθσ

    εαρμογισ κα μποροφςε να είνα: 

    . . .

    Παραγωγός τοποθετεί: 4

    Καταναλωτής παίρνει: 4

    Καταναλωτής παίρνει: 4

    Παραγωγός τοποθετεί: 5. . .

    Σα παραπάνω προβλιματα ςυνςτοφν προβλήματα ανταγωνιςμοφ  (race conditions).

    Σζτοα προβλιματα εμανίηοντα όταν πολλαπλά νιματα προςπακοφν να προςπελάςουν

    ζνα αντείμενο (τον Buffer) τθν ίδα χρονι ςτγμι χωρίσ ςυγχρονςμό. 

    β) 

    Σο πρόβλθμα ανταγωνςμοφ ςτο ςενάρο παραγωγοφ/αταναλωτι αντμετωπίηετα με τον

    ςυγχρονςμό τθσ αποκιευςθσ ενόσ νζου αρκμοφ ςτον Buffer  από πλευράσ

    Producer, α τθσ ανάτθςθσ του αρκμοφ από τον Buffer  από πλευράσ Consumer.

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    13/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 13 

    Ο δραςτθρότθτεσ του παραγωγοφ α αταναλωτι κα πρζπε να ςυγχρονςτοφν με δφο

    τρόπουσ:

    Πρτον, τα δφο νιματα δεν κα πρζπε να μποροφν να ζχουν ταυτόχρονθ πρόςβαςθ ςτονBuffer . Γα να το πετφχουμε αυτό κα πρζπε να ορίςουμε τσ μεκόδουσ get() α

    put() τθσ Buffer ωσ synchronized:

    public class Buffer {

    private int item;

    public synchronized int get() {

    ...

    }

    public synchronized void put(int value) {

    ...

    }

    Κα δεφτερον, τα δφο νιματα κα πρζπε να άνουν ζνα  ςυντονςμό. Δθλαδι, ο Producer 

    πρζπε να ζχε άποο τρόπο να δείξε ςτον Consumer  ότ θ τμι είνα δακζςμθ α ο

    Consumer πρζπε να ζχε άποο τρόπο να δείξε ότ θ τμι ζχε ανατθκεί. Η παραάτω

    υλοποίθςθ χρθςμοποεί τθν Boolean μεταβλθτι available  (ζχε τμι true  όταν ο 

    αρκμόσ ζχε γίνε put, αλλά όχ get α ζχε τμι false όταν ο αρκμόσ ζχε γίνε get α

    ζνασ νζοσ αρκμόσ δεν ζχε γίνε αόμθ put). Χρθςμοποεί, επίςθσ, τσ μεκόδουσ wait α 

    notifyAll (κα μποροφςε να χρθςμοποθκεί α θ notify) τθσ λάςθσ Object:

    class Buffer {

    private int item;

    private boolean available = false;

    public synchronized int get() {

    while (available == false) {

    try {

    // wait for Producer to put value

    wait();

    } catch (InterruptedException e) {

    }

    }

    available = false;

    // notify Producer that value has been retrieved

    notifyAll();

    return item;

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    14/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 14 

    }

    public synchronized void put(int value) {

    while (available == true) {

    try {

    // wait for Consumer to get value

    wait();

    } catch (InterruptedException e) {

    }

    }

    item = value;

    available = true;

    // notify Consumer that value has been set

    notifyAll();

    }

    }

    γ) 

    Επςυνάπτετα θ ςχολαςμζνθ υλοποίθςθ ςτο περβάλλον Netbeans.

    Ερώτημα 2 – Συγχρονιςμόσ νημάτων 

    Εξθγιςτε ςφντομα γατί ςτθ Java ο ςυγχρονςμόσ ςε επίπεδο ενόσ block εντολν είνα

    προτμότεροσ από το ςυγχρονςμό ςε επίπεδο μεκόδου. (~ 70 λζξεσ) 

    [6 μονάδεσ+ 

    Ενδεικτική απάντηςη 

    τθ Java ο ςυγχρονςμόσ ςε επίπεδο ενόσ block εντολν είνα προτμότεροσ από το

    ςυγχρονςμό ςε επίπεδο μεκόδου επεδι ο ςυγχρονςμόσ ςε επίπεδο ενόσ block εντολν

    περορίηετα ςτο να λεδςε ζνα ςυγερμζνο τμιμα του δα αντί γα όλθ τθ μζκοδο.

    Επεδι ο ςυγχρονςμόσ επθρεάηε τθ δυνατότθτα γα παράλλθλθ ετζλεςθ νθμάτων κα

    πρζπε να επλζγουμε γα ςυγχρονςμό μόνο το τμιμα του δα που είνα απολφτωσ

    απαραίτθτο.

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    15/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 15 

    Μζροσ Γ – Διομότιμα Συςτήματα & Τεχνολογίεσ Υλοποίηςησ

    ΚΣ

     

    5

    μονάδεσ

     

    Ερώτημα 1 – DHT και Pastry

    Εξθγιςτε τθ χριςθ τθσ δομισ Distributed Hash Table (DHT) ςτο ςφςτθμα Pastry.

    (~120 λζξεσ) 

    [9 μονάδεσ+ 

    Ενδεικτική απάντηςη To Pastry είνα ζνα δομθμζνο P2P ςφςτθμα, ςτο οποίο το δίτυο επάλυψθσ υλοποεί ζναν

    DHT. Σο δίτυο επάλυψθσ ανακζτε λεδά (τα οποία αντπροςωπεφουν πόρουσ, όπωσ

    π.χ. μουςά αρχεία) ςε τμζσ (values) α οργαννε τουσ ομότμουσ όμβουσ ςε ζναν

    γράο (τοπολογία) που αντςτοχίηε άκε λεδί ςε ζναν όμβο (άνοντασ χριςθ μασ

    ςυνάρτθςθσ αταερματςμοφ).

    τθ ςυνζχεα, άκε όμβοσ είνα υπεφκυνοσ γα τα αρχεία (τμζσ) που αντςτοχίηοντα ςτο

    ςυγερμζνο λεδί. Αυτόσ ο δομθμζνοσ γράοσ επτρζπε τθν αποδοτι αναάλυψθ

    πόρων, χρθςμοποντασ ςυγερμζνα λεδά. 

    Ο τμζσ του DHT, ςυνικωσ, είνα δείτεσ προσ όμβουσ όπου αποκθεφοντα ο αντίςτοχοπόρο. Ζνα  DHT υλοποεί μία βαςι  λετουργία, τθν αναηιτθςθ γα ςυγερμζνο λεδί

    (lookup (key)), που επςτρζε τθ δεφκυνςθ του όμβου που είνα υπεφκυνοσ γα το

    ςυγερμζνο λεδί. 

    Ερώτημα 2 – Δρομολόγηςη ςε Pastry

    Θεωριςτε τον παραάτω Pastry όμβο με τον πίναα δρομολόγθςισ του. Να

    προςδορίςετε α να ατολογιςετε ςε άκε περίπτωςθ το ςτοχείο (GUID) που κα

    χρθςμοποθκεί γα τθ δρομολόγθςθ των αόλουκων λεδν: 312132, 310332, 311200.

    (~120 λζξεσ) 

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    16/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 16 

    Node 311021

    Routing Table

    0 023120 100202 232001 3

    1 302110 1 323101 332200

    2 310332 1 312233 313021

    3 0 311101 311321

    4 311013 2

    5 1

    Leaf Set

    310213 311020 311122 311200

    [6 μονάδεσ+ 

    Ενδεικτική απάντηςη 

    Γα το λεδί 312132, το ερτθμα κα προωκθκεί ςτον όμβο 312233 επεδι μοράηετα το

    prefix 312 με το λεδί (ζνα εππλζον ψθίο από το prefix 31 που μοράηετα ο τρζχων

    όμβοσ). 

    Γα το λεδί 310332, επεδι είνα ςτο εφροσ του leaf set, κα χρθςμοποθκεί ο όμβοσ μεGUID 311020  ακσ είνα ζνασ όμβοσ του leaf set που είνα πο οντά ςτο λεδί.

    Παρατθριςτε ότ ο αλγόρκμοσ κα αγνοιςε το entry ςτον πίναα δρομολόγθςθσ με GUID

    310332 το οποίο κεωροφμε ότ ςε επόμενθ ενθμζρωςθ των δομν του τρζχοντοσ όμβου

    κα πρζπε να βρεκεί ςτο ςφνολο φλλων.

    Γα το λεδί 311200 κα χρθςμοποθκεί ο όμβοσ με GUID 311200 που είνα ςτο leaf set α

    είνα α ο τελόσ όμβοσ.

    Ερώτημα 3 – RMI, CORBA, Web Services

    RMI, CORBA α Web Services είνα τρεσ τεχνολογίεσ ανάπτυξθσ ατανεμθμζνων

    εαρμογν.

    1.  Αναζρατε ζναν λόγο προτίμθςθσ τθσ τεχνολογίασ RMI ζναντ των CORBA α Web

    Services.

    2.  Αναζρατε ζναν λόγο προτίμθςθσ τθσ τεχνολογίασ Web Services ζναντ των CORBA

    α RMI.

    3. 

    Αναζρατε ζναν λόγο προτίμθςθσ τθσ τεχνολογίασ CORBA ζναντ των RMI α Web

    Services.

    (~100 λζξεσ) 

  • 8/19/2019 ΣΔΥ50 - ΓΕ3 2015-2016 - Ενδεικτικές Απαντήσεις

    17/17

     

    ΘΔΜΑΤΙΚΗ ΔΝΟΤΗΤΑ ΣΥ50 

    "ΒΑΣΙΚΔΣ ΤΔΦΝΟΛΟΓΙΔΣ ΙΚΤΥΩΝ ΚΑΙ ΛΟΓΙΣΜΙΚΟΥ" ΑΚΑΗΜΑΪΚΟ ΔΤΟΣ: 2015-16

    ΟΝΟΜΑΣΕΠΩΝΤΜΟ: ΣΜΗΜΑ Choose an item. 17 

    [10 μονάδεσ+ 

    Ενδεικτική απάντηςη 

    1.  RMI ζναντ των CORBA α Web Services:

    o  εάν το πρόγραμμα-πελάτθσ α το πρόγραμμα-εξυπθρετθτισ είνα γραμμζνα ςε

    Java, το RMI μασ επτρζπε να ςεροποιςουμε εφολα αντείμενα τθσ Java γα

    τθ μετάδοςι τουσ.

    o  Η απόδοςθ των εαρμογν που υλοποοφντα με RMI είνα αλφτερθ ςε ςχζςθ

    με εαρμογζσ που υλοποοφντα με web services α τείνε να είνα αλφτερθ

    ςε ςχζςθ με εαρμογζσ που υλοποοφντα με CORBA (οείλετα ςτθ

    μεγαλφτερθ πολυπλοότθτα τθσ CORBA ζναντ του RMI). 

    2.  Web Services ζναντ των CORBA α RMI:

    o  Σα Web Services δεν απατοφν άνογμα εππλζον κυρν ςε ζνα τείχοσ

    προςταςίασ δεδομζνου ότ λετουργοφν ςε επίπεδο web/application server.

    o  Σα web services δεν εξαρτντα από άποα γλςςα προγραμματςμοφ ακσ

    επτρζπουν τθν περγραι των interfaces μζςω WSDL. To ίδο ςχφε, όμωσ, α

    γα τθν CORBA που χρθςμοποεί τθν IDL 

    3.  CORBA ζναντ των RMI α Web Services:

    o  Η CORBA  είνα θ παλαότερθ τεχνολογία ανάπτυξθσ ατανεμθμζνων

    εαρμογν από τσ τρεσ α ζτς υπάρχε ςθμαντι εγατεςτθμζνθ βάςθ

    εαρμογν που χρθςμοποεί CORBA. Προτμάτα λοπόν γα τθ δαςφνδεςθ μεlegacy ςυςτιματα.

    o  H CORBA ωσ πλατόρμα υποςτθρίηε περςςότερεσ δυνατότθτεσ γα ανάπτυξθ

    εαρμογν με χαρατθρςτά λμαωςμότθτασ α αξοπςτίασ. 

    ΚΑΛΗ ΕΠΙΣΤΧΙΑ!