+ All Categories
Home > Documents > Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione...

Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione...

Date post: 15-Feb-2019
Category:
Upload: vuongtuong
View: 233 times
Download: 0 times
Share this document with a friend
16
Chat HELP DESK su HTTP Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi Andrea Vitaletti Antonello Supino
Transcript
Page 1: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

1

Chat HELP DESK su HTTP

Presentazione Tesi di Laurea in Ingegneria Informatica N.O.

Relatore: Tutor:Luca Iocchi Andrea Vitaletti

Antonello Supino

Page 2: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

2

Obbiettivi

Gestire un dialogo multimediale tra più utenti via reteProgettazione che tiene conto degli “ostacoli” alla comunicazione in rete (firewall, ip privati, proxy)Compatibilità e facilità di istallazioneInterfaccia grafica amichevole e intuitiva

Page 3: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

3

Materiale Realizzato

Le applicazioni Client e ServerFiles batch per un avvio più facile e intuitivoDiagrammi delle classiAPI (Application Program Interface) in formato JavadocLa relazione finale

Page 4: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

4

Scenario d’uso

Server

Client 2(Tony)

Client 1(Peter)

ciao come va?

heyTony ☺

tutto ok!

Client n(nomeutente)

1) Registrazione (Username e Password)

2) Login

3) Conversazione

Page 5: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

5

Tecnologie utilizzate 1/3

Architettura Client-Server

La programmazione di Rete

Page 6: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

6

Tecnologie utilizzate 2/3

I Thread Il modello di vita a quattro statiAdozione del Multithread e Sincronizzazione

Java: linguaggio OO con meccanismo per la gestione delle eccezioni

Page 7: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

7

Tecnologie utilizzate 3/3

Utilizzo di un DBMS

Utilizzare i suoni in Java

L’interfaccia grafica(applet, swing e awt)

Page 8: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

8

IP privato / messaggi

Client a Ip Pubblico Client a Ip Privato

Server

messaggio

header bodyClient Server

01110011101101027013

Page 9: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

9

Dialogo tra Client e Server

MainConnection

Page 10: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

10

Descrizione del Client 1/3

Login

Opzioni connessione

Lista utenti connessi(contattare un utente)

Page 11: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

11

Descrizione del Client 2/3

Conversazione privataConversazione multiutente

Disegno e cancellazione delle lavagne

Page 12: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

12

Descrizione del Client 3/3

Selettore di Files

Indicatore di avanzamento

Selettore di Slides

La banca dati audio in memoria

Page 13: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

13

Descrizione del Server 1/2

Interfaccia grafica

Lo ShutDown del Server

Pinging e disconnessione automatica per timeout

Il Database su HDDati di sessione su vettori

Page 14: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

14

Descrizione del Server 2/2

Smistamento delle connessioni entranti:Registrazione e DeregistrazioneLogin e LogoutMessaggi delle conversazioni privateMessaggi delle conversazioni multiutente

Disegno e cancellazione delle lavagne Ricezione e inoltro dei files Ricezione e inoltro delle slides

Page 15: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

15

Problemi e Soluzioni

Riorganizzazione del codice in Packages per rendere comprensibile un’applicazione complessa

Client e Server possono ascoltare solo sulla porta 80

IP privato: non si accettano connessioni entranti

Memorizzare le linee disegnate sulla lavagnaper evitare la loro cancellazione dopo il repaint

Mascherare l’architettura di rete sottostante e i vari tipi di connessione, sfruttando la modularità del Java, per costruire un’unica architettura di chat ad un più alto livello

Reinplementazione della funzione readline per leggere dall’outputstream linee in formato byte senza utilizzare un buffer di sistema che tronchi i file successivamente inviati sullo stesso canale

Page 16: Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Triennale/Presentazione Tesi...Presentazione Tesi di Laurea in Ingegneria Informatica N.O. Relatore: Tutor: Luca Iocchi

16

Conclusioni e lavori futuri

Statistiche: 72 classi Java, 12905 LOC, 23 MbytesMessa in pratica delle conoscenze acquisite durante il corso di laurea

Miglioramenti:introduzione di tools grafici sulla lavagna(riempimento, retta, rettangolo, tavolozza colori ecc.) miglioramento della lavagna nella chat multiutente.

Utilizzare l’applicazione in un corso universitario per il ricevimento online degli studenti


Recommended