Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
25/03/2012
1
Corso TECNICO DI RETE
MODULO 1 –dimensionamento architettura di rete
Docente: ing.Andrea Sarneri [email protected]
1 ANDREA SARNERI - CORSO CESCOT 2010
WEB 2.0 Le Applicazioni Desktop Le Applicazioni WEB Da web 1.0 a web 2.0 Rich Internet applications e Ajax Collaborazione, comunicazione condivisione:Feed, social network Il ruolo dei Motori di ricerca: tecniche S.E.O. Verso il Web 3.0..
2 ANDREA SARNERI - CORSO CESCOT 2010
25/03/2012
2
Il Protocollo HTTP (HyperText Transfer Protocol) rende possibile il trasferimento di documenti, tipicamente ipertesti codificati con marcatori HTML, tra server e client.
L'HTTP funziona su un meccanismo richiesta/risposta (client/server): il client esegue una richiesta ed il server restituisce la risposta. Nell'uso comune il client corrisponde al browser ed il server al sito web. Vi sono quindi due tipi di messaggi HTTP: messaggi richiesta e messaggi risposta. Nel protocollo HTTP le connessioni vengono generalmente chiuse una volta che una particolare richiesta (o una serie di richieste correlate) è stata soddisfatta. Questo comportamento rende il protocollo HTTP ideale per il World Wide Web, in cui le pagine molto spesso contengono dei collegamenti (link) a pagine ospitate da altri server (URL).
Il World Wide Web: il protocollo HTTP
3
Il browser è una applicazione che implementa svariati funzioni finalizzate a centralizzare in un unico programma tutto quanto serve ad usufruire delle risorse che la rete internet mette a disposizione: Interprete HTML, Client HTTP, Client FTP, Client email, visualizzatore multimediale, visulizzatore di file grafici, ecc….
Il World Wide Web: il Browser
Web server
Mail server
Ftp server
25/03/2012
3
Il World Wide Web: il Browser
Interfaccia grafica
Client HTTP
CACHE Database preferiti
Database FEED RSS
Client Ftp
Client ……
Client Posta
Database cronologia
Funzioni: EDITOR HTML Interprete Script Virtual machine JAVA Player multimediali Plugins Supporto CSS …………
Client HTTPS
Filtri
Il browser nasce come un visualizzatore o semplice “formattatore” di dati HTML. Succesivamente evolve verso un vero e proprio programma in grado di svolgere attività di calcolo, elaborazione, e lanciare a sua volta l’esecuzione di procedure scaricate dalla rete, in particolare attraverso script e codice JAVA
Applicazioni “Desktop”
Per “Desktop application” si intende quindi un programma che gira “fisicamente “sul PC locale.
Il presupposto per una Desktop application è che il PC abbia sufficienti risorse (hardware, velocità, memoria, grafiche,…) per poter consentire all’applicazione di svolgere autonomamente le funzioni desiderate.
Approcci opposti al “desktop computing” sono l’approccio “terminal client” o anche “virtual o remote desktop”
25/03/2012
4
Applicazioni “Desktop”
•Dati •Programmi •Elaborazione •Visualizzazione
•Dati
•Visualizzazione
•Dati •Programmi •Elaborazione
Modello Desktop: la connessione al server è attiva solo per il passaggio dei dati
Modello “Terminal”: la connessione al server è sempre attiva ma viene impegnata solo per il passaggio dei risultati
La risorsa di connessione è costosa, quindi si tende a minimizzarne l’uso.
Applicazioni “Desktop” Richiedono interattività grafica, potenza di calcolo, capacità di memorizzazione e movimentazione files di grosse dimensioni, sono tipicamente monoutente Esempi: Software di produttività Office: Word, Excel, Powerpoint,… Software di Computer Aided Design: Autocad, Solidworks, Pro/Engineer,.. Software di Grafica: Photoshop, Coreldraw, ….
Applicazioni “Client-Server” Richiedono elevata potenza di calcolo lato server, interattività limitata all’I/O, accesso a basi di dati condivise, multiutenza. Esempi: Software Enterprise Resource Planning: SAP, Navision, e-Business, JD … Software di Collaborazione: Lotus notes, Exchange, GroupWise….
25/03/2012
5
Applicazioni “Client-Server”
•Programmi utente •Elaborazione interfaccia •Visualizzazione
•Dati •Programmi database •Elaborazione dati
Modello Client –Server: L’applicazione viene ripartita tra server e client, in funzione della ottimizzazione della velocità di esecuzione, della interattività utente, della minimizzazione del traffico di rete. Il latoserver viene ottimizzato in funzione delle problematiche database multiutente Il lato client viene ottimizzato in funzione della velocità grafica, e della interazione utente.
Le applicazioni WEB
•Programmi utente: browser Web, applets ,codice JAVA •Elaborazione HTML/JAVA/applets •Visualizzazione
•Programmi utente: browser Web, applets ,codice JAVA •Elaborazione HTML/JAVA/applets •Visualizzazione
•Dati •Server web •Programmi applicativo •Elaborazione dati •Generazione HTML/JAVA
•Dati •Server web •Programmi applicativo •Elaborazione dati •Generazione HTML/JAVA
•Programmi utente: browser Web, applets ,codice JAVA •Elaborazione HTML/JAVA/applets •Visualizzazione
•Dati •Server web •Programmi applicativo •Elaborazione dati •Generazione HTML/JAVA
Per “applicazione WEB” si intende un programma che non richiede di essere installato ed eseguito sul PC locale, ma è utilizzabile attraverso un browser WEB e una connessione HTTP ad un server che ospita l’applicazione e rende disponibile una interfaccia WEB
25/03/2012
6
Le applicazioni WEB
Le applicazioni WEB si basano sull’evoluzione del modello client-server che utilizza HTTP/HTML come modalità di scambio: Sul server viene creata una istanza dell’applicazione relativa al client collegato, e il server elabora i risultati e le modalità di visualizzazione che poi vengono preparati per essere inviati al client. Sulla connessione transitano file HTML o XML, script Java, formati bytecode (applets), ecc.. Sul browser vengono elaborati i tag HTML e XML, tramite la “JAVA virtual machine”vengono interpretati script e applets per poi creare e animare l’interfaccia, indipendentemente dalla piattaforma del client.
Le applicazioni WEB
Le applicazioni Web utilizzano il Browser HTML come client, sono quindi indipendenti dalla piattaforma client
25/03/2012
7
Le applicazioni WEB
“Three tier architecture” Interfaccia Utente
Logica della Applicazione
Base dei dati
La connessione può essere indifferentemente una LAN o Internet. Requisito minimo di banda?
Le applicazioni WEB
E’ possibile avere una applicazione disponibile sia in modalità desktop che web?
Caratteristiche Desktop App. Caratteristiche WEB App.
Grafica di elevata qualità Rendering HTML
Grafica 2D interattiva Velocità migliorata con Applet Java, JavaScript, Tecnologia Flash
Grafica 3D interattiva Tecnologia VRLM, vettoriale, …
Interattività delle funzioni Pagine dinamiche, Caching, AJAX
L’utente vuole avere la stessa Esperienza: Interattività, qualità grafica, velocità
25/03/2012
8
Le applicazioni WEB Le tecnologie che abilitano le applicazioni web:
XML (eXtensible Markup Language) per la marcatura dei dati (tagging) e non solo del
testo; SOAP (Simple Objects Access Protocol) per lo scambio di messaggi strutturati tra
componenti software; WSDL (Web Services Description Language) per la descrizione e l’utilizzo dei servizi
messi a disposizione da un Web server; UDDI (Universal Description Discovery and Integration) per elencare pubblicamente i
servizi messi a disposizione. CSS fogli di stile per trattare separatamente testo da formattazione
I linguaggi: ASP, ASP.NET, CGI, ColdFusion, JSP/Java, PHP, Perl, Python,…
Infrastruttura fisica: Banda larga
Le applicazioni WEB Una prima applicazione web: il WebMail
L’esigenza: Consultare la propria casella di posta al di fuori dell’ufficio o in assenza del proprio client La soluzione: Svincolarsi dalla propria applicazione desktop di posta e dal proprio sistema operativo Requisiti: Mantenere l’interfaccia simile al client desktop, mantenere le stesse funzionalità Criticità: Disporre dei database dei contatti e delle mail inviate/ricevute
25/03/2012
9
Le applicazioni WEB Una prima applicazione web: il WebMail
La risposta di Google: GoogleMail
Verso il WEB 2.0
Applicazioni WEB e Applicazioni Web 2.0 Prime conseguenze dello sviluppo delle applicazioni WEB:
Il software non deve essere installato su tutti i client, ma solo sul server Cambia il modello di business della vendita della licenza d’uso software Il browser diventa un framework aperto , espandibile con plugins normalmente freeware (ActiveX, realplayer, shockwave, flash..)
25/03/2012
10
Verso il WEB 2.0
Applicazioni WEB e Applicazioni Web 2.0 Prime conseguenze dello sviluppo delle applicazioni WEB:
Gli applicativi, da software packages chiusi, si aprono allo sviluppo da parte di terzi mettendo a disposizione APIs e risorse Una release beta può essere messa a disposizione più facilmente e testata dagli utenti, il bug fixing diventa immediato Il modello del software open source (GNU-GPL) inizia a scalzare il monopolio di alcuni vendor
Verso il WEB 2.0
L’utilizzo del web , da “distributivo” inizia a evolvere verso “partecipativo”
25/03/2012
11
Dal Web 1.0 al Web 2.0 •Pagine web statiche
•Contenuti predeterminati
•Utente spettatore
•Lettura monodirezionale
•Grafica sovraccarica
•Informazione senza feedback
Pagine web dinamiche Contenuti dinamici
Utente attore
Interazione Bidirezionale Grafica sobria
Web 2.0 Comunicazione
2001: Bolla speculativa Crisi della new-economy Reinventare il Web….
Dal Web 1.0 al Web 2.0
Il valore (economico) della “User
Experience”
Nel Web 2.0 la mole di
informazioni in rete esplode
La “user experience” guida i nuovi
motori di ricerca
La “user experience” guida lo
sviluppo delle applicazioni e le
strategie di marketing
25/03/2012
12
Dal Web 1.0 al Web 2.0 WORLD INTERNET USAGE AND POPULATION STATISTICS
World Regions Population ( 2010 Est.)
Internet Users Dec. 31, 2000
Internet Users Latest Data
Penetration (% Population)
Growth 2000-2010
Users % of Table
Africa 1,013,779,050 4,514,400 110,931,700 10.9 % 2,357.3 % 5.6 %
Asia 3,834,792,852 114,304,000 825,094,396 21.5 % 621.8 % 42.0 %
Europe 813,319,511 105,096,093 475,069,448 58.4 % 352.0 % 24.2 %
Middle East 212,336,924 3,284,800 63,240,946 29.8 % 1,825.3 % 3.2 %
North America 344,124,450 108,096,800 266,224,500 77.4 % 146.3 % 13.5 %
Latin America/Caribbean 592,556,972 18,068,919 204,689,836 34.5 % 1,032.8 % 10.4 %
Oceania / Australia 34,700,201 7,620,480 21,263,990 61.3 % 179.0 % 1.1 %
WORLD TOTAL 6,845,609,960 360,985,492 1,966,514,816 28.7 % 444.8 % 100
http://www.internetworldstats.com/stats.htm
Dal Web 1.0 al Web 2.0
“Rich User Experience”
“WEB as a
Platform”
“Open culture”
25/03/2012
13
La partecipazione e sue declinazioni
WikiPedia si basa su software Open Source MediaWiki.
La piattaforma Wiki è pensata per creare siti di collaborazione,
condivisione e gestione di informazioni, sia su internet che su intranet.
La partecipazione e sue declinazioni
25/03/2012
14
La tecnologia a supporto della partecipazione
Esercizio: per ciascuno di questi tags cercane il significato tramite Wikipedia
http://www.wikipedia.org oppure Google
La tecnologia a supporto della partecipazione
AJAX e le Rich Internet Applications
Applicazioni Sincrone
25/03/2012
15
La tecnologia a supporto della partecipazione
AJAX (*) e le Rich Internet Applications
(*)Asynchronous Java Script and Xml
La tecnologia a supporto della partecipazione
AJAX e le Rich Internet Applications
Applicazioni Asincrone
25/03/2012
16
Il Successo delle WEB APPLICATIONS: la strategia di Google
Le Web Applications di Google
GoogleMail mail client
Calendar
Contacts
Chat
Rich Internet Applications
GoogleDocs
Spreadsheet
Word processor
Presentations
Forms
25/03/2012
17
Le Web Applications di Google
GoogleMaps creare le proprie
mappe
creare percorsi
Taggare i propri siti
Google Places creare una scheda
di una attività
Commerciale
Rich Internet Applications
Attività:
Google Maps, Google Places: Creare una scheda della propria attività commerciale
Applicazioni di applicazioni Le Mash-up:
Così come Google, molti tendono a pubblicare e rendere disponibili contenuti dei propri siti attraverso interfacce applicative (APIs)
E’ possibile “remixare” questi contenuti e creare nuove applicazioni, minimizzando gli sforzi di sviluppo.
http://newsworldmap.com/
http://www.webmashup.com/
25/03/2012
18
Collaborazione, comunicazione condivisione
Stimolare la creazione di contenuti e la loro
condivisione diventa l’elemento fondante del
Web 2.0
Alcune applicazioni diventano il traino alla
creazione di contenuti da parte degli utenti:
Wikipedia, Flickr, SlideShare, YouTube,Web-
log, Del.icio.us
Ma anche contenuti ricavati dal tracciamento
delle modalità di fruizione dei siti ad es. di e-
commerce
Ebay, Amazon, iTunes, …
Collaborazione, comunicazione condivisione
La mole di contenuti generata diventa enorme così come
il rischio di renderla inutilizzabile se non si riesce a creare
un sistema di classificazione delle informazioni
Chi genera l’informazione ne
conosce il contenuto, può
quindi classificarlo
correttamente , generando o
utilizzando le “tassonomie”
(taxonomy) di cassificazione
più opportune
25/03/2012
19
Collaborazione, comunicazione condivisione
D’altra parte chi utilizza e
visiona il contenuto è titolato
a contestare, correggere,
integrare gli attributi di
classificazione associati
all’informazione,
riclassificando i contenuti
secondo le cosiddette
“folksonomy” , ovvero
classificazioni alternative
alle prime.
Collaborazione, comunicazione condivisione
Su questa base si innesta il fenomeno del “Tagging” libero dei
contenuti da parte degli utenti, i quali creano di fatto dei nuovi
alberi di classificazione , e di relazione tra i contenuti ,
completamente inediti , che vanno ad arricchire, integrare o
stravolgere il materiale informativo di partenza.
Pen Marker Sharpie
Purple
25/03/2012
20
Collaborazione, comunicazione condivisione
Quanto più un attributo è “taggato” dagli utenti, quanto più
assume importanza come attributo qualificante, e tanto
più viene evidenziato nella “nuvola” (tags cloud) dei
possibili attributi dell’oggetto
Collaborazione, comunicazione condivisione
Tutto si può “taggare” :
Un sito web, un URL, una foto, un video, un
documento, un file musicale, un articolo che
esprime un commento, ….
Aggregando i Tag si possono scoprire
relazioni inaspettate tra elementi di
informazione
Si possono “taggare” i comportamenti dei
consumatori attraverso il tracciamento dei
percorsi di navigazione.
25/03/2012
21
Collaborazione, comunicazione condivisione
Nel Web 1.0 tutta questa massa di informazioni
aggiuntive andava persa
Nel Web 2.0 è possibile:
Guidare più velocemente le ricerche
Indirizzare le campagne di promozione con feedback in
realtime (pubblicità contestuale)
Modificare i contenuti delle pagine in funzione della
navigazione (“Rich experience”)
Misurare il ROI sugli investimenti
Collaborazione, comunicazione condivisione
25/03/2012
22
Rich User Experience L’utente diventa protagonista dell’esperienze di
navigazione
Le interfacce web sono dinamicamente ricche di
contenuti coerenti con l’aspettativa, lo stato
d’animo, la sensibilità dell’utente
Nella marea di informazioni l’utente comunque
vuole scegliere cosa guardare , altrimenti
l’esperienza diventa frustrante e disincentivante
Si diffonde un nuovo “gusto estetico” per la
creazione delle pagine: sobrietà, chiarezza,
semplicità.
Web 2.0 “look and feel”
25/03/2012
23
Vi ricordate il web 1.0?
25/03/2012
24
L’utente decide quali informazioni ricevere
I FEEDS RSS Really Simple Syndication
Un feed è usato per fornire agli utilizzatori una serie di contenuti aggiornati di frequente.
I distributori del contenuto rendono disponibile il feed e consentono agli utenti di iscriversi.
L'aggregazione consiste in un insieme di feeds accessibili simultaneamente, ed è eseguita da un aggregatore Internet.
SOCIAL NETWORKING
Gli elementi di una piattaforma di social networking:
Registrazione
Scheda utente - microblog
Privacy: profilo pubblico, profilo privato
Bacheca per i messaggi
Box “umore del giorno” (status message)
Elenco relazioni
Gruppi di relazione
…funzioni specifiche
25/03/2012
25
SOCIAL NETWORKING
Specializzazione del network:
Professionale
Hobby
Interessi
Culturale
……
http://en.wikipedia.org/wiki/List_of_social_networking_websites
Il Web 2.0
Il WEB2.0
• La rete diventa da monodirezionale a bidirezionale
• Gli utenti creano e pubblicano contenuti e opinioni
• Nuove applicazioni WEB consentono la partecipazione
• L’utente identifica e sceglie i contenuti che gli interessano
Tags, Folksonomy, Social network, Rich user Experience, Web as a platform..
La Web Analytics è la disciplina che studia l’utilizzo della rete da parte degli utenti e consente l’analisi e individuazione delle più opportune strategie di e-marketing
25/03/2012
26
I motori di ricerca Gli spider dei motori di ricerca sono applicazioni che periodicamente “visitano” tutti i siti ed effettuano alcune operazioni:
• analisi del testo attraverso le keyword, dei link, dei tag HTML
• Indicizzazione: algoritmo che cerca la massima corrispondenza tra la chiave di ricerca (keyword) e il testo contenuto nella pagina, e mette in ordine i siti in funzione del “punteggio” ottenuto.
• Caching delle pagine visitate
Gli algoritmi di ricerca degli spider sono proprietari
Posizionamento nei motori di ricerca Da cosa dipende il posizionamento nel motore di ricerca:
Il testo nelle pagine
I link tra le pagine
Le keywords nel testo
La popolarità (i link tra siti)
Per keywords si intendono parole contenute nel testo e rappresentative dei contenuti del testo stesso.
Lo spider tenta di muoversi su tutto l’ipertesto alla ricerca delle occorrenze delle keywords.
25/03/2012
27
CRM L’insieme dei feedback costituisce una mole di dati
importante per conoscere meglio il cliente , le sue
abitudini, le sue aspettative.
I sistemi Customer Relationship Management
diventano i collettori di tutte le informazioni e aiutano a
definire le strategie in maniera strutturata.
La rivincita della “long tail”
Esempio:
pochi libri venduti in grande quantità, molti libri venduti in poche quantità
Parte finale di una legge di potenza (distribuzione di Pareto , exp negativa)
Esiste un mercato di nicchia non raggiungibile con gli approcci del mercato
di massa, che però quantitavamente può essere anche superiore:
La cosiddetta “long-tail”
25/03/2012
28
Il web consente di aggredire la long-tail , poiché dispone di strumenti che agevolano l’incontro tra domanda e offerta in uno scenario di elevata frammentazione di prodotti, ma elevata raggiungibilità di potenziali clienti.
Uso delle Keywords specifiche
Posizionamento dei siti
Profilazione del cliente
Attenzione dei motori di ricerca ai contenuti
La rivincita della “long tail”
• Il Web come DATABASE distribuito
• Web semantico: capacità di identificare contenuti (ovvero i dati e il loro contesto)
• Capacità di filtrare i contenuti per migliorare la user experience
• Interfacce 3D
• ………..
WEB 3.0
CIS - Incontro 1 56
25/03/2012
29
Web 3.0
CIS - Incontro 1 57