... βεβαια και πριν μπορούσατε

Η boundary class αντιπροσωπεύει διεπαφή του συστήματος με ένα ή περισσότερους actors. Η control class ενσωματώνει τη ροή ελέγχου στο εσωτερικό της use case. Οι control, boundary και entity κλάσεις έχουν νόημα στο μοντέλο ανάλυσης και τις δημιουργείτε στο εσωτερικό του package Analysis elements.kmast wrote:Καλησπέρα και χρόνια πολλά:
Θα ήθελα να κάνω κάποιες ερωτήσεις σχετικά με το Analysis model.Ποια είναι η διαφορά μεταξύ της boundary class και της control class;
Επίσης τις entity,boundary,control classes μέσα στο Analysis elements δεν τα δημιουργούμε;
και τέλος υπάρχει τρόπος να δημιουργηθεί entity,boundary ή control class με τη μορφή που υπάρχει ήδη στα analysis elments από το πρόγραμμα;γιατί δημιουργώ νέα κλάση,επιλέγω ως στερεότυπο π.χ. το entity και το ορθογώνιο της κλάσης δεν έχει περίγραμμα,ούτε υπάρχει το όνομα του στερεοτύπου αλλά εμφανίζεται το σύμβολο του .
Ευχαριστώ.
a) Δεν αναφέρεται σε φόρμες εκτύπωσης αλλά στη δημιουργία αναφορών για την παρουσίαση στοιχείων που διατηρεί το σύστημά σας.Brashear wrote:Ερωτήσεις
α)Στην εκφώνηση της άσκησης, όταν λέει οτι θέλει 5-10 λειτουργίες εκτυπώσεων τι ακριβώς εννοεί? Δεν εννοεί την παρουσίαση στοιχείων μέσα απο φόρμες γιατί αυτό το λέει παραπάνω. Δεν νομίζω οτι εννοεί να πατάμε ενα κουμπί και να κάνει print. Άρα τι εννοεί?
β)Στο design model - στα sequence διαγράμματα, τους πίνακες της βάσης θα τους αναπαριστούμε ως class ή θα τα κάνουμε drag & drop απο το data model ? (ρωτάω για να δώ αν πρέπει πρώτα να φτιάξω το data model και μετά το design model).
Στο analysis model δημιουργείται ένα αφαιρετικό μοντέλο του εσωτερικού του συστήματος το οποίο είναι :Einherjar wrote:Λογικά πρέπει να έχουμε τελειώσει το analysis Model έχοντας δημιουργήσει τα συγκεκριμένα πακέτα, κλάσεις, τις μεθόδους που υπάρχουν σε αυτές, τα sequence & class diagrams κτλ κτλ
Στο design model τι θα κάνουμε? Θέλω να πω πως από ότι έχουμε διαβάσει πρέπει να δημιουργήσουμε καινούργια πακέτα? Καινούργια sequence & class diagrams? Ποια η διαφορά? Γενικότερα δεν καταλαβαίνουμε τη λογική.
Σε τι θα διαφέρει το design από το analysis. Mε άλλα λόγια, υπάρχουν κάποια βήματα που πρέπει να ακολουθήσουμε για να μεταβούμε στο design model?
Ναι ακριβώς κάθε jsp αντιστοιχεί σε ένα server page ενώ αντίστοιχες κλάσεις υπάρχουν για τις φόρμες (HTMLForm) και τις client σελίδες (Client page). Στα sequence διαγράμματα θα υπάρχουν όλες οι σχετικές κλάσεις π.χ. ο χρήστης αλληλεπιδρά με την client σελίδα, συμπληρώνει τα στοιχεία μίας ή περισσοτέρων HTMLForm τις οποίες υποβάλλει και η υποβολή γίνεται σε αντίστοιχες server page.Brashear wrote:Κάθε jsp στο Virtual Directory Model έχει τις εξής κλάσεις: ένα server, ένα cient και πολλά form.
Στο Design Model, για web εφαρμογή σε jsp:
Θεωρώ κάθε jsp ως μια κλάση. Στα sequence διαγράμματα μπορώ να έχω και τον server και τον client σε μια κλάση (π.χ. request.jsp) ή θα πρέπει να φαίνονται στο διάγραμμα όλα: server, client, form1, form2,...?
H φόρμα δεν είναι μέρος του κώδικα της jsp σελίδας αλλά μέρος της client σελίδας που παράγεται από αυτή. Συνεπώς το self message δεν έχει νόημα όπως το εννοείς. Όμως η request.jsp μπορεί να καλέσει κάποια κλάση π.χ. ένα java bean ή άλλη σελίδα jsp. Στην περίπτωση αυτή τα αποτελέσματα εμφανίζονται σε μια άλλη ή στην ίδια client page. Η server page δεν εμφανίζει αποτελέσματα απλώς παράγει client pages.Brashear wrote: α)Μπορώ να βάλω στο sequence ένα object του request.jsp και να βάζω Self Messages στο ίδιο το object. Να λέω για παράδειγμα οτι ο χρήστης εισάγει κάποια δεδομένα και μέσω μιας φόρμας (form - που είναι μέρος του κώδικα του request.jsp) να καλεί το request.jsp κάποια άλλη κλάση (π.χ. την queryDatabaseTable) και τα αποτελέσματα να εμφανίζονται πάλι στο ίδιο request.jsp - το τι ακριβώς γίνεται μέσα στην κλάση request.jsp μπορεί να μπεί στο Documentation του sequence.
Έτσι θα είναι. Προσπάθησε να απλοποιήσεις το διάγραμμα αν είναι τεράστιο χρησιμοποιώντας υποδιαγράμματα. Έτσι μπορείς να φτιάξεις ένα νέο διάγραμμα (Interaction Instance) και να κάνεις drag & drop αυτό σε κατάλληλο σημείο στο αρχικό σου διάγραμμα. Δημιουργείται με τον τρόπο αυτό ένα Global Action με το ίδιο όνομα με το υποδιάγραμμα. Κάνοντας διπλό κλικ σε αυτό γίνεται μετάβαση στο υποδιάγραμμα.Brashear wrote:
β)Διαφορετικά θα πρέπει να φαίνεται στο sequence οτι η κλάση request.jsp_client θέτει μέσω της κλάσης form1 κάποια html_inputs και καλεί την κλάση queryDatabaseTable με παραμέτρους τα παραπάνω html_inputs κ.λ.π. Το οποιο θα είναι ενα τεράστιο sequence διάγραμμα το οποίο δεν ξέρω κατα πόσο θα διαβάζεται.
Πώς πρέπει να είναι?
(Μιλάμε πάντα για τα sequence διαγράμματα στο Design Model)
TO RTE σημαίνει Round-Trip-Engineering είναι η ταυτοχρονη δυνατότητα παραγωγής κώδικα και reverse engineering του κώδικα της κλάσης ώστε το μοντέλο να είναι ενημερωμένο με την τρέχουσα μορφή του κώδικα. Στα Java properties της κλάσης κοίταξε αν η επιλογή Synchronization είναι η 3-RTE.Brashear wrote:Στο Java Code Model φτιάχνω μια κλάση και τις μεθόδους της, κάνω generate code και φτιάχνει τον κώδικα. Όταν κάνω διπλό κλίκ πάνω στη μέθοδο στον model explorer δεν εμφανίζεται η γραμμή του κώδικα όπου αρχίζει η μέθοδος.
Κανονικά θα έπρεπε πατώντας το εικονίδιο της μεθόδου να μας πηγαίνει στην συγκεκριμένη γραμμή του κώδικα της κλάσης.
Μου βγάζει ένα παράθυρο Browse Code που γράφει τα εξής:
Unable to browse the model item. Possible reasons:
- source file does not exist or is in improper location;
- model item is excluded from RTE;
- model item doesn't have UMLComponent associated.
- Το αρχείο υπάρχει και είναι στο σωστό path.
Τα άλλα δύο τι σημαίνουν? - και τι πρέπει να κάνω σε κάθε περίπτωση?
Πρέπει να κάνω κάποιες ρυθμίσεις?
(Ο κώδικας προχωράει κανονικά - απλά δεν μου εμφανίζει την μέθοδο που επιλέγω απο το Code Model).