Paolo Pialorsi

SOA, Workflow Foundation (WF), Windows Communication Foundation (WCF) e le Architetture Distribuite

News

Archives

Microsoft SharePoint 2010: What’s new

Sono ormai due settimane che Microsoft SharePoint 2010 è “cosa pubblica”. In questo post è mia intenzione evidenziare gli aspetti secondo me più importanti della nuova versione del prodotto. Poi vi saranno post futuri in cui andrò a dettagliare alcuni degli aspetti e delle funzionalità qui evidenziate.

In ordine sparso (forse inconsciamente di preferenza) ecco alcune delle novità di SharePoint 2010:

  • WSS non si chiamerà più così ma ormai si parla di Microsoft SharePoint Foundation 2010. Della serie ovunque ormai c’è una Foundation (WCF, WF, WPF, WIF) e poi eventualmente una parte advanced del prodotto.
  • Il Business Data Catalog è stato ampliato e in parte riscritto. Ora si chiama Business Connectivity Services. Prevede un’architettura aperta, a provider, anzi connectors. Nativamente supporta fonti dati di tipo DBMS, servizi SOAP in genere, servizi WCF, librerie .NET personalizzate. Inoltre possiamo creare con VS2010 altri connettori custom. Caratteristica fondamentale dei BCS è il fatto che ora sono sia in lettura che in scrittura, quindi possiamo realizzare interfacce CRUDQ (Create, Read, Update, Delete, Query) sui repository terzi con cui ci interfacciamo.
    • Quando creiamo soluzioni BCS, possiamo poi vederne i dati tramite External Content Type, External List e External Data Columns all’interno dei siti SharePoint.
    • Client side, in Office 2010, possiamo portare offline i dati sia in Outlook 2010 che in SharePoint Workspace 2010. I dati in offline potranno essere letti e modificati esattamente come se fossimo su SharePoint. Attenzione che nel caso di dati che risiedono su un DBMS, il client Office 2010 dovrà poter accedere direttamente al DBMS e non passerà attraverso SharePoint per arrivarci. Questo introduce qualche problematica di sicurezza di rete. Ovviamente lo stesso vale anche per fonti dati SOAP/WCF, ma almeno in questo caso i requisiti di sicurezza sono più ragionevoli.
  • È stato introdotto il supporto nativo a LINQ con un provider specifico per le liste e i content-type di SharePoint. Si chiama LINQ for SharePoint. Tramite un tool (SPMetal.exe) si creano i modelli di dati e poi si interrogano con query, restrizioni, join, proiezioni personalizzate via query LINQ.
  • Sul fronte del workflow non ci sono novità particolarmente eclatanti per gli sviluppatori, ci sono solo dei template di progetto e di file più comodi da utilizzare. Il motore di workflow su cui ci si basa è ancora il WF 3.5. Per ora di WF 4.0 non se ne parla. Tuttavia è ora possibile creare dei custom handler per gli External Data Exchange di workflow ospitati in SharePoint ed è stata aggiunta la possibilità di intercettare degli eventi tramite dei nuovi appositi SPWorkflowEventReceiver. La vera novità di workflow è però per i Site Builder. Infatti in SharePoint Designer 2010 potremo importare workflow disegnati con Visio 2010, esportarli verso Visual Studio 2010 o riutilizzarli su diverse liste o content-type. Inoltre ci sono una significativa quantità di nuove activity. Ad esempio c’è una nuova activity per eseguire delle azioni con elevation di privilegi. Il designer di workflow in SPD2010 è stato completamente riscritto.
  • Visual Studio 2010 supporterà nativamente SharePoint 2010. Dovrà essere installato su PC con SharePoint 2010 installato, ma da questa versione SharePoint 2010 sarà installabile anche su PC Windows 7 e non solo su sistemi operativi di fascia server, quindi non è una richiesta impossibile avere SP2010 sul PC di sviluppo.
  • Dentro a VS2010 hanno predisposto una serie di designer di package WSP, features, contenuti da installare nei folder \14 di SharePoint 2010. Inoltre ci sono una serie di template di progetto e di item specifici per SharePoint 2010 e c’è uno SharePoint Connector dentro al Server Explorer, che consente di navigare un site SharePoint 2010.
  • Sono state previste una serie di API lato client per lavorare in .NET (codice managed) su macchine che non montano SharePoint 2010 ma che vi si collegano via SOAP/REST. Inoltre per i client SilverLight c’è una API dedicata. Infine c’è una API JavaScript per applicazioni AJAX/JQuery.
  • Non esiste più il concetto di Shared Services ma esistono invece gli Application Services. Questi ultimi possono anche essere condivisi tra più farm SharePoint e possono essere sviluppati anche  da noi, in ottica di espandibilità SOA, visto che ogni Application Service può parlare con il resto del mondo via SOAP/WCF.
  • Tutte le viste sui dati sono ottenute tramite trasformazioni XSLT.
  • A livello di gestione documentale sono stati introdotti degli speciali content-type chiamati “Document Set”, che altro non sono che specializzazioni del concetto di folder, con associata una Welcome Page e un modello di documenti di base di cui può essere costituito un Document Set. Possiamo fare provisioning dei Document Set anche da codice, esattamente come qualsiasi altro modello di content-type personalizzato. Esiste poi il concetto di versioning a livello di Document Set e non solo a livello di singoli documenti.
  • Sempre nell’ambito della gestione documentale è stata introdotta una feature di “Document Id” che consente di associare a qualsiasi documento di un sito web e può sfruttare un provider personalizzato, realizzabile tramite codice .NET, per la generazione degli ID. Tutti i documenti dodati di un ID avranno una UniqueUrl che li andrà a rendere univocamente raggiungibile anche nel caso in cui vengano spostati tra diverse cartelle/document library.
  • L’amministrazione del sistema può avvenire da remoto via PowerShell. Questo segna una tappa importante sia per IT Pro che per Developer.
  • Sul fronte della capacità di storage, i limiti dimensionali logici e teorici sono ben più elevati di prima. Da un punto di vista pratico e razionale, occorre comunque tenere presente che una lista con 1 milione di items forse :-) è da organizzare, frazionare o dividere in cartelle perché sia “usabile” per un utente.
  • Sono state introdotte regole di integrità referenziale “soft” tra le liste, nel momento in cui si definiscono colonne di lookup tra una lista e un’altra.
  • Sono state inserite delle regole di validazione configurabili a livello di singolo metadato/campo.
  • Sono state introdotte regole di automatic-foldering dei contenuti, pensando alla parte di CMS/ECM, per meglio organizzare e raggruppare i contenuti.
  • Hanno introdotto un nuovo servizio di Word File Conversion, pensato per aprire e salvare i documenti Word. Offre anche la possibilità di salvare i documenti Word in formato PDF o XPS. Il tutto lato server, senza alcuna esigenza di avere Office sul server.
  • Sul fronte del ECM sono stati introdotti i Managed Metadata, che consentono di avere terms e keywords gestiti a livello centralizzato e condivisibili cross-farm. A questa funzionalità si affianca poi la possibilità di navigare i metadati con modalità di ricerca ad albero.
  • Sono stati poi introdotti gli shared content-type, dove il concetto di shared è a livello cross-farm.
  • In tutto SharePoint 2010 è stato introdotto il supporto al social networking e al web 2.0.
  • Ora i siti potranno essere multi-lingua, nel senso che avranno una lingua di base/riferimento e poi la possibilità di attivare N altre lingue secondarie. Gli utenti potranno scegliere di vedere il portale nella loro lingua preferita. Attenzione però che i contenuti delle liste non saranno multilingua, se non saremo noi a prevederlo a livello di strutture dati e di field personalizzati.
  • Sono stati introdotti tutta una serie di strumenti e funzionalità orientati al Digital Asset Management. Ad esempio è possibile avere campi di contenuti “multimediali” mostrabili all’interno di player SilverLight. A questo scopo sono stati introdotti content-type nuovi per video, audio, image e funzionalità orientate allo streaming.
  • L’interfaccia utente di SP2010 è interamente basata sui Ribbon già presenti in Office 2007 Client. Il modello di accesso alle funzionalità, basato su Ribbon, è estendibile e potremo creare le nostre custom action in forma di Ribbon.

Se queste idee e spunti vi hanno stimolato ... registratevi (http://sharepoint2010.microsoft.com/try-it/Pages/Trial.aspx) per la beta pubblica di SharePoint 2010 e aspettate la fine del mese per metterci le mani.

Inoltre state pronti ad aderire alla Italian SharePoint Community (http://www.sharepointcommunity.it/) e segnatevi sul calendario i giorni 9-10-11 Marzo 2010, date della prossima edizione della Microsoft SharePoint & Office Conference 2010 (http://www.sharepointconference.it/).

    Posted: nov 08 2009, 11:20 by paolo | with no comments
    Filed under: