Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto. Approfondimento. L implementazione del sito: piattaforme tecnologiche e linguaggi



Documenti analoghi
POR Regione Campania Misura Promozione della partecipazione Femminile al Mercato del Lavoro. Dispensa

Architetture Applicative

lem logic enterprise manager

Il CMS Moka. Giovanni Ciardi Regione Emilia Romagna

CONTENT MANAGEMENT SYSTEM

È evidente dunque l'abbattimento dei costi che le soluzioni ASP permettono in quanto:

IL MARKETING E QUELLA FUNZIONE D IMPRESA CHE:

Specifiche tecniche e funzionali del Sistema Orchestra

Alla c.a. Sindaco/Presidente Segretario Generale Dirigente competente

COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING

Sito web parrocchiale: STRUMENTI E PROGRAMMI

Sistemi informativi secondo prospettive combinate

MANUALE DELLA QUALITÀ Pag. 1 di 6

Il servizio di registrazione contabile. che consente di azzerare i tempi di registrazione delle fatture e dei relativi movimenti contabili

En.Te.R. Team srl. Engineering Technology Research

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

Creare una Rete Locale Lezione n. 1

MANUALE DELLA QUALITA Revisione: Sezione 4 SISTEMA DI GESTIONE PER LA QUALITA

INDICAZIONI GENERALI

DALLA PARTE DEGLI ALTRI OPERATORI ECONOMICI. La nostra risposta alle esigenze della tua attività.

sito web sito Internet

Sviluppo, Acquisizione e Riuso

Sistemi Informativi e Sistemi ERP

Il Gruppo di lavoro ha articolato l operazione in fasi:

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

INFORMATIVA SUL DIRITTO ALLA PRIVACY PER LA CONSULTAZIONE DEL SITO WEB

Software - Software applicativo - Altri campi di applicazione

Progetto Atipico. Partners

GESTIONE DEL MOVIMENTO DEL PERSONALE IN AMBIENTE INTRANET. Open System s.r.l.

VMware. Gestione dello shutdown con UPS MetaSystem

Il sistema operativo TinyOS

Sistema di Gestione dei Contenuti Multimediali

MODULO 02. Iniziamo a usare il computer

Database e reti. Piero Gallo Pasquale Sirsi

Il Digital Signage. Utilizzi. Il Digital Signage

Le effettive esigenze della Direzione del Personale nella gestione delle risorse umane in azienda. Andamento dal 2005 ad oggi

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Premessa Le indicazioni seguenti sono parzialmente tratte da Wikipedia ( e da un tutorial di Pierlauro Sciarelli su comefare.

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

POLYEDRO. La migliore piattaforma tecnologica di sempre per EMBYON, l evoluzione dell ERP Metodo

La progettazione centrata sull utente nei bandi di gara

Corso di PHP. Prerequisiti. 1 - Introduzione

uadro Soluzione software e hardware Per le rilevazione presenze Gestione Aziendale Fa quadrato attorno alla tua azienda

DEPLIANT INFORMATIVO DI PRESENTAZIONE AZIENDALE

Innovation Technology

RACCOMANDAZIONE N. R (91) 10 DEL COMITATO DEI MINISTRI AGLI STATI MEMBRI SULLA COMUNICAZIONE A TERZI DI DATI PERSONALI DETENUTI DA ORGANISMI PUBBLICI

Alfa Layer S.r.l. Via Caboto, Torino SOFA WEB

Ti consente di ricevere velocemente tutte le informazioni inviate dal personale, in maniera assolutamente puntuale, controllata ed organizzata.

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO

WBT Authoring. Web Based Training STUDIO

DBMS e Linguaggi di programmazione nell'era di Internet

Network Monitoring. Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale

STUDIO MESSANO UFFICIO SVILUPPO NUOVE TECNOLOGIE

Progettaz. e sviluppo Data Base

SCHEDA PRODOTTO PAG. 1 J O B T I M E W F. Variazioni mensili al cartellino presenze. Versione 6.1. JOBTIME Work Flow

LA GESTIONE DELLE INFORMAZIONI IN AZIENDA: LA FUNZIONE SISTEMI INFORMATIVI 173 7/001.0

ASSESSORATO DEGLI AFFARI GENERALI, PERSONALE E RIFORMA DELLA REGIONE

PROTOS GESTIONE DELLA CORRISPONDENZA AZIENDALE IN AMBIENTE INTRANET. Open System s.r.l.

Il Web Server e il protocollo HTTP

Siti web centrati sui dati (Data-centric web applications)

L uso della Balanced Scorecard nel processo di Business Planning

JOB. JOB - Amministrazione del personale. La soluzione Sistemi per le paghe in Azienda.

Approccio stratificato

Docebo: la tua piattaforma E-Learning Google Ready.

Gestione delle informazioni necessarie all attività di validazione degli studi di settore. Trasmissione degli esempi da valutare.

martedì 17 aprile 12 1

REALIZZAZIONE LAN

SERVER E VIRTUALIZZAZIONE. Windows Server Guida alle edizioni

THS: un idea semplice, per un lavoro complesso.

La manutenzione come elemento di garanzia della sicurezza di macchine e impianti

Vulnerability Assessment relativo al sistema Telecom Italia di autenticazione e autorizzazione basato sul protocollo Radius

Guida alla registrazione on-line di un DataLogger

SOFTWARE PER LA RILEVAZIONE PRESENZE SUL WEB

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

SICUREZZA INFORMATICA PER L UNIONE DI COMUNI LOMBARDA ASTA DEL SERIO

Stai impaginando manualmente centinaia di pagine?

La normativa sul riuso del software nella P. A. e l esperienza Toscana

Progetto Virtualizzazione

capitolo 8 LA CHECKLIST PER LA VALUTV ALUTAZIONEAZIONE TECNOLOGICA

Progetto LearnIT PL/08/LLP-LdV/TOI/140001

5.1.1 Politica per la sicurezza delle informazioni

GESTIONE AVANZATA DEI MATERIALI

Introduzione al data base

INDICOD-ECR Istituto per le imprese di beni di consumo

Implementing a new ADT based on the HL7 version 3 RIM. Esempio

SISTEMI E RETI 4(2) 4(2) 4(2) caratteristiche funzionali

creazione e gestione di siti L'agenzia di comunicazione Artistiko internet propria attività al centro dell'attenzione

03. Il Modello Gestionale per Processi

Scenario di Progettazione

La prima piattaforma per chi insegna e per chi impara l italiano

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015

Sito web per la presentazione e l accesso ai servizi di Ruven integrato con la piattaforma B2B del pacchetto software ERP Stratega.NET.

UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria

hi-com software realizzato da Hi-Think

Identità e autenticazione

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

La VPN con il FRITZ!Box Parte I. La VPN con il FRITZ!Box Parte I

Brochure Internet. Versione The Keyrules Company s.r.l. Pagina 2 di 8

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

Transcript:

APPROFONDIMENTO ICT Iniziativa Comunitaria Equal II Fase IT G2 CAM - 017 Futuro Remoto Approfondimento L implementazione del sito: piattaforme tecnologiche e linguaggi ORGANISMO BILATERALE PER LA FORMAZIONE IN CAMPANIA

Opzioni tecniche di base L impegno richiesto per la realizzazione di un sito web dipende innanzitutto dagli obiettivi funzionali che si vogliono attribuire allo stesso. Con il termine sito si fa, infatti, riferimento ad una molteplicità di realtà che svolgono funzioni molto diverse e che implicano una complessità realizzativi molto differenziata. Si va dalle pagine che rappresentano in maniera sintetica le caratteristiche di un azienda (il classico sito vetrina ) a strutture molto articolate, che diventano veri e propri centri per l erogazione di servizi virtuali, come un negozio di commercio elettronico o un sito di internet banking, un portale, o addirittura un marketplace, dove converge la domanda e l offerta di numerose imprese. In ragione delle diverse condizioni di complessità si giustifica l ampia varietà di soluzioni informatiche che vengono impegnate e la grande variabilità di costi connessi alla fase di realizzazione tecnica del sito, che va da poche centinaia di euro fino ad arrivare a alcuni milioni. Per offrire una prima linea guida di orientamento nell ambito della giungla di possibilità esistenti, è opportuno proporre una prima tassonomia che distingue fra: A. Siti statici. Svolgono normalmente una funzione di presentazione istituzionale di un organizzazione o di un iniziativa e sono anche noti come siti vetrina, termine che vuole enfatizzare l obiettivo primario che è quello di esibire dei contenuti. Una volta pubblicati, rimangono uguali a sé stessi, salvo interventi di aggiornamento e modifica periodici, che devono essere effettuati da tecnici, in quanto non sono presenti sistemi per l alimentazione automatica dei contenuti. Sono realizzati in HTML, con l ausilio di tecnologie finalizzate a rendere più vivace la presentazione. B. Siti dinamici. Sono siti che prevedono la disponibilità di applicativi software, che svolgono funzioni dinamiche: non si limitano, quindi, a presentare staticamente sul web contenuto predefiniti ma offrono la possibilità di consultare contenuti attinti da un database collegato al sito ed alimentato da un attività costante di caricamento dei dati o di svolgere determinate attività interagendo, attraverso il web, con sistemi informatici per l erogazione di servizi informativi, commerciali e transazionali. È possibile proporre una sottoarticolazione di massima di questa categoria: b1. siti di contenuto. Il sito è alimentato da un CMS (content management system), ovvero da una piattaforma software che consente di inserire nuove pagine e nuovi contenuti nelle pagine esistenti attraverso un cruscotto web user friendly; b2. siti di commercio elettronico. Il sito ospita un catalogo di prodotti, che gli utenti possono acquistare attraverso una procedura che può o meno concludersi con una transazione elettronica; b3. altri siti applicativi. Il sito svolge funzioni diverse da quelle commerciali, generalmente finalizzate all erogazione di informazioni articolate ricavabili tramite la consultazione di procedure interattive o offre servizi complessi in ambienti controllati che rendono virtuali processi gestiti tradizionalmente in un contesto fisico (si pensi all internet banking). Sito statico: sviluppo in html La prima e più diffusa tipologia di presenza internet è proprio quella dei siti statici, molto frequenti soprattutto fra le PMI, che non vedono in web come uno spazio di sviluppo strategico su cui far convergere importanti flussi informativi ed operativi ma semplicemente 2

come un ulteriore canale di comunicazione istituzionale. Si fa, quindi, spesso ricorso a soluzioni accessibili sul piano economico, rivolgendosi a strutture locali che con una base di competenze limitate sono, comunque, in grado di realizzare siti statici dignitosi. Per la realizzazione di un sito statico si fa ricorso generalmente al linguaggio HTML, ovvero al linguaggio di impaginazione presente fin dalle origini, che attraverso l utilizzo di pochi semplici comandi (TAG) definisce la struttura e le caratteristiche formali delle pagine da rappresentare. È importante precisare che l HTML non può essere definito un linguaggio di programmazione (in quanto non definisce procedure operative che l eleaboratore elettronico dovrà eseguire), ma più propriamente come un sistema di markup (contrassegno), in quanto è un formato di dati che consente lo scambio di informazioni attraverso il World Wide Web. I tag HTML sono semplicemente dei marcatori che comunicano al browser alcune informazioni di formattazione, da utilizzare per comporre ed organizzare i contenuti all interno di una pagina. Se la progettazione del sito è stata svolta con efficacia, quindi, in fase di sviluppo si deve solo prestare attenzione alla correttezza della procedura di compilazione del codice HTML, verificando, in particolare, che siano rispettati gli standard del W3C per garantire corrette condizioni di visibilità e di funzionalità al sito. A fronte del forte utilizzo del web come luogo di comunicazione commerciale, il linguaggio HTML è stato arricchito di tag e di funzionalità che, se hanno il pregio di arricchire le modalità di presentazione della pagina, hanno il difetto di limitare la competibilità del codice con browser differenti. Esistono, poi, alcuni linguaggi che consentono di animare la pagina HTML con l inserimento di oggetti grafici in movimento. I principali sono: Flash: un software che permette di realizzare animazioni per il web e non solo: i filmati prodotti con Flash sono grafici e animazioni composti principalmente da grafici vettoriali, e possono contenere audio e grafici bitmap importati. Javascript: linguaggio di scripting sviluppato dalla Netscape Communications. come estensione del linguaggio HTML, consente di creare pagine Web contententi elementi che rispondono ad eventi-utente ed eseguire calcoli e operazioni client-side (sulla macchina dell utente). Microsoft ha sviluppato un linguaggio simile a JavaScript chiamato JScript, il quale però ha delle caratteristiche compatibili solo con il browser Internet Explorer. Sito dinamico: la scelta di fondo Ben più complesse sono le scelte progettuali da effettuare per la realizzazione di un sito dinamico, che deve essere spesso concepito come il risultato un vero e proprio processo di sviluppo informatico, sottoposto alle logiche dell ingegneria del software. In tal senso, è possibile distinguere un opzione di fondo che occorre determinare quando si intende realizzare un sito dinamico: scegliere una piattaforma software esistente da implementare o sviluppare un progetto ad hoc, capace di far fronte alle esigenze specifiche del caso. È una scelta analoga a quella che si compie nel campo della moda fra l acquisto di un abito preconfezionato e la realizzazione di un abito su misura ed i criteri da adottare sono in larga parte simili. 1. Il ricorso ad una piattaforma standard (come l acquisto di un abito preconfezionato), infatti, consente un evidente economia di costi, in quanto riduce al minimo gli oneri di sviluppo: si tratterà solo di configurare la piattaforma nel modo più coerente con le proprie esigenze e di adattarla all interfaccia che si è scelta per il sito: qualcosa di molto simile ai ritocchi di sartoria da apportare all abito preconfezionato per renderlo più 3

vestibile, che non implica interventi strutturali di sostanza. 2. Lo sviluppo di un progetto ad hoc ha l indubbio valore di consentire la realizzazione di una soluzione che risponda in maniera specifica alle esigenze del singolo cliente e consente di ottimizzare le prestazioni del sito. Come un abito su misura veste a perfezione (sempre che il sarto sia bravo nel prendere le misure e nel realizzare il prodotto), ma ha un costo molto elevato. Normalmente questo approccio si giustifica quando il cliente ha esigenze molto particolari, che non trovano una risposta adeguata fra le soluzioni già presenti sul mercato e quando il valore generato dall applicativo da sviluppare e tale da giustificare un investimento rilevante. In realtà, le due ipotesi rappresentare costituiscono gli estremi di un continuum, che raramente corrispondono a soluzioni adottabili allo stato puro. Molto più spesso e molto più facilmente si ricorre ad una soluzione intermedia, che prevede l adozione di una o più piattaforme software che vengono integrate al servizio delle funzionalità nel sito da realizzare mediante un classico intervento di system integration, che prevede anche lo sviluppo di funzioni applicative non presenti nei prodotti originali ma utili ai fini dei processi da gestire. In questa prospettiva, una decisione molto importante è proprio quella relativa alla scelta delle piattaforme software di base: una scelta che si deve necessariamente basare su valutazioni molto puntuali che tengano conto di complesse verifiche del rapporto costi-benefici. Ultimamente in queste analisi stanno assumento un peso sempre maggiore le soluzioni open source L opportunità Open Source Open source si può tradurre letteralmente come "codice aperto" e identifica tutti i software che non sono coperti dal copyright di case produttrici, ma sono disponibili per essere utilizzati e modificati liberamente da parte di qualsiasi utente. È un modello di sviluppo che rivoluziona le logiche proprietarie su cui si è fondata per anni l attività di realizzazione di programmi informatici e propone un nuovo paradigma basato sulla"apertura" e sulla condivisione delle esperienze nel mondo dell'information Technology Il fenomeno è nato nel 1991 su iniziativa di Linus Torvald, uno studente dell'università di Helsinki, il quale per progettare un sistema operativo alternativo a quelli delle multinazionali ebbe l'idea di pubblicare il suo lavoro su internet e di dichiararlo disponibile a qualsiasi modifica, integrazione o suggerimento volto a completarlo o migliorarlo. In questo modo nacque il primo sistema operativo libero, Linux, che in pochi anni è riuscito ad aggregare una comunità di programmatori localizzati in tutto il mondo, disponibili a dedicare una quota rilevante del proprio tempo per garantire lo sviluppo e il miglioramento progressivo del sistema. La caratteristica essenziale di Linux è nell'apertura del codice sorgente ovvero nella possibilità da parte di chiunque di intervenire sul software per modificarlo in funzione di specifiche esigenze operative. Questo modello è stato adottato da molti programmatori per lanciare progetti destinati a piattaforme operative, comprese molte di quelle utilizzate per la realizzazione di siti Internet dinamici. Così, oggi è possibile trovare decine, centinaia e a volte persino migliaia di soluzioni preconfezionate open source che possono essere prese a riferimento per i progetti di sviluppo rivolti al web, come, ad esempio, sistemi di content management o moduli di commercio elettronico. I molti casi conviene adottare queste soluzioni per alcuni importanti motivi: 1. Basso costo iniziale. L'adozione dell'open source porta normalmente ad un risparmio iniziale in termini di costi per licenza e di aggiornamento, anche se si deve considerare che in 4

molti casi a questo può corrisponedere un più elevato costo di gestione. 2. Indipendenza dai fornitori. Il software non è di proprietà del fornitore, il quale ha solo il compito di ingegnerizzare un programma che qualsiasi altro fornitore potrebbe modificare: questa condizione lascia sempre aperta la porta per una modifica del partner tecnico senza dover subire i vincoli di lock in che scattano automaticamente nel caso di piattaforme proprietarie. 3. Flessibilità. La presenza di un codice sorgente aperto permette di potere apportare sul software libero modifiche a secondo delle singole necessità, con grande semplicità e anche ricorrendo a fornitori diversi e complementari, i quali possono fare riferimento ad un patrimonio di competenze condiviso (appunto, il codice aperto). I linguaggi di scripting peri siti dinamici Nei siti dinamici il contenuto delle pagine web è, in tutto o in parte, generato sul momento dal server e può essere quindi diversa ogni volta che viene richiamata (proprio per questo i siti sono definiti dinamici ). Per ottenere questo risultato non si utilizza direttamente il linguaggio HTML, ma si ricorre a dei linguaggi di programmazione (i linguaggi di scripting) che presidiano alla creazione della pagina nel momento in cui questa viene visitata, anche interagendo con i visitatori, e possono variare l'output HTML successivo dopo calcoli eseguiti con apposite strutture messe a disposizione dal linguaggio di scripting che si usa. La scelta dei linguaggi di scripting su cui basare il sito può avere un effetto rilevante sui costi e sulle potenzialità di evoluzione, per cui è importante anche per i non addetti ai lavori avere un idea delle caratteristiche delle principali soluzioni esistenti sul mercato. I principali linguaggi dinamici attualmente utilizzati sul web sono: ASP (Active Server Pages). Il linguaggio proprietario di Microsoft è stato derivato da Visual Basic ed è preferibile (quando non indispensabile) utilizzarlo in combinazione con altri software della casa madre (SQLServer, Access e Internet Information Server). È un linguaggio molto diffuso e relativamente economico: è facile trovare sviluppatori esperti e comporta limitati costi di mantenimento rispetto ad altre scelte ben più onerose sia come requisiti hardware che software. Il più grosso limite di ASP è, alla stessa maniera, la quasi totale dipendenza dalla piattaforma Micorsoft, meno stabile di altre. ASP è, quindi, adatto ad applicazioni semplici e con un limitato numero di accessi concorrenti. JSP (Java Server Pages). La potenza di JSP e' data soprattutto dal fatto che si tratta di Java. Con gli ultimi rilasci la Java Virtual Machine e' sempre più stabile e performante e, inoltre, le librerie della distribuzione sono sempre più complete. Poter sfruttare Java significa avere a disposizione tutto questo e, nonostante sia necessaria una progettazione più accurata ripetto ad ASP, si possono ottenere applicazioni stabili e facilmente manutenibili. PHP (Hypertext Pre-processor). PHP e' l'ultimo nato di questi linguaggi di scripting e per alcuni motivi è anche il migliore, infatti risulta il piu' performante da numerosi benchmarks pubblicati sulla rete. PHP e' gratuito e nasce da un'iniziativa di Apache. E' possibile trovare molti esempi di applicazioni che lo rendono estremamente facile e di veloce utilizzo. PHP si sposa con la maggior parte dei sofware open source e gira su tutte le piattaforme piùconosciute. Cold Fusion. Il linguaggio ColdFusion è un linguaggio di scripting fortemente orientato all'accesso ai database. Molto apprezzato nello sviluppo di applicazioni enterprise, non ha goduto di grande supporto dagli sviluppatori poiché l'interprete lato server non è gratuito come per i linguaggi più diffusi. 5

I requisiti del progetto Al di là delle diverse opzioni tecnologiche da definire nella fase di progettazione ed implementazione è importante che il progetto soddisfi una serie di condizioni che contribuiscono a caratterizzare la qualità del sistema. Le principali condizioni da soddisfare sono: Rispondenza ai requisiti. Prima di tutto un sito Internet deve svolgere le funzioni per cui è stato pensato: la tecnologia non deve garantire eccellenza oggettiva ma deve rispondere con efficacia ed efficienza ad una serie di requisiti, che devono essere fissati con grande chiarezza all inizio del processo e verificati puntualmente al termine, Scalabilità. Il sistema deve poter evolvere in potenza in maniera semplice e naturale, possibilmente aggiungendo o sostituendo un componente hardware (processore, memoria, capacità disco) senza che sia necessaria una riprogettazione. È la caratteristica che permette ad un'impresa di acquisire un sistema sapendo che potrà aumentarne le prestazioni, al limite senza spegnerlo, se vi è necessità. Quindi, un'applicazione è scalabile se sa sfruttare i miglioramenti apportati dai nuovi materiali. Interoperabilità. In una rete dobve sempre più spesso applicazioni diverse si trovano ad interagire è fondamentale che i prodotti software e hardware installati su più computer di produttori diversi possano comunicare tra loro semplicemente ed automaticamente. Vi e' interoperabilità tra i programmi quando questi possono condividere gli stessi dati: in fase di progettazione, occorre tenere conto sia delle esigenze di interoperabilità note (scambi di dati ed interazioni con altri software conosciuti) sia di quelle che potrebbero intervenire in un periodo futuro. Manutenibilità. Questa caratteristica implica il poter intervenire successivamente al rilascio di un prodotto software e apportare modifiche o correzioni. Un software è detto manutenibile quando questi interventi possono essere fatti facilmente. Nonostante gli sforzi dei programmatori, infatti, non è pensabile che un prodotto software di grandi dimensioni sia messo in commercio senza difetti (bugs). Spesso i primi utenti di un prodotto software compiono, loro malgrado, un attività di verifica sul prodotto stesso. Sicurezza. Il software è sicuro quando protegge l'accesso ad informazioni private protette, impedendo accessi non autorizzati, sia di natura involontaria, che di natura dolosa. E' una categoria particolare di software robusto. 6