M4 platform

Een M4-platform is een op maat gemaakte IT-oplossing met respect voor de zelfbeschikking van de gebruikers. De vooruitgang die een gebruiker maakt doorheen een M4-platform bestaat in grote lijnen uit drie stappen:

  1. Aan boord brengen van nieuwe gebruikers
  2. Versterken van hun betrokkenheid
  3. Uitdrukken van respect en waardering voor de gebruiker... ↺ 2.

Het tijdperk waarin alles en iedereen online komt en sociale media een steeds belangrijkere positie innemen in de communicatie, zijn statische websites onvoldoende om gebruikers te boeien. Zelfs termen als 'interactief' en 'reactief' kunnen de verwachtingen van mensen niet meer waarmaken.

Mensen zoeken naar een 'goed gevoel', naar totaalervaringen en UX (user experience) en naar iets kunnen verwezenlijken, of een verschil maken. Engagement, zinvolle keuzes en competentie zijn kernwoorden in de zelfbeschikkingstheorie: iets kunnen of betekenen, daar zelf voor kiezen, in een sociale context zijn fundamenteel voor het concept 'plezier'. En wat is er mis met plezier? Niks, toch? Beter zelfs, plezier zorgt voor een intrinsieke motivatie om regelmatiger langs te komen, of om langer te blijven...

Een goed uitgewerkt platform verhoogt het plezier van gebruikers. De gebruiker staat centraal, zonder de eigen doelstellingen uit het oog te verliezen. Het platform vergroot van het engagement en de verbondenheid met anderen, met het 'collectieve goed', maar vooral met jouw organisatie. Het is op jouw IT-platform dat gebruikers zinvolle keuzes kunnen maken en uitgedaagd worden. Ze worden gewaardeerd voor de moeite en tijd die ze nemen om de mogelijkheden van het platform te ontdekken... Er ontstaat een intrinsieke motivatie om terug te keren, op zoek naar meer.
Dat is het doel van een M4-platform: ervoor zorgen dat gebruikers tijd willen doorbrengen op jouw platform, omdat het een plezier is om dat te doen.

DSDM!?

Agile methodologie had even goed conversationele methodologie kunnen heten – en zo was het ook voor het officieel agile werd gedoopt. De continue conversatie en vlugge terugkoppeling is van primair belang.

  1. prioriteren van issues, en het regelmatig herzien hiervan ↦ de belangrijkste taken worden eerst afgewerkt,
  2. timeboxing ↦ minimalisatie van het risico dat jouw project niet binnen de vooropgestelde tijd en het vooraf vastgelegde budget is afgewerkt,
  3. kwaliteit ↦ continu testen en evalueren van de software staat centraal.

Projecten moeten verschillende eisen afwegen, waarbij de vier meest voorkomende zijn: tijd, kost, kwaliteit en scope (features, functionaliteit). In een ideale wereld waar bij het begin van het project alles vast staat en eenduidig gekend en begrepen is, organisatie-behoeften niet wijzigen, en niks verkeerd gaat, is dat mogelijk. We leven helaas in een niet-ideale wereld. De vraag die gesteld wordt is: Als er een probleem opduikt of we een wijziging willen doorvoeren, wat beschermen we (vast) en waarover kunnen we, indien nodig, negotiëren (variabel)?

Bij DSDM staan de kwaliteit, kost en tijd vast bij aanvang van het project. Deze worden gezamenlijk vastgelegd op het einde van de eerste fase van het project. De grote variabele is de functionaliteit of de scope van het project. De wijzigende scope is meteen ook hét grote verschil met klassiek projectbeheer.

Tradidionteel vs DSDM

Kernwaarden

Met de bedoeling om het ontwikkelingsproces zo vlot mogelijk te laten verlopen, wordt de DSDM-werkwijze gevolgd – één van de vele agile methodologieën voor software-ontwikkeling. De kernwaarden van agile software-ontwikkeling zijn:

Individuen en hun onderlinge interacties > Processen en tools
Functionerende software > Uitgebreide, allesomvattende documentatie
Samenwerking met de klant > Contractonderhandelingen
Inspelen op verandering > Volgen van een gedetailleerd plan

De items aan de rechterkant hebben zeker hun nut en belang... alleen, de items aan de linkerkant worden hoge gewaardeerd.

Dankzij deze aanpak:

  • ben jij sterk betrokken bij het ontwikkelings­proces;

  • heb jij controle over het ontwikkelingsproces;

  • is er een hoge mate van transparantiejij weet altijd de huidige status, hoeveel tijd er nodig was om iets te implementeren en welke problemen er opdoken;

  • is er elke één tot maximaal twee weken een bespreking van het verdere verloop op basis van een demo;

  • is er de nodige flexibiliteit om wijzigingen in vereisten of wensen door te voeren.

Timeboxing

In grote lijnen bevat de uitvoering van een project een aantal stappen:

  1. Eisen en wensenjij bepaalt wat je wilt;
  2. Issues ↦ vertaling van jouw wensen naar technische issues;
  3. Backlog ↦ oplijsten van alle issues in een register;
  4. Uitbreiding-planning ↦ prioriteren van de issues;
  5. Opvolgen voortgang ↦ afwerking van de issues volgens prioriteit, waarbij jij continu inzicht hebt in de voortgang, en commentaren en wijzigingen kunt doorvoeren op het DSDM-dashboard;
  6. Retrospectie ↦ besperking van de voortgang en huidige status aan de hand van een demo;
    ↺ 4, of
  7. Lancering ↦ de applicatie wordt gelanceerd;
    Optioneel ↺ 1

Om het project tot een goed einde te brengen, wordt elk project opgesplitst in periodes van één tot maximaal vier weken. Binnen die periodes wordt het systeem incrementeel uitgebreid in een zogenaamde aanwasperiodes (Engels: 'Project Increments'). Op het eind van elke aanwas wordt een demo gegeven, gevolgd door overleg. Dit luidt meteen het begin in van een nieuwe aanwas-periode.

Binnen elke aanwasperiode is er een kortere periode bepaald waarbinnen taken afgewerkt worden. Deze fijn-granulaire vorm van timeboxing zorgt ervoor dat focus behouden blijft op kleine, duidelijk afgelijnde taken.

Transparantie

Transparantie is een sleutelfactor voor het succes van een IT-project. Daarom krijg jij realtime toegang tot de broncode, project management tools en tijdsbesteding. De belangrijkste registratietool die voorzien wordt is het agile dashboard, uitgebreid met een facturatie-dashboard en eventueel een task management tool. Op deze manier kun jij op elk moment toetsen en controleren of de uitvoer van het project volgens verwachting verloopt.

Communicatie

Het belang van vlotte communicatie van de methodologie is eerder al aangehaald: er is nood aan continue conversatie tussen jou en M4. Er wordt zo direct mogelijk gecommuniceerd. In de mate dat de mogelijkheid bestaat, verkiest M4 ervoor om regelmatig te kunnen werken binnen een straal van 5m van de projectbeheerder.

Voorkeur communicatie

Voor dagelijkse communicatie gebruikt M4 diverse communicatie- en samenwerkingstools, zoals google hangouts, slack en/of mattermost. Indien gewenst wordt het taakbeheer verder uitgebreid met asana of andere tools, die eventueel al aanwezig zijn binnen jouw organisatie.

Beveiliging en privacy

M4 hecht heel veel belang aan beveiliging van data en privacy van gebruikers. In het ontwerp zit dan ook een heel uitgebreide authenticatie en autorisatie, indien van toepassing. Dit houdt onder meer in: fraude detectie en matching van gebruikers en paswoorden tegen een wereldwijde database van gelekte gegevens.

Bovendien bereidt M4 de applicaties voor op de komende Europese GDPR-regelgeving die op 25 mei 2018 van kracht wordt. Alleen GDPR-compliant online diensten worden gebruikt.

Kwaliteitsgarantie

M4 waakt over een hoge inherente technische kwaliteit van de geleverde software-artefacten. Er is op elk moment een stabiele, release-klare versie op de zogenaamde master branch. Nieuwe wensen en eisen worden apart van deze branch ontwikkelt.

Het samenvoegen van nieuwe features gebeurt pas na het slagen van automatische stabiliteits- en performantie-testen, code kwaliteit checks, peer reviews en manuele testen. Op geen enkel moment wordt iets op de master branch geplaatst dat niet aan de gewenste technische kwaliteitseisen voldoet.

Voor de ontwikkeling van web applicaties gaat ervan uit dat er een moderne browser wordt gebruikt. De meest populaire browsers, waaronder Chrome en Firefox geven geen enkel probleem. De versie van Internet Explorer is bij voorkeur hoger dan IE10, en absoluut minimaal IE9. Ondersteuning voor lagere versies van IE kan extra werk met zich meebrengen.

Bij de ontwikkeling van server-applicaties is er voor zowel de server als de applicatie zelf 24/7 monitoring en logging. Jij krijgt, indien gewenst, volledige inzage in deze bij M4 gehoste monitoring en logging.

Eerlijke facturatie

In het eerder beschreven coöperatief model heb jij controle over het ontwikkelingsproces en kan jij beslissen wanneer de applicatie voldoende klaar is voor productie of wanneer de werken moeten worden stopgezet. Uitbreidingen kunnen op elk moment, ook na het in productie gaan van de applicatie.

Het model laat toe een hoge mate van flexibiliteit te behouden om eventuele wensen of eisen te wijzigen, ongeplande activiteiten toe te voegen of bijkomende resources te verhogen, of te verlagen, om zo kost en tijd te optimaliseren. Binnen dergelijk model is het risico van een product te krijgen dat niet voldoet aan de eisen minimaal. Elk detail kan op basis van de laatste informatie over de applicatie aangepast worden.

De berekening gebeurt op basis van een vast uurtarief, zonder verborgen of bijkomende kosten. Dit uurtarief is inclusief BTW (indien toepasbaar), project management, infrastructuur-kosten (zoals hosting servers) en andere overhead-kosten.

De facturatie gebeurt na elke sprint, na goedkeuring op de sprint-meeting, te betalen voor de volgende sprint-meeting.

Design en ontwerp

Het technisch ontwerp en de engineering gebeurt op een kwantificeerbaar modulaire wijze. Verschillende onderdelen zijn los van elkaar te ontwikkelen. Een dergelijk ontwerp heeft initieel een hogere kost, maar

  • verhoogt de onderhoudbaarheid ↦ applicaties blijven up-to-date, ook in een vlug evoluerende omgeving.
  • jij hebt de controle over wie welke modules implementeert ↦ het is mogelijk om onderdelen zelf te implementeren, of dit door derden te laten doen.

Service en onderhoud

Applicaties worden gedurende de ontwikkeling gehost op infrastructuur beheerd door M4. Bij voorkeur staat M4 zelf in voor de hosting van de applicaties na oplevering. Als applicaties op andere infrastructuur moeten geplaatst worden, kan dat bijkomende kosten met zich meebrengen.

Er wordt zoveel mogelijk gebruik gemaakt van online diensten. In geen geval heeft M4 als doel om bestaande diensten te heruitvinden. Het gebruik van dergelijke 'hosted services' wordt in samenspraak met jou gekozen. Deze kunnen een maandelijkse kost met zich meebrengen.

Om up-to-date te blijven, dienen applicaties continu bijgewerkt en onderhouden te worden. Indien gewenst, biedt M4 een onderhoudscontract aan, waarbij M4 zich ertoe verbind om:

  • bestaande modules bij te werken en nieuwe technologieën in beperkte mate te implementeren,
  • lay-out en stijl te moderniseren (exclusief het ontwerp en implementatie van een nieuw thema's),
  • privacy en beveiliging aan te passen volgens de goede praktijk van het moment.

Grote wijzigingen worden uitgevoerd op materiaal & tijd-basis (in regie).