PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT...

25
Università degli studi di Trieste Dipartimento di Ingegneria e Architettura Corso di Laurea Magistrale in Ingegneria Informatica Progettazione e sviluppo di un framework di supporto in ambiente aziendale su tecnologia SharePoint Server 2010 Laureando: Dott. Ronci Alex Relatore: Dott. Ing. Fermeglia Maurizio Correlatore: Dott. Sottana Dario

description

PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010

Transcript of PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT...

Page 1: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Università degli studi di Trieste

Dipartimento di Ingegneria e Architettura

Corso di Laurea Magistrale in Ingegneria Informatica

Progettazione e sviluppo di un framework di

supporto in ambiente aziendale su tecnologia

SharePoint Server 2010

Laureando: Dott. Ronci Alex Relatore: Dott. Ing. Fermeglia Maurizio

Correlatore: Dott. Sottana Dario

Page 2: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Obiettivi

Commissione: Ricerca e pianifica di una

piattaforma di appoggio per lo sviluppatore

Committente: Reply Cluster - Trieste

Ambiente: Microsoft SharePoint 2010

Tipo: Framework di supporto

giovedì 2 ottobre 20142Dott. Ronci Alex - IN14000036

[email protected]

Page 3: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Requisiti e strumenti

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Definizione logica di un nuovo workflow non

orientato

Definizione logica e programmatica di funzionalità

implementabili dall’azienda in progetti diversi

Organizzazione delle funzionalità e

documentazione delle stesse

Microsoft SharePoint Server 2010, Microsoft

Visual Studio 2010

Page 4: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Perché SPS2010 e VS2010? (1)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Analizzando le risposte date nell’ambiente

lavorativo (% performance):

0 20 40 60 80 100

SharePoint Server

SharePoint Foundation

Interfaccia Web

Specializzazione Interfaccia Web

SharePoint Designer

Visual Studio 2010

Page 5: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Perché SPS2010 + VS2010? (2)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

SharePoint Server 2010 è il CMS (Content

Management System) adeguato all’ambiente

aziendale:

maggiori funzionalità ricercate da clienti enterprise

Visual Studio 2010 è l’IDE più performante con

SPS2010 e con le funzionalità che si vogliono

sviluppare

Page 6: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Workflow is sometimes described as a series of

tasks that produce an outcome (def. Microsoft)

Workflow Management System, sistema

informatico che gestisce ed organizza una serie

di tasks per restituire in uscita il risultato del

processo produttivo

Necessità di introduzione di un flusso non lineare

Interesse a rispettare i parametri proposti dalla

Teoria dei Flussi

Page 7: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Macrofase (1)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Possibilità di scorrimento all’indietro solo

all’interno di quelle che vengono definite

macrofasi

Page 8: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Macrofase (2)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Il workflow mantiene esternamente un

comportamento lineare

All’interno di ogni macrofase sono definiti dei

microtask correlati tra loro

I dati vengono distaccati dai processi

Ogni microtask avrà a disposizione tutti i dati

elaborati nella macrofase di pertinenza

Page 9: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Macrofase (3)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Nuova struttura del workflow (esempio):

Page 10: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Gestione Rollback (1)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Conservazione dello stato del task: se torno

indietro, dove mi trovo?

Se vi è una rollback, per il workflow devo trovarmi

comunque nello stato precedente, così da ovviare

a problematiche di gestione e comprensione del

flusso stesso:

Il rollback è valido solo all’interno di una

macrofase

Page 11: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Gestione Rollback (2)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Rollback consentito

Rollback negato

Page 12: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Gestione Rollback (3)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Conservazione dei dati: se torno indietro, i dati

inseriti in step successivi dove vanno a finire?

Non efficace conservare i dati delle fasi successive

se vi è stato un rollback:

È difficile che non vi sia incidenza di un task su

quello successivo

Page 13: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Gestione Rollback (4)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Page 14: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Gestione Rollback (5)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Definizione dei permessi: se torno indietro, ho

ancora accesso agli step successivi, o solamente

alla fase in cui si è tornati?

La correttezza del dato è un cardine di un qualsiasi

processo informatico:

Non è concedesso l’accesso alle operazioni

consentite in una fase N, nel caso in cui si torni in

una N-1

Page 15: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Gestione Rollback (6)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Page 16: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Gestione Rollback (7)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Definizione dei ruoli: chi ha la possibilità di fare il

rollback?

Consentire l’interazione di utenze esterne

all’interno di un task di non propria competenza

andrebbe in contrasto con il flusso:

L’utenza opera unicamente sui task di propria

competenza

Page 17: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Workflow – Gestione Dati

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Utente del task ha accesso in lettura ai dati delle

fasi precedenti, se non in scrittura, potendo

dunque gestire e motivare il rollback, e operare

su dati inseriti in precedenza

Page 18: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Framework

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Fornire metodi utili ed efficaci inerente codice

ripetitivo nei diversi progetti

Gestione di: Gruppi utenti, Document Libraries,

Liste di configurazione, Elenchi, Mail

Possibilità di impedire l’accesso alla piattaforma

per manutenzione

Page 19: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Framework – Progettazione

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Library definita con due features:

1. Utilities: metodi di funzionamento

2. BlockUsers: metodi di controllo della

manutenzione

6 (+ 2) classi, definite per tematiche:

DocLib, Groups, KeyValList, Lists, Mailer,

PubManager (+ Logging e Security)

Page 20: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Framework – Utilities (1)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Page 21: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Framework – Utilities (2)

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

DocLib: metodi di generazione di DLs

Groups: metodi di gestione dei gruppi della site collection

KeyValList: generazione rapida di liste di Configurazione da associare alla site Collection

Lists: metodi di generazione e gestione Liste

Mailer: metodi di gestione di mail, contenuti, mittenti e destinatari in modo più autonomo e libero possibile

PubManager: metodi di configurazione delle classi PublishingWeb e PublishingPage

Page 22: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Framework – BlockUsers

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Garantisce il blocco degli accessi a tutte le

pagine della site collection quando non si

risultasse appartenenti al gruppo degli

amministratori

Amministratore

Page 23: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Implementazione

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Workflow raccoglie dati e stato di fase tramite

liste: più efficaci di altre strutture proposte in

ambiente SP (es. Document Libraries)

I metodi del framework, incapsulati all’interno

delle features, vengono attivate a scelta dello

sviluppatore nel progetto dopo averle installate

all’interno delle web application

Page 24: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Sviluppi futuri

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Fondamentali:

Migrazione del progetto in SharePoint 2013:

verifica di compatibilità per una futura usabilità

del prodotto stesso

Possibili:

Definizione di un modello per il tema grafico

Estensione ed introduzione di nuove funzionalità

all’interno delle classi già definite

Page 25: PROGETTAZIONE E SVILUPPO DI UN FRAMEWORK DI SUPPORTO IN AMBIENTE AZIENDALE SU TECNOLOGIA SHARE POINT SERVER 2010 - slides di presentazione

Conclusioni

giovedì 2 ottobre 2014Dott. Ronci Alex - IN14000036

[email protected]

Prodotto funzionante e già utilizzabile da parte

dell’azienda committente

40 ore formazione + 60 ore definizione requisiti +

60 ore definizione metodi + 300 ore

programmazione framework e test

Apprendimento delle dinamiche di lavoro in team

Apprendimento delle necessità di uno

sviluppatore in ambiente SP

Apprendimento dell’utilizzo di VS2010