Nozioni fondamentali sulla tecnologia del flusso di lavoro e di Prodotti e tecnologie SharePoint
Per comprendere il supporto offerto da Microsoft ai flussi di lavoro risorse umane è necessario conoscere le nozioni base delle due tecnologie fondamentali alla base di questo supporto: Windows Workflow Foundation e Windows SharePoint Services. In questa sezione vengono descritte brevemente entrambe le tecnologie.
Windows Workflow Foundation
Il software implementa spesso processi di vario tipo, con passaggi multipli che devono essere eseguiti in sequenza secondo un ordine prestabilito. Considerando la frequenza con cui questo approccio viene utilizzato, può essere utile offrire supporto esplicito per la creazione di questo tipo di applicazione. Lo scopo di Windows Workflow Foundation è esattamente questo. Un'applicazione basata su Workflow Foundation è costituita da uno o più flussi di lavoro, ognuno dei quali contiene un numero variabile di attività. Le attività di un flusso di lavoro vengono eseguite una alla volta dal motore di runtime di Workflow Foundation, in base all'ordine di esecuzione determinato dal flusso di lavoro stesso. Offrendo un supporto diretto per le applicazioni orientate ai processi, Workflow Foundation può semplificare la creazione e la gestione di tali applicazioni.
Nella figura seguente vengono illustrati i componenti principali di Workflow Foundation. Un flusso di lavoro, generato dalle attività, viene eseguito utilizzando il motore di runtime. L'esecuzione dipende da una serie di servizi di runtime, implementati da Workflow Foundation, che consentono di salvare in modo permanente lo stato di un flusso di lavoro, tenere traccia dell'esecuzione e altro ancora. Tutte queste operazioni vengono eseguite all'interno di un host, che può essere costituito da qualsiasi processo Windows quale una semplice applicazione per desktop o un server scalabile. Per gestire i diversi requisiti imposti dai vari host e dai diversi tipi di applicazioni, i servizi di runtime di Workflow Foundation possono essere sostituiti, se necessario.
Come mostrato nella figura, i flussi di lavoro possono essere creati utilizzando Progettazione flussi di lavoro di Workflow Foundation. Questo strumento viene eseguito all'interno di Visual Studio 2005 e offre un ambiente grafico per organizzare le attività in flussi di lavoro. Un'attività è semplicemente una classe, pertanto è anche possibile creare flussi di lavoro esclusivamente nel codice, ovvero non è necessario utilizzare uno strumento grafico. Sebbene un flusso di lavoro possa utilizzare qualsiasi attività scelta da uno sviluppatore, in Workflow Foundation è disponibile una raccolta delle attività di base (BAL). La raccolta delle attività di base include alcune attività fondamentali, incluse le seguenti:
IfElse: esegue le attività contenute in due o più percorsi possibili a seconda se viene soddisfatta una condizione.
While: esegue ripetutamente una o più attività fino a quando una condizione è true.
Sequence: esegue una volta un gruppo di attività in un ordine prestabilito.
Parallel: esegue due o più gruppi di attività in parallelo.
Code: esegue un blocco di codice prestabilito.
Listen: attende un insieme di eventi, quindi esegue una o più attività quando tale evento viene ricevuto.
InvokeWebService: chiama un servizio Web.
Policy: consente di definire ed eseguire regole business utilizzando un motore regole di business disponibile in Workflow Foundation.
Workflow Foundation dispone di due tipi di flussi di lavoro incorporati:
Flussi di lavoro sequenziali, che eseguono le attività in base a un ordine prestabilito. Un flusso di lavoro sequenziale può contenere le attività IfElse, While e altre ancora.
Flussi di lavoro della macchina a stati, che implementano una tradizionale macchina a stati finiti. Questo tipo di flusso di lavoro può anche contenere le attività IfElse, While e altre ancora, ma dipende da altre attività, ad esempio State, per rappresentare gli stati e le transizioni.
È importante comprendere che Workflow Foundation non è un'applicazione completa, bensì costituisce una base su cui gli sviluppatori possono creare software basato sui flussi di lavoro. Poiché può essere ospitato in qualsiasi processo Windows, Workflow Foundation può essere combinato con altre tecnologie per fornire servizi dei flussi di lavoro. In Windows SharePoint Services 3.0 avviene esattamente questo, pertanto il passaggio successivo per comprendere il supporto offerto da Microsoft per il flusso di lavoro risorse umane consiste nel conoscere i concetti di base di questa tecnologia.
Windows SharePoint Services
La condivisione delle informazioni è una parte fondamentale nella vita quotidiana. Nel nostro lavoro, nell'ambito di un'organizzazione di volontario o in altro modo, spesso occorre condividere documenti e altre informazioni con un gruppo di persone. Windows SharePoint Services, una parte standard di Windows Server 2003, può semplificare la condivisione delle informazioni.
Come illustrato nella figura seguente, gli utenti di Windows SharePoint Services possono creare siti, ognuno dei quali contiene raccolte documenti ed elenchi. Le informazioni contenute in ogni sito, inclusi i documenti e le voci di elenco, vengono archiviati in SQL Server. Utilizzando Internet Information Services (IIS), gli utenti possono interagire con i siti mediante applicazioni di Microsoft Office o un Web browser, ad esempio Internet Explorer. Gli utenti possono inoltre personalizzare l'interfaccia del browser utilizzando le web part, in modo da creare un'interfaccia appropriata alle diverse esigenze.
La versione 3.0 di Windows SharePoint Services aggiunge anche il supporto per i tipi di contenuto. Un tipo di contenuto offre uno schema che definisce un o un elemento di elenco. Per impostazione predefinita, ogni documento in una determinata raccolta dispone dello stesso schema, così come ogni elemento in un elenco specifico. Se si aggiunge un tipo di contenuto a un documento o a un elemento di elenco, è possibile specificare lo schema di tale documento o elemento in modo indipendente dagli altri elementi della raccolta o dell'elenco a cui appartiene. Possono inoltre essere collegati criteri ai tipi di contenuto, specificando aspetti quali il periodo di tempo durante il quale un documento dovrà essere conservato. Questi criteri verranno quindi applicati a qualsiasi documento o elemento a cui è associato tale criterio.
È possibile che più computer che eseguono Windows SharePoint Services accedano a un singolo database di SQL Server o a un gruppo di database con siti partizionati tra i diversi computer. In questo modo si migliora la scalabilità e si consente a un elevato numero di utenti l'accesso agli stessi siti. È opportuno notare inoltre che, sebbene siano logicamente separati e vengano mostrati diversamente agli utenti, i documenti e gli elementi sono in realtà molto simili poiché sono entrambi voci delle tabelle di SQL Server. Esistono tuttavia alcune differenze, ad esempio, i documenti possono essere archiviati ed estratti, mentre ciò non è possibile per gli elementi. In ogni caso, la distinzione tra i due tipi di elementi riguarda più il modo in cui vengono visualizzati dagli utenti anziché il modo in cui vengono implementati.
Windows SharePoint Services si basa anche su altre tecnologie Windows standard. Ad esempio, Active Directory può essere utilizzato per identificare gli utenti e l'interfaccia utente, incluse le web part, è basata su ASP.NET. Poiché è una parte standard di Windows e consente di far fronte a una serie comune di problemi, Windows SharePoint Services è diventata una tecnologia molto diffusa ed è utilizzata da numerose organizzazioni per la condivisione di diversi tipi di informazioni. Fino al lancio di Windows SharePoint Services 3.0, tuttavia, non era disponibile il supporto incorporato per la creazione dei flussi di lavoro. In che modo ciò sia possibile nella versione 3.0 verrà descritto più avanti.
Scaricare il manuale
Questo argomento è incluso nel manuale seguente, che può essere scaricato per una lettura e una stampa più agevoli:
Per un elenco completo dei manuali disponibili che è possibile scaricare per Office SharePoint Server 2007, vedere Downloadable content for Office SharePoint Server 2007 (informazioni in lingua inglese).