23 settembre 2008  4

Il CMS come strumento definitivo per lo sviluppo web ?

Storia / Tecnologia / Web 2.0 

cms L'esplosione della rete delle reti come strumento di comunicazione aperto anche alle utenze non necessariamente addette ai lavori, ha spianato la strada ad un nuovo modo di pensare e di concepire lo sviluppo e la pubblicazione di contenuti web: i Content Management SystemW.

I CMS (Sistemi per la Gestione dei Contenuti), hanno radici ben lontane nel mondo dell'informatica e non costituiscono, come alcuni pensano,  l'innovazione del 21° secolo per lo sviluppo e la gestione dei media digitali su internet. Sistemi complessi per la gestione documentale esistevano già dalla metà degli anni '90 e venivano utilizzati da società che producevano notevoli quantità di informazioni soprattutto ad uso interno, in quelle che potrebbero essere considerate le odierne intranet.

Ai tempi, esistevano applicativi dedicati lato client che si occupavano di tutta la parte demandata alla gestione ed organizzazione dei contenuti, ivi inclusi il versioning, il workflow e la pubblicazione finale sul server centrale. La migrazione verso la tecnologia web è stata un passo obbligato, soprattutto in funzione dell'abbattimento dei costi e dell'opportunità di una più ampia condivisibità delle informazioni prodotte.

Verso la fine degli anni '90, quando cominciai ad occuparmi in maniera più approfondita dell'argomento per motivi professionali, ebbi l'opportunità di acquisire know how su uno dei sistemi che, a mio avviso, ai tempi, consentiva in maniera abbastanza rapida lo sviluppo di complessi portali istituzionali con investimenti (per l'epoca) non eccessivamente significativi. Sto parlando della tecnologia Lotus Notes e Lotus Domino Server; assimilare il prodotto IBMW alla semplice stregua di un framework per la creazione di portali è certamente riduttivo, dato che è stato per lungo tempo uno degli strumenti di collaborazione applicativa più diffuso nel mondo e che ha avuto (e mantiene tutt'ora) una notevole penetrazione, soprattutto a livello enterprise, anche in Italia.

Il client Notes costituiva, nel caso specifico, il backend sia per lo sviluppo, che per la gestione e pubblicazione dei contenuti inclusa la gestione del ciclo di vita degli stessi. Questo, naturalmente costituiva il grande vantaggio ed il grosso limite, al tempo stesso, del prodotto (e di quelli consimili): ogni publisher necessitava dell'applicativo client installato sulla macchina di produzione, con relativa licenza (con conseguente costo aggiuntivo). Al tempo stesso però, l'uso di un applicativo stand alone, che permetteva anche l'elaborazione di documenti in modalità off-line, offriva tempi di elaborazione ed editing inusitati anche per gli odierni sistemi web based potenziati da linguaggi asincroni quali AjaxW.

what-is-cms

La naturale evoluzione dei CMS, finalizzata all'abbattimento dei costi ed alla possibilità di poter gestire ovunque e comunque in maniera agevole i contenuti da pubblicare (è sufficiente una connessione ad internet ed un browser) hanno agevolato lo sviluppo di complessi sistemi di web publishing sia commerciali che open source, che consentono di poter scegliere, in funzione delle proprier necessità, lo strumento più adatto per lo sviluppo, ormai, di qualunque sito web, dal complesso portale istituzionale al semplice sito promozionale (WCMS).

Allo stato dell'arte, la maggior parte dei committenti, dall'azienda quotata in borsa al piccolo commerciante, richiedono quasi esclusivamente la possibilità di poter gestire in maniera autonoma i contenuti del proprio sito. Questo è un vantaggio per la maggior parte degli sviluppatori che, dato il notevole parco di strumenti finalizzati alla creazione di CMS, non dovendo reinventare la ruota, si trovano nella condizione di poter realizzare e proporre ai propri clienti soluzioni ottimali in tempi che, una volta, sarebbero stati impensati.

Al tempo stesso esiste però l'handicap relativo alla parte formativa all'uso degli strumenti citati che, a volte, può diventare anche più impegnativa dello sviluppo stesso del prodotto richiesto. Molto spesso i backend associati ai CMS sono di difficile apprendimento, soprattutto per i non addetti ai lavori che ne richiedono spesso personalizzazioni anche estreme in nome della semplificazione o dell'aggiunta di funzionalità avanzate non presenti nella versione originale.

pc-toolbox E' evidente che, con queste premesse, la scelta del CMS diventa fondamentale. Molto spesso è preferibile affidarsi a sistemi modulari che antepongono l'importanza del framework di gestione dei contenuti al frontend applicativo di gestione degli stessi. Il tutto naturalmente deve essere tarato in base alle esigenze del committente.

Difficilmente la grossa azienda avrà le stesse necessità del piccolo imprenditore e, in base ad esse è necessario variare il sistema da proporre.

Le caratteristiche fondamentali di un CMS orientato alla gestione di un portale istituzionale o che, comunque, possa contare su un team redazionale di ampio respiro sono, a mio avviso, sintetizzabili in pochi punti essenziali:

  • Gestione del workflow di pubblicazione e del ciclo di vita del documento.
  • Gestione del versioning e dei cicli di undo.
  • Profilazione degli utenti e gestione dei ruoli atti alla definizione sia della produzione che della pubblicazione.
  • Un sistema modulare che consenta l'implementazione dell'esoscheletro del front end di presentazione senza rigidità strutturali che ne vincolino l'aspetto o la fruizione in base a degli standard predefiniti.
  • Disponibilità di componenti dedicati alla realizzazione immediata di strumenti di community (blog, newsgroup, forum, ecc.)
  • Possibilità di estendere le funzionalità del prodotto senza dovere intervenire sul core dello stesso (disponibilità di APIW)
  • Portabilità del prodotto su più piattaforma applicative.
  • Vasta comunità di sviluppatori in supporto al medesimo.

Per la realizzazione di siti meno complessi, la parola d'ordine deve essere, al contrario, improntata alla massima semplicità, proprio in funzione di quanto già espresso in precedenza.

Il ricorso al CMS può quindi aiutare sistematicamente lo sviluppatore alla semplificazione del suo lavoro: in alcuni casi la realizzazione di un sito si può ridurre anche al solo progetto grafico che costituisce tuttora una delle voci di maggiore impatto nel'acquisizione del cliente.

La scelta del CMS continua ad avere una sua importanza anche nel caso in cui il committente decida di non provvedere in maniera autonoma al mantenimento del prodotto commissionato, perchè agevola l'aggiornamento dello stesso da parte dello sviluppatore medesimo.

In ogni caso la bontà del backend di supporto è fondamentale: non a caso la maggior parte degli strumenti più evoluti ricorrono a tecnologie acesorie per l'accelerazione delle web application dedicate, tramite Java, ActiveX o il già citato Ajax. Ma, paradossalmente, la prestazioni e l'interattività migliori si ottengono proprio ricorrendo all'uso di applicazioni client che possano consentire anche di lavorare in modalità off-line per ridurre i tempi di riposta, applicazioni che vengono comunque scaricate ed installate in real time al primo collegamento con il WCMS utilizzato (come ad esempio Google Gears, Adobe Air o, anche se solo in parte, Microsoft Silverlight)

L'argomento è molto vasto e analizzabile sotto molteplici punti di vista: lascio la parola ai miei lettori per condividere con essi le loro esperienze e opinioni in merito ed estendere ulteriormente la discussione su questa interessantissima tematica.

Esprimi il tuo giudizio

Commenti (4) -

Paolo Bee
Paolo Bee
25 set 2008 alle 11:03  01
Io, nel mio articolo, mi sono limitato a dire che in alcuni casi è meglio non utilizzare un CMS. In effetti il tuo discorso mi sembra molto più maturo, cioè utilizzare un CMS specifico a sconda delle esigenze, data appunto la vastità delle offerte presenti oggi in rete..

Il tuo rapporto con i CMS sta cambiando?
Cristiano
Cristiano
25 set 2008 alle 22:07  02
@ Paolo Bee:
Il mio rapporto con i CMS è immutato, probabilmente anche in virtù del fatto che ormai ne ho provato (e studiato) un discreto quantitativo.
In realtà  credo che sia cambiato il rapporto con i clienti: ormai la maggiorparte di essi, desiderano avere autonomia nella gestione dei contenuti, per cui la scelta di un opportuno CMS è obbligatoria per ridurre i tempi di sviluppo e non dover di volta in volta ridefinire l'ovvio.

Ci tengo a sottolineare che, a mio avviso, la soluzione migliore non è costituita dal CMS monolitico, ma più dal framework applicativo che fornisca le basi di partenza per potervi sviluppare intorno il prodotto desiderato, anche personalizzato ad hoc.

Sfortunatamente questo genere di prodotto è quasi sempre non opensource e per giunta molto costoso :-(
Stefano Mainardi
Stefano Mainardi
26 set 2008 alle 13:03  03
Io utilizzo moltissimo i CMS per lavoro. So bene che il tuo bagaglio culturale è molto MS oriented, però ti consiglio di provare ed iniziare a dare un'occhiata a Drupal, che è un vero e proprio Framework di livello enterprise. Te lo dico con sicurezza perchè ci ho lavorato molto in progetti piuttosto onerosi.

Poi comunque, esistono ottimi framework MVC opensource tipo RoR o quelli in PHP (Symfony, Zend, CakePHP ecc...) che permettono di costruire uno scheletro di un CMS in poco tempo seguendo tutte le best practices .
Cristiano
Cristiano
26 set 2008 alle 22:56  04
Stefano Mainardi ha scritto:
... So bene che il tuo bagaglio culturale è molto MS oriented ...
In realtà non è proprio così: lo pensano in molti sia perchè uso una piattaforma di blogging basata su .NET e sia perchè sviluppo principalmente in C# e VB.
In realtà sono decisamente "polimorfico"; il fatto è che la maggiorparte delle richieste di consulenza mi vengono indirizzate sempre per piattaforma Microsoft, per cui ...

Drupal lo conosco, come ho dato un discreto sguardo anche a Joomla e Mambo. Al momento sto lavorando alla realizzazione di un portale mediante Ektron CMS 400.NET, che è un prodotto commerciale molto potente utilizzato molto a livello enterprise soprattutto all'estero (Sony, Goodyear), e che da noi viene utilizzato per esempio da FIAT e Del Monte.
La cosa che mi ha impressionato maggiormente di questo prodotto è backend di gestione del CMS, che è di una completezza inusitata e nemmeno paragonabile con alcuno dei pacchetti già citati.
Purtroppo è decisamente molto costoso ...

Aggiungi Commento

biucitecode
  • Commento
  • Anteprima
Loading


| |   |  

Codice QR

Codice QR - cristianofino.net

Ultimi Commenti