Progettazione e sviluppo di un'applicazione web basata su tecnologia Share Point 2010 - Alex Ronci

47
UNIVERSITÀ DEGLI STUDI DI TRIESTE PROGETTAZIONE E SVILUPPO DI UNAPPLICAZIONE WEB BASATA SU TECNOLOGIA SHARE POINT 2010 Facoltà di Ingegneria Corso di Laurea Triennale in Ingegneria dell’Informazione Curriculum Informatica Laureando: Relatore: ALEX RONCI CHIAR.MO PROF. MAURIZIO FERMEGLIA ANNO ACCADEMICO 2010 / 2011

Transcript of Progettazione e sviluppo di un'applicazione web basata su tecnologia Share Point 2010 - Alex Ronci

UNIVERSITÀ DEGLI STUDI DI TRIESTE

PROGETTAZIONE E SVILUPPO DI

UN’APPLICAZIONE WEB BASATA SU

TECNOLOGIA SHARE POINT 2010

Facoltà di Ingegneria

Corso di Laurea Triennale in Ingegneria dell’Informazione Curriculum Informatica

Laureando:

Relatore:

ALEX RONCI CHIAR.MO PROF. MAURIZIO FERMEGLIA

ANNO ACCADEMICO 2010 / 2011

1

A Michela e Massimo

2

SOMMARIO

1. INTRODUZIONE ............................................................................................................................ 6

2. PRESENTAZIONE DELLE RICHIESTE .................................................................................................... 7

3. ANALISI DELLE RICHIESTE ............................................................................................................... 8

4. STRUMENTI NECESSARI ALLO SVILUPPO DEL PROGETTO ....................................................................... 9

4.1. HARDWARE ......................................................................................................................... 9

4.1.1. PC NOTEBOOK SONY VAIO VPCB1S1E ............................................................................. 9

4.1.2. SERVER UNIVERITARI ...................................................................................................... 9

4.2. SOFTWARE ........................................................................................................................ 10

4.2.1. VMWARE PLAYER ....................................................................................................... 10

4.2.2. MICROSOFT SHARE POINT FOUNDATION 2010 ................................................................. 10

4.2.3. MICROSOFT SHARE POINT DESIGNER 2010 ..................................................................... 10

4.2.4. MICROSOFT SQL SERVER 2008 ..................................................................................... 11

4.2.5. MICROSOFT ACCESS 2010 ............................................................................................ 11

5. PRIMA DI COMINCIARE ................................................................................................................ 12

5.1. CONFIGURAZIONE DELL’AMBIENTE DI TEST SU MACCHINA VIRTUALE ............................................. 12

5.2. CONFIGURAZIONE DELLA MACCHINA FISICA .............................................................................. 15

6. STRUTTURA DELL’APPLICAZIONE ................................................................................................... 16

6.1. SVILUPPO DELLA HOME PAGE ................................................................................................ 16

6.2. CREAZIONE DEI SUBSITES ...................................................................................................... 18

6.3. CREAZIONE DELLA PAGINA WEB GENERICA ............................................................................... 19

7. ACCESSO DATI DEL DATABASE IN MICROSOFT SQL SERVER 2008 ....................................................... 20

7.1. CREAZIONE DEL MODELLO IN SHARE POINT DESIGNER 2010 ...................................................... 20

7.2. CREAZIONE DELLA LISTA ESTERNA .......................................................................................... 21

7.3. CONFIGURAZIONE DEI PERMESSI AUTENTICATI .......................................................................... 22

7.4. CONFIGURAZIONE DELL’APPLICAZIONE PER L’UTENTE ANONIMO .................................................. 23

3

7.5. CONFIGURAZIONE DELL’IIS ................................................................................................... 23

7.6. CONFIGURAZIONE DELL’UTENTE ANONIMO IN MICROSOFT SQL SERVER 2008 .............................. 25

7.7. BCD IDENTITY SETTING PER L’UTENTE ANONIMO ...................................................................... 26

7.8. RISULTATO DEL PROCESSO .................................................................................................... 28

8. GESTIONE DELL’APPLICAZIONE IN MODALITÀ MULTILINGUA ................................................................ 29

9. GESTIONE DEGLI ACCESSI E PERMESSI DEGLI UTENTI .......................................................................... 31

10. TIPS & TRICKS DI SVILUPPO DELL’APPLICAZIONE ............................................................................... 33

10.1. INTEGRAZIONE DELL’ACCESSO AL DB SU PIATTAFORMA ACCESS .................................................... 33

10.1.1. ACCESS PER LE LISTE ..................................................................................................... 33

10.1.2. ACCESS COME FRONT-END SQL SERVER ........................................................................... 34

10.2. GESTIONE DI ACCESSO DA DISPOSITIVI MOBILI ........................................................................... 36

10.3. CONFIGURAZIONE DEL TEMA PER L’UTENTE ANONIMO ............................................................... 37

10.3.1. COME NASCONDERE LA RIBBON BAR ............................................................................... 37

10.3.2. CONFIGURAZIONE DEL TEMA PERSONALIZZATO .................................................................. 38

11. CONCLUSIONI ............................................................................................................................ 41

12. BIBLIOGRAFIA ............................................................................................................................ 43

APPENDICE A – MACROLIVELLI E DETTAGLI PROPOSTI DAL COMMISSIONARIO DEL PROGETTO .......................... 44

APPENDICE B – SITUAZIONE SERVER DI3 ............................................................................................... 46

4

INDICE DELLE FIGURE

FIGURA 1 - SONY VAIO VPCEB1S1E ..................................................................................................... 9

FIGURA 2 - SCHERMATA DI MICROSOFT SHARE POINT DESIGNER 2010 ...................................................... 10

FIGURA 3 - RUOLI ATTIVI SU MACCHINA VIRTUALE .................................................................................. 13

FIGURA 4 - CREAZIONE DELL'APPLICAZIONE WEB ..................................................................................... 14

FIGURA 5 - HOME PAGE DELL'APPLICAZIONE .......................................................................................... 16

FIGURA 6 - CONFIGURAZIONE DELLA WEBPART CALENDARIO ..................................................................... 18

FIGURA 7 - SELEZIONE DI EXTERNAL CONTENT TYPE ................................................................................ 20

FIGURA 8 - OPERAZIONI ATTIVE SUL CONTENUTO ESTERNO ....................................................................... 21

FIGURA 9 - CREAZIONE NUOVA LISTA ESTERNA ....................................................................................... 22

FIGURA 10 - CONFIGURAZIONE PERMESSI PER CONTENUTO ESTERNO ......................................................... 22

FIGURA 11 - ACCESSO AGLI UTENTI TRAMITE SERVER MANAGER ............................................................... 24

FIGURA 12 - SCHERMATA PER LA CONFIGURAZIONE DELL'UTENTE ANONIMO IN IIS ........................................ 24

FIGURA 13 - SCHERMATA INIZIALE IN SQL SERVER 2008 ......................................................................... 25

FIGURA 14 - CONFIGURAZIONE DELL'UTENTE IN SQL SERVER ................................................................... 26

FIGURA 15 - FRAMMENTO DI CODICE DEL LOBSYSTEMINSTANCE ............................................................... 27

FIGURA 16 - SERVIZIO DI APPLICAZIONE INTEGRATIVA DEI DATI IN SERVIZI APPLICAZIONI ................................ 27

FIGURA 17 - CONFIGURAZIONE IMPORT MODELLO BDC .......................................................................... 28

FIGURA 18 - IMPOSTAZIONI LINGUA ..................................................................................................... 29

FIGURA 19 - QUICK ACCESS BAR CON MODIFICA TRAMITE MUI ................................................................ 30

FIGURA 20 - INFORMAZIONI ELENCO .................................................................................................... 31

FIGURA 21 - ACCESSO ANONIMO PER LISTE ........................................................................................... 32

FIGURA 22 - RIBBON BAR DI ACCESS 2010 SU DATI ESTERNI .................................................................... 33

FIGURA 23 - SELEZIONE DEGLI ELENCHI PER IL FRONT-END ....................................................................... 34

FIGURA 25 - SETTAGGI PER CONNESSIONE SERVER SQL SERVER ................................................................ 35

FIGURA 24 - DEFINIZIONE DI ADP IN ACCESS 2010 ................................................................................ 35

FIGURA 26 - CONFRONTO DISABILITAZIONE ACCESSO PER DISPOSITIVI MOBILI .............................................. 37

FIGURA 27 - PAGINE MASTER .............................................................................................................. 37

FIGURA 28 - CORE*.CSS FILE .............................................................................................................. 38

5

FIGURA 29 - TEMA PERSONALIZZATO CON ELIMINAZIONE RIBBON BAR ....................................................... 40

6

1. INTRODUZIONE

La tesi proposta all’interno di questo documento andrà a trattare lo sviluppo e l’analisi di un

portale informatico scolastico, nella fattispecie quello del LICEO SCIENTIFICO STATALE “GALILEO

GALILEI” di Trieste.

Tale struttura verrà sviluppata nell’ambiente proprietario MICROSOFT SHARE POINT, in modo tale

che possa permettere un’agevole condivisione di dati ed informazioni tra studenti, docenti,

genitori e personale amministrativo sfruttando le caratteristiche della suite MICROSOFT OFFICE.

L’obiettivo è quello di valorizzare i punti salienti di una scaletta illustrativa consegnata

direttamente dalla scuola stessa, e concernente criticità a livello di gestione di documenti

condivisi, accessi protetti e dati sensibili, quali anagrafiche e risultati studenteschi.

Vista l’impossibilità da parte della scuola di disporre di server propri per la messa online di tale

piattaforma, l’ipotesi iniziale è quella di porla su quelli dell’Università: dunque ulteriore step

per lo sviluppo sarà legato ad un primo sviluppo in locale del progetto, all’interno di una

macchina virtuale predisposta a tale uso, e il susseguente trasferimento dei semilavorati

ottenuti sul server universitario, con seguenti criticità legate allo stesso trasferimento.

I capitoli della tesi sono così distribuiti:

2) e 3) presentano le specifiche richieste dal committente, e la relativa analisi del

progetto;

4) descrive le strumentazioni hardware e software necessarie;

5) propone un setup per poter procedere nel progetto;

6) imposta le strutture di base dell’applicazione web;

7) analizza e risolve uno dei problemi più complessi a livello di utenza anonima:

l’accesso ad un database in SQL SERVER;

8) e 9) vanno ad affrontare la problematica dell’utenza e della gestione della lingua;

10) approfondisce tematiche relative a tweaks di sviluppo per migliorare il prodotto;

11) propone una personale riflessione sul prodotto e spunti futuri del lavoro creato.

7

2. PRESENTAZIONE DELLE RICHIESTE

La scuola, commissionaria del progetto di tesi, vuole ottenere un prodotto finale che permetta

di:

Avere dalle cinque alle sette aree tematiche

Avere approfondimenti di secondo livello

Usufruire di quattro differenti tipologie di accesso privilegiato mediante login (Docenti,

Studenti, Genitori, Segreteria) ed uno anonimo senza login

Poter tracciare le circolari

Avere una newsletter

Avere un forum moderato

Avere un blog con animatori

Gestire una piattaforma di e-learning

Avere una grafica accattivante ed innovativa

Avere una versione inglese della piattaforma

Essere ad alto indice di usabilità

Oltretutto, la stessa ha già consegnato una struttura di massima del portale, definendo

macrolivelli e dettagli di primo e secondo livello, come indicato in APPENDICE A.

8

3. ANALISI DELLE RICHIESTE

Le richieste della scuola risultano portare criticità, in particolar modo nella gestione delle

risorse archiviate dalla scuola, sia per quelle legate ad un elevato standard di sicurezza per gli

utenti autenticati, ma anche nella gestione della stessa piattaforma in formato multilingua.

Il progetto, di per sé, non richiede grossi approfondimenti nella gestione delle più basilari

strutture online, poiché la gestione dei contenuti standard HTML, quali pagine formattate e

tabelle, risulta molto agevole, sia lavorando online che tramite lo strumento di sviluppo fornito

dalla stessa MICROSOFT (di cui tratteremo a breve).

Più interessante, invece, risulta la gestione dei dati, caricati da un database esterno (che possa

essere su motore SQL SERVER, oppure ACCESS, giusto per restare in ambiente MICROSOFT): se la

gestione a livello di utente autenticato è relativamente semplice, più articolata è la sua

gestione se l’utente è anonimo.

Restando a livello utente, la gestione degli accessi è importante per poter permettere di

soddisfare quei parametri di accesso privilegiato, indicati dalla scuola, che distinguano i

differenti target di utilizzo dell’applicazione che si sta creando. Questo elemento può andarsi a

scontrare con i mezzi a disposizione per lo sviluppo del progetto (e di questo tratteremo nel

relativo capitolo).

La gestione di risorse multilingua deve essere gestita nell’ambiente, e l’intento è quello di

sfruttare (per quanto possibile) le opportunità concesse da SHARE POINT, per tale frangente:

avere una struttura per il più possibile preconfigurata, in modo tale da poter creare un’unica

applicazione, e non duplicare (inutilmente) i contenuti.

Discorso a parte è la piattaforma di e - learning: confrontandosi con lo stesso relatore, questa

risulta a priori ingestibile, per problemi di requisiti hardware troppo elevati rispetto ai limitati

mezzi a disposizione.

9

4. STRUMENTI NECESSARI ALLO SVILUPPO DEL PROGETTO

Il progetto, come già dichiarato, richiede l’utilizzo del seguente elenco di hardware e software.

Di seguito ne descriveremo le caratteristiche.

4.1. HARDWARE

4.1.1. PC NOTEBOOK SONY VAIO VPCB1S1E

È il portatile a disposizione del laureando, montante un processore INTEL CORE I5 DUALCORE e

scheda grafica ATI MOBILITY RADEON HD 5650 con 1 GB di memoria grafica dedicata, HARD DISK da

500 GB e 4 GB di RAM DDR III. Le caratteristiche tecniche del calcolatore sono adatte a

sostenere la virtualizzazione di una macchina virtuale, quale ambiente di test, da poter

utilizzare quale server e visibile alla macchina fisica (che si interfaccerà con esso quale client).

Figura 1 - Sony Vaio VPCEB1S1E

4.1.2. SERVER UNIVERITARI

I server universitari sono costituiti da 7 macchine fisiche su cui sono virtualizzati 10 ulteriori

server.

Quello di nostro interesse è chiamato SRV4: un server virtuale, appartenente al dominio DI3,

monta WINDOWS SERVER 2008 R2 X64 SP2, con 4 GB di RAM e 126GB di HD, e vi è installato SHARE

POINT FOUNDATION 2010. Su questo verrà attivata l’applicazione in oggetto.

10

(Per avere dati relativi all’attuale situazione dei servers del DI3, si legga la tabella in APPENDICE

B)

4.2. SOFTWARE

4.2.1. VMWARE PLAYER

È il software che ci permetterà di virtualizzare il nostro ambiente di test per il progetto. Al suo

interno è stato montato WINDOWS SERVER 2008 R2 X64, configurato per garantirci le prestazioni

di dominio (la configurazione sarà descritta nel paragrafo 5.1).

4.2.2. MICROSOFT SHARE POINT FOUNDATION 2010

È il software che permette la gestione di una piattaforma SHARE POINT. Interfacciandosi al

dominio, va a generare il sito di AMMINISTRAZIONE CENTRALE dell’ambiente SHARE POINT, e i siti e

sottositi su cui verrà sviluppato il nostro progetto.

4.2.3. MICROSOFT SHARE POINT DESIGNER 2010

È il prodotto, sviluppato da MICROSOFT, che ci permetterà di lavorare, senza dover operare

direttamente sulla macchina server, sull’applicazione. È sostituibile, parzialmente, da un

qualsiasi browser sul mercato al momento (quello più adatto e compatibile è risultato INTERNET

EXPLORER 9): SPD però ci permette di lavorare in maniera più articolata su determinate

Figura 2 - Schermata di Microsoft Share Point Designer 2010

11

strutture del portale, che nella gestione on-the-site non risultano facilmente gestibili nella

configurazione.

4.2.4. MICROSOFT SQL SERVER 2008

È il DBMS (DATABASE MANAGEMENT SYSTEM) che verrà utilizzato per la possibile gestione di dati

contenuti nel database consegnato dalla scuola. Questo è oltretutto necessario per poter

installare SHARE POINT FOUNDATION 2010. Risulterà interessante analizzare come poter gestire e

concedere l’accesso a quest’ultimo tramite SQL SERVER all’utente anonimo (principale fruitore

della piattaforma).

4.2.5. MICROSOFT ACCESS 2010

Software appartenente alla suite MICROSOFT OFFICE 2010, sarà utile per la gestione dei dati

contenuti nel database a disposizione per l’end-user, ed in egual maniera per la gestione dei

dati disponibili sul portale.

12

5. PRIMA DI COMINCIARE

Per poter cominciare a lavorare sul progetto, vi è la necessità di avere opportuni settaggi, sia

all’interno dell’ambiente di test, con la configurazione della macchina virtuale, sia a livello

della macchina fisica.

5.1. CONFIGURAZIONE DELL’AMBIENTE DI TEST SU MACCHINA VIRTUALE

Avviato VMWARE PLAYER e creata la macchina virtuale con installato al suo interno WINDOWS

SERVER 2008 R2 STANDARD, il primo step necessario sarà quello di configurare WS come dominio

di server.

Autenticati ed entrati nella schermata di START, si dovrà accedere al SERVER MANAGER per poter

attivare i RUOLI necessari alla macchina:

a) Prima di tutto, deve essere attivato il ruolo di SERVER DI DOMINIO ACTIVE DIRECTORY. Con

tale ruolo, la macchina potrà fungere da Dominio (definito nel nostro caso PUPONE) per

poter gestire utenze che si interfacciano come client a questa.

Avviando la configurazione guidata, con il comando DCPROMO.EXE, della ACTIVE DIRECTORY,

oltre che alla definizione del nome di dominio, sarà importante consentire la

generazione di un SERVER DNS, per poter tradurre nel modo corretto le richieste di

connessione, e l’introduzione di un DHCP AUTOMATICO, così che non vi siano problemi

nella configurazione locale della piattaforma;

b) Senza dover apportare modifiche a tali moduli, verranno attivati anche i ruoli di SERVER

WEB e SERVER APPLICAZIONI. Importante sarà soprattutto il primo, per poter gestire

l’accesso anonimo.

Seguentemente, all’interno del sistema verrà installato MICROSOFT SQL SERVER 2008, i quali

settaggi nella configurazione di installazione risulteranno essere quelli già preindicati

nell’installazione standard.

Il DBMS permetterà di installare MICROSOFT SHARE POINT FOUNDATION 2010 su WS: tramite la

CONFIGURAZIONE GUIDATA PRODOTTI SHARE POINT potremo connettere tutte le applicazioni SHARE

POINT create al dominio generato in precedenza, ed inoltre poter creare i rispettivi database su

13

SQL SERVER (che, sottolineo, NON DEVONO essere assolutamente toccati, poiché si andrebbe a

intaccare la stabilità di tutto il sistema SP).

Al primo avvio sarà da configurare la farm di SHARE POINT:

a) Nella schermata iniziale, selezionare AVVIA LA PROCEDURA GUIDATA;

b) Settare, nella pagina successiva, come ACCOUNT DI SERVIZIO quello esistente di

amministratore, e mettere le spunte su RACCOLTA DATI DI UTILIZZO E INTEGRITÀ e su SERVIZIO DI

INTEGRAZIONE APPLICATIVA DEI DATI;

c) Nella schermata successiva, si creerà la pagina dell’amministrazione centrale

(importante anche qui è bene NON operare in tale home, pena grossi problemi di

gestione e stabilità).

Avvenuta la creazione dell’AMMINISTRAZIONE CENTRALE, vi è la necessità di creare il sito di test: per

fare ciò, acceduti all’AC come ADMINISTRATOR, saranno da seguire tali passaggi:

a) Nella colonna di Sinistra, accedere a GESTIONE APPLICAZIONI;

b) Ora, nel riquadro centrale, premere GESTIONE APPLICAZIONI WEB;

c) Nella nuova schermata, nella RIBBON BAR, premere NUOVA;

Figura 3 - Ruoli attivi su Macchina virtuale

14

d) Nel riquadro apparso, definire, conservando il resto, il NUMERO DI PORTA

dell’applicazione, il NOME DEL SITO IIS, e settare SI su CONSENTIRE ACCESSO ANONIMO.

In tale modo è stata creata l’applicazione su cui creare la RACCOLTA DI SITI. La raccolta di siti serve

per poter gestire tutti i contenuti a disposizione della piattaforma in progetto. Per poter

configurare tale raccolta, si procederà in tale maniera:

a) Dall’AMMINISTRAZIONE CENTRALE, premere cREA RACCOLTA SITI;

b) Nella nuova pagina, indicare l’APPLICAZIONE WEB su cui questa poggerà (in questo caso

quella appena creata), TITOLO, DESCRIZIONE (facoltativa), INDIRIZZO DEL SITO WEB (che sarà

l’indirizzo dell’applicazione seguito da ciò che verrà definito), SELEZIONE MODELLO (in

questo caso è adatto il Sito del Team), e indicare l’AMMINISTRATORE PRINCIPALE DELLA

RACCOLTA DEI SITI (l’ADMINISTRATOR).

Salvato, si potrà cominciare a lavorare sulla macchina virtuale.

In aggiunta, è stato installato anche sulla macchina virtuale MICROSOFT SHARE POINT DESIGNER

2010, di cui però verrà approfondito nel prossimo paragrafo.

Figura 4 - Creazione dell'applicazione web

15

5.2. CONFIGURAZIONE DELLA MACCHINA FISICA

Questo passaggio risulta importante per potersi interfacciare, al di fuori del browser web, ai

portali creati in ambiente Share Point.

Sulla macchina fisica non verrà installato nulla al di fuori di SHARE POINT DESIGNER 2010:

l’installazione non richiederà alcun settaggio particolare, mentre sarà importante avere i dati

corretti per poter lavorare sui portali.

All’apertura del programma, difatti, verrà richiesto il sito in cui è locata l’applicazione. Il

progetto verterà su due applicazioni, con il relativo nome:

Applicazione di produzione (già disponibile ed accessibile come utente

amministratore): http://srv4.di3.units.it:30120

Applicazione di Sviluppo e Test: http://win-n1hiicm56v1:25544/

Ovviamente per entrambi gli accessi sono necessari il proprio NOME UTENTE e PASSWORD, e che

questi siano legati ad un account di amministratore, cosicché si possano editare i contenuti.

Da ricordare inoltre che per accedere al server di test, dobbiamo, per ovvi motivi, avere attiva

la macchina virtuale.

16

6. STRUTTURA DELL’APPLICAZIONE

6.1. SVILUPPO DELLA HOME PAGE

Pronte le due piattaforme, andiamo a definire la struttura dell’applicazione.

Nella home page l’interesse è quello di proporre tutti gli elementi salienti della scuola, sia a

livello di prestigio, che a livello di comunicazione con il pubblico. Dunque si è optato per

introdurre questi elementi:

Nella QUICK BAR gli elementi di più facile accesso, quali STORIA DELLA SCUOLA, CORSI, ISCRIZIONI

e CIRCOLARI (l’accesso a quest’ultimo è stato limitato ai soli utenti registrati). Inoltre,

sempre riservato e nascosto alla vista dei utenti senza autorizzazione, vi è presente il

FORUM interno.

Interessante osservare che la QUICK BAR costruita potrà essere elaborata sia tramite

connessioni ad elenchi (così sono definiti in SP) costruiti tramite SP, oppure quali link a

pagine o file, indicati dal creatore. Inoltre, questa risulterà standard e conservata per

tutte le pagine del sito su cui si sta lavorando (in questo caso il MAIN SITE).

Per poter editare la QUICK BAR, tramite la RIBBON BAR selezionare AZIONI SITO, IMPOSTAZIONI

SITO: nella nuova schermata selezionare nell’area aspetto l’icona AVVIO VELOCE. Da qui si

Figura 5 - Home Page dell'applicazione

17

potranno aggiungere / editare / eliminare TITOLI e COLLEGAMENTI DI SPOSTAMENTO. Di base

si troveranno gli elementi precostruiti da SP; questi saranno solitamente eliminati,

poiché editati per altra via;

Nella colonna centrale sono presenti le NEWS di pubblico interesse, che verranno

caricate direttamente dalla scuola sia on-the-web sia attraverso un qualsiasi

programma della suite MICROSOFT OFFICE. Vista la versatilità dell’ambiente, è possibile

accedere a tali elenchi tramite un qualsiasi client per SP (nei test si è provato a caricare

materiale con successo tramite SHAREPLUS per IPAD).

Nella colonna di destra, un calendario con le attività presenti e future della scuola. Per

questa webpart si può osservare che, selezionandola ed accedendovi come utente

autorizzato alla modifica, vi si può effettuare la MODIFICA DELLA VISUALIZZAZIONE CORRENTE.

Per la soluzione proposta, si è optato di far visualizzare unicamente DATA DI INIZIO e NOME

dell’evento, con ordine crescente relativo all’ora di inizio.

Per poter visualizzare unicamente gli elementi in programma dalla data odierna in poi,

si è usato il seguente escamotage, vista l’impossibilità di usare direttamente DATA DI

INIZIO come confronto: si è introdotta una colonna calcolata definita CONTROLLO,

equivalente a DATA DI INIZIO, consentendo la visualizzazione degli elementi che siano

maggiori o uguali ad [OGGI];

Nella BARRA SUPERIORE invece sono presenti i SUBSITES che verranno creati

successivamente e, come segnalato dalla scuola, saranno le macroaree ISTITUTO,

PROGETTI e ATTIVITÀ.

Da notare la particolarità di questa barra: questa sarà condivisa non solo dalle pagine

del MAIN SITE, ma anche da tutti i suoi SUBSITES, dunque si avrà accesso diretto, senza

dover effettuare alcuna configurazione aggiuntiva, a tutte le pagine dell’applicazione.

18

6.2. CREAZIONE DEI SUBSITES

La creazione dei SUBSITES rispetterà dei passaggi leggermente diversi rispetto a quello del MAIN

SITE:

a. Da una qualsiasi posizione del MAIN SITE, dopo essersi autenticati con diritti di

amministratore, premere sulla RIBBON BAR su AZIONI SITO;

b. Dalla finestra apparsa, selezionare NUOVO SITO;

c. Nella schermata successiva, impostare TITOLO, DESCRIZIONE, NOME URL;

d. A livello di autorizzazioni, Per convenienza spuntare UTILIZZA LE STESSE AUTORIZZAZIONI DEL

SITO PADRE, NO per VISUALIZZA IL SITO NELLA BARRA DI AVVIO VELOCE DEL SITO PADRE, SI per

VISUALIZZA IL SITO NELLA BARRA DEI COLLEGAMENTI SUPERIORE DEL SITO PADRE e per UTILIZZA LA BARRA

DEI COLLEGAMENTI SUPERIORE DEL SITO PADRE.

La struttura appena definita sarà quella impostata per i SUBSITES creati per il progetto.

La struttura ad albero si può perpetuare fino a maggiori profondità: difatti anche i SUBSITES

possono avere dei loro sotto siti relativi. Importante è ricordare però che i contenuti del

SUBSITE possono essere letti dai siti genitori, ma non viceversa. Dunque liste ed elenchi ad un

Figura 6 - Configurazione della webpart Calendario

19

livello N potranno essere letti da tutti i siti del ramo di livello minore di N, ma non da quelli di

livello maggiore.

6.3. CREAZIONE DELLA PAGINA WEB GENERICA

Pur potendo sembrare banale, il trattamento della pagina web risulta essere particolare, e

richiede l’utilizzo di un workaround per poter eliminare un fastidioso problema per la QUICK BAR

presente in tale pagina. Come impostazione standard, difatti, la pagina web creata sarà

configurata come PAGINA WIKI, e dunque manterrà nell’estremità superiore della QUICK BAR l’area

documenti recenti: questa conterrà gli ultimi elementi acceduti o modificati nell’applicazione,

risultando fastidiosa ed inutile allo scopo.

Per poter aggirare il problema, viene proposto questo trick:

a) Dopo l’autenticazione, premere su AZIONI SITO;

b) Nella finestra a scorrimento, NON selezionare NUOVA PAGINA, bensì ALTRE OPZIONI;

c) Nella nuova schermata, selezionare ELENCO PERSONALIZZATO;

d) Definire nella nuova pagina NOME, DESCRIZIONE e spuntare SI per VISUALIZZA L’ELENCO DI TIPO

ELENCO SULLA BARRA DI AVVIO VELOCE;

e) Ora aprire MICROSOFT SHARE POINT DESIGNER 2010, accedere all’applicazione interessata,

selezionare dall’area OGGETTI SITO l’elemento ELENCHI E RACCOLTE, e dunque cliccare

sull’elenco appena creato;

f) Nella nuova schermata apparsa, accedere a TUTTI GLI ELEMENTI nell’area VISUALIZZAZIONI;

g) Ora apparirà, dopo il caricamento della pagina master, l’editor della pagina;

h) Da qui nella PLACEHOLDERMAIN selezionare WEBPARTPAGES e cancellarla;

i) Svuotata la pagina, premere INSERISCI, WEB PART, EDITOR CONTENUTO.

In tale maniera avremo ottenuto la pagina desiderata, con URL

http://<NOMESITO>/list/<NOMEELENCO>/AllItems.aspx, con la possibilità di non avere la zona

RECENTLY OPENED nella zona superiore alla QUICK BAR, poiché la pagina rispetterà la struttura di

una pagina elenco.

20

7. ACCESSO DATI DEL DATABASE IN MICROSOFT SQL SERVER 2008

Uno dei più grossi problemi che si possono riscontrare nella gestione dell’applicazione in

ambiente Share Point, nella fattispecie per permettere la visualizzazione dei dati ad un utente

non autenticato, è quello della gestione dei dati attinti da un db esterno all’applicazione.

Difatti, le protezioni del DBMS in soggetto sono tali da non concedere l’accesso a utenti non

autorizzati dal dominio: l’obiettivo dunque sarà quello di accedervi primariamente con un

utente effettivamente autorizzato, senza violare le protezioni di SQL SERVER (mantenendone

così la stabilità e la sicurezza), e dunque elaborare il codice per permettere l’accesso

dell’utente anonimo.

La procedura qui indicata è una commistione di spunti e guide ricercate su internet, il cui

elenco è presente nella BIBLIOGRAFIA.

7.1. CREAZIONE DEL MODELLO IN SHARE POINT DESIGNER 2010

Prima fase sarà quella di collegare il db come tipo di contenuto esterno a SP.

Figura 7 - Selezione di External Content Type

21

a) Aperto SPD 2010, cliccare su EXTERNAL CONTENT TYPES (Tipi di contenuto esterno);

b) Sulla RIBBON, premere NEW EXTERNAL CONTENT TYPE;

c) Nella nuova finestra, cliccare su CLICK HERE TO DISCOVER EXTERNAL DATA SOURCES AND DEFINE

OPERATIONS;

d) Premere su ADD CONNECTION nell’area EXTERNAL DATA SOURCE e selezionare come tipo di

DATA SOURCE SQL SERVER;

e) Nella finestra successiva, indicare il NOME DEL SERVER, il NOME DEL DB e il tipo di

autenticazione USER IDENTITY AUTHENTICATION;

f) Ora, selezionare le OPERATIONS utili allo scopo: nel nostro caso, può tranquillamente

andar bene fare ADD ALL OPERATIONS;

Otterremo in questo modo un qualcosa di similare all’immagine qui sopra, ed avremo il nostro

contenuto esterno.

7.2. CREAZIONE DELLA LISTA ESTERNA

Secondo step del processo sarà quello di creare la lista esterna da visualizzare

nell’applicazione.

a) Aperto il sito SP sul browser, andare IN SITE ACTIONS, VIEW ALL SITE CONTENTS;

b) Selezionare CREATE, e dunque nell’area CUSTOM LISTS, EXTERNAL LIST (lista esterna);

c) Nella nuova schermata, indicare il NOME DELLA LISTA e la DESCRIZIONE;

d) Ora apparirà una selezione di contenuti esterni: selezionare quello di nostro interesse;

e) Cliccare su CREATE.

La lista però in tale maniera non risulterà ancora utilizzabile: poiché non sono ancora stati

configurati i permessi, otterremo, nel tentativo di accesso alla lista, se non autenticati su SQL

SERVER, una schermata con indicante ACCESS DENIED BY BUSINESS DATA CONNECTIVITY.

Figura 8 - Operazioni attive sul contenuto esterno

22

Figura 9 - Creazione nuova lista esterna

7.3. CONFIGURAZIONE DEI PERMESSI AUTENTICATI

Ora vanno configurati i permessi di accesso a tale contenuto esterno:

a) In CENTRAL ADMINISTRATION, selezionare APPLICATION MANAGER;

b) Nella nuova schermata, cliccare MANAGE SERVICE APPLICATIONS;

c) Dunque, cliccare BUSINESS DATA CONNECTIVITY SERVICE;

d) Spuntare il contenuto creato e cliccare su set object permissions; Figura 10 - Configurazione permessi per contenuto esterno

23

$apps = Get-SPServiceApplication

$apps //cerchiamo servizio di applicazione integrativa dei dati e contiamo la

sua riga

$bcs = $apps[i] // con i numero di riga – 1

$bcs.RevertToSelfAllowed = $true

$bcs.Update();

e) Nella nuova finestra, aggiungere gli utenti che necessitano l’accesso, e configurarne i

permessi.

Qui il problema sorge se proviamo ad autenticare un utente anonimo: l’aggiunta dell’utente

‘NT AUTHORITY\ANONYMOUS LOGON’ produrrà un errore di login.

7.4. CONFIGURAZIONE DELL’APPLICAZIONE PER L’UTENTE ANONIMO

Nuovo step necessario per poter superare tale problema sarà quello di configurare

l’applicazione per poter gestire l’accesso anonimo al db: vi è il bisogno di attivare la

REVERTTOSELF AUTHENTICATION.

Questo metodo di autenticazione si differenzia dalla WINDOWS AUTHENTICATION poiché l’utente

che viene autenticato viene attinto direttamente dall’IIS APPLICATION POOL, non facendo

impersonare all’IIS un particolare account. Dunque permette all’ anonymous user di accedere

ai contenuti del database.

Ora necessitiamo di configurare i servizi necessari per attivare la REVERTTOSELF:

a) Accediamo alla SHELL DI GESTIONE SHARE POINT 2010 come amministratore;

b) Digitiamo le seguenti linee di comando:

In questo modo l’applicazione che legherà il nostro database all’applicazione web che stiamo

creando non ci ostacolerà nell’accesso. Passiamo dunque a configurare l’IIS per l’accesso

anonimo, per poi configurare il database in SQL SERVER.

7.5. CONFIGURAZIONE DELL’IIS

L’IIS, INTERNET INFORMATION SERVICES, è un complesso di servizi server internet per sistemi

WINDOWS, utile poiché l’applicazione server non è in grado da sé di eseguire elaborazioni

server – side, e necessita la delega ad applicazioni ISAPI (fornite dalla stessa MICROSOFT).

24

Il bisogno relativo al progetto sarà quello di configurare l’IIS per poter avere un utente

esistente configurato come utente anonimo:

a) Accedendo a SERVER MANAGER, RUOLI, SERVIZI DI DOMINIO ACTIVE DIRECTORY, UTENTI E COMPUTER

ACTIVE DIRECTORY, <NOSTROSERVER>, USERS, creiamo il nostro utente anonimo, (nel nostro

caso chiamato AUSR);

b) Spostandosi in GESTIONE INTERNET INFORMATION SERVICES (IIS), accedere al server di

dominio;

c) Entrati in SITI, selezionare l’applicazione web di interesse;

d) Con il tasto destro, cliccare su AUTENTICAZIONE ANONIMA e dunque su MODIFICA;

Figura 11 - Accesso agli utenti tramite Server Manager

Figura 12 - Schermata per la configurazione dell'utente anonimo in IIS

25

e) Premere su IMPOSTA nel riquadro UTENTE SPECIFICO, ed indicare nella nuova finestra NOME

UTENTE e PASSWORD (e confermarla).

L’utente creato in tale modo sarà considerato dall’IIS quale quello anonimo.

7.6. CONFIGURAZIONE DELL’UTENTE ANONIMO IN MICROSOFT SQL SERVER 2008

Prossimo step è quello di configurare SQL SERVER, ed il database di interesse per l’accesso con

l’utente desiderato.

a) Avviare MICROSOFT SQL SERVER MANAGEMENT STUDIO, ed autenticarsi;

b) In SECURITY, premere con il tasto destro su LOGINS, e selezionare NEW LOGIN;

c) Da qui indicare l’utente desiderato (es. AUSR), premendo su SEARCH e scrivendone il

nome (l’utente qui non necessiterà di ulteriori configurazioni);

d) Ora, andare in DATABASES, e selezionare quello che è stato collegato al contenuto

esterno;

e) Entrare in SECURITY;

f) Con il tasto destro premere su USERS e cliccare su NEW USER;

g) Definire NAME, LOGIN NAME (anche questo con il tasto search);

h) In DATABASE ROLE MEMBERSHIP, spuntiamo DB_OWNER;

L’utente in tal modo creato avrà così diritto di accesso al db in cui questo è stato autenticato.

Ora non resta che configurare il contenuto di tipo esterno nell’applicazione web in modo tale

che possa usufruire e godere delle proprietà della REVERTTOSELF AUTHENTICATION.

Figura 13 - Schermata iniziale in SQL Server 2008

26

<AccessControlEntry Principal="<UTENTE_DA_NOI_CREATO">

<Right BdcRight="Execute" />

</AccessControlEntry>

7.7. BCD IDENTITY SETTING PER L’UTENTE ANONIMO

Riprendendo ciò che è stato spiegato al punto 7.3, diamo i permessi ad un utente (esistente) a

nostro piacere. Necessitiamo di questo passaggio per poter modificare e creare l’accesso per

l’utente anonimo.

a) Avviando SPD 2010, selezionare TIPI DI CONTENUTO ESTERNO;

b) Evidenziare il contenuto di interesse, e dunque premere nella RIBBON BAR su ESPORTA

MODELLO DBC;

c) Nella nuova finestra, dare un NOME al file esportato, selezionando nelle impostazioni

CLIENT, e premere ok, salvando nella posizione preferita;

d) Aprire il file esportato con un qualsiasi elaboratore di testi (è sufficiente anche BLOCCO

NOTE);

e) Cercare tutte le righe indicanti

e sostituirle con

Figura 14 - Configurazione dell'utente in SQL Server

27

<AccessControlEntry Principal="NT Authority\Anonymous Logon">

<Right BdcRight="Execute" />

</AccessControlEntry>

ottenendo un codice come quello proposto qui sotto

f) Salvare il file;

g) Eliminare da SPD 2010 il contenuto esterno creato (questo non comporterà la perdita

del lavoro finora compiuto);

h) Andando nell’AMMINISTRAZIONE CENTRALE, accedere in gestione applicazioni;

i) Nell’area APPLICAZIONI DI SERVIZIO, premere GESTISCI APPLICAZIONI DI SERVIZIO;

j) Nella nuova schermata, selezionare ed accedere al SERVIZIO DI INTEGRAZIONE APPLICATIVA DEI

DATI;

k) Nella nuova finestra, fare IMPORTA;

l) Indicare dove si trova il file, e spuntare MODELLO, NOMI LOCALIZZATI, PROPRIETÀ,

AUTORIZZAZIONI nelle relative aree;

m) L’elemento inserito risulterà uguale a quello creato in precedenza, però accedendo ai

permessi indicati in 7.3 si potrà verificare la presenza dell’ANONYMOUS LOGON.

Figura 15 - Frammento di codice del LobSystemInstance

Figura 16 - Servizio di applicazione integrativa dei dati in Servizi applicazioni

28

Per completare, andare in START e digitare IISRESET, così da ripulire la BCS cache.

7.8. RISULTATO DEL PROCESSO

In tale maniera, se provassimo ad accedere alla lista creata come utente anonimo,

otterremmo un tale risultato:

Come si può notare, appare la lista, pur essendo indicato nella RIBBON l’elemento ACCESSO, che

sta a sottintendere l’utenza anonima.

Figura 17 - Configurazione import modello BDC

29

8. GESTIONE DELL’APPLICAZIONE IN MODALITÀ MULTILINGUA

SHARE POINT 2010 ha come suo cavallo di battaglia l’implementazione di una efficiente gestione

multilingua delle proprie strutture. Dalla versione 2010, difatti, è stata introdotta la MUI, MULTI

LANGUAGE USER INTERFACE, che consente una gestione modulare di titoli, descrizioni, menù,

azioni, colonne e collegamenti della barra di navigazione.

Questa caratteristica è molto interessante poiché permette di creare un’unica applicazione in

diverse lingue con un’estrema facilità (basta praticamente sostituire lingua per lingua le varie

“etichette” degli elementi) per gli utenti autenticati.

È difatti proprio quest’ultima la grossa limitazione della piattaforma SHARE POINT: l’impossibilità

di scelta della lingua per l’utente anonimo. La lingua sarà infatti scelta quale quella predefinita

per l’applicazione, non consentendo di sfruttare tale interessantissima opportunità.

L’unica idea praticabile, anche sebbene poco efficace e alla fin fine controproducente rispetto

ai parametri di semplicità basilari per l’applicazione in progetto, sarebbe quella di creare due

applicazioni parallele, una predefinita in italiano, ed una in inglese. Questo però porterebbe ad

una fastidiosa duplicazione dei contenuti, a cui non si è riusciti a trovare una soluzione.

Se il problema dell’utente anonimo, in questo caso, non risulta risolvibile, la gestione

multilingua per l’autenticato è invece decisamente semplice:

a) Scaricare dalla pagina www.microsoft.com/downloads/it-

it/details.aspx?familyid=046f16a9-4bce-4149-8679-223755560d54&displaylang=it il

LANGUAGE PACK di nostro interesse (selezionare la lingua di interesse da installare, per il

progetto la lingua inglese), ed installare tale file su WS;

b) Accedendo autenticati via browser all’applicazione, dalla RIBBON BAR accedere in AZIONI

Figura 18 - Impostazioni lingua

30

SITO, IMPOSTAZIONI SITO;

c) Nell’area AMMINISTRAZIONE SITO, selezionare IMPOSTAZIONI LINGUA;

d) Ora impostare, tra le LINGUE ALTERNATIVE, quella di interesse per il progetto (es. inglese),

e impostare NO per l’opzione SOVRASCRIVI TRADUZIONI;

e) Per editare le varie LABELS, accediamo, premendo sul nome utente/seleziona lingua di

visualizzazione, a quella di nostro interesse, e cominciamo ad editare RIBBON BAR, QUICK

BAR e WEB PART a nostro piacimento.

Qui sotto è possibile vedere un esempio delle possibilità fornite dalla MUI di SHARE POINT 2010,

in questo caso per la gestione della QUICK BAR.

Figura 19 - Quick Access Bar con modifica tramite MUI

31

9. GESTIONE DEGLI ACCESSI E PERMESSI DEGLI UTENTI

Altro tasto di ardua gestione all’interno del progetto è quello della gestione dei permessi degli

utenti: è un problema non tanto a livello software, ma piuttosto a livello hardware.

Se infatti, tralasciando le difficoltà che si possono riscontrare a livello di privacy nella gestione

dei contenuti riservati consegnati dalla scuola, quali rendimenti scolastici, anagrafiche, o più in

generale dati sensibili, il grosso problema risiede nel poter sostenere adeguatamente un’alta

quantità di accessi autenticati a tale applicazione: se non vi sono dei requisiti hardware

sufficienti, non sarà possibile consentire l’accesso ad un numero elevato di utenze.

Oltretutto, la gestione delle utenze richiederebbe la creazione di un database supplementare e

parallelo a quello che è già a disposizione in Università: percorso impraticabile anche

considerando la possibilità di introdurre le utenze all’interno dello stesso database

universitario, poiché un migliaio di nuovi accrediti risulterebbero insostenibili.

Dialogando con la scuola, ed interfacciandosi con il relatore, si è giunti alla conclusione di

ridurre, almeno momentaneamente, il numero di utenti richiesti, limitandoli ad un gruppo

selezionato di docenti ed al personale amministrativo, concedendo a questi l’accesso alle zone

riservate CIRCOLARI e FORUM.

Essendo questi due ultimi delle liste teoricamente accessibili anche all’utente anonimo, la

priorità sarà quella di proteggere e nascondere a tale utenza il link di accesso, settando

correttamente i diritti di visualizzazione e gestione.

Nel progetto, ad esempio, si può andare a nascondere l’accesso all’area forum:

a) Accedendo tramite browser all’applicazione, andare in AZIONI SITO, IMPOSTAZIONI SITO;

Figura 20 - Informazioni elenco

32

b) In AMMINISTRAZIONE SITO, selezionare RACCOLTE ED ELENCHI DEL SITO;

c) Selezionare PERSONALIZZA <NOME_LISTA>;

d) Nella nuova finestra, selezionare AUTORIZZAZIONI PER L’ELENCO DI TIPO <TIPO_ELENCO>;

e) Selezionare, nella RIBBON BAR, INTERROMPI EREDITARIETÀ AUTORIZZAZIONI;

f) Nella stessa barra, selezionare ACCESSO ANONIMO;

g) Togliere le spunte per tutte le opzioni presenti;

h) Premere OK;

In tal modo, e reiterando il ragionamento a tutte le liste di interesse, sarà possibile proteggere

in modo adeguato le strutture che lo richiederanno.

Figura 21 - Accesso anonimo per Liste

33

10. TIPS & TRICKS DI SVILUPPO DELL’APPLICAZIONE

Poiché l’applicazione alla base del progetto non è puramente la struttura di SITE e SUBSITES, e

neppure unicamente la gestione dell’accesso anonimo al db, può risultare interessante

osservare quali siano quei passaggi, quei trucchi, che permettono di avere un’applicazione più

pulita e piacevole all’utente finale.

10.1. INTEGRAZIONE DELL’ACCESSO AL DB SU PIATTAFORMA ACCESS

Seppur possa sembrare banale ed, anzi, controproducente per un utente più smaliziato, la

conversione dell’accesso dei dati del db SQL Server per un end user inesperto potrebbe

risultare solo che conveniente, avendo un approccio più leggero e ordinato quale quello in

MICROSOFT ACCESS.

Dovendoci relazionare con un personale amministrativo che non può stare a perder tempo per

comprendere cosa sia SQL SERVER, l’obiettivo di questo paragrafo è quello di fornire un piccolo

modulo, utilizzabile in MICROSOFT ACCESS 2010 (oppure 2007). Tale front-end permetterà di

elaborare o direttamente i dati presenti nelle liste e non direttamente gestite dal DBMS,

oppure quelle presenti nel motore.

10.1.1. ACCESS PER LE LISTE

Un primo passo di sviluppo di front-end su ACCESS può essere quello di linkare le liste presenti

nell’applicazione in un ACCESS DATABASE. Il procedimento presentato è applicato su MICROSOFT

ACCESS 2010:

a) Avviato il programma, creare un NUOVO DATABASE VUOTO, indicandone il nome;

b) Nella schermata apparsa, selezionare nella ribbon bar DATI ESTERNI;

c) Selezionare ALTRO, e dunque ELENCO DI SHARE POINT;

d) Nelle videata successiva, selezionare COLLEGARE ALL’ORIGINE DATI CREANDO UNA TABELLA

COLLEGATA, e proseguire;

Figura 22 - Ribbon bar di Access 2010 su Dati esterni

34

e) Dunque, selezionare gli elenchi che interessa avere disponibili nel front-end Access e

continuare;

Figura 23 - Selezione degli elenchi per il Front-End

A questo punto avremo ottenuto il front-end richiesto, con gli elenchi trattati come tabelle

linkate.

10.1.2. ACCESS COME FRONT-END SQL SERVER

Altro problema che l’end-user può incontrare è quello della gestione “semplificata” dei dati

raccolti nel database presente nel DBMS SQL Server.

Seguendo lo stesso ragionamento del punto precedente, viene qui proposta una possibile

soluzione, sfruttando questa volta però un ACCESS DATA PROJECT:

a) Avviare il programma e, nella creazione, andare a selezionare il FOLDER di destinazione:

da qui, in SALVA COME impostare PROGETTI DI MICROSOFT ACCESS (*.ADP);

35

b) Nella finestra apparsa, selezionare si;

Figura 24 - Settaggi per connessione server SQL Server

Figura 25 - Definizione di ADP in Access 2010

36

<capability name="isMobileDevice" VALUE="True" />

<capability name="isMobileDevice" VALUE="False" />

c) Ora inserire i dati necessari, come indicato in FIGURA 25, e premere ok.

In questo modo, otterrò accesso a tutte le tabelle presenti nel database collegato, e

modificarle a piacimento.

10.2. GESTIONE DI ACCESSO DA DISPOSITIVI MOBILI

Altro interessante frangente di analisi è quello della configurazione dell’accesso

all’applicazione web da dispositivi mobili, specie al giorno d’oggi. Avere un’interfaccia che si

adatti in modo chiaro e comprensibile anche su mobile può risultare un punto a favore del

prodotto.

Dall’analisi e dai vari tentativi effettuati per una buona impaginazione delle strutture mobile, e

da una riflessione relativa ai benefici che possa portate tale formato, si è giunti alla

conclusione che, vista l’organizzazione SITE / SUBSITES e dal tipo di contenuti presenti

sull’applicazione, non risulti adeguato la gestione fornita da Microsoft. Dunque si è optato per

l’eliminazione dell’accesso in formato mobile.

Per poter ottenere tutto ciò, necessitiamo di tali passaggi:

a) Andare in COMPUTER, ed inserire sulla barra degli indirizzi

“\inetpub\wwwroot\wss\VirtualDirectories\<NUMEROPORTA>\App_Browsers\”,

inserendo al posto di <NUMEROPORTA> il numero della porta associato all’applicazione di

interesse;

b) Aprire con un editor di testo il file COMPAT.BROWSER;

c) Ricercare la stringhe di codice

e sostituirle con

per tutte le volte che risulterà esservi tale stringa.

In questo modo otterremo una visualizzazione del sito su dispositivo mobile di tale modo (qui

verrà simulata tramite plug – in USER AGENT SWITCHER per MOZILLA FIREFOX, e confrontati i risultati

ottenuti su un’applicazione con mobile access disabilitato, a sinistra, e abilitato, a destra).

37

Figura 26 - Confronto disabilitazione Accesso per dispositivi mobili

10.3. CONFIGURAZIONE DEL TEMA PER L’UTENTE ANONIMO

L’interesse del committente è quello di fornire una pagina più pulita possibile per l’utente

principale di tale applicazione: l’ANONYMOUS USER. Questo fattore però viene negato dalla

presenza della RIBBON BAR che, pur risultando molto efficace ed efficiente nell’utilizzo in

sviluppo, risulta superflua ad un utente che non ha permessi di modifica. Il nostro interesse

sarà quello dunque di far sparire tale barra, mantenendo ordinata la pagina.

10.3.1. COME NASCONDERE LA RIBBON BAR

Il nostro intervento dovrà essere eseguito sulla MASTER PAGE dell’applicazione.

a) Accedendo tramite SPD all’applicazione, accedere a PAGINE MASTER;

b) Copiare ed incollare l’elemento v4.master. Questo è necessario per poter ripristinare la

pagina in caso di problemi;

Figura 27 - Pagine master

38

<asp:LoginView id="LoginView" runat="server">

<AnonymousTemplate>

<style type="text/css">

body #s4-ribbonrow {

display: none;

}

</style>

</AnonymousTemplate>

</asp:LoginView>

c) Rinominare il file a propria scelta (es. v4Final.master);

d) Accedere al file appena creato, e selezionare modifica file;

e) Accedere alla vista codice;

f) Nello head del codice C#, introdurre tali stringhe:

g) Salvare.

Tale codice ci fungerà da filtro sulla RIBBON, rendendola invisibile agli utenti non autorizzati.

Questo però comporterà anche la sparizione del LOGIN BUTTON, che è necessario per accedere ai

contenuti riservati. Vi è la necessità dunque di ripristinare tale bottone, integrandolo nel tema

dell’applicazione, configurandone una predefinita personalizzata.

10.3.2. CONFIGURAZIONE DEL TEMA PERSONALIZZATO

L’esempio in considerazione recupererà un tema già esistente, da applicare per il tema

anonimo.

a) Per un qualsiasi utente autenticato (ad esempio ADMIN), impostare un tema

personalizzato;

b) Tramite SPD, accedere a TUTTI I FILE/_THEMES/<NUMEROTEMA>;

Figura 28 - Core*.css file

39

<SharePoint:CssRegistration runat=”server” name=”<TITOLO-CORE*.CSS-FILE-

DI-PTO-C>” EnableCssTheming=”true” After=”true”/>

<wssuc:Welcome id="IdLogin" runat="server" EnableViewState="false">

</wssuc:Welcome>

<wssuc:MUISelector runat="server"/>

c) Con il tasto destro selezionare il primo CORE*.CSS file, e accedere alle proprietà;

d) Copiare il TITOLO;

e) Accedere alla master page modificata (es. v4Final.master);

f) Al di sotto del tag SHAREPOINT:CSSLINK inserire tale codice:

g) Salvare.

Per poter vedere i progressi effettuati, cliccare con il tasto destro sulla pagina master editata e

premere sia IMPOSTA COME PAGINA MASTER PREDEFINITA che IMPOSTA COME PAGINA MASTER

PERSONALIZZATA.

Ora va reintegrato il LOGIN BUTTON:

h) All’interno del BODY della pagina master, localizzare la posizione in cui si vuole

introdurre il bottone di login (utilizzare anche la doppia visualizzazione per trovare più

comodamente la porzione di codice interessata);

i) All’interno dei tag DIV di tale porzione, inserire il codice

j) Per poterlo integrare al meglio il login button con il tema definito, andare a modificare

il CORE*.CSS recuperato in c), editando con particolare interesse la sezione le classi .MS-

WELCOMEMENU (che determina forme e colori del bottone), .S4-TITLE (per l’editing della

barra del titolo) e .S4-TITLETEXT (che concerne le scritte di quest’ultima barra).

Nel progetto in questione, si è optato di integrare il LOGIN BUTTON all’interno della TITLE BAR,

nascondendo il bottone dalla ribbon anche per gli utenti autenticati, ottenendo un risultato

piuttosto pulito:

40

Figura 29 - Tema personalizzato con eliminazione Ribbon Bar

41

11. CONCLUSIONI

Lo sviluppo dell’applicazione web commissionata da parte della scuola è risultato di grosso

interesse, anche a livello formativo. L’utilizzo di un CMS proprietario MICROSOFT come quello

SHARE POINT mi ha dato la possibilità di studiare ed analizzare oltre che un nuovo tool,

principalmente quali siano i parametri e le caratteristiche che in un prossimo futuro potranno

essere utili nell’ambiente lavorativo, mettendomi in evidenza quali siano le informazioni che il

committente lavorativo prediligerà.

L’apprendimento è stato lento all’inizio, ma colti i passaggi basilari, buona parte dei problemi è

stata affrontata e risolta senza grosse difficoltà.

L’impiego ha preso una ventina di ore per l’apprendimento delle caratteristiche avanzate,

mentre circa altre 200 ore sono state dedicate all’analisi del progetto e della relativa scrittura

del codice supplementare al semilavorato ottenuto tramite interfaccia grafica.

Apprezzabile, dal mio punto di vista, il livello di protezioni che ha portato le maggiori difficoltà

nello sviluppo: l’utenza anonima, dal mio punto di vista, risulta poco considerata da SHARE

POINT, e dunque in alcune situazioni solo con workaround articolati si è potuto “aggirare”

(anche se non è propriamente il termine più corretto da utilizzare, poiché le protezioni non

sono state mai violate) ciò che basilarmente non viene garantito a priori.

Proprio questa alta protezione a livello anonimo mi porta a pensare che l’ambiente SHARE

POINT sia più adatto ad una funzionalità intranet, piuttosto che internet, pur risultando

particolarmente efficiente in quei frangenti in cui non è vi è un grosso livello di gestione di

informazioni riservate, o almeno protette.

Pur non avendo potuto risolvere, per limiti strutturali (sia a livello software che hardware),

problemi quali la gestione dell’ e – learning, delle connessioni multilingua e delle utente, che

potranno comunque avere un futuro sviluppo in tale ambiente perché potenzialmente

supportate, ma al momento inaccessibili, mi ritengo piuttosto soddisfatto della possibilità

fornitami, poiché l’apprendimento di un tool a me completamente sconosciuto sino a prima

dell’inizio del progetto, e la possibilità di apprendere quali siano i fulcri che garantiscono ad

42

un’azienda di avere una buona comunicazione interna e con il pubblico mi han permesso di

migliorare le mie conoscenze ed arricchire piacevolmente il mio curriculum.

Il prodotto è in fase di produzione: presi gli accordi con il committente, la struttura

dell’applicazione è già esistente ed on-line, anche se ne mancano i contenuti consegnati da

quest’ultimo; unitamente, ne vanno raffinate alcune altre caratteristiche non fondamentali,

ma esteticamente importanti.

Come indicato, possibili sviluppi futuri potranno essere l’implementazione di una piattaforma

e-learning, ed un ampliamento delle utenze autenticate: SPD consentirà senza grosse difficoltà

(almeno a livello software) di implementare questi.

43

12. BIBLIOGRAFIA

Jorg Krause, Christian Langhirt, Alexander Sterff, Bernd Pehlke, Martin Doring – SharePoint

2010 as a Development Platform

Tom Carpenter, James Pyles – Microsoft SharePoint 2010 Administration

Emer McKenna, Kevin Laahs, Veli-Matti Vanamo – Microsoft SharePoint 2010 all-in-one for

Dummies

Simone de Bianchi, Maurizio Fermeglia – Sviluppo di applicazioni web con tecnologia Microsoft

Sharepoint 2010

Gestione dell’accesso al db in SQL Server

http://dontpapanic.com/blog/?p=131

http://blogs.msdn.com/b/bcs/archive/2010/03/12/authenticating-to-your-external-

system.aspx

http://technet.microsoft.com/en-us/library/ms172405.aspx

Gestione dell’accesso da dispositivi mobili

http://blogs.technet.com/b/office2010/archive/2010/03/09/configure-sharepoint-server-

2010-for-mobile-device-access.aspx

Modifica dei temi e della ribbon bar

http://social.technet.microsoft.com/Forums/en-

US/sharepoint2010customization/thread/12bf4ed1-8bf3-4bc4-b108-8e26e27e8651

http://www.sharepointgeoff.com/sharepoint-foundation-site-anonymous-access-no-theme/

http://erikswenson.blogspot.com/2010/01/sharepoint-2010-base-css-classes.html

44

APPENDICE A – MACROLIVELLI E DETTAGLI PROPOSTI DAL COMMISSIONARIO DEL

PROGETTO

Macrolivello Dettagli I livello Dettagli II Livello

ISTITUTO 1A Storia 2A Mission 3A Organigramma 4A Organi Collegiali 5A Piano Offerta Informativa 6A Regolamento Interno 7A I Corsi 7AA Materie dei Corsi 7AB Orario delle lezioni 7AC Docenti e Materie 8A Contatti e Orari Uffici 9A Bilancio Sociale 10A Modulistica 11A Presentazione Attività 12A Modulo di Iscrizione 13A Galleria Fotografica Tematica 14A Studenti Illustri 15A News 16 Dove Siamo

PROGETTI 1B Progetto Sport Invernali 1BA E – Learning 1BB Materiale Didattico 1BC Forum Moderati 1BD Registro on – line 1C Progetto Impresa Simulata 1E Progetto Professioni della

montagna

ATTIVITA’ 1F Biblioteca 2F Emeroteca 3F Laboratori e aule 4F Prodotti educativi (audio, video, foto, testi) 5F Sondaggi on – line

Area Protetta da Login e Password

AREA DOCENTI 1G Comunicazioni 2G Circolari 3G Formazione 4G Classi 5G Orari docenze / supplenze 6G Registro Elettronico 7G Graduatorie

45

8G Inserisci Documentazione 8GA Notizie 8GB News 8GC Materiale Didattico

Area Protetta da Login e Password

AREA STUDENTI 1H Comunicazioni 2H Documentazione 3H Materiale didattico

4H Registro Elettronico 5H Libri di testo 6H Attività Studentesche 7H Blog

Area Protetta da Login e Password

AREA GENITORI 1I Comunicazioni 2I Documentazione 3I Materiale Didattico 4I Valutazione degli allievi

46

APPENDICE B – SITUAZIONE SERVER DI3

Stato, a settembre 2011, dei server del DI3. Si ringrazia Dario Cechet per i dati ottenuti.