Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [UML] Diagramma di sequenza

    Salve a tutti,
    mi ritrovo qui ad avere dei dubbi sul diagramma di sequenza. Nella definizione viene detto che il diagramma di sequenza deve essere relativo ad un caso d'uso del programma e sostanzialmente deve descrivere i possibili scenari.

    Ora però ho dei dubbi, bisogna descrivere ogni singola mossa che fa il programma tipo "richiama il metodo x passando gli attributi x ed y" o posso lavorare anche ad un metodo di astrazione più alto descrivendo il tutto con una frase.

    Tipo invece di dire "chiama il metodo x per aprire il file, poi chiama il metodo y per leggere la riga, poi chiama il metodo z per chiudere il file", posso semplicemente dire, nel diagramma di sequenza, "legge una riga da file.txt" ?

    Come anche se chiamo il metodo "leggi" della classe "file" devo anche dire che invoco il metodo sull'oggetto "miofile"?

    Cioè è necessario dire "file.leggi" e quindi mettere tutti i nomi degli oggetti o posso semplicemente schematizzare con "leggi"?

    Perchè ad esempio sto lavorando in C#, ed un oggetto viene creato al di fuori del caso d'uso, per l'esattezza alla creazione del programma. Quindi non dipende dall'azione dell'attore. Ora però se utilizzo direttamente il nome di questo oggetto nel diagramma di sequenza, non si capisce da dove viene. Ma se dico semplicemente chiamo il metodo "xyz" senza dire su quale oggetto lo invoco è un problema?

    Vi ringrazio in anticipo,
    Neptune.
    "Estremamente originale e fantasioso" By darkiko;
    "allora sfiga crepuscolare mi sa che e' meglio di atmosfera serale" By NyXo;
    "per favore, già è difficile con lui" By fcaldera;
    "se lo apri te e invece di "amore" ci metti "lavoro", l'effetto è lo stesso" By fred84

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463

    Moderazione

    Preciso che questo genere di domande continua ad essere off topic: un conto è avere un dubbio su come si riproduce una determinata logica di programma all'interno di un diagramma UML, un conto è chiedere come, quando, perché utilizzarlo ponendo delle condizioni che non possono essere comprese o conosciute da chi risponde.

    UML è uno standard che definisce le regole sintattiche di una notazione: non ti dice quanti diagrammi devi creare, quanto devono essere precisi, cosa deve essere focalizzato e cosa deve essere tralasciato, poiché questi fattori sono soggettivi e sono lasciati all'utilità e alla valutazione di chi realizza il diagramma.

    Detto questo, chiedere ad altri come devono essere i diagrammi che sono utili al tuo usufrutto non è nulla di più né di meno che chiedere qual è il linguaggio più adatto a te, o qual è il colore del vestito che più ti sta bene.

    In conclusione, onde evitare di finire in questa situazione, chiedo di rendere la discussione più tecnica e meno filosofica, in modo da evitare che poi tutti i filosofi portino la loro verità assoluta.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    1,469
    facciamo così: invece dei filosofi facciamo parlare gli informatici, che "magari" proprio quella materia hanno insegnato all'università (anzi, meglio, in una università di informatici, non di filosofi. Ammesso che ci sia differenza tra le due...)
    ---
    La risposta alla domanda è: fai come vuoi, è sempre giusto [se fossi filosofo aggiungerei "ed è sempre sbagliato"].

    Non riuscirai mai a descrivere compiutamente con un qualsiasi formalismo il funzionamento di qualsiasi software (se vuoi ne discutiamo sotto il profilo matematico, ma ci vogliono un pochino di basi). Attenzione, meglio precisarlo, ho scritto QUALSIASI software, non UN qualsiasi software, e neppure UN software ben preciso.

    Fermo questo assunto matematico (ma che son pronto a dettagliare a qualsiasi livello di approfondimento vuoi), ne deriva che il tuo diagramma deve più banalmente dare un'idea di come "funzionerà".

    Ma "funzionerà COSA"?

    Se hai interesse a dare rilievo alla "grossa" (ossia ad un macro-funzionamento) adotterai una descrizione "grossolana".

    Esempio: riempire il post di un forum.
    "clicca nuovo, il server risponde con certi dati, inserisci le informazioni, clicca invia risposta e il server ti ritorna la lista aggiornata"

    Se hai interesse a descrivere il funzionamento in dettaglio di un particolare (un "micro" particolare) andrai invece con qualcosa simile ad uno "zoom"

    Esempio: riempire il post di un forum.
    Clicchi nuovo => generi la prima query di selezione magari da javascript => la passi al server php => viene eseguita => viene passata al server http => viene ritornata al browser => viene mostrata all'utente (...)

    Non mi dilungo su "a cosa servono i diagrammi UML" (e questo in particolare), ma (filosoficamente) direi che se non è chiaro perchè si sta facendo qualcosa, difficilmente si potrà farlo bene.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.