Co2Informatique /Cédric Carbone Cédric : Recherche sur XML, Java, J2EE, Nomadisme... / CV, espace professeur, téléchargement de cours...          © Co2 Co2Informatique : Recherche sur XML, Java, J2EE, Nomadisme...           © Cédric Carbone Le site a été transféré à http://www.cedric.carbone14.org/co2info/
   
  EIP - SPSEIP : SharePoint Portal Server 


Objectif

Cet article va présenter le portail Microsoft SharePoint Portal Server.
Une approche de Lotus K-Station est disponible.
Un article sur les constats et enjeux des portails d'entreprise (EIP) est également disponible.

Plan

      Fonctionnalités de SPS
      Glossaire
      Version testée
      Procédures d'installation
      Workspaces
      DashBoards
      Webparts
      Accès à SPS
          Via un browser
          Via l'explorateur
          Via la suite Microsoft Office
      Présentation du contenu hétérogène
      Profiling
      Sécurité
      Gestion documentaire
          Check-in, Check-out, Publish
          Workflow
          Catégorisation, type de documents, mots clés
          Recherche
          Abonnement
          Discussion
          Cycle de vie des documents
      Prix
      Les commentaires sur cet article

Fonctionnalités de SharePoint

Sharepoint est un outil permettant de concevoir un Intranet permettant le partage et l'accès aux informations. Il comporte les fonctionnalités suivantes :

Il utilise également la technologie du WebStore et peut s'appuyer ou non sur la sécurité Windows (Active Directory).

Glossaire

WorkPlace [Espace de travail]: Point d'entrée aux portails pour les utilisateurs. Contient des DashBoards.
Dashboard [Tableau de bord]: Emplacement visible dans lequel les utilisateurs peuvent collaborer et échanger des informations.
WebParts [Section web]: fenêtre située respectivement dans un DashBoard qui fournit un accès à un contenu très varié et personnalisé.
Coordinator [Coordinateur]: Droit pour un utilisateur de manager les informations lui étant accessibles sur le portail.
Author [Auteur]: Droit pour un utilisateur de consultation et de publication d'informations lui étant accessibles sur le portail.
Reader [Lecteur]: Droit pour un utilisateur de consultation des informations auxquelles il a accès sur le portail.
Check-in [Extraire]: Possibilité d'uploader un fichier sur le portail. Cela permet alors d'incrémenter le numéro de sous-version du document.
Check-out [Archiver]: Possibilité de downloader un fichier du portail afin de le modifier. Dans ce cas l'utilisateur réserve le document que nul autre utilisateur ne pourra utiliser. Les autres utilisateurs peuvent néanmoins travailler sur une ancienne version du document. Un Check-out est obligatoirement suivi d'un Check-in.
Publish [Publier]: Cette notion permet d'incrémenter un numéro de version de document. Elle permet aussi de publier un document sur le portail c'est à dire de permettre à tous les utilisateurs susceptibles d'utiliser ce document de voir ce document sur le portail. Un Publish ne peut s'effectuer que sur un document dont l'état est Check-in.

Version testée

Seule la version RC2 de Microsoft SharePoint Portal Server était disponible au moment des premiers tests. Aujourd'hui, une version finale en français est distribuée. Cependant, ce document ayant été commencé avant la version française, il a été choisi de conserver les termes anglais des différents éléments du portail. Le vocabulaire français a été tout de même indiqué entre crochets dans la partie glossaire.
Pour rappel, voici les différentes étapes d'un logiciel avant commercialisation :

Procédures d'installation

Possibilité d'installation d'autres composants Microsoft (Instant Messaging, forum de Exchange…) Installation du client SharePoint lors du déploiement sur les postes clients (le client est installé par défaut sur le serveur). Ce client n'est cependant pas obligatoire.
Un fonctionnement optimal de SharePoint dérive des architectures ci-dessous :
EIP : Schémas d'architecture offrant un fonctionnement optimal de SPS

Le point d'entrée au portail SharePoint de ces trois outils est le workspace du portail. Un serveur peut contenir un ou plusieurs workspaces. Un workspace contient un ou plusieurs DashBoards et un DashBoard peut contenir plusieurs WebParts.

Workspaces

Le workspace est véritablement le point d'entrée du portail SharePoint. L'administrateur va pouvoir au moyen de la MMC (Microsoft Management Console : Outil d'administration du serveur http) le configurer de telle sorte que son accès soit restreint à certains utilisateurs et que ces utilisateurs soient identifiés pour avoir des droits différents les uns des autres. L'ACL (Access Control List) du serveur SharePoint peut être couplée avec Active directory. Le workspace permet la configuration d'éléments externes au portail (proxy,…). L'accès à un workspace s'effectue de la manière suivante : http://nomServeur/nomWorkspace Cette URL redirige vers le DashBoard " principal " du portail. En effet, un workspace doit contenir au moins un DashBoard qui est la page d'accueil du portail. Les workspaces peuvent être sur des serveurs différents afin d'augmenter le trafic pour les portails accessibles par de nombreux employés.

DashBoards

Un DashBoard est en fait un bureau du workspace contenant toutes sortes d'informations (personnalisées, applications,…). L'accès à un DashBoard peut être restreint à certains utilisateurs mais cela ne peut se faire que par programmation (le langage utilisé dans l'environnement SharePoint est le VBScript), il ne contient pas par défaut d'ACL propre.

Le contenu d'un DashBoard, c'est à dire des WebParts et son design sont totalement maîtrisables par l'administrateur du portail. Il a le choix de différents styles de DashBoards par défaut. Ces styles peuvent être personnalisés ou bien l'administrateur peut en créer d'autres. L'emplacement des WebParts sur le DashBoard se fait par la méthode du glisser-déposer suivant un layout défini et non modifiable.

Webparts

Les WebParts contiennent les informations du portail. Un Webpart est généralement appelé " fenêtre de connaissance ". Un WebPart est totalement modulable et paramétrable. Il peut contenir toutes sortes d'informations hétérogènes.

Un WebPart peut être une application, un lien vers un contenu, une page Web,… . Il est basé sur une structure normalisée d'un fichier XML. Il peut renvoyer du HTML, VBScript, JavaScript, XML.

Il est possible de créer des WebParts directement à l'intérieur du Portail SharePoint (seulement pour l'administrateur) ou de les importer. Un WebPart est un fichier structuré avec une extension " dwp ". Aussi, le DDRK (Digital DashBoard Ressource Kit) permet de créer des WebParts indépendamment de SharePoint.
NB : Les technologies de DashBoards et de WebParts ne sont pas spécifiques à l'environnement de SharePoint Portal Server. On retrouve ces notions dans Exchange 2000. La figure ci-dessous montre l'interface wysiwyg accessible via le browser pour créer un webpart.

EIP : Création d'un WebPart au travers de SPS
A la validation de ce formulaire, voici le fichier dwp (en xml) généré par SPS:
<?xml version="1.0"?>
<WebPart xmlns="urn:schemas-microsoft-com:webpart:">
<Title>Bienvenue + date + espace perso</Title>
<Description></Description>
<Content>
 Function GetContent(nod)
 dim tempo, nbDebut, nbFin, user, perso,dateHeure
 tempo = GetServerVariable("LOGON_USER")
 nbDebut = InStr(tempo,"\");
 nbFin = Len(tempo)
 user= Mid(tempo, nbdebut+1, nbfin)
 user = Ucase(user)
 perso = "<A HREF=../../Dashboards/" & user & "/><B>" & user
              'Accès à l'espace personnel non utilisé pour l'explication
 nod.SelectSingleNode("Title").Text = Bienvenue M. " & user
 'Suite du webpart coupée car non intéressante pour notre explication
</Content>
<ContentLink></ContentLink>
<XSL></XSL>
<XSLLink></XSLLink>
<MasterPartLink></MasterPartLink>
<RequiresIsolation>0</RequiresIsolation>
<ContentType>1</ContentType>
<IsIncluded>1</IsIncluded>
<AllowRemove>1</AllowRemove>
<IsVisible>1</IsVisible>
<FrameState>0</FrameState>
<AllowMinimize>1</AllowMinimize>
<HasFrame>1</HasFrame>
<Zone>4</Zone>
<PartOrder>0</PartOrder>
<PartImageSmall></PartImageSmall>
<PartImageLarge></PartImageLarge>
<CustomizationLink></CustomizationLink>
<CacheBehavior>0</CacheBehavior>
<CacheTimeout>0</CacheTimeout>
<PartStorage></PartStorage>
<Namespace></Namespace>
<Height></Height>
<Width></Width>
<DetailLink></DetailLink>
<HelpLink></HelpLink>
</WebPart>
Par exemple le premier champ de l'interface nommé Name (contenant Bienvenue + date + espace perso) se situe à la troisième ligne du fichier xml ci-dessus (les balises <title>).
Ce webpart doit entre autre indiquer dans sa barre de titre Bienvenue M. <nom de la personne connecté>. Il est certain que l'on ne peut pas évaluer d'expression dynamique dans le champ name de notre interface de création. Les seuls scripts joués étant dans le champ content (transposé ensuite entre les balises <content> du fichier xml). Ce script doit donc changer le texte écrit initialement dans la barre de titre du webpart (Bienvenue + date + espace perso). Pour ce faire une fonction GetContent(nod) ainsi que la méthode SelectSingleNode() de l'objet précédent nod seront utilisées. En effet, le nom de l'utilisateur connecté est récupéré via une variable d'environnement IIS (GetServerVariable("LOGON_USER")). Cette variable récupérant en fait le couple nomDuDomaine/nomDuUser, les cinq lignes suivantes permettent de formater et d'extraire les informations utiles afin d'avoir dans la variable user ce que l'on désire afficher. La dernière ligne change donc le contenu de la balise <title> de ce présent document :
nod.SelectedSingleNod("Title").Text = "Bienvenue M." & user
EIP : Vue d'un workspace
Ce workspace est composé de 8 DashBoards (représentés par des onglets) dont le DashBoard Université d'Evry Val d'Essonne qui est lui même composé de 6 WebParts. < /p>

Accès à SPS

Les outils de la suite office et de l'explorateur pour atteindre le portail SharePoint ne sont utilisés respectivement que pour la gestion documentaire et l'administration du portail. Le navigateur internet permet la navigation sur le portail.

EIP : Différents accès à SPS

Via un browser

Le stockage des différentes données de SPS est basé sur la technologie Web Storage. Cette technologie permet en fait d'accéder à un contenu de répertoire au moyen d'une URL. Il est donc possible d'accéder à SPS à travers un browser suivant une URL qui est généralement la suivante : http://nomServeur/nomPortail. C'est le mode d'accès le plus utilisé pour les utilisateurs et aussi le seul accès possible pour voir les webparts.
A partir de cette URL, l'utilisateur peut avoir accès à toutes les données du portail. La figure de la partie webpart et les deux suivantes illustrent cet accès.

EIP : Vue de webpart à partir d'un browser
Les deux webparts ont été développé par des SSII américaines. Celui de droite est un ensemble de 4 webcams. Pour afficher la webcam voulue, il suffit de cliquer sur son nom (SR520, I405, I90 et I5). Le second webpart indique la météo d'une ville au USA. Au clic sur le crayon en haut à droite du webpart, une fenêtre apparaît permettant de saisir le code postal d'une ville américaine. Dès ce formulaire validé, les informations disponibles sont affichées dans le webpart.
EIP : Vue de webpart à partir d'un browser
Vue du dashboard Recherche/Transport à travers le butineur.

Via l'explorateur

Cette méthode d'accès au portail est réservée le plus souvent à l'administrateur, ou aux auteurs et coordinateurs de la GED. Cela va leur permettre de spécifier des droits d'accès à certains documents, répertoires, manipuler les documents (leurs métadonnées, leur état en terme de check-in, check-out, publish, voir même supprimer des étapes d'un workflow de publication)… . L'utilisateur pourra accéder au portail de cette façon pour gérer ses documents ou bien pour réserver ou rendre un document.

EIP : Architecture du site

L'ouverture du dossier tutoriels puis xml va présenter tous les documents disponibles. La figure ci-contre représente ces documents. Il faut noter que les dossiers ont une symbolique différente des dossiers traditionnels traduisant le fait que ce soit des " dossiers améliorés " gèrant les versions des documents, les archivages, les extractions (fichier avec un crayon sur le pictogramme ), les fichiers publiés (fichier avec une étoile bleue sur le pictogramme). Les documents en cours d'approbation seront symbolisés par une petite pendule rouge. L'essentiel des actions propres au portail sont accessible via le menu contextuel.

EIP : gestion à partir d'un explorateur

Via la suite Microsoft Office

L'utilisateur a la possibilité, à partir des outils de la suite bureautique, de déposer ou de prendre un document sur le portail. Cette utilisation est réservée spécifiquement à la gestion documentaire.

EIP : la GED à partir de la suite Office

Présentation du contenu hétérogène

SharePoint permet au moyen des WebParts de supporter du contenu hétérogène. Ce contenu peut être des composants ActiveX, des applications spécifiques à une société, … .
Précédemment nous avons vu qu'un WebPart est structuré suivant la norme XML, or un WebPart contient une balise supportant les langages HTML, VBScript, javascript et XML. Cette balise nommée " Content " permet l'affichage des données sur le WebPart. Il est donc possible d'inclure, au sein d'un WebPart, avec un minimum de programmation, de l'information hétérogène.
Une fonctionnalité supplémentaire est disponible au sein d'un WebPart qui est la possibilité d'inclure le contenu d'un site à partir de son URL.

Profiling

Il existe une double notion de profiling au sein de SPS. L'accès se fait par identification et autorisation. Cet accès est géré par le serveur IIS sur lequel est installé SPS. L'utilisateur ayant accédé au portail, est alors authentifié et donc navigue au sein du portail suivant ses droits. Il est possible de spécifier des droits pour un utilisateur sur un dashboard ou sur un WebPart. Les droits peuvent être définis de façon traditionnelle (ACL) ou bien suivant un minimum de programmation.

Sécurité

La sécurité est gérée par le serveur IIS. Il est possible de se baser soit sur des comptes utilisateurs de domaine déjà définis donc de ce fait d'utiliser l'Active Directory soit de spécifier des comptes propres au serveur IIS.

Gestion documentaire

Check-in, Check-out, Publish

Le module de gestion documentaire de SPS est toujours installé avec SPS. Il gère les notions de Check-in, Check-out et Publish.
Ces notions peuvent être utilisées suivant les trois accès à SPS définis ultérieurement. Les utilisateurs ont la possibilité de commenter toute modification sur un document.

Workflow

Un document peut être publié suivant un workflow. Un module de workflow est installé avec le module de gestion documentaire.
Il existe deux types de workflow : un workflow séquentiel et un workflow parallèle.

Le workflow séquentiel est en fait un workflow série. Toute personne intervenant dans ce workflow doit valider le document suivant un ordre défini.
Pour le workflow parallèle, il suffit d'une validation d'une et une seule personne intervenant dans le workflow ou alors d'une validation de toutes les personnes dans un ordre non défini.

EIP : Workflows séquentiels OU parrallèle dans SPS
Il est possible de rajouter un système de workflow en installant WSS (Ce système permet de créer des workflows complexes).
De plus, tout acte de validation est spécifié par notification par mél à l'approbateur. Ce système de notifications intervient au niveau des validations des documents mais il est aussi possible de notifier divers événements sur un dashboard, sur un WebPart ou sur un Workspace. Un exemple de notification envoyée via mél est disponible en annexe.

Catégorisation, type de documents, mots clés

L'administrateur a la possibilité de créer des catégories qui permettent à l'utilisateur un accès à un document donc à de l'information beaucoup plus rapide et plus facile.
Lors de la création sur le portail d'un document, il est possible pour un utilisateur en plus de le catégoriser, de lui spécifier un type et des mots clés.

Recherche

Au sein de SPS, la notion de recherche est très importante. En fait, elle est basée sur plusieurs technologies. Il est possible d'indexer le contenu du portail pour accroître la rapidité et le rendement de la recherche. SPS étant basé sur la technologie Web Storage, il est également possible de faire des recherches en utilisant la syntaxe SQL à quelques différences près (on ne recherche plus dans une table mais dans un répertoire de la technologie Web Storage, les conditions ne sont plus sur des champs mais des mots-clés et les résultats ne sont plus des lignes de données mais des documents).

EIP : le webpart de recherche

Abonnement

Un module de souscription (ou abonnement) est installé par défaut avec SPS. Il permet à un utilisateur de s'abonner à une information quelconque. Cela lui permettra d'accéder instantanément à cette information et d'être averti de toute modification du contenu de l'information auquel il est abonné. Cette information peut être des documents, une application, des news…

EIP : le webpart d'abonnement

Discussions

Le module de discussion en temps réel n'est pas installé par défaut avec SPS. Pour y avoir accès, il est nécessaire d'installer le produit Instant Messaging fourni avec le serveur Exchange 2000.
Cependant, SharePoint permet de laisser des messages sur les documents du portail.

EIP : le webpart de discussion

Cycle de vie des documents

Pour résumer, voici le cycle de vie des documents avec les notifications (dans le cas de la mise en place d'une approbation ou d'un abonnement).

EIP : Cycle de vie des documents

Personnisation

Lors du choix d'un portail d'entreprise, un critère important étant la possibilité de modifier le produit de portail afin de le remodeler à l'image de l'entreprise et d'accomplir toutes les traitements spécifiques. il est possible par exemple de modifier les méls de notification de changement d'un document (lors d'un abonnement) car le template est accessible au format ASP. Il est aussi possible de récupérer toutes les discussions faites sur les documents sous forme de fichiers eml. Ci dessous est affiché le contenu du fichier C:\Program Files\SharepointPortalServer\Data\FTData\SharePointPortalServer\Config\tsenu.xml qui est le thésaurus de SPS stocké au format XML. On a pu ainsi facilement modifier ce dernier en rajoutant les entrées Co2Info et Co2Informatique.

<XML ID="Tahoe Thesaurus">
  <thesaurus xmlns="x-schema:tsSchema.xml">
    <expansion>
	    <sub weight="0.8">Internet Explorer</sub>
	    <sub weight="0.2">IE</sub>
	    <sub weight="0.9">IE5</sub>
    </expansion>
    <expansion>
	    <sub>Co2Info</sub>
	    <sub>Co2Informatique</sub>
    </expansion> 		
  </thesaurus>
</XML>

Le prix

Le serveur SPS avec 5 licences clients est à 5780 € ramené à 2315 € en version éducation. Muni de 25 licences, il faudra compter 7455 €.
En version éducation, il est possible d'acheter le serveur pour 1298 € puis 23 € par licences clientes.

Conclusion

Ce produit est très intéressant et peut être utilisé sur plusieurs services d'un grand groupe, afin de leur donner un outil qu'ils pourront facilement gérer et qui possèdera des fonctions spécidfiques performantes.
Dans le cas d'une utilisation à plus grande échelle, il faudra certainemenent une GED et un workflow plus complets avec des outils appropriés comme Documentum et W4. Dans ce cas, un portail d'intégration d'applications sera plus adapté. Cependant, ce type de portail, dont la gestion sera centralisée au niveau du groupe sera beaucoup moins souple et échappera au responsable informatique des petits services. De plus, sa mise en place sera une phase beaucoup plus longue que le portail de type départemental SPS.

v1.2  
Dernière MAJ : 18 février 2002  
Contact : Cédric Carbone  


Les articles du Forum traitant du même sujet
N'hésitez pas à faire un commentaire sur ce sujet en cliquant sur le lien suivant

Warning: mysql_connect() [function.mysql-connect]: Unknown MySQL server host 'f.carbone.sql.free.fr' (1) in /mnt/105/sdb/c/b/f.carbone/conn.co2 on line 7
Impossible de se connecter à MySQL