Download dit artikel als pdf

 

Het Web Content Management Systeem van Microsoft Office SharePoint Server (MOSS) 2007  is een krachtig Content Management Systeem, maar kent enkele onbegrijpelijke beperkingen. Ter illustratie:  op de site wssdemo.com staat een overzicht van meer dan duizend internet sites gebaseerd op SharePoint. Niet één daarvan levert valide HTML, laat staan 100% strict XMTML. Door een nieuwe techniek, ontwikkeld door Macaw, zal dat binnenkort veranderen…

 

Eén trend is het afgelopen jaar steeds duidelijker geworden: websites zullen nu en in de toekomst, gebruik maken van HTML standaarden. Flash en Silverlight zijn goed voor games en video, maar zullen de rol van HTML niet gaan overnemen. Want vrijwel ieder user interface ontwerp en gebruikersinteractie kan tegenwoordig worden gerealiseerd in “gewoon” HTML. Dat heeft veel voordelen:

  • Hogere ranking bij search engines
  • Toegankelijkheid voor gebruikers met een beperking of handicap
  • Onafhankelijkheid van leveranciers, toekomstvastheid
  • Open voor grote diversiteit (o.a. mobiele) platforms

Een tweede trend is al langer zichtbaar: steeds meer bedrijven en organisaties omarmen het SharePoint platform. Microsoft Office SharePoint Server (MOSS) 2007 verovert in hoog tempo een plaats als hét webplatform voor intranetportals, documentbeheer en samenwerking. MOSS 2007 is het snelst groeiende server product dat Microsoft ooit heeft gehad: het groeit sneller dan SQL Server en Exchange (ook bepaald niet onsuccesvol) ooit deden. MOSS 2007 biedt ook functionaliteit voor publieke websites, met de feature Web Content Management (WCM). Gezien het grote succes van het MOSS 2007 platform liggen de voordelen van MOSS 2007 WCM voor de hand:

  • Één platform voor zowel interne als externe sites levert besparingen op in kosten, benodigde kennis, beheer en infrastructuur.
  • Content kan worden ingevoerd binnen het intranet en dan worden “uitgerold” naar het internet.
  • Een MOSS 2007 WCM site profiteert aan de “achterkant” van de kracht van het SharePoint platform en koppelt flexibiliteit aan rijke functionaliteit en grote schaalbaarheid.
  • Er is een groot ecosysteem rond MOSS 2007 waarin wereldwijd vele bedrijven actief zijn die aanvullende software en diensten aanbieden.

Het probleem
Helaas maakte Microsoft bij de ontwikkeling van het SharePoint platform enkele keuzes die nadelig doorwerken in de WCM functionaliteit. Ten opzichte van “pure” Content Management systemen heeft MOSS 2007 namelijk een paar flinke nadelen:

  • SharePoint is geoptimaliseerd voor intern gebruik. De kwaliteit van de HTML, CSS en JavaScript kreeg tijdens de ontwikkeling weinig aandacht, en is daardoor laag. Dat heeft een negatieve invloed op de ranking van SharePoint WCM sites in search engines. Ook eisen met betrekking tot toegankelijkheid (zoals drempelvrij) en toepassing van webstandaarden zijn vaak moeilijk te realiseren.
  • Branding en styling van een SharePoint website, zonder de “in-place” edit functionaliteit te breken, is om diverse redenen erg moeilijk.
  • De formulieren functionaliteit is prima zolang deze standaard gebruikt wordt. Maar wanneer custom styling en afwijkende interactiepatronen gevraagd worden dan zijn de mogelijkheden ontoereikend.

Met SharePoint 2010 zal Microsoft naar verwach-ting een deel van deze issues oplossen. Maar er zijn ook problemen die het gevolg zijn van ontwerpkeuzes (zoals de in-place edit functio-naliteit) of te wijten zijn aan onderliggende technologie (ASP.NET). Deze issues zullen veel lastiger op te lossen zijn.

 

Nieuwe aanpak gevraagd
Macaw heeft de afgelopen jaren veel SharePoint WCM sites ontwikkeld en kent de voor- en nadelen van SharePoint WCM dan ook goed. Het is een krachtig platform, maar soms blijken simpele wensen onhaalbaar. Macaw heeft de afgelopen tijd intensief gewerkt aan de ontwikkeling van een structurele oplossing voor de “MOSS 2007 WCM uitdaging”. Deze oplossing is nu beschikbaar.

 

HTML: weg met de abstractie!
Een oorspronkelijk doel van ASP.NET was het abstraheren van HTML middels Controls. De gedachte hierachter is dat programmeurs geen kennis hoeven te hebben van HTML en Javascript, maar gebruik kunnen maken van kant-en-klare componenten zoals een datagrid, kalender en menu. Dankzij deze technologie konden, meer dan tien jaar geleden, vele Visual Basic programmeurs een snelle overstap maken naar Web Developer. Maar de technologie heeft zijn doel overleefd en is op dit vlak achterhaald: zonder grip op HTML is het niet goed mogelijk een scheiding aan te brengen tussen content, vormgeving en gedrag. Zonder goede HTML geen hoge pagerank in zoekmachines. Microsoft ziet dit ook en heeft daarom recent het ASP.NET MVC framework geïntroduceerd. Maar helaas: SharePoint is daar niet op gebaseerd en ook de 2010 versie zal deze stap niet zetten.

 

De oude aanpak voor dit probleem was om MOSS 2007 te “bewegen” zo goed mogelijke HTML te genereren, door toepassing van een arsenaal van technieken, zoals control adapters, custom controls, output filtering met reguliere expressies en corrigerende stylesheets. Maar met deze aanpak blijft het moeilijk de “voorkant” er goed uit te laten zien en tegelijkertijd de “achterkant” werkend te houden.

 

Macaw heeft nu een geheel nieuwe techniek ontwikkeld die een volledige scheiding maakt tussen de voorkant en de achterkant van een MOSS 2007 WCM site. Deze techniek maakt het mogelijk om ieder gewenst design te realiseren, zonder dat enige SharePoint functionaliteit daardoor wordt beperkt. Met de juiste master-pages, page-layouts en templated controls is het nu voor het eerst haalbaar - eenvoudig zelfs - om XHTML compliant websites te ontwikkelen op het MOSS 2007 platform!

 

Web Formulieren: MVC wijst de weg
Een tweede uitdaging die wij aanpakten, was de ontwikkeling van een betere oplossing voor web formulieren op publieke SharePoint sites. Ook formulieren frameworks zijn doorgeschoten in de abstractie van onderliggende technologie, met als gevolg dat het onmogelijk wordt om moderne Ajax technieken te benutten op de plaats waar ze het meeste rendement opleveren: in webformulieren zoals de check-out van webshops of in het online afsluiten van verzekeringen.

Macaw ontwikkelde op basis van de nieuwe inzichten een framework om moderne, interactieve en toegankelijke formulieren te ontwerpen en ontwikkelen binnen SharePoint. Dit framework heeft veel overeenkomsten met het ASP.NET MVC framework en vermijdt onnodige abstractie, waardoor vormgeving en interactie geheel vrij in te vullen zijn. Formulierdata kan zowel worden gekoppeld aan SharePoint lijsten als aan willekeurige backend systemen zoals SAP.

 

Deployment: zonder vertraging naar de live site
Het laatste onderdeel van onze nieuwe aanpak voor SharePoint WCM is deployment. Het ver-plaatsen van een SharePoint oplossing vanaf een ontwikkelomgeving naar de live site (eventueel via test en/of acceptatiestadia) is altijd moeilijk geweest. SharePoint kent twee deployment mechanismen: Solution Packages en Content Deployment. Onze oplossing gebruikt beide technieken complementair: Solution Packages worden gebruikt voor systeembrede frameworks en herbruikbare componenten. De installatie van Solution Packages wordt uitgevoerd door de IT beheer organisatie verantwoordelijk voor de SharePoint site: dit is het gebruikelijke deployment proces.

 

Content Deployment, een business gedreven proces, wordt gebruikt voor de uitrol van alle andere site onderdelen zoals teksten, afbeeldingen en media. Maar ook Formulieren kunnen worden uitgerold via Content Deployment, wat een grote versnelling meebrengt voor organisaties die op hun site gebruik maken van veel verschillende formulieren.

 

Resultaat
Met de ontwikkeling van een nieuwe techniek heeft Macaw een belangrijke horde genomen en wordt het mogelijk publieke websites op basis van MOSS 2007 te ontwikkelen die voldoen aan de hoogste normen. Toegankelijkheid, browser compatibiliteit, juiste toepassing van web standaarden en volledig gebruik van client-side javascript en control libraries zijn wensen die wij nu eenvoudig kunnen leveren in WCM implementaties. De nieuwe aanpak is onderdeel van de Macaw Solutions Factory, een door Macaw ontwikkeld systeem om software projecten die gebruik maken van Microsoft server technologieën sneller en beter uit te kunnen voeren, en zal door Macaw naar verwachting in alle nieuwe MOSS 2007 WCM implementaties worden toegepast.