Dal momento che non ho ancora capito del tutto l'uso corretto dei simboli portuali e di interfaccia nei diagrammi dei componenti, alcune domande:UML2: porte e interfacce nei diagrammi dei componenti
I. Immaginate un pezzo di software che vuole utilizzare un servizio di logger remoto molto speciale su rete (TCP). I messaggi potrebbero essere un po 'di XML. Quindi il logger espone un'interfaccia che specifica cose come handshake, struttura XML, elementi XML ecc. In modo che il logger accetti un messaggio.
a) Ho ragione che questa interfaccia può essere chiamato "ILoggerProtocol", la porta può essere chiamato dopo il servizio che fornisce ("logging")?
b) Quindi il componente nella mia applicazione implementa quell'interfaccia in modo che generi un messaggio conforme per il server?
c) A questo punto una cosa interessante: per la comunicazione, v'è una libreria aggiuntiva "Networking", che fornisce roba TCP semplice, in modo che la connessione TCP, invia messaggi, gestisce gli errori ecc Ho bisogno di questa classe quando ho voglio solo enfatizzare la strada dai messaggi generati al server? La mia porta è quindi l'interfaccia TCP?
d) E quando voglio disegnare l'immagine completa, come posso aggiungere correttamente il componente di rete al diagramma, sottolineando che viene utilizzato ILoggerProtocol E che va su TCP attraverso il componente di rete?
II. Porte all'interno della mia applicazione: ora ci sono due librerie dove si usa solo l'altra; In sostanza, in C/C++, sarebbe #include dell'altro file di intestazione:
E) è che il diagramma corretto?
f) Ho bisogno di porti qui? Se sì, cosa rappresenterebbero in realtà? Che nomi daresti loro?
g) O i lecca-lecca sono sufficienti solo senza i simboli della porta?
III. in materia di lecca-lecca:
h) sono quelle due notazioni fondamentalmente la stessa e intercambiabili? Ho trovato il nome "assembly" per la versione combinata, quindi forse c'è una differenza ...
Ho fatto una breve modifica alla mia risposta. –