In 2007 heeft gemeente Vught de keuze gemaakt voor Drupal als content management systeem voor zowel de internet als intranet website. Drupal is een krachtig, flexibel en modulair open source pakket. Gemeente Vught heeft een aantal modules, zoals een publiek raadsinformatiesysteem (RIS) en Digitaal Loket, laten ontwikkelen. Deze modules zijn op hun beurt ook weer als open source software voor andere gemeenten en overheden beschikbaar. Op deze pagina vindt u een korte beschrijving van de aanpak van gemeente Vught en de modules die specifiek voor de gemeentelijke overheid zijn ontwikkeld.
Heeft u vragen of wilt u een keer in Vught komen kijken naar hoe het systeem in de praktijk werkt, neem dan contact op met:
Frank Schaap
Adviseur nieuwe media
073 – 6580 680
f.schaap@vught.nl
Er zijn meerdere open source content management systemen, zoals Typo3 of Hippo, waarmee een gemeente haar online informatievoorziening en dienstverlening kan realiseren. Waarom heeft gemeente Vught dan gekozen voor Drupal op een moment dat daar in Nederland nog geen andere gemeenten gebruik van maakten?
Centraal in die keuze staat de overweging dat gemeente Vught op een moderne, flexibele manier informatie wil beheren en geen losse webpagina’s of andere documenten in een boomstructuur wil plaatsen. Een website opgebouwd met een ‘traditionele’ boom- of folderstructuur beperkt op verschillende manieren de ontsluiting van de informatie. Juist het kunnen vinden van informatie is belangrijk, niet het kunnen aanbieden. Als je in een traditionele boomstructuur een stuk informatie op één bepaalde plek onderbrengt, dan is dat stuk informatie maar op één plek op de website terug te vinden en meestal via maar één specifieke route te bereiken.
In plaats daarvan wil gemeente Vught brokken “webinformatie” beheren, zoals wij documenten in ons document management systeem beheren. Voor ieder brok informatie worden verschillende metadatavelden (zoals type document, categorie, eigenaar, datum, etc.) al dan niet automatisch gevuld en op basis van deze gegevens worden die brokken informatie op verschillende plekken op de website getoond. De gebruiker kan dan de betreffende informatie op meerdere manieren op meerdere plaatsen terugvinden, terwijl toch wordt gewaarborgd dat de gemeente dit brokje informatie maar één keer hoeft in te voeren en maar één keer hoeft te beheren.
Voorbeeld
Het publieke Raadsinformatiesysteem (RIS) is een goed voorbeeld van deze manier van denken. Achter het RIS zit geen boomstructuur en de pagina’s worden dynamisch opgebouwd op basis van criteria en zoekwoorden die de gebruiker zelf invult.
Standaard toont het RIS een lijst van alle vergaderingen, schriftelijke vragen en raadsinformatiebrieven, waarbij de meest recente onderdelen automatisch bovenaan verschijnen. Door nu een bepaalde categorie te kiezen (bijvoorbeeld “Raad”) verschijnen alleen nog alle raadsvergaderingen. Vervolgens kan er nog verder gefilterd worden op bijvoorbeeld datum of zoekterm. Op deze manier vindt de gebruiker snel die informatie die zij/hij nodig heeft. Bovendien hoeft de gebruiker geen ingewikkelde boomstructuur te kunnen navigeren om bij het stukje informatie te komen dat zij/hij zoekt.
De flexibiliteit van Drupal maakt het voor de beheerders (de griffie) mogelijk om een voorstel dat in de commissievergadering aan bod is geweest “door te zetten” naar een bijvoorbeeld een raadsvergadering of opnieuw in een andere commissievergadering te agenderen. Bij het doorzetten kunnen de bijgesloten stukken bijgewerkt of uitgebreid worden met een amendement, terwijl het systeem daarbij automatisch een link genereert tussen het agendapunt op de commissievergadering en het agendapunt op de raadsvergadering. Op die manier blijft altijd inzichtelijk welke route een voorstel heeft gevolgd en welke versie van het voorstel in welke vergadering is behandeld.
De rest van de website is volgens hetzelfde principe opgebouwd, maar daar heeft de gebruiker (vooralsnog) minder mogelijkheden om zelf de informatie dynamisch te filteren. De meeste pagina’s, zoals de Nieuwsberichten, zijn een vast gedefinieerde ‘view’ die een set berichten toont op basis van de metadata (content type = nieuwsbericht).
Zoals hierboven beschreven, was voor gemeente Vught de belangrijkste eigenschap van Drupal dat op een professionele manier een informatiearchitectuur ingericht kan worden. Alle gereedschap hiervoor zit standaard in de Drupal kern: content typen, taxonomie (categorieën systeem), metadata en een flexibel template systeem voor het genereren van webpagina’s.
Daarnaast was voor gemeente Vught van belang dat het Drupal systeem zelf zeer flexibel en modulair is. Drupal wordt gekenmerkt door een kleine, robuuste kern waarvan elke gewenste functionaliteit eenvoudig door een module uitgebreid of veranderd kan worden. Het blijft mogelijk om (veiligheids)updates van het Drupal project direct en zonder aanpassing op de installatie van Vught door te voeren, omdat de modulaire opzet er voor zorgt dat alle functionaliteit gewaarborgd blijft. Zo blijft de Drupal installatie altijd veilig en up-to-date én wordt veel test- en maatwerk buiten de deur gehouden.
Voorbeeld
Het inlogsysteem van Drupal is modulair opgezet. Ongeacht welk intern of extern systeem de authenticatie van de gebruiker verzorgt, voor alle functionaliteit binnen de Drupal installatie is op elk moment duidelijk of een gebruiker wel of niet is ingelogd en welke rechten deze gebruiker dan heeft.
Voor intranet hebben wij het standaard inlogsysteem vervangen door een “single sign on” module voor onze Novell eDirectory omgeving. Deze module bevat slechts 14 regels code waarmee de eDirectory authenticatie transparant voor de Drupal installatie wordt overgenomen.
Voor internet daarentegen hebben wij het standaard inlogsysteem vervangen door een DigiD module, zodat burgers veilig in kunnen loggen op het Digitaal Loket. Deze beide inlogsystemen integreren naadloos in het Drupal systeem en eenmaal ingelogd kan de gebruiker zeer fijnmazig allerlei functionaliteit of informatie aangeboden worden.
Het belangrijkste criterium voor selectie van het CMS was voor gemeente Vught een goede en toekomstbestendige ondersteuning van de interne en externe informatievoorziening en dienstverlening. Er was echter een sterke voorkeur voor een open source oplossing om niet opnieuw afhankelijk te zijn van één enkele leverancier. Op basis van de functionele vereisten voor het systeem heeft de gemeente een keuze voor Drupal gemaakt en vervolgens door middel van een aanbesteding daar de juiste support- en ontwikkelpartij bij gezocht.
In de aanbesteding heeft gemeente Vught aangegeven dat de hele Drupal installatie als open source software opgeleverd moet worden. Ook de broncode van de maatwerk modules die door de ontwikkelaar worden gemaakt, zoals de DigiD authenticatie, is dus voor gemeente Vught beschikbaar. Omdat alle modules zijn ontwikkeld volgens de standaarden van het Drupal project is er voor gemeente Vught geen andere afhankelijkheid van de ontwikkelaar, behalve dan natuurlijk de contractuele verplichtingen. Op enig moment kan gemeente Vught een nieuwe aanbesteding uitschrijven om een nieuwe support- en ontwikkelpartij voor de bestaande Drupal installatie in te schakelen. Ook het ontwikkelen van nieuwe functionaliteit in een module zou apart aanbesteed kunnen worden.
Het is voor gemeenten (en andere overheden) van belang om zich te realiseren dat het inzetten van open source een andere grondhouding vereist. Voor sommige applicaties is dat niet nodig of het nou om gesloten of open source software gaat: als de applicatie precies de functionaliteit biedt die nodig is, dan kan die applicatie gewoon ingezet worden. Maar als het gaat om een applicatie of oplossing die door middel van de inrichting ervan op de gezochte functionaliteit toegesneden moet worden, zoals een content management systeem, dan is dat met een open source systeem anders dan met een gesloten oplossing.
Met een open source oplossing ben je niet gebonden aan wat een leverancier je aanbiedt. Als iets mist of niet werkt zoals je het wilt, kun je het zelf door een ontwikkelaar laten wijzigen, zonder hierbij afhankelijk te zijn van de goodwill van de eigenaar van de broncode. Dit biedt veel vrijheid, maar betekent ook een grote verantwoordelijkheid. In plaats van een leverancier die een afweging maakt tussen de wensen van zijn klanten en de belangen van zijn bedrijf, moet de opdrachtgever nu zelf een afweging maken tussen het belang van een eigen ontwikkeling en de belangen van het open source project als geheel. Dat doe je als opdrachtgever natuurlijk samen met de ontwikkelaar, maar als opdrachtgever moet je goed aan kunnen geven binnen welke kaders ontwikkeld moet worden.
Belangrijkste advies daarbij is om goed uit te zoeken hoe de open source gemeenschap achter een open source systeem, zoals Drupal, werkt: wat zijn de kernwaarden van de ontwikkelaarsgemeenschap en hoe kun je daar als opdrachtgever bij aansluiten? Voor Vught was dat reden om in de aanbesteding op te nemen dat de ontwikkelaar absoluut geen wijzigingen aan de “Drupal kern” mag doen en alleen maar functionaliteit toe mag voegen volgens de “Drupal regels” in de vorm van een module. Op die manier wordt namelijk de interoperabiliteit gewaarborgd tussen de installatie van gemeente Vught en de updates van de Drupal kern door de Drupal gemeenschap. Bovendien waarborgen we op deze manier dat nieuwe functionaliteit in een nieuwe versie van Drupal met minimale aanpassingen ook voor gemeente Vught beschikbaar komt.
Het tweede belangrijke advies is om vooraf goed inzicht te krijgen in de omvang en activiteit van de open source gemeenschap rond een pakket of systeem. Wordt er actief ontwikkeld? Door hoeveel ontwikkelaars? Hoe vindt de samenwerking plaats en wat is de rol van de projectleider(s)? Wat voor soort bedrijven en organisaties zetten het pakket of systeem in en wat voor soort bedrijven bieden support en ontwikkeling aan? Aan de antwoorden op dit soort vragen kan de inzetbaarheid van een pakket of systeem in de eigen organisatie beoordeeld worden, onafhankelijk van een specifieke leverancier.
Verder is Drupal natuurlijk uit te breiden met alle functionaliteit die in de 2370 door de Drupal gemeenschap bijgedragen modules te vinden is (link naar het moduleoverzicht op Drupal.org, bovenstaande link biedt een beter doorzoekbaar overzicht).
Gemeente Vught maakt bijvoorbeeld gebruik van de standaard modules: Taxonomy Access, FlashVideo, Localization, Printer Friendly Pages, WYSIWYG editor en Webforms.