<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tech Archieven - agile4all</title>
	<atom:link href="https://www.agile4all.nl/category/tech/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.agile4all.nl/category/tech/</link>
	<description>agile learning platform</description>
	<lastBuildDate>Thu, 18 May 2023 11:37:57 +0000</lastBuildDate>
	<language>nl-NL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.agile4all.nl/wp-content/uploads/2018/11/cropped-umbrellas-1281751_19201-2-32x32.jpg</url>
	<title>Tech Archieven - agile4all</title>
	<link>https://www.agile4all.nl/category/tech/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Wat is Team Topologies?</title>
		<link>https://www.agile4all.nl/wat-is-team-topologies/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wat-is-team-topologies</link>
		
		<dc:creator><![CDATA[Peter]]></dc:creator>
		<pubDate>Thu, 18 May 2023 11:37:56 +0000</pubDate>
				<category><![CDATA[boek review]]></category>
		<category><![CDATA[Intermediate]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://www.agile4all.nl/?p=6605</guid>

					<description><![CDATA[<p><span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">12</span> <span class="rt-label rt-postfix">min.</span></span> Team Topologies is een framework dat is gebaseerd op het idee dat verschillende soorten teams nodig zijn om verschillende soorten problemen bij softwareontwikkeling aan te pakken. Op een hoger abstractie niveau gaat Team Topologies over: fast flow, snelle feedback, team interactie, evolutie van de organisatie, team cognitive load en omgaan ...</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/wat-is-team-topologies/">Wat is Team Topologies?</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></description>
										<content:encoded><![CDATA[<span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">12</span> <span class="rt-label rt-postfix">min.</span></span>
<p>Team Topologies is een framework dat is gebaseerd op het idee dat verschillende soorten teams nodig zijn om verschillende soorten problemen bij softwareontwikkeling aan te pakken.</p>



<p>Op een hoger abstractie niveau gaat Team Topologies over: fast flow, snelle feedback, team interactie, evolutie van de organisatie, team cognitive load en omgaan met de huidige belemmeringen in de organisatie.</p>



<p>De bedenkers beschrijven Team Topologies als volgt: Vier fundamentele teamtypen en drie kernteam interactiemodi combineren met bewustzijn van de wet van Conway, cognitieve belasting van het team en responsieve organisatie-evolutie om een ​​no-nonsense, teamvriendelijke, humanistische benadering te definiëren voor het bouwen en gebruiken van softwaresystemen.</p>



<p>Laten we dit eens verder uitwerken. In dit artikel ligt de focus op typologieën, interactiemodi en gedrag. </p>



<h2 class="wp-block-heading" id="h-het-boek-team-topologies">Het boek Team Topologies</h2>


<div class="wp-block-image">
<figure class="alignright size-full is-resized"><img decoding="async" src="https://www.agile4all.nl/wp-content/uploads/2023/05/Cover-Boek-Team-Topologies-Matthew-Skelton-and-Manuel-Pais-.jpeg" alt="Organizing business and technology for fast flow" class="wp-image-6607" width="109" height="163" srcset="https://www.agile4all.nl/wp-content/uploads/2023/05/Cover-Boek-Team-Topologies-Matthew-Skelton-and-Manuel-Pais-.jpeg 550w, https://www.agile4all.nl/wp-content/uploads/2023/05/Cover-Boek-Team-Topologies-Matthew-Skelton-and-Manuel-Pais--200x300.jpeg 200w, https://www.agile4all.nl/wp-content/uploads/2023/05/Cover-Boek-Team-Topologies-Matthew-Skelton-and-Manuel-Pais--100x150.jpeg 100w" sizes="(max-width: 109px) 100vw, 109px" /></figure></div>


<p>Het boek ‘Team Topologies, Organizing business and technology for fast flow&#8217;  van  Matthew Skelton en Manuel Pais biedt een raamwerk voor het ontwerpen en beheren van teams in organisaties om softwarelevering te verbeteren. Het helpt organisaties bij het ontwerpen en beheren van hun teams op een manier die snellere en effectievere softwarelevering ondersteunt.</p>



<p>Het boek benadrukt het belang van het hebben van de juiste teams om verschillende soorten problemen aan te pakken en bespreekt vier team topologies (hoofd teamtypes): Stream-aligned teams, Enabling teams, Complicated Subsystem teams en Platform-teams.</p>



<p>Skelton en Pais beschrijven dat teams moeten worden ontworpen rondom de interacties die ze hebben met andere teams en systemen in de organisatie, in plaats van simpelweg te worden toegewezen aan een specifiek project of product. Hoe organisaties de structuur van hun teams kunnen optimaliseren en hoe ze de teams kunnen ondersteunen met de juiste tools, processen en culturele veranderingen.</p>



<h3 class="wp-block-heading">Uitdagingen</h3>



<p>Het boek behandelt ook de uitdagingen die vaak voorkomen bij teams, zoals silo&#8217;s, overbelasting van teams, onvoldoende samenwerking en te veel beheersing. Het biedt praktische oplossingen om deze problemen aan te pakken, zoals het invoeren van een &#8217;team-first&#8217; cultuur, het bevorderen van samenwerking en communicatie, het vereenvoudigen van de technologie stack en het bieden van ondersteuning en hulpmiddelen voor teams.</p>



<p>Het boek richt zich ook op de noodzaak van een agile en DevOps-cultuur om teams te ondersteunen bij het sneller en beter leveren van software. Het beschrijft hoe teams kunnen samenwerken met andere teams en belanghebbenden, hoe teams de feedback-lus kunnen sluiten om de software continu te verbeteren en hoe teams hun prestaties kunnen meten en verbeteren. In het artikel DevOps lees je meer over DevOps.</p>



<p>Ten slotte biedt het boek praktische tips voor het implementeren van de Team Topologies-benadering in een organisatie, zoals het identificeren van het huidige teamontwerp, het definiëren van de gewenste teamstructuur, het ontwikkelen van nieuwe teamvaardigheden en het meten van de prestaties van teams.</p>



<blockquote class="wp-block-quote">
<p class="has-text-align-center has-vivid-cyan-blue-color has-text-color has-medium-font-size">&#8216;Ontwerp een organisatie architectuur om de juiste software architectuur te produceren.&#8217;</p>



<p class="has-text-align-center has-vivid-cyan-blue-color has-text-color has-medium-font-size">Matthew Skelton en Manuel Pais</p>
</blockquote>



<h2 class="wp-block-heading">Evolutie van Team Topologies</h2>



<p>De evolutie van Team Topologies is gestart met de observatie dat de traditionele manier van werken in silo&#8217;s binnen een organisatie niet meer goed werkte in de steeds complexer wordende technologische wereld. In het begin richtte Team Topologies zich voornamelijk op de opzet en inrichting van teams binnen een organisatie om deze complexiteit te kunnen beheersen.</p>



<p>Gaandeweg is Team Topologies verder geëvolueerd naar een meer holistische benadering, waarbij niet alleen gekeken wordt naar de inrichting van teams, maar ook naar de interactie tussen teams en de manier waarop informatie en kennis wordt gedeeld binnen een organisatie. Dit heeft geleid tot meer aandacht voor het belang van een goede architectuur en tooling, die teams in staat stelt om efficiënter en effectiever te werken.</p>



<p>Een andere belangrijke evolutie van Team Topologies is de focus op het beheersen van cognitieve belasting bij teams. Dit is een belangrijk aspect van het werken in complexe omgevingen en kan bijdragen aan het succes van een organisatie.</p>



<p>Ten slotte heeft Team Topologies ook aandacht besteed aan de evolutie van organisaties zelf, van traditionele hiërarchische structuren naar meer platte en wendbare organisaties.</p>



<p>Dit heeft geleid tot aanbevelingen voor het opzetten van teams die meer autonomie hebben en meer beslissingsbevoegdheid, maar ook meer verantwoordelijkheid dragen voor het realiseren van bedrijfsdoelen.</p>



<p>Kortom, de evolutie van Team Topologies heeft geleid tot een meer holistische benadering van het werken in complexe technologische omgevingen, waarbij niet alleen gekeken wordt naar de inrichting van teams, maar ook naar de interactie tussen teams, de architectuur en tooling, en het beheersen van cognitieve belasting bij teams. En deze evolutie is een mooi voorbeeld van Agile werken.</p>



<blockquote class="wp-block-quote has-text-align-center has-vivid-cyan-blue-color has-text-color has-medium-font-size">
<p>There is no single ‘right’ team topology, but several ‘bad’ topologies for any one organisation. </p>
<cite>Matthew Skelton</cite></blockquote>



<h2 class="wp-block-heading">Het basisidee van Team Topologies</h2>



<p>Het basisidee is vrij eenvoudig te verwoorden: richt je op het team en optimaliseer, want high performing teams zijn uiterst effectief. Gebruik daarbij de wet van Conway, hanteer de 4 typologieën, kies de juiste interactiemodus, ontwikkel de topologie door en bekijk de verandering vanuit een (business) organisatie perspectief.</p>



<p>In gewone taal: begin met het team, identificeer de stromen, bepaal het dunst levensvatbare platform, identificeer de mogelijke capaciteitsissues en oefen de teaminteracties.</p>



<p>Onderstaande afbeelding toont de 7 elementen van Team Topologies. Al deze 7 elementen zal je dienen aan te passen of toepassen om belemmeringen om te zetten naar fast flow.</p>



<h2 class="wp-block-heading">Van belemmeringen naar fast flow</h2>



<figure class="wp-block-image size-full"><img decoding="async" fetchpriority="high" width="960" height="540" src="https://www.agile4all.nl/wp-content/uploads/2023/05/team-topologies-van-belemmeringen-naar-fastflow.jpg" alt="7 onderdelen team topologies" class="wp-image-6615" srcset="https://www.agile4all.nl/wp-content/uploads/2023/05/team-topologies-van-belemmeringen-naar-fastflow.jpg 960w, https://www.agile4all.nl/wp-content/uploads/2023/05/team-topologies-van-belemmeringen-naar-fastflow-300x169.jpg 300w, https://www.agile4all.nl/wp-content/uploads/2023/05/team-topologies-van-belemmeringen-naar-fastflow-768x432.jpg 768w, https://www.agile4all.nl/wp-content/uploads/2023/05/team-topologies-van-belemmeringen-naar-fastflow-100x56.jpg 100w, https://www.agile4all.nl/wp-content/uploads/2023/05/team-topologies-van-belemmeringen-naar-fastflow-862x485.jpg 862w" sizes="(max-width: 960px) 100vw, 960px" /></figure>



<p>In dit artikel worden niet alle onderdelen uitgebreid beschreven. Van de 7 onderdelen ligt de focus in dit artikel op typologieën, interactiemodi en gedrag. Elke stap zal nu wel kort belicht worden. Zie onderstaande afbeelding.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="960" height="540" src="https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-groeien-in-7-stappen.jpeg" alt="" class="wp-image-6610" srcset="https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-groeien-in-7-stappen.jpeg 960w, https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-groeien-in-7-stappen-300x169.jpeg 300w, https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-groeien-in-7-stappen-768x432.jpeg 768w, https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-groeien-in-7-stappen-100x56.jpeg 100w, https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-groeien-in-7-stappen-862x485.jpeg 862w" sizes="(max-width: 960px) 100vw, 960px" /></figure>



<p>Deze 7 elementen zijn belangrijk zijn, maar het vereist een separaat artikel om alle mogelijke varianten uit te leggen. Het is m.i. interessanter om het concept te verdiepen vanuit (type) teams, gedrag en interactiemodi. We beginnen met Cognitieve belasting. </p>



<h2 class="wp-block-heading">Cognitive Load</h2>



<p>Team Topologies besteedt veel aandacht aan het beheersen van de cognitieve belasting bij teams. Cognitieve belasting verwijst naar de mentale inspanning die nodig is om een bepaalde taak uit te voeren en kan worden beïnvloed door factoren zoals de complexiteit van de taak, de beschikbare informatie en de ervaring van de persoon.</p>



<p>De mentale inspanning kan worden beschreven als: intrinsic en extraneous en germane cognitive load. In het artikel <a href="https://www.agile4all.nl/wat-is-de-cognitive-load-theorie/" target="_blank" rel="noreferrer noopener">Wat is de Cognitive load theorie?</a> lees je hier alles over, hieronder zijn de effecten voor Team Topologies beschreven.</p>



<p>Skelton en Pais stellen dat teams die te veel cognitieve belasting ervaren, minder effectief zijn in het leveren van waarde en vaak minder tevreden zijn met hun werk. Daarom raden ze aan om teams te structureren op basis van de complexiteit van het werk dat ze doen en om de cognitieve belasting te beheersen door onder andere:</p>



<ul>
<li>Het beperken van de omvang en reikwijdte van elk team, zodat elk team zich kan concentreren op een specifieke set taken en verantwoordelijkheden.</li>



<li>Het hebben van een duidelijke en gedeelde visie en doelstellingen voor elk team, zodat alle leden weten wat er van hen wordt verwacht en hoe hun werk bijdraagt aan de organisatiedoelen.</li>



<li>Het verminderen van de hoeveelheid onzekerheid en complexiteit die elk team moet beheren, bijvoorbeeld door het gebruik van een duidelijke architectuur en tooling.</li>



<li>Het zorgen voor de juiste mate van autonomie en besluitvorming voor elk team, zodat ze de verantwoordelijkheid en vrijheid hebben om hun werk op de meest effectieve manier uit te voeren.</li>



<li>Het hebben van duidelijke communicatielijnen tussen teams, zodat iedereen weet wie verantwoordelijk is voor welke taak en er niet te veel overlap is.</li>
</ul>



<p>Door deze aanbevelingen te volgen, kunnen teams hun cognitieve belasting beheersen en effectiever en efficiënter werken.</p>



<h2 class="wp-block-heading">4 Team Topologies </h2>



<p>Team Topologies identificeert vier hoofd teamtypes die organisaties kunnen gebruiken om hun softwarelevering te verbeteren: Stream-aligned teams, Enabling teams, Complicated-subsystem team  en Platform-teams.</p>



<p>Elk van deze teamtypes heeft zijn eigen doel en verantwoordelijkheden en is ontworpen om een specifieke bijdrage te leveren aan de softwarelevering in de organisatie. Door de juiste mix van teams te gebruiken, kunnen organisaties sneller en efficiënter software leveren die aan de behoeften van de klant voldoet.</p>



<figure class="wp-block-image size-full"><img decoding="async" loading="lazy" width="960" height="540" src="https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-4-team-types-en-de-interactie-modus.jpeg" alt="" class="wp-image-6609" srcset="https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-4-team-types-en-de-interactie-modus.jpeg 960w, https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-4-team-types-en-de-interactie-modus-300x169.jpeg 300w, https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-4-team-types-en-de-interactie-modus-768x432.jpeg 768w, https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-4-team-types-en-de-interactie-modus-100x56.jpeg 100w, https://www.agile4all.nl/wp-content/uploads/2023/05/Team-Topologies-4-team-types-en-de-interactie-modus-862x485.jpeg 862w" sizes="(max-width: 960px) 100vw, 960px" /></figure>



<p>Je zult meerdere beschrijvingen op internet tegenkomen m.b.t. deze type teams. </p>



<h3 class="wp-block-heading">1. Stream-aligned teams</h3>



<p>Stream-aligned team: afgestemd op een werkstroom van (meestal) een segment van het bedrijfsdomein</p>



<p>Dit type team is verantwoordelijk voor het leveren van functies en services met betrekking tot een bepaalde werkstroom of product. Ze hebben end-to-end eigendom van de software die ze leveren en zijn verantwoordelijk voor het handhaven van de kwaliteit van de code.</p>



<p>Stream-aligned teams zijn teams die verantwoordelijk zijn voor het leveren van software aan een specifieke klant, gebruikersgroep of productlijn. Deze teams zijn gericht op het leveren van waarde aan de klant door het continu leveren van kleine hoeveelheden software die functioneel zijn en voldoen aan de vereisten van de klant. Deze teams zijn ook verantwoordelijk voor het ontwikkelen en onderhouden van technische expertise en best practices voor hun specifieke gebied.</p>



<h3 class="wp-block-heading">2. Enabling teams</h3>



<p>Enabling team: helpt een Stream-aligned team om obstakels te overwinnen. Detecteert ook ontbrekende mogelijkheden.</p>



<p>Dit type team is verantwoordelijk voor het leveren van ondersteuning en tools aan stream-gerichte teams. Ze helpen om standaardisatie te creëren en herbruikbare oplossingen te ontwikkelen.</p>



<p>Enabling teams zijn teams die ondersteuning bieden aan Stream-aligned teams en andere teams in de organisatie. Deze teams zorgen voor een goede werking van de ontwikkelingsprocessen en de infrastructuur, en bieden ook ondersteuning op het gebied van compliance, beveiliging en kwaliteit. Enabling teams helpen bij het ontwerpen van processen en tools die nodig zijn om softwarelevering te versnellen en kwaliteit te waarborgen.</p>



<h3 class="wp-block-heading">3. Complicated subsystem teams</h3>



<p>Gecompliceerd subsysteemteam: waar aanzienlijke wiskunde/berekening/technische expertise nodig is.</p>



<p>Dit type team richt zich op het aanpakken van complexe technische uitdagingen. Ze werken aan problemen die te groot zijn om door een enkel stream-gericht team te worden opgelost.</p>



<p>Complicated Subsystem teams zijn teams die zich richten op het oplossen van complexe problemen die niet kunnen worden opgelost door Stream-aligned teams. Deze teams hebben een hoge mate van autonomie en zijn verantwoordelijk voor het ontwikkelen van nieuwe technologieën en best practices die nodig zijn om de organisatie te helpen innoveren en concurrerend te blijven. Complicated Subsystem teams zijn vaak multidisciplinair en werken samen met andere teams in de organisatie om hun doelen te bereiken.</p>



<h3 class="wp-block-heading">4. Platform-teams</h3>



<p>Platformteam: een groep andere teamtypen die een overtuigend intern product bieden om de levering door Stream-aligned teams te versnellen.</p>



<p>Dit team richt zich op het ontwikkelen en onderhouden van platforms en infrastructuur. Ze bieden de basis voor andere teams om op te bouwen en te leveren.</p>



<p>Platform-teams zijn teams die verantwoordelijk zijn voor het ontwikkelen en onderhouden van de technologieplatforms die door andere teams in de organisatie worden gebruikt. Deze teams zorgen voor een gestandaardiseerde en geautomatiseerde manier van werken en zorgen ervoor dat andere teams efficiënter kunnen werken door het delen van infrastructuur en best practices. Platform-teams zijn verantwoordelijk voor het leveren van een stabiele en veilige omgeving die andere teams kunnen gebruiken om software te bouwen, testen en implementeren.</p>



<p>Interessant is om dan verder te gaan kijken hoe de teams interacteren. Zoals beschreven zijn daar 3 vormen voor: faciliteren, X-as-a-Service en samenwerken. In de afbeelding is dit al samengevat, maar hoe krijg je dat nu goed op elkaar ingespeeld?</p>



<h2 class="wp-block-heading">Samenwerking tussen de verschillende type teams</h2>



<p>In &#8220;Team Topologies&#8221; wordt benadrukt dat de samenwerking tussen teams van cruciaal belang is om succesvolle softwarelevering te realiseren. Elk teamtype heeft zijn eigen verantwoordelijkheden en taken, maar ze werken allemaal samen om software te leveren die aan de behoeften van de klant voldoet. In bovenstaande afbeelding worden de geadviseerde vormen van samenwerking getoond, maar teams hebben vaak meerdere samenwerkingen, deze worden hieronder beschreven.</p>



<h3 class="wp-block-heading">1. Stream-aligned teams</h3>



<p>Stream-aligned teams zijn gericht op het leveren van software aan een specifieke klant of productlijn. Ze werken samen met andere teams om de benodigde infrastructuur en ondersteunende systemen te bouwen en te onderhouden. Ze hebben ook nauwe banden met Enabling teams om ervoor te zorgen dat hun processen, tools en technologieën goed werken. Complicated Subsystem teams kunnen soms worden ingezet om Stream-aligned teams te ondersteunen bij het oplossen van complexe technische uitdagingen.</p>



<h3 class="wp-block-heading">2. Enabling teams</h3>



<p>Enabling teams zijn gericht op het ondersteunen van andere teams in de organisatie. Ze werken samen met Stream-aligned teams om hen te helpen efficiënter te werken en betere software te leveren. Ze werken ook samen met Complicated Subsystem teams om te helpen bij het ontwikkelen en implementeren van nieuwe processen, tools en technologieën.</p>



<h3 class="wp-block-heading">3. Complicated subsystem teams</h3>



<p>Complicated subsystem teams werken vaak aan strategische projecten en nemen deel aan innovatieprogramma&#8217;s om de organisatie te helpen concurrerend te blijven. Ze hebben vaak nauwe banden met Platform-teams om ervoor te zorgen dat hun innovaties kunnen worden geïntegreerd in de bredere systemen en architectuur van de organisatie.</p>



<h3 class="wp-block-heading">4. Platform-teams</h3>



<p>Platform-teams zijn gericht op het leveren van een stabiele en veilige technologische basis voor de hele organisatie. Ze werken nauw samen met andere teams om te zorgen dat hun infrastructuur en tools goed werken en efficiënt worden gebruikt. Ze kunnen ook werken aan strategische projecten die gericht zijn op het verbeteren van de technologische basis van de organisatie.</p>



<blockquote class="wp-block-quote has-text-align-center has-vivid-cyan-blue-color has-text-color has-medium-font-size">
<p>&#8216;Evolve different team topologies for different parts of the organisation at different times to match the team purpose and context. &#8216; </p>
<cite>Matthew Skelton</cite></blockquote>



<p>De onderlinge verhoudingen tussen teams zijn afhankelijk van de specifieke organisatie en haar behoeften. &#8220;Team Topologies&#8221; benadrukt echter het belang van een duidelijke taakverdeling tussen teams en een duidelijke communicatie om ervoor te zorgen dat iedereen op één lijn zit. Het is ook belangrijk dat teams samenwerken aan gedeelde doelen en dat ze open staan voor feedback en verbetering.</p>



<h2 class="wp-block-heading">Verschillen en overeenkomsten in gedrag per team</h2>



<p>Als we naar de verschillende teams vanuit een gedragskant bekijken, kunnen we enkele overeenkomsten en verschillen identificeren.</p>



<h3 class="wp-block-heading">Overeenkomsten</h3>



<ul>
<li>Een belangrijke overeenkomst tussen de teams is dat ze allemaal gericht zijn op het leveren van waarde aan de klant. Elk teamtype heeft zijn eigen verantwoordelijkheden en taken, maar ze werken allemaal samen om software te leveren die aan de behoeften van de klant voldoet. Dit betekent dat alle teams een sterke focus hebben op klantgerichtheid en het leveren van waarde.</li>



<li>Een ander gemeenschappelijk gedrag van deze teams is hun focus op samenwerking. Elk teamtype werkt samen met andere teams in de organisatie om hun doelen te bereiken. Dit betekent dat effectieve communicatie en samenwerking essentieel zijn om de doelen van de organisatie te bereiken.</li>
</ul>



<h3 class="wp-block-heading">Verschillen</h3>



<p>Er zijn echter ook enkele verschillen tussen de teams vanuit een gedragskant.</p>



<ul>
<li><strong>Stream-aligned teams</strong> zijn bijvoorbeeld gericht op het leveren van software aan een specifieke klant of productlijn, waardoor ze een zeer klantgerichte focus hebben.</li>



<li><strong>Enabling teams</strong> daarentegen zijn gericht op het ondersteunen van andere teams in de organisatie, wat betekent dat ze een sterk focus hebben op samenwerking en ondersteuning.</li>



<li><strong>Complicated subsystem teams</strong> hebben vaak een sterke focus op innovatie en het ontwikkelen van nieuwe technologieën en processen. Dit betekent dat ze vaak een meer risicovolle benadering hebben en bereid zijn om nieuwe ideeën uit te proberen.</li>



<li><strong>Platform-teams</strong> hebben ten slotte een sterke focus op stabiliteit en veiligheid. Ze zorgen ervoor dat de technologische basis van de organisatie stabiel is en efficiënt wordt gebruikt. Dit betekent dat ze vaak meer nadruk leggen op controle en veiligheid dan andere teams.</li>
</ul>



<p>Kortom, terwijl alle teams in &#8220;Team Topologies&#8221; zich richten op het leveren van waarde aan de klant en samenwerking tussen teams, hebben ze elk hun eigen unieke kenmerken en gedragingen die hen onderscheiden van andere teams in de organisatie.</p>



<h2 class="wp-block-heading">Effectief samenwerken? Vier interactiemodi!</h2>



<p>In &#8220;Team Topologies&#8221; worden drie interactiemodi beschreven die teams kunnen gebruiken om effectief samen te werken. Hier zijn de drie interactiemodi:</p>



<h3 class="wp-block-heading">1. Collaboration- samenwerken</h3>



<p>Dit is een interactiemodus waarbij teamleden actief samenwerken om gemeenschappelijke doelen te bereiken. Dit omvat co-creatie, coördinatie en communicatie. Teamleden zijn actief betrokken bij elkaars werkzaamheden en werken samen om betere resultaten te behalen. Deze interactiemodus kan effectief zijn voor Development Teams en Platform Teams die samenwerken aan de ontwikkeling en implementatie van softwareoplossingen.</p>



<h3 class="wp-block-heading">2. X-as-a-Service</h3>



<p>Dit is een interactiemodus waarbij teams hun diensten aanbieden als een product aan andere teams binnen het bedrijf. Het omvat interne dienstverlening en self-service. Teams die diensten aanbieden, zorgen voor gestandaardiseerde interfaces en documentatie om andere teams in staat te stellen hun eigen werkzaamheden uit te voeren.</p>



<p>Deze interactiemodus kan effectief zijn voor Platform Teams die services aanbieden aan Development Teams en andere teams binnen het bedrijf.</p>



<h3 class="wp-block-heading">3. Facilitation &#8211; faciliteren</h3>



<p>Dit is een interactiemodus waarbij een team of individu verantwoordelijk is voor het faciliteren van de samenwerking tussen andere teams. Dit omvat ook coaching en mentoring. Het faciliterende team werkt als een brug tussen verschillende teams en zorgt ervoor dat de samenwerking soepel verloopt. Deze interactiemodus kan effectief zijn voor een team dat verantwoordelijk is voor de architectuur van een systeem en die andere teams helpt bij het begrijpen van de architectuur en bij het nemen van technische beslissingen.</p>



<p>In &#8220;Team Topologies&#8221; wordt benadrukt dat het belangrijk is om de juiste interactiemodi te kiezen op basis van de context en de doelstellingen van het project en dat teams flexibel moeten zijn om van interactiemodus te veranderen als dat nodig is. Dat betekent o.a. open staan voor nieuwe ideeën en om regelmatig feedback te geven en te ontvangen om de samenwerking tussen teams te verbeteren.</p>



<h2 class="wp-block-heading">Team Topologies, agile en DevOps</h2>



<p>Interessant is wellicht de vraag hoe Team Topologies zich verhoudt tot andere agile en DevOps-methoden.</p>



<p>Team Topologies richt zich op het ontwerpen van teams en hoe deze teams effectief kunnen samenwerken om software op een snelle en betrouwbare manier te leveren. Andere agile methoden, zoals Scrum en Kanban, leggen de nadruk op het plannen, monitoren en beheren van werk om de productiviteit en kwaliteit te verbeteren.</p>



<p>DevOps is een bredere filosofie en cultuur die gericht is op het integreren van de ontwikkeling, het testen en het inzetten van software om de time-to-market te versnellen en de kwaliteit van de software te verbeteren. Team Topologies past binnen DevOps omdat het zich richt op het ontwerpen van teams die samenwerken om deze doelen te bereiken.</p>



<p>In de praktijk worden deze methoden vaak gecombineerd en aangepast om te voldoen aan de specifieke behoeften van een organisatie. Het belangrijkste is om te begrijpen wat elk van deze methoden te bieden heeft en hoe ze kunnen worden toegepast om de effectiviteit en efficiëntie van softwareontwikkeling te verbeteren</p>



<h2 class="wp-block-heading">Impact op organisatie</h2>



<p>Team Topologies kan een aanzienlijke impact hebben op de cultuur en structuur van een organisatie, vooral als de implementatie ervan leidt tot veranderingen in de manier waarop teams samenwerken en communiceren.</p>



<p>Een van de belangrijkste voordelen van Team Topologies is dat het kan leiden tot meer focus en duidelijkheid binnen teams. Door het definiëren van duidelijke verantwoordelijkheden en communicatiekanalen kunnen teams zich beter concentreren op hun werk en betere resultaten behalen.</p>



<p>Daarnaast kan Team Topologies ook helpen bij het stimuleren van innovatie binnen organisaties. Door het creëren van meer flexibele teams en het aanmoedigen van samenwerking en uitwisseling van kennis en ideeën, kunnen organisaties nieuwe oplossingen en manieren van werken ontdekken.</p>



<p>Aan de andere kant kan de implementatie van Team Topologies ook weerstand oproepen bij medewerkers die zich comfortabel voelen met de huidige manier van werken. Het kan ook tijd en middelen kosten om de nieuwe teams en structuren op te zetten en in te bedden in de organisatie.</p>



<h2 class="wp-block-heading">Tot slot</h2>



<p>In Team Topologies wordt benadrukt dat het belangrijk is om niet alleen te focussen op één enkele methodologie of model, maar om verschillende methodologieën en modellen te combineren om de beste resultaten te behalen. Team Topologies benadrukt het belang van flexibiliteit en aanpassingsvermogen bij het organiseren en werken van teams.</p>



<p>Team Topologies die op zichzelf staat zal geen effectieve software systemen laten ontstaan. Want daarnaast is er ook nodig: een ondernemende can-do cultuur, goede engineering, gezonde financiële modellen en een duidelijke visie op de business.</p>



<p>Soms onderschat men het belang van de business insteek, maar veiliger en snellere verandering van software systemen is een vorm van Business Agility. En zoals je weet is Business Agility het vermogen om snel (in een paar uur) te reageren op veranderde interne en externe condities.</p>



<p>In een <a href="https://www.agile4all.nl/wat-is-de-vuca-wereld/" target="_blank" rel="noreferrer noopener">VUCA wereld</a> is het belangrijk om het operating model te optimaliseren voor een ‘fast flow of value’. Dit doe je door jezelf te organiseren rondom een &#8216;loosely coupled value streams&#8217;. Teams dienen zich te focussen op gebruikersbehoeften en UX EN de omgeving waar te nemen om snel de koers te kunnen veranderen.</p>



<p>Want dat is Team Topologies op een hoger abstractie niveau: fast flow, snelle feedback, team interactie, evolutie van de organisatie, team cognitive load en omgaan met de huidige belemmeringen in de organisatie.</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/wat-is-team-topologies/">Wat is Team Topologies?</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Wat is DevOps? Een filosofie en framework!</title>
		<link>https://www.agile4all.nl/wat-is-devops-een-filosofie-en-framework/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wat-is-devops-een-filosofie-en-framework</link>
		
		<dc:creator><![CDATA[Peter]]></dc:creator>
		<pubDate>Tue, 30 Nov 2021 20:30:51 +0000</pubDate>
				<category><![CDATA[Basics]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://www.agile4all.nl/?p=6244</guid>

					<description><![CDATA[<p><span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">9</span> <span class="rt-label rt-postfix">min.</span></span> DevOps is een methodologie en framework die door gestructureerd samenwerken, van IT-ontwikkeling en operatie, meerwaarde voor de klant brengt. De term DevOps een combinatie van twee woorden: Development en Operations. Van DevOps zijn veel verschillende beschrijvingen, waarbij de meeste varianten beschrijven dat DevOps staat voor bedrijfsinnovatie en continue verbeteren van ...</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/wat-is-devops-een-filosofie-en-framework/">Wat is DevOps? Een filosofie en framework!</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></description>
										<content:encoded><![CDATA[<span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">9</span> <span class="rt-label rt-postfix">min.</span></span>
<p>DevOps is een methodologie en framework die door gestructureerd samenwerken, van IT-ontwikkeling en operatie, meerwaarde voor de klant brengt.</p>



<p>De term DevOps een combinatie van twee woorden: Development en Operations. Van DevOps zijn veel verschillende beschrijvingen, waarbij de meeste varianten beschrijven dat DevOps staat voor bedrijfsinnovatie en continue verbeteren van processen. Uit alle varianten zijn drie verschillende en elkaar aanvullende beschrijvingen gekozen. </p>



<p>Volgens Wikipedia is DevOps een gebruik  en een praktijk binnen softwareontwikkeling die tot doel heeft softwareontwikkeling (Dev) en softwareoperaties (Ops) samen te voegen.</p>



<p>Een andere willekeurig gekozen beschrijving werkt deze verder uit: DevOps is een reeks software ontwikkelingspraktijken die softwareontwikkeling (Dev) en IT-operaties (Ops) combineert om de levenscyclus van systeemontwikkeling te verkorten en tegelijkertijd frequent functies, fixes en updates te leveren in nauwe afstemming met bedrijfsdoelstellingen.</p>



<p>Zoals je hebt kunnen lezen zou de voorgaande benadering als &#8216;vrij technisch&#8217; gezien kunnen worden. Begrijpelijk, want DevOps is ontstaan in de IT wereld. Voor de derde beschrijving is gekozen voor een meer agile benadering van DevOps. Dan is het verstandig om DASA te citeren:</p>



<blockquote class="wp-block-quote has-text-align-center is-style-default"><p><em>Voor ons, is DevOps niet een ding. Het is geen product, standaard, specificatie, raamwerk of functietitel. DevOps gaat over ervaringen, ideeën en cultuur om goed presterende IT-organisaties te creëren.</em></p><cite><meta charset="utf-8">Devops Agile Skill Association</cite></blockquote>



<p>Met deze drie benaderingen heb je een goede eerste indruk van wat DevOps is. In dit artikel is zal worden getracht om het uitgebreide DevOps jargon te beperken, zodat ook non IT-ers de filosofie en het framework kunnen begrijpen.</p>



<h2 class="wp-block-heading" id="h-waarom-devops">Waarom DevOPs?</h2>



<p>In de overload aan beschikbare technische informatie is het noodzaak om de hoogste prioriteit van DevOps te kennen: sneller aan de behoefte van de klant te kunnen voldoen, met name door de doorlooptijd van veranderingen te verkorten!</p>



<p>De 3 hoofdredenen waarom Devops tot stand is gekomen:</p>



<ul><li>De organisatie verlangt snellere en continue levering voor de klant.</li><li>Traditionele IT-opleveringen zijn uiterst moeizaam.</li><li>Ogenschijnlijke tegenstrijdigheden leveren problemen op. Men doelt dan op een wens van snelle ontwikkeling versus de stabiliteit van een IT omgeving. Dev versus Ops.</li></ul>



<p class="has-black-color has-text-color">Interessant is dat het probleem tussen ontwikkeling (Dev) en operatie (OPS)is beschreven als:</p>



<p class="has-text-align-center has-vivid-cyan-blue-color has-text-color has-medium-font-size"> ‘the wall of confusion’.</p>



<p>Een mooie bewoording van een situatie die je ook in andere omgevingen waarneemt. Wat neem je dan bijvoorbeeld waar: silo’s, verschillende gereedschappen, mindset, omgevingen, processen die niet lopen, matige feedback tot en met de ‘blame game’.</p>



<p>The wall of confusion resulteert in een neerwaartse spiraal. Iedereen krijgt het drukker, alles kost meer tijd, communicatie gaat trager en het werk vertraagd uiteindelijk. Dat vraagt weer om meer communicatie, coördinatie, toestemmingen. Kortom gekibbel over vrijwel alles, waarbij de oplevering steeds trager wordt.</p>



<p>De oplossing om de muur tussen Dev en Ops omlaag te halen is: het creëren van kleine teams die onafhankelijk hun features kunnen valideren in productie achtige omgevingen. Dan kunnen ze hun code snel, veilig en secuur in productie brengen. (bron: The DevOps Handbook, Gene Kim, Jez Humble, Patrick Debois and John Willis.)</p>



<h2 class="wp-block-heading">Korte introductie DevOps</h2>



<p>DevOps is ruim 20 jaar geleden ontstaan om websites met veel traffic overeind te houden. In 2009 vond de eerste presentatie plaats door medewerkers van Flickr. In hetzelfde jaar werd de eerste DevOps dag gehouden in België. Vervolgens werden in de opvolgende jaren frameworks en open source tools ontwikkelt. Deze ontwikkeling zet zich nog steeds voort.</p>



<p>DevOps heeft als primair doel snellere levering van waarde voor de klant. Dat lijkt heel eenvoudig, maar de wens om dit steeds sneller te verrichten, met de juiste kwaliteit, maakt het een complexe aangelegenheid. Want dan is opeens de gehele organisatie betrokken. Denk daarbij aan allerlei eisen zoals beveiliging, administratie, compliance etc.</p>



<p>Het meest herkenbare van DevOps zijn de technische voorbeelden, zoals updates, releases en het toevoegen van functies of foutherstelling (bug fixes) etc. Hoewel dit herkenbare voorbeelden zijn van wat DevOps ook is, is DevOps pas compleet als de filosofie en framework worden toegepast.</p>



<p>DevOps heeft als <strong>filosofie</strong> om de levenscyclus van de systeemontwikkeling te verkorten en tegelijkertijd regelmatig functies, fixes en updates te leveren volledig in lijn met de bedrijfsdoelstellingen.</p>



<p>Het DevOps <strong>framework</strong> bestaat uit verschillende fasen, zoals continu ontwikkelen, continu integreren, continu testen, continue implementatie en continue monitoring.</p>



<p>Zowel de filosofie en het framework dienen te worden toegepast om DevOps succesvol te laten zijn.</p>



<h2 class="wp-block-heading">Huidige ontwikkelingen DevOps</h2>



<p>Dat DevOps zich nog steeds ontwikkelt blijkt wel uit de vele varianten die er inmiddels zijn. Voorbeelden hiervan zijn: DevSecOps, DevOps 2.0, GitOps, NoOps en nog veel meer!</p>



<p>Alle varianten zijn gericht op een specifieke toepassing of toevoeging, maar altijd vanuit dezelfde filosofie: een gestructureerd samenbrengen van ontwikkeling en operatie.</p>



<p>De huidige ontwikkeling van DevOps richt zich met name op vergaande automatisering van het ontwikkelproces en op de uitdaging van de toenemende complexiteit. Dit laatste vult men in door zich te (willen) gedragen als een Lean Startup. Lees hiervoor het artikel: <a href="https://www.agile4all.nl/wat-is-de-lean-startup-methode/" target="_blank" rel="noreferrer noopener">Wat is de Lean Startup Methode?</a></p>



<p>Net als andere agile methodieken is er een sterke focus op het opknippen van grote delen in kleine stukjes en het testen/meten op alle niveaus in de pijplijn en dit proces te automatiseren. Lean programming is een vertrouwd fenomeen binnen IT, maar de wijze waarop deze nu ingericht wordt is beduidend meer agile ingericht.</p>



<p>In DevOps 2.0 heeft men naast technische procesverbeteringen als doel gesteld om de volledige organisatie te betrekken en daarbij de communicatie tussen alle betrokkenen in software ontwikkeling te verbeteren. Het gaat hierbij dus nog steeds om Flow!</p>



<p>Binnen DevOps kun je tegenwoordig naast Product (stream) Teams ook Platform Teams tegenkomen. Het grote verschil tussen deze teams is dat men zich steeds meer richt op het bouwen van een feature door één team, die expert kunnen worden in het toegewezen gebied. Het andere team houdt zich meer bezig met specifieke platform kennis. </p>



<p>Daarmee verlaagd men de hoeveelheid informatie die men nodig heeft om een goed product af te kunnen leveren.  Toch blijven de product teams end-of-end verantwoordelijk, platform teams brengen een nieuwe specifieke vaardigheid in en gaan daarna door naar waar hun specifieke vaardigheid nodig is. Men tracht met deze methode een oplossing te vinden om flow te verbeteren.</p>



<h2 class="wp-block-heading">De uitdaging is cultuur!</h2>



<p>Als je voorgaande alinea&#8217;s samenvat kun je DevOps in vijf categorieën indelen: een ontwikkelcultuur door automatisering, lean te werken en metrics en informatie te delen, waarbij specifieke DevOps-tools worden ingezet. In het Engels hanteert men hiervoor regelmatig de term CALMS (Culture, Automation, Lean, Metrics en Sharing).</p>



<p>Een andere manier om naar DevOps te kijken is vanuit 3 elementen: mensen, proces en technologie. </p>



<p>Wat je dan waarneemt is dat processen en de bijbehorende technologieën veel aandacht krijgen: &#8216;Want daar komen de nieuwe mogelijkheden en oplossingen vandaan&#8217;. Dat zou zo maar waar kunnen zijn, maar de grootste uitdaging voor organisaties is en blijft cultuur. Nieuwe instrumenten zijn fijn, maar als het leiderschap geen richting geeft, de gewenste agile cultuur niet tot stand komt en de resultaten uitblijven is het snel bergafwaarts, ook met DevOps.</p>



<p>Een mooi uitdagend voorbeeld is scaling. Ook in DevOps is scaling een veel besproken fenomeen, maar welke agile methode je ook hanteert: <a href="https://www.agile4all.nl/8-uitdagingen-van-het-opschalen-van-agile/" target="_blank" rel="noreferrer noopener">scaling</a> is en blijft uitdagend. De reden hiervoor is eenvoudig, meer deelnemers staat synoniem aan meer interactie. Echter realiseert men zich veelal niet voldoende dat bij het toevoegen van slechts een paar mensen het aantal contacten exceptioneel toeneemt, lees hiertoe het artikel:&nbsp;<a href="https://www.agile4all.nl/wat-is-brooks-law/" target="_blank" rel="noreferrer noopener">Wat is Brooks law?</a>.</p>



<p>Dan blijkt dat je aanvullende technische methoden dient te hanteren, want gedeelde centrale informatie is bij het ontwikkelen van software noodzakelijk. Het bekendste voorbeeld is het tegelijkertijd door meerdere mensen werken aan dezelfde software. Als je dit niet goed regelt heb je voordat je het weet meerdere softwareversies. Een garantie voor versie conflicten en bijbehorende bugs.</p>



<p>DevOps lost dit op door automation van het proces. Het is een noodzaak om iedereen aangesloten en ‘on track’ te houden. Zeker als men ook nog remote werkt. Momenteel is automatisering van het totale proces datgene waar DevOps zich snelst in ontwikkelt.</p>



<h2 class="wp-block-heading">Uit welke componenten bestaat DevOps?</h2>



<p>DevOps bestaat uit 4 herkenbare componenten: principes, concepten, praktijken en mensen. Laten we deze samenhang eens bekijken.</p>



<h3 class="wp-block-heading">1. Principes</h3>



<p>DevOps basisprincipes die je minimaal moet kennen: flow, feedback en continu leren i.c.m. verbeteren.</p>



<p>Van bovenstaande principes is het vooral handig om het begrip flow binnen DevOps te begrijpen. Flow is de snelle stroom van Dev naar Ops naar klant. Een aantal kenmerken zijn: visuele borden, WIP-limits, Slicen (opknippen in kleine stukjes), beperken van handovers, impediments aanpakken en focus op toevoegen van waarde. </p>



<p><a href="https://www.agile4all.nl/ik-ik-jij-feedback-methode/" target="_blank" rel="noreferrer noopener">Feedback</a> en <a href="https://www.agile4all.nl/5-disciplines-van-een-lerende-organisatie/" target="_blank" rel="noreferrer noopener">een lerende organisatie</a> zijn bekende agile principes.</p>



<h3 class="wp-block-heading">2. Concepten</h3>



<p>Aan de principes zijn de concepten verbonden, zoals: product, waardenstroom, los verbonden architectuur en autonome teams. </p>



<p>Denk hierbij aan het concept van een <a href="https://www.agile4all.nl/wat-is-een-minimum-viable-product-of-mvp/" target="_blank" rel="noreferrer noopener">Minimum Viable Product (MVP</a>), maar ook aan thema’s, Epics, features en in de Sprints de <a href="https://www.agile4all.nl/product-backlog-epics-en-user-stories/">User Stories</a>. Geprioritiseerd volgens de waardestroom (value stream en value stream mapping) en passend bij MVP.</p>



<h3 class="wp-block-heading">3. Praktijken</h3>



<p>Dan krijg je de praktijken, zoals Continious Integration, Continious testen, Continious Delivery,  Continious Deployment, meten en feedback. Deze worden in de volgende paragraaf beschreven. Zie voor de eerste indruk de onderstaande afbeelding.</p>



<figure class="wp-block-image size-full"><img decoding="async" loading="lazy" width="709" height="532" src="https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-technische-praktijken.jpeg" alt="DevOps - technische praktijken" class="wp-image-6255" srcset="https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-technische-praktijken.jpeg 709w, https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-technische-praktijken-300x225.jpeg 300w, https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-technische-praktijken-100x75.jpeg 100w" sizes="(max-width: 709px) 100vw, 709px" /></figure>



<h3 class="wp-block-heading">4. Mensen</h3>



<p>Hoewel in veel literatuur de focus ligt op de technische gereedschappen en/of praktijken, is de mens veelal de doorslaggevende factor. Zie onderstaande afbeelding.</p>



<figure class="wp-block-image size-full"><img decoding="async" loading="lazy" width="709" height="532" src="https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-cultuur.jpeg" alt="DevOps - cultuur" class="wp-image-6254" srcset="https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-cultuur.jpeg 709w, https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-cultuur-300x225.jpeg 300w, https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-cultuur-100x75.jpeg 100w" sizes="(max-width: 709px) 100vw, 709px" /></figure>



<p>Hiermee beschrijf je eigenlijk ook de cross functionele autonome teams, deze bestaan bijvoorbeeld uit <a href="https://www.agile4all.nl/product-owner/" target="_blank" rel="noreferrer noopener">Product Owner</a>, Operations Engineer, Developer, QA/tester, Release Manager en InfoSec. </p>



<p>In dit artikel gaan we nu verder met het uitwerken van de DevOps praktijken. Vanuit een agile perspectief lijken de technische termen wellicht minder interessant, het gaat je mogelijk slechts om de filosofie van DevOps. Toch dien je deze termen wel te kennen, simpelweg om de filosofie van DevOps beter te begrijpen.</p>



<h2 class="wp-block-heading">DevOps Praktijken</h2>



<p>DevOps praktijken gaat over flexibiliteit van ontwikkeling door het automatiseren van verschillende processen, bijvoorbeeld het geautomatiseerd testen van software.</p>



<p>De processtroom (flow) richt zich op de aansturing van de productie waarbij ontwikkeling voortdurend in overleg is met het operationele team. Daar gebruikt men in DevOps meerdere begrippen voor: Continious Integration, Continious Delivery (CD), Continious Feedback, Continious Delivery en Continious Deployment. Deze worden nu achtereenvolgens beschreven.</p>



<h3 class="wp-block-heading">1. Continious Integration&nbsp; (CI)</h3>



<p>Continue Integratie of CI is een proces waarbij ontwikkelaars hun kleine aangepaste codes kunnen updaten in een centrale plaats (repository) die gedeeld wordt met het hele projectteam. Dit vindt meerdere keren per dag plaats.</p>



<p>Hier wordt de toegevoegde code automatisch getest en gevalideerd. Deze repository helpt om vertragingen te verminderen omdat elk teamlid op elk moment de meest up-to-date en gevalideerde versie van de code kan vinden.</p>



<p>De ultieme toets van het fail-fast principe.</p>



<h3 class="wp-block-heading">2. Continuous Delivery (CD)</h3>



<p>CD is de logische stap na CI. Want deze stap staat voor het automatisch bouwen, testen en verpakken van de wijzigingen in de code die bij CI hebben plaatsgevonden.</p>



<p>Zojuist las je het woord ‘automatisch’, jazeker dat is ook hier het sleutelwoord, net als bij CI wordt het leveringsproces grotendeels geautomatiseerd. Het doel is vanzelfsprekend snellere en betere releases.&nbsp;</p>



<h3 class="wp-block-heading">3. Continuous Feedback</h3>



<p>Met continuous feedback vat men het hele proces van het opsporen van fouten in het systeem samen. Hier bedoelt men ook de tools die het operationele team hanteert om (real time) het ontwikkelingsteam te informeren. Dit proces verhoogd de betrouwbaarheid van de software.&nbsp;</p>



<h3 class="wp-block-heading">4. Continuous Deployment</h3>



<p>Dit is de meest verwarrende beschrijving in de terminologie. Zowel vanuit een Nederlandse vertaling, alsook in het Engels. In het Nederlands betekent dit Continue Implementatie, maar dat is verwarrend omdat je dit zou kunnen afkorten naar CI. In het Engels is het ook niet echt handig geregeld, want CD staat al voor Continuous Delivery!</p>



<p>Het belangrijkste verschil met Continuous Delivery is dat bij Continuous Deployment een proces plaatsvindt, waarbij geen menselijke tussenkomst vereist is. Dit doen tools die, na automatisch testen, de code vrijgeven zodra het de verandering in de code detecteert.</p>



<p>Wat je waarneemt is dat beide begrippen door en naast elkaar gehanteerd worden. Ook zie je vaker een combinatie tot stand komen, waarbij ze beiden in dezelfde zin worden genoemd. Mede veroorzaakt door de verdere automatisering, waardoor er in meerdere stappen van het proces geen menselijke tussenkomst meer is.</p>



<p>Continuous Deployment versnelt de feedbackloop. Wist je overigens dat je daardoor ook geen release data meer hoeft te plannen?</p>



<h3 class="wp-block-heading">Controle</h3>



<p>Ben je met voornoemde 4 DevOps praktijken er dan? Nou eigenlijk niet, want dan komt ‘controle’ om de hoek kijken. Dit is echter niet het vijfde component, want controle is geïntegreerd in de vier praktijken. Controle staat voor verandermanagement, informatie beveiliging en taak/functie scheiding.</p>



<p>Bij verandermanagement kan je dan denken aan pair programming, TDD, of peer review. Voor beveiliging kan je dan denken aan het integreren van veiligheid in elke functie als dagelijkse routine, maar ook controles op de repository, in de pijplijn, in de omgeving etc.</p>



<p>Bij taak/functie scheiding dien je vooral te denken aan moderne vormen, want traditionele vormen remmen af. Je kunt bijvoorbeeld voor controle: inspectie, code check-ins, code review en pair programming inzetten.</p>



<h2 class="wp-block-heading">DevOps Cycle</h2>



<p>Als je bovenstaande combineert met meten en feedback, soepelere, continue communicatie, samenwerking, integratie, zichtbaarheid en transparantie. Dan heb je DevOps-cyclus!</p>



<div class="wp-block-image"><figure class="aligncenter size-full"><img decoding="async" loading="lazy" width="709" height="532" src="https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-6-of-8-fasen.jpeg" alt="" class="wp-image-6252" srcset="https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-6-of-8-fasen.jpeg 709w, https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-6-of-8-fasen-300x225.jpeg 300w, https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-6-of-8-fasen-100x75.jpeg 100w" sizes="(max-width: 709px) 100vw, 709px" /></figure></div>



<p>Bovenstaande afbeelding toont de initiële softwareplanning tot de code-, build-, test- en releasefasen en tot en met de implementatie, activiteiten en continue monitoring.</p>



<p>Het oneindig symbool staat symbool voor continue terugkoppeling naar klanten voor verdere verbetering, ontwikkeling, testen en implementatie.</p>



<p>Het doel blijft natuurlijk dat oneindig vernieuwingen, wijzigingen of toevoegingen sneller en op continu basis te laten plaatsvinden.</p>



<p>Voor het bovenstaande geldt dat de 6 DevOps principes gehanteerd worden.</p>



<h2 class="wp-block-heading">Zes DevOps principes</h2>



<p>De Devops Agile Skill Assocation (DASA) hanteert 6 principes van DevOps. In onderstaande afbeelding zijn deze beschreven.</p>



<div class="wp-block-image"><figure class="aligncenter size-full"><img decoding="async" loading="lazy" width="709" height="532" src="https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-6-principes.jpeg" alt="DevOps - 6 principes" class="wp-image-6253" srcset="https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-6-principes.jpeg 709w, https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-6-principes-300x225.jpeg 300w, https://www.agile4all.nl/wp-content/uploads/2021/11/DevOps-6-principes-100x75.jpeg 100w" sizes="(max-width: 709px) 100vw, 709px" /></figure></div>



<p>Van bovenstaande principes behoeft met name de zesde ‘automatiseer’ een korte aanvullende toelichting. De reden hiervoor is dat met name dit hier momenteel de grootste technologische ontwikkeling plaatsvindt.</p>



<p>Hoewel het wat technisch klinkt is men hier bezig met &#8216;cloudplatforms die op containers gebaseerd zijn&#8217;, waardoor ‘infrastuctuur als code’ gezien kan worden. Want dat geeft teams een vergaande flexibiliteit.</p>



<p>‘Infrastructuur als code’ kom je in veel artikelen tegen. Het is dus handig om te weten waar men mee bezig is, maar op de inhoud hiervan gaan we in dit artikel niet verder in.</p>



<h2 class="wp-block-heading">Samenvatting</h2>



<p>Zoals beloofd zou dit artikel niet al te technisch worden. Een mooie manier om DevOps als filosofie op een agile manier samen te vatten is om het acroniem CALMS te hanteren.</p>



<p><strong>Cultuur:</strong> bestaande uit de huidige waarden, overtuigingen en houdingen. Die de bedrijfsomgeving rondom en ter ondersteuning van ontwikkeling, operaties en kwaliteit aanduiden. </p>



<p class="has-text-align-center has-vivid-cyan-blue-color has-text-color">DevOps: focus op mensen en omarm verandering en het experimenteren.</p>



<p><strong>Automatisering:</strong> alles kan effectief kan worden geautomatiseerd om processen te verbeteren en fouten te verminderen.</p>



<p class="has-text-align-center has-vivid-cyan-blue-color has-text-color">DevOps: Continious Delivery en &#8216;infrastucture as code&#8217;</p>



<p><strong>Lean:</strong> Dit staat synoniem voor het reduceren van verspilling. Met als doel de waarde voor de klant te maximaliseren. Voorbeelden hiervan zijn teamgrootte, vergaderfrequentie en aantal tools.</p>



<p class="has-text-align-center has-vivid-cyan-blue-color has-text-color">DevOps: focus op het produceren van waarde voor de eindgebruiker en hanteer kleine batch grootte.</p>



<p><strong>Meten: </strong>Dit verwijst naar het meten van alles. Daarvoor dien je te zorgen voor ingebouwde mechanismen om zichtbaarheid te bieden. Dit betreft dan alle systemen en gebeurtenissen. Veelal hanteert men een dashboard.</p>



<p class="has-text-align-center has-vivid-cyan-blue-color has-text-color">DevOps: meet alles en toon de verbetering</p>



<p><strong>Delen (sharing):</strong> goede communicatie tussen ontwikkeling en operations, voor een effectieve integratie.</p>



<p class="has-text-align-center has-vivid-cyan-blue-color has-text-color">DevOps: open informatie delen, samenwerken en communicatie</p>



<p>CALMS is bedacht door Willis en Edwards en dit is later verder beschreven door Humble, zij wilden de filosofie van DevOps beschrijven. </p>



<p>DevOps is dus een filosofie als een framework, de meeste aandacht gaat veelal uit naar de tools. Want door goed gereedschap kan men sneller bouwen, maar cultuur bepalend is voor het uiteindelijke succes.</p>



<p>In later te verschijnen artikelen zullen de diverse DevOps componenten uitgebreid worden beschreven.</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/wat-is-devops-een-filosofie-en-framework/">Wat is DevOps? Een filosofie en framework!</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Wat is Natural Language Processing?</title>
		<link>https://www.agile4all.nl/wat-is-natural-language-processing/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wat-is-natural-language-processing</link>
		
		<dc:creator><![CDATA[Peter]]></dc:creator>
		<pubDate>Tue, 11 May 2021 19:47:51 +0000</pubDate>
				<category><![CDATA[Basics]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://www.agile4all.nl/?p=5969</guid>

					<description><![CDATA[<p><span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">8</span> <span class="rt-label rt-postfix">min.</span></span> Natural Language Processing (NLP) is de technologie die wordt gebruikt om computers te helpen de natuurlijke taal van de mens te begrijpen. De vertaling in Nederlands is: computationele taalkunde of computerlinguïstiek, alleen gebruikt vrijwel niemand deze vertalingen. Overigens wordt Natural Language Processing ook niet zo vaak gebruikt. Zodra men het ...</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/wat-is-natural-language-processing/">Wat is Natural Language Processing?</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></description>
										<content:encoded><![CDATA[<span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">8</span> <span class="rt-label rt-postfix">min.</span></span>
<p>Natural Language Processing (NLP) is de technologie die wordt gebruikt om computers te helpen de natuurlijke taal van de mens te begrijpen.</p>



<p>De vertaling in Nederlands is: computationele taalkunde of computerlinguïstiek, alleen gebruikt vrijwel niemand deze vertalingen. Overigens wordt Natural Language Processing ook niet zo vaak gebruikt. Zodra men het woord ‘chatbox’ gebruikt, begrijpt opeens iedereen waar het overgaat. NLP is echter veel meer dan een chatbox.&nbsp;&nbsp;</p>



<p>De meeste artikelen op deze site gaan over agile werken, dit artikel zou dus ook over het andere NLP (Neuro Linguïstisch Programmeren) kunnen gaan. Dit artikel gaat echter over verandering, want NLP is een mooi voorbeeld van grote veranderingen door technologische ontwikkelingen.</p>



<p>Dit artikel is voor velen nog ‘nice to know’, maar afhankelijk van je omgeving al ‘need to know’. Of je techniek nu interessant vindt of niet, voor agile werkenden is het noodzakelijk om veranderingen te herkennen om tijdig te kunnen handelen! In dit artikel zal zoveel mogelijk getracht worden om technisch taalgebruik te vermijden.</p>



<p>Want een ding is inmiddels al duidelijk: het begrijpen van de menselijke taal is niet meer alleen voorbehouden aan de mens.</p>



<h2 class="wp-block-heading" id="h-nlp-en-artificial-intelligence">NLP en Artificial Intelligence</h2>



<p>Natural Language Processing is een van de takken van sport in Artificial Intelligence (kunstmatige intelligentiesystemen). NLP houdt zich bezig met de interactie tussen computers en mensen met behulp van mensentaal.</p>



<p>Het doel van NLP is het lezen, ontcijferen, begrijpen en zinnig maken van menselijke taal. Dat dit doel waarde dient te hebben is vanzelfsprekend, dat deze stap gerealiseerd gaat worden ook.</p>



<p>De basisgedachte van NLP is heel simpel. Machinaal leren wordt ingezet om de menselijke talen te leren. </p>



<h2 class="wp-block-heading" id="h-hoe-werkt-natural-language-processing">Hoe werkt Natural Language Processing?</h2>



<p>Daarvoor past men in de programmering van NLP algoritmes, artificial intelligence en deep learning toe. NLP is een toepassing om ongestructureerde gegevens om te kunnen zetten naar een vorm die een machine begrijpt.</p>



<p>De meeste mensen denken dat NLP m.b.v. statistische methodes werkt, maar statistische methoden bleken te beperkt. In de afgelopen 10 jaar is NLP van statische methodes overgestapt naar neurale netwerken voor machinaal leren. De snelheid waarin dit zich verder ontwikkelt is zeer hoog te noemen. </p>



<p>Het makkelijkste om dit eenvoudig uit te leggen is dat je door het toevoegen van een natuurlijke taalregel een machine deze kan toepassen. Dit is echter niet voldoende, slechts door ontelbare keren te vertalen en een menselijke correctie te ontvangen kan een machine leren. Door te leren, verbetert de machine zich constant. Daardoor is een machine uiteindelijk in staat om de betekenis van een zin te ‘begrijpen’&nbsp; en de benodigde gegevens er uit te halen. </p>



<p>Straks volgen 9 toepassingen van Natural Language Processing, maar nu eerst een voorbeeld hoe jij helpt om NLP te verbeteren. Wanneer je iets laat vertalen door een machine krijg je soms een verrassende vertaling aangeboden, maar jij begrijpt al snel wanneer de vertaling niet helemaal klopt en gaat op zoek naar alternatieve begrippen in de aangeboden woordenlijst. Door deze woorden aan te klikken, krijg jezelf een betere vertaling en leert de machine. Na ontelbare keren zal de machine steeds betere vertalingen leveren.</p>



<p>Je kunt stellen dat er turbulente ontwikkelingen zijn in AI en NLP. Het lijkt er immers op dat machines de stap naar de taal goed leren te begrijpen maken, begrijpen straks taal net als wij dat doen. Hoe werkt dat nu in grote lijnen?</p>



<h2 class="wp-block-heading" id="h-de-stappen-in-de-interactie">De stappen in de interactie</h2>



<p>Het proces van NLP is vrij eenvoudig te beschrijven. Het is immers een interactieproces, met als verschil dat één van beide partijen een machine is. Simplistisch beschouwt zijn er 6 stappen:&nbsp;</p>



<ul><li>Een mens ‘praat of schrijft’ met een machine.</li><li>De machine vangt de audio of tekst op.</li><li>Conversie (van audio) naar ‘taal’ vindt plaats.</li><li>Verwerking van de gegevens naar context.</li><li>Omzetting van context naar een antwoord via audio of tekst.</li><li>De machine reageert door het teruggeven van een tekst of door audio.</li></ul>



<p>Dit is gemakkelijk om te realiseren als er altijd exact dezelfde vraag wordt gesteld. Maar mensen zijn niet zo gemakkelijk te begrijpen. We kennen meerdere talen, elke taal kent meerdere niveaus, bijv. hoog of laag, abstract of niet abstract, emotioneel en/of hanteren allerlei taalvormen (bijvoorbeeld sarcasme). Derhalve hanteert NLP een scala aan technieken, deze zijn echter terug te brengen naar 2 hoofdcategorieën.</p>



<h2 class="wp-block-heading" id="h-de-technieken-van-natural-language-processing">De technieken van Natural Language Processing</h2>



<p>De hoofdcategorieën van NLP bestaan uit syntactische en semantische analyse. Syntax gaat over de rangschikking van woorden in een zin. Semantiek gaat over de betekenis die overgebracht wordt.</p>



<ul><li>Voor <strong>syntax</strong> hanteert men grammaticale regels. Het toepassen van regels past goed bij machinetaal, dus is men hier al heel ver mee.</li><li><strong>Semantiek</strong> is de uitdaging die nu voor ligt. Met computeralgoritmes probeert men de betekenis van woorden om zinnen te begrijpen.</li></ul>



<p>Binnen NLP is er een hele wereld aan begrippen ontstaan. Die elk een deel van taal proberen te tackelen.</p>



<p>Omdat beloofd is om in dit artikel niet met complexe termen te komen, volgen nu slechts een aantal voorbeelden van technieken die onder de hoofdindeling passen: speech recognition, grammatical tagging, named entity recognition en parsing. </p>



<p>Een goede eigenschap is dat men nieuwsgierig en onderzoekend is, deze AC beleefd veel plezier aan het met dit soort onderwerpen bezig te zijn. Derhalve is vorig jaar o.a. de techniek van Watson Assistent van IBM verkend, een chatbot voor klantenservice in AI omgevingen.</p>



<h2 class="wp-block-heading" id="h-wat-is-op-dit-moment-de-nlp-uitdaging">Wat is op dit moment de NLP uitdaging?</h2>



<p>De uitdaging is semantiek, want deze ligt in de combinatie van de gebruikte woorden, de verbinding van deze woorden en de beoogde boodschap.</p>



<p>Feitelijk zijn natuurlijke talen niet eenduidig. We gebruiken dubbelzinnigheden, taalregels die weinigen begrijpen, allerlei uitzonderingen op de taalregels, variaties in zinsbouw en daar komen de verschillende betekenissen per woord(combinatie) nog overheen.</p>



<p>Mensen vangen al een deel van de taal op in de moederschoot en hebben daarna jaren nodig om zelfs in hun moedertaal op hoog niveau te kunnen communiceren. Mensen kunnen vrij goed een tweede of derde taal daarnaast beheersen. Zou jij het handig vinden als tijdens een gesprek met een anderstalige taal direct een vertaling zou plaatsvinden?</p>



<p>Machines gebruikten, tot voor kort, programmeertaal. De mens moest in precieze taal communiceren met de machine. Een natuurlijke taal bestaat echter ook uit dubbelzinnigheid en onnauwkeurigheid en dit maakt het uitdagend voor machines om een natuurlijke taal te leren.&nbsp;</p>



<p>NLP ontleedt menselijke tekst en spraak op diverse manieren. NLP is eigenlijk een complexe combinatie van computerwetenschap, kunstmatige intelligentie en computationele linguïstiek.</p>



<p>Binnen NLP is er een hele wereld aan begrippen ontstaan. Die elk een apart deel van taal proberen te tackelen. Omdat beloofd is om in dit artikel het niet te complex te beschrijven, volgen nu slechts een aantal technieken, zonder verdere toelichting: speech recognition, grammatical tagging, named entity recognition en parsing.</p>



<p>Wellicht is het handiger om je voorbeelden van toepassingen aan te reiken.</p>



<h2 class="wp-block-heading" id="h-9-toepassingen-van-natural-language-processing">9 toepassingen van Natural Language Processing</h2>



<p>Welke toepassingen zijn er en wat merk je er vandaag al van? De huidige status van NLP ervaar je elke dag. Wellicht heb je niet zo vaak door dat NLP al volop wordt ingezet. Laten we direct starten met de persoonlijke assistenten: Siri, Ok Google of Alexa, maar laten we ook de andere mogelijkheden noemen.</p>



<h3 class="wp-block-heading" id="h-1-taalcontrole">1. Taalcontrole</h3>



<p>Hoe vaak laat jij je teksten controleren? Vermoedelijk staat je autocontrole standaard aan. Het detecteren en corrigeren van spelfouten vinden we al heel gewoon.</p>



<h3 class="wp-block-heading" id="h-2-automatisch-vertalen">2. Automatisch vertalen</h3>



<p>We gebruiken allemaal de diverse automatische vertaalmachines. Denk maar aan Google Translate of Deepl. Deze vertalingen worden in rap tempo beter. Als je twijfelt of een vertaling juist is, dan is de volgende tip wellicht handig. Laat de vertaalde tekst eens ‘terugvertalen’, gebruik daar eventueel een andere vertaalmachine voor.</p>



<p>Vertaalmachines worden steeds nauwkeuriger en steeds meer talen kunnen vertaald worden. Zelfs dialecten worden al meegenomen.</p>



<p>Interessant is dat Google recentelijk heeft aangegeven om ook talen die aan het verdwijnen zijn te vast willen vastleggen. Taal is immers een onderdeel van de cultuur en elke taal bevat verhalen en inzichten die in overlevering worden doorgegeven.</p>



<p>Het is jammer dat talen verloren gaan, maar een mooi voorbeeld hiervan is Latijns. Eigenlijk ‘een dode taal’, want deze wordt niet meer gesproken, maar nog wel steeds gebruikt. Als men een taal uit het verleden kent heeft men beter begrip van die periode in de geschiedenis.</p>



<h3 class="wp-block-heading" id="h-3-spam">3. Spam</h3>



<div class="wp-block-image"><figure class="alignright size-large is-resized"><img decoding="async" loading="lazy" src="https://www.agile4all.nl/wp-content/uploads/2021/05/no-spam-in-mailbox.jpg" alt="no spam in mailbox" class="wp-image-5980" width="230" height="230" srcset="https://www.agile4all.nl/wp-content/uploads/2021/05/no-spam-in-mailbox.jpg 640w, https://www.agile4all.nl/wp-content/uploads/2021/05/no-spam-in-mailbox-300x300.jpg 300w, https://www.agile4all.nl/wp-content/uploads/2021/05/no-spam-in-mailbox-150x150.jpg 150w, https://www.agile4all.nl/wp-content/uploads/2021/05/no-spam-in-mailbox-100x100.jpg 100w" sizes="(max-width: 230px) 100vw, 230px" /></figure></div>



<p>Je staat er vermoedelijk niet bij stil dat als je spamberichten ontvangt, een NLP algoritme deze spam helaas nog niet heeft kunnen tegenhouden.</p>



<p>Want wist je al dat de betere spamfilters detectietechnologieën van NLP gebruiken om e-mails te scannen op taal die vaak wijst op spam of phishing? Men controleert dan o.a. op slechte grammatica, onlogische urgentie, bedrijfsnamen die niet juist zijn gespeld of bepaald taalgebruik.</p>



<p>Spam is echter een kat en muis spel geworden tussen aanvallers en verdedigers. Spam zal dus blijven binnenkomen, maar NLP-deskundigen beschouwen spam als zijnde opgelost binnen NLP. Daar mag je het best mee oneens zijn, maar zij stellen dat ook voor spam de NLP algoritmes steeds beter zullen worden.</p>



<h3 class="wp-block-heading" id="h-4-chatbots">4. Chatbots</h3>



<p>Chatbots zie je eigenlijk al continue op allerlei websites. Zij gaan uit van getypte tekst in een passend vakje. Maar wist je al dat een aantal chatbots al context (semantiek) gebruiken om tot een beter resultaat te komen? Door het gebruiken van deep learning zijn sommige al zover, dat jij kunt worden verrast door de relevantie van het gegeven antwoord. De antwoorden maken al gebruik van ‘eigen’ taal.</p>



<h3 class="wp-block-heading" id="h-5-samenvatten-van-teksten">5. Samenvatten van teksten</h3>



<p>Er komt steeds meer digitale tekst beschikbaar, al deze tekst kan worden verwerkt. Bijvoorbeeld om samenvattingen, indexaties en databases te maken. Hetzelfde geldt natuurlijk voor beeldmateriaal.</p>



<p>Wat NLP en AI trachten te bereiken is het bieden van relevantie. Want daardoor kunnen mensen veel tijd besparen. Ze hoeven niet alles meer te lezen of bekijken, voordat ze vinden wat ze nodig hebben.</p>



<p>Maar wist je al dat NLP ook al wordt ingezet om geautomatiseerd context toe te voegen en conclusies te trekken?</p>



<h3 class="wp-block-heading" id="h-6-text-to-speech">6. Text to speech</h3>



<p>Een tekst kan getransformeerd worden naar gesproken taal. Dit helpt o.a. visueel gehandicapten.</p>



<h3 class="wp-block-heading" id="h-7-virtuele-assistenten">7. Virtuele assistenten</h3>



<p>Het tegenovergestelde van text to speech is spraakherkenning. De bekendste virtuele assistenten zijn Siri, Alexa en Google Assistent. Deze assistenten proberen patronen in spraakopdrachten te herkennen. Ze reageren met een actie of commentaar op jouw spraakopdracht in natuurlijke taal. Het uitspreken van tekst noemt men spraaksynthese.</p>



<h3 class="wp-block-heading" id="h-8-sentimenten-van-sociale-media">8. Sentimenten van sociale media.</h3>



<p>Het meten van de sentimenten van sociale media maakt nog steeds veel los. NLP maakt verborgen gegevensinzichten inzichtelijk door enorme hoeveelheden data te analyseren.</p>



<div class="wp-block-image"><figure class="alignright size-large is-resized"><img decoding="async" loading="lazy" src="https://www.agile4all.nl/wp-content/uploads/2021/05/hashtag.jpg" alt="hashtag" class="wp-image-5981" width="167" height="167" srcset="https://www.agile4all.nl/wp-content/uploads/2021/05/hashtag.jpg 640w, https://www.agile4all.nl/wp-content/uploads/2021/05/hashtag-300x300.jpg 300w, https://www.agile4all.nl/wp-content/uploads/2021/05/hashtag-150x150.jpg 150w, https://www.agile4all.nl/wp-content/uploads/2021/05/hashtag-100x100.jpg 100w" sizes="(max-width: 167px) 100vw, 167px" /></figure></div>



<p>Wat er feitelijk gebeurt is dat NLP wordt ingezet om berichten, reacties, reviews en allerlei houdingen en emoties te beoordelen op basis van&nbsp;gehanteerde taal. Deze inzichten kunnen dan weer worden gebruikt voor tal van doeleinden.</p>



<h3 class="wp-block-heading" id="h-9-het-voorspellen-van-trends">9. Het voorspellen van trends</h3>



<p>Naast het bepalen van sentimenten in sociale media, kan men NLP ook richten op specifieke onderwerpen.</p>



<p>Door het scannen van relevante sites, blogs, documenten en beeldmateriaal kan men informatie ophalen en deze classificeren. Daarbij kan NLP bijvoorbeeld ook bepalen of er op het onderwerp positief of negatief wordt gereageerd. Waardoor men uiteindelijk beter kan voorspellen.</p>



<p>Voorbeelden hiervan zijn toepassingen in de wetenschap of door overheidsinstanties t.b.v. de nationale veiligheid.</p>



<h2 class="wp-block-heading" id="h-welke-impact-heeft-nlp-op-jou">Welke impact heeft NLP op jou?</h2>



<p>Alle voorgaande voorbeelden van een steeds betere NLP stellen jou in staat om anders naar jouw persoonlijke omstandigheden te kijken.</p>



<p>Het gemak waarmee deze systemen ingezet kunnen worden voor persoonlijke doeleinden zal het jou gemakkelijker maken om doelen te bereiken. We vinden het al heel normaal om een computer aan de lijn te krijgen of thuis vragen te stellen aan een speaker met ‘Alexa’.</p>



<p>Naast het gemak, zullen uit de NLP ontwikkeling ook aandachtspunten ontstaan. Een belangrijk aandachtspunt is wat NLP kan betekenen voor jouw organisatie en jouw rol? Om het je gemakkelijk te maken: als jouw taak is om de telefoon op te nemen en simpele antwoorden te geven, dan is het tijd om je verder te gaan ontwikkelen.</p>



<p>Ontwikkeling is nodig, want eenvoudig werk zal door AI en NLP als eerste kunnen worden vervangen. Is dit erg? In veel gevallen niet, want het complexe en interessante werk blijft nog nodig. Maar, dan moet je nu in actie komen om dat interessante werk straks wel te beheersen. Het kan echter ook zijn dat je nu al moet gaan nadenken over een carrière switch.</p>



<h2 class="wp-block-heading" id="h-tot-slot">Tot slot</h2>



<p>NLP richt zich op het taalaspect binnen Artificial Intelligence. NLP ontwikkelt zich razendsnel. Je hebt gegarandeerd al te maken gehad met NLP. </p>



<p>Met elkaar verbinden is nodig, men heeft een gedeelde taal nodig om elkaar beter te begrijpen. Zelfs als het begrijpen van de taal van een ander komt door een machine, is het kunnen verbinden belangrijker.</p>



<p>Vraag je eens af wat Natural Language Processing voor jou kan gaan betekenen. In je werk, voor jouw toekomst en gewoon voor fun. Wellicht raak je hierdoor ook geïnteresseerd in <a href="https://www.agile4all.nl/artificial-intelligence/" target="_blank" rel="noreferrer noopener">Artificial Intelligence</a> en robotisering.</p>



<p>Wil je meer weten over NLP dan is de <a href="https://en.wikipedia.org/wiki/Natural_language_processing" target="_blank" rel="noreferrer noopener">Engelstalige Wikipedia</a> als vervolgstap interessant.</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/wat-is-natural-language-processing/">Wat is Natural Language Processing?</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Wat is de Mikado-methode?</title>
		<link>https://www.agile4all.nl/wat-is-de-mikado-methode/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wat-is-de-mikado-methode</link>
		
		<dc:creator><![CDATA[Peter]]></dc:creator>
		<pubDate>Sun, 06 Sep 2020 17:22:29 +0000</pubDate>
				<category><![CDATA[Intermediate]]></category>
		<category><![CDATA[Overige]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://www.agile4all.nl/?p=5176</guid>

					<description><![CDATA[<p><span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">6</span> <span class="rt-label rt-postfix">min.</span></span> De Mikado-methode is een framework om veranderingen aan te brengen in een complexe code door software ontwikkelaars. Een goede eerste indicatie van waar Mikado voor staat is dat de bedenkers het een Naïeve Aanpak noemen. De bedenkers zijn Ola Ellnestam en Daniel Brolund. Zij beschrijven de Mikado-methode als een framework ...</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/wat-is-de-mikado-methode/">Wat is de Mikado-methode?</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></description>
										<content:encoded><![CDATA[<span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">6</span> <span class="rt-label rt-postfix">min.</span></span>
<p>De Mikado-methode is een framework om veranderingen aan te brengen in een complexe code door software ontwikkelaars. Een goede eerste indicatie van waar Mikado voor staat is dat de bedenkers het een <strong>Naïeve Aanpak</strong> noemen.</p>



<p>De bedenkers zijn Ola Ellnestam en Daniel Brolund. Zij beschrijven de Mikado-methode als een framework hoe om te gaan met complexe veranderingen wanneer code (t.b.v. een it-systeem) herschreven dient te worden. Maar wat als de ontwikkelaars het risico van aanpassen te groot vinden of het gewoonweg&nbsp; niet aandurven vanwege de mogelijke consequenties?&nbsp;</p>



<p>Zoals je vermoedelijk wel weet is Mikado ook een spel waarbij je stokjes weghaalt zonder dat je de andere stokjes laat bewegen. Net als het spel is het veranderen (het weghalen van een stokje) bij kleine veranderingen vaak nog goed te overzien.</p>



<p>Naarmate je verder komt in het spel zijn er steeds meer onderlinge afhankelijkheden.&nbsp;Dit wordt in deze methode als volgt beschreven: op een willekeurig gegeven moment zullen grote of kleine veranderingen in eerder geschreven code plaats dienen te vinden.</p>



<p>Mikado richt zich met name op grote veranderingen, waarbij het handig is om een framework of methodiek te hanteren. Het hoofddoel van de Mikado-methode is overzicht te houden tijdens de verandering, waardoor de kans op fouten in de code afneemt.</p>



<div class="wp-block-image"><figure class="alignright size-large is-resized"><img decoding="async" loading="lazy" src="https://www.agile4all.nl/wp-content/uploads/2020/09/De-Mikado-Method-Ola-Ellnestam-Daniel-Brolund-cover-.jpeg" alt="De Mikado Methode - cover" class="wp-image-5179" width="99" height="123" srcset="https://www.agile4all.nl/wp-content/uploads/2020/09/De-Mikado-Method-Ola-Ellnestam-Daniel-Brolund-cover-.jpeg 481w, https://www.agile4all.nl/wp-content/uploads/2020/09/De-Mikado-Method-Ola-Ellnestam-Daniel-Brolund-cover--242x300.jpeg 242w, https://www.agile4all.nl/wp-content/uploads/2020/09/De-Mikado-Method-Ola-Ellnestam-Daniel-Brolund-cover--100x124.jpeg 100w" sizes="(max-width: 99px) 100vw, 99px" /></figure></div>



<p>Het Mikado-model is beschreven in het boek The Mikado Method. Het boek is in Nederland bij de bekende verkooppunten verkrijgbaar, maar is nu (deels) vrijgegeven op <a href="https://www.manning.com/books/the-mikado-method" target="_blank" rel="noreferrer noopener">manning.com</a> en daar in te zien. </p>



<p>Dit artikel zal met name software ontwikkelaars aanspreken, toch is het ook interessant voor Scrum Masters en Agile Coaches. De Mikado-methode hanteert namelijk een andere benadering dan veelal gebruikelijk en bouwt voort op agile processen zoals refactoring, TDD en snelle feedback. </p>



<h2 class="wp-block-heading">De 4 basisbegrippen van de Mikado-methode</h2>



<p>De Mikado-methode wordt ook wel het Mikado framework genoemd. De methode hanteert 4 basisbegrippen. Deze 4 basisbegrippen zijn eenvoudig te begrijpen:</p>



<ul><li>Stel een doel</li><li>Experimenteer</li><li>Visualiseer en</li><li>Maak ongedaan.</li></ul>



<p>Kortom, geen ‘rocket science’, maar waarom is het dan anders? Het &#8216;anders zijn&#8217; ligt in het specifieker kijken naar wat het onderliggende probleem is.</p>



<h2 class="wp-block-heading">Wat is het onderliggende probleem?</h2>



<p>De auteurs beschrijven dat alle softwareontwikkelaars ooit een grasmat zullen moeten betreden waar ze liever niet op willen spelen. Dit wordt beschreven als volgt: de code was ooit vers groen gras, maar inmiddels is het een bruin veld (brown fields) waar men liever niet meer komt. Simpelweg omdat het veranderen van de code teveel organisatie of persoonlijke risico’s met zich meebrengt.</p>



<p>Door velen medewerkers in de organisatie is het niet mogelijk of gewenst om de wedstrijd op of met het bruine gras aan te gaan vanwege de voornoemde risico&#8217;s, maar het voortbestaan van een organisatie is veelal mede afhankelijk van verse code. Een organisatie heeft vers groen gras nodig om het concurrentiespel goed te kunnen spelen. Aan de ontwikkelaars de taak om een omgeving te creëren waarmee de organisatie de concurrentiestrijd aan kan gaan.</p>



<p>En als je als ontwikkelaar dat bruine veld dan toch moet betreden is het Mikado-model met 9 processtappen volgens de auteurs een zeer geschikt middel: ‘het werkt heel goed samen met Extreme Programming, Scrum en <a href="https://www.agile4all.nl/wat-is-kanban/" target="_blank" rel="noreferrer noopener">Kanban</a>.’</p>



<h2 class="wp-block-heading">De 9 processtappen van de Mikado-methode.</h2>



<p>De 9 processtappen van de Mikado-methode worden kort toegelicht. De afbeelding toont het framework.</p>



<figure class="wp-block-image size-large"><img decoding="async" loading="lazy" width="720" height="540" src="https://www.agile4all.nl/wp-content/uploads/2020/09/De-Mikado-methode-Ellnestam-Brolund.jpg" alt="De Mikado-methode in 9 stappen - Ellnestam - Brolund" class="wp-image-5186" srcset="https://www.agile4all.nl/wp-content/uploads/2020/09/De-Mikado-methode-Ellnestam-Brolund.jpg 720w, https://www.agile4all.nl/wp-content/uploads/2020/09/De-Mikado-methode-Ellnestam-Brolund-300x225.jpg 300w, https://www.agile4all.nl/wp-content/uploads/2020/09/De-Mikado-methode-Ellnestam-Brolund-100x75.jpg 100w" sizes="(max-width: 720px) 100vw, 720px" /></figure>



<h2 class="wp-block-heading">Stap 1: Teken het originele Mikado doel.</h2>



<p>Schrijf een <a href="https://www.agile4all.nl/metrics-en-user-stories/">User Story</a> voor het Mikado doel. Schrijf het Mikado doel op een stuk papier, trek er een dubbele cirkel eromheen.</p>



<p>De dubbele cirkel is er om gedurende alle processtappen het oorspronkelijke doel aan te geven. Het doel waar men zich aan gecommitteerd heeft wat dus behaald dient te worden. Je creëert focus en alles wat je doet moet gericht zijn op het behalen van het doel.</p>



<p>Het doel draagt zorg voor&nbsp;2&nbsp;belangrijke voorwaarden:</p>



<ul><li>Is het gekozen doel het startpunt voor verandering?</li><li>Zonder doel weet je niet of je succesvol bent.</li></ul>



<p>Het belangrijkste van het doel is echter dat het je doet bewegen tot het doen van een experiment. Zie stap 2.</p>



<h2 class="wp-block-heading">Stap 2: Voer het doel naïef uit</h2>



<p>Ga direct experimenteren,  analyseer vooraf de mogelijke gevolgen niet, implementeer en leer. Dit heet de Naïeve Aanpak, want je creëert een experiment om te leren. De gedachte erachter is dat er regelmatig veel tijd besteed wordt aan analyseren en te interpreteren, terwijl de wijziging direct doorvoeren direct de juiste inzichten verstrekt.</p>



<p>Zodra je gaat experimenteren gaan er dingen ook fout, hiervan leer je en kan je diverse variabelen valideren en/of voorbereidingen treffen.</p>



<p>In sommige organisaties ontstaan dan de eerste spanningen, want leren door fouten te maken past goed binnen agile denken. Maar niet alle organisaties zijn gecharmeerd van deze gedachtegang, daar mogen fouten niet of beperkt worden gemaakt. Dat is tevens een van de redenen waarom de verouderde systemen niet graag door de ontwikkelaars worden aangepakt.</p>



<h2 class="wp-block-heading">Stap 3: Zoek eventuele fouten</h2>



<p>Ontdek je fouten, belemmeringen en/of problemen dan ga je door naar&nbsp;stap vier. Dat is echter geen procesfout of verloren tijd, je hebt inzicht gekregen in de afhankelijkheden die het bereiken van jouw doel belemmeren. </p>



<p>Zijn er geen fouten dan ga je door naar stap 8 of 7. Zie afbeelding.</p>



<h2 class="wp-block-heading">Stap 4: Kom met directe oplossingen voor de fouten</h2>



<p>Fouten dienen opgelost te worden, over-analyseer deze fouten echter niet. Kom met directe oplossingen, het maakt volgens de methodiek niet uit waar deze gevonden worden. Kom dus snel met een oplossing in de volgende iteratie.</p>



<p>Vaak is er sprake van diverse afhankelijkheden en deze dienen opgelost te worden voor implementatie. Dit doe je door voortdurende iteraties, waarbij het geleerde wordt meegenomen naar de toekomstige iteratie.</p>



<h2 class="wp-block-heading">Stap 5: Teken de directe oplossingen als nieuwe voorwaarden</h2>



<p>Het visueel maken is een heel bekende agile werkwijze. De oplossing wordt opgeschreven en verwijst met een pijl naar het doel. De oplossing noemt men daaropvolgend een voorwaarde voor het oorspronkelijke doel.</p>



<p>Dit is een leerproces op zichzelf, de ene keer is de oplossing geschikt voor meerdere fouten en kan je deze met 1 pijl aangeven de andere keer wordt je geconfronteerd met&nbsp; veel meer oplossingen voor veel verschillende problemen. </p>



<p>Soms heb je geen oplossing, hanteer dan een ‘placeholder’ waar ‘de fout’ op staat. Deze komt later in de rebound.</p>



<h2 class="wp-block-heading">Stap 6: Zet de code terug in de oorspronkelijke staat als er fouten zijn gemaakt.</h2>



<p>De zesde stap van de Mikado-methode is in menig organisatie een issue. Want eindelijk is er iets opgeleverd, maar dan blijken er alsnog fouten in de code naar voren te komen. Een veelvoorkomende reactie is dan om datgene dat werkt te behouden en alleen de fout(en) te herstellen.</p>



<p>In de Mikado-methode is dit het lastigste onderwerp, de werkwijze die men dan hanteert is het volledig ongedaan maken van de oplevering of te wel de gedane wijziging terugbrengen in de oorspronkelijke staat! Volgens velen is dit het vernietigen van gedaan werk! </p>



<p>Dit is volgens de bedenkers de grootste en belangrijkste drempel bij het toepassen van deze methode. </p>



<h2 class="wp-block-heading">De Naïeve Aanpak</h2>



<p>Volgens de auteurs is er echter slechts één juiste methode. Blijf de Naïeve Aanpak hanteren! Stap 1 tot en met 5 geven het al aan, in deze zesde stap is het credo:</p>



<p class="has-vivid-cyan-blue-color has-text-color has-medium-font-size">Ga altijd terug naar de laatst werkende situatie, voordat je verdere wijzigingen doorvoert. </p>



<p class="has-luminous-vivid-orange-color has-text-color has-medium-font-size">Het vermijden van fout op fout stapeling is essentieel voor herhaalbaarheid en voorspelbaarheid.</p>



<p>Het achterliggende idee is heel eenvoudig, je zult fouten moeten maken om te kunnen leren. Het leren gaat met horten en stoten en wordt in een aantal organisaties helaas gezien als verspilling. Dat is het volgens de auteurs echter niet, het is in hun visie de belangrijkste manier om te leren. </p>



<p>Ze stellen zelfs dat het niet terug kunnen gaan na een eerder werkende versie berust op een misvatting.&nbsp;Het gaat immers niet alleen om het opleveren van werkende code. Een systeemontwikkeling dient zich volgens hen te richten op het leren over het systeem, het domein, de taal en de gebruikte technologie.</p>



<p>Het maken van de veranderingen is slechts een fragment van de totale ontwikkeltijd en de grote waarde van de <strong>Naïeve Aanpak</strong> is wat je leert over het systeem. Het stelt je in staat om te zien wat je eigenlijk in de weg staat.</p>



<p>Het overwinnen van de angst om terug te keren is een belangrijke stap voorwaarts in de Mikado-methode</p>



<h2 class="wp-block-heading">Stap 7: Herhaal het proces voor elk van de directe oplossingen</h2>



<p>Herhaal voor elk van de voorwaarden, één voor één, de voorgaande stappen, beginnend met stap 2. Dit betekent dat voor elk van de voorwaarden, begin met een schoon werkend systeem en probeer de voorwaarde naïef te implementeren. Zoek de fouten (indien aanwezig), bedenk oplossingen voor de fouten, noteer ze als voorwaarde, draai de wijzigingen terug en ga dan verder met de volgende voorwaarde.</p>



<h2 class="wp-block-heading">Stap 8: Controleer of er geen fouten zijn</h2>



<p>Als er verder geen fouten zijn dan is de verandering geslaagd, dit geef je aan met een vinkje bij de oplossing. Je kan dan overgaan tot het overdragen van de code. Veelal hanteert met hiertoe een aantal voorwaarden:</p>



<ul><li>De code wordt gecompileerd.</li><li>De testen worden uitgevoerd.</li><li>Het product is goed.</li><li>De veranderingen zijn zinvol om in te checken.</li></ul>



<p>Wellicht zullen er nog wat veranderingen moeten worden doorgevoerd en ga je door met de volgende iteratie en een nieuwe voorwaarde. Je start weer bij stap 2.</p>



<p>Als de wijzigingen niet helemaal zinvol zijn, kijk dan naar de afbeelding en kijk of ze vergezeld moeten gaan van een paar extra wijzigingen om een verstandige oplevering te maken. Je kunt eventueel&nbsp;het controleren van de voorwaarden uitstellen, totdat je de code incheckt.</p>



<p>Ga verder met het selecteren van een nieuwe voorwaarde om mee te werken als volgende iteratie, en herhaal het proces vanaf stap 2.</p>



<h2 class="wp-block-heading">Stap 9: Als het Mikado doel is bereikt, ben je klaar!</h2>



<p>Het doel is bereikt, alle voorwaarden zijn vervuld de code is ingecheckt. Tijd voor een feestje en weer door!</p>



<h2 class="wp-block-heading">Samenvatting</h2>



<p>De Mikado-methode is een andere kijk op software ontwikkeling. Dit artikel geeft inzicht in hoofdlijnen van het proces. Wellicht is de Mikado Methode niet geheel nieuw voor je, maar het is interessant om je nog eens verder te verdiepen in deze methode.</p>



<p>Hiervoor verwijs ik je naar het boek of <a href="https://www.manning.com/books/the-mikado-method" target="_blank" rel="noreferrer noopener">manning.com</a> waar veel dieper op dit framework wordt ingegaan.&nbsp; </p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/wat-is-de-mikado-methode/">Wat is de Mikado-methode?</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Wat is UX? User Experience!</title>
		<link>https://www.agile4all.nl/user-experience/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=user-experience</link>
		
		<dc:creator><![CDATA[Peter]]></dc:creator>
		<pubDate>Sun, 18 Aug 2019 15:36:07 +0000</pubDate>
				<category><![CDATA[Advanced]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://www.agile4all.nl/?p=2745</guid>

					<description><![CDATA[<p><span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">5</span> <span class="rt-label rt-postfix">min.</span></span> UX staat voor User Experience (gebruikerservaring). UX zijn alle interacties die een persoon kan hebben met een product, website, platform of service. Door deze interacties ontstaan emoties, ervaringen en een houding bij de &#8216;gebruiker&#8217; van jouw product. Veelal een systeem, website, platform of service. Met het inzetten van ‘User Experience’ ...</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/user-experience/">Wat is UX? User Experience!</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></description>
										<content:encoded><![CDATA[<span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">5</span> <span class="rt-label rt-postfix">min.</span></span>
<p>UX staat voor User Experience (gebruikerservaring). UX zijn alle interacties die een persoon kan hebben met een product, website, platform of service. Door deze interacties ontstaan emoties, ervaringen en een houding bij de &#8216;gebruiker&#8217; van jouw product. Veelal een systeem, website, platform of service.</p>



<p>Met het inzetten van ‘User Experience’ in het ontwikkelproces ga je op een gestructureerde wijze op zoek naar een ontwerp dat resulteert in een optimale gebruikerservaring. </p>



<p>Het UX proces bestaat uit een aantal stappen. Om het direct duidelijk te maken: je stapt in de schoenen van de gebruiker en denkend en handelend vanuit de gebruiker gaat men het functioneren van jouw website, dienst of product beoordelen. Om daarna verbeteringen aan te brengen.</p>



<p>User Experience is in de praktijk:</p>



<ul><li>Het identificeren en weghalen van&nbsp;barrières.</li><li>Het de gebruiker gemakkelijk maken om bepaalde taken te voltooien. </li><li>Een platform snel de wensen van de bezoeker laten vervullen.</li><li>Hoe sneller de gebruiker zijn doel bereikt, hoe beter het&nbsp;UX design is.</li></ul>



<p>Dit artikel over User Experience beschrijft een simpel stappenplan met een uitgebreid voorbeeld. </p>



<h2 class="wp-block-heading">Ontwikkeling van UX</h2>



<p>Het begrip User Experience is al vrij lang in gebruik. In marketing is het al decennia lang een eis om een goed inzicht te hebben in de wensen van een prospect of klant en daar producten of diensten goed op aan te laten sluiten.</p>



<p>De driver achter de huidige ontwikkeling in User Experience is de versnelling in de mens &amp; machine benadering, zoals bijvoorbeeld computer technologieën en website design. </p>



<h4 class="wp-block-heading">1. Computer technologieën </h4>



<p>Voorbeelden hiervan zijn mobiel, sociale platforms en robotisering. De gebruiker ervaart een steeds hoger niveau. Als jouw &#8216;product&#8217; geen goede gebruikerservaring biedt zijn er voldoende alternatieven. Switchen naar een andere aanbieder is slechts 1 click!</p>



<h4 class="wp-block-heading">2. Website design</h4>



<p>Van ‘techniek’ naar een interactieve omgeving. Waarbij de totale beleving en interactie van de gebruiker met de website bepalend is voor het resultaat. Hiervoor komen o.a. marketing, branding, design en ontwerpers samen voor slechts één doel: een optimale klantbeleving voor een optimaal resultaat. </p>



<h2 class="wp-block-heading">Beschrijving van User Experience </h2>



<p>User Experience lijkt in eerste instantie best lastig te ondervangen, want het gaat over emoties en een totale gebruikerservaring van een product, dienst of service. De toepassing is veelal gericht op interactie van één persoon met een website, maar het kan dus voor meer doeleinden gebruikt worden.</p>



<p>Maar hoe meet je nu percepties? Hoe kijk je naar systeemaspecten zoals nut, gebruiksgemak en efficiëntie? Terwijl de perceptie en het gedrag van de gebruiker continue veranderd.</p>



<p>Daarbij spelen ervaringen van buitenaf ook een belangrijke rol. Een gebruiker leest wellicht slecht nieuws, hoort meningen van vrienden, leest opinies en ziet wellicht milieuaspecten. Al deze bronnen kunnen een een grote impact hebben op de beleving van jouw merk en de gebruikerservaring. </p>



<p>Je wilt de gebruiker begrijpen om hem/haar een optimale gebruikerservaring aan te bieden. </p>



<p>Als voorbeeld neem ik een website. Veel medewerkers van een website kennen hun eigen website van A tot Z. In het verleden heeft de site allemaal logische keuzes gemaakt, maar is dit nu ook nog zo? De gedachtegang die bij de ontwikkeling is gevolgd is wellicht voor de huidige gebruiker helemaal niet gewenst. </p>



<p>Voor vrijwel iedereen is dit een heel herkenbare situatie. Welke sites bezoek je eigenlijk niet meer? Heeft een bepaalde site jouw voorkeur? Zonder dat je het weet is de reden vaak een UX-design, waarbij &#8216;jouw&#8217; wensen en gedragingen zijn meegenomen in het ontwerp. Bij het ontwerpen of aanpassen van een site gebruikt men vaak UX scenario&#8217;s.</p>



<h2 class="wp-block-heading">Wat is een UX scenario?  </h2>



<p>In de inleiding staat al dat je in de schoenen van de gebruiker stapt. Daartoe  hanteert men binnen User Experience een scenario. </p>



<p>Een scenario is een (visueel) verhaal voor één persoon. Deze persoon staat vaak synoniem voor het gebruikersgedrag van meerdere gebruikers. Per scenario is er één specifiek doel dat moet worden bereikt. Dit wordt vaak aangeduid met persona. Als er meerdere persona’s zijn zullen deze separaat besproken worden.</p>



<p>Het doel van UX is het denken en handelen van de gebruiker centraal te stellen in de ontwikkeling van mogelijke oplossingen. Het hanteren van Scenario&#8217;s maakt het mogelijk om de stappen die de gebruiker neemt te visualiseren. </p>



<p>Scenario&#8217;s zijn snel te gebruiken en hebben een sterke focus op het verkrijgen van inzicht van de gebruikersacties. Scenario&#8217;s is de eenvoudigste manier om de verbeelding te prikkelen en begrijpelijk te maken wat er precies de gebruikerservaring is. Daartoe volgt later in de tekst een uitgewerkt voorbeeld.</p>



<h2 class="wp-block-heading">Soorten Scenario&#8217;s</h2>



<p>Scenario&#8217;s zijn op meerdere niveaus mogelijk. Een vaak gebruikte indeling is op het niveau van de gevisualiseerde informatie en de diepte van de benodigde inzichten door het team. </p>



<ul><li>Heeft het team voldoende aan het begrijpen van het gebruikers doel en de genomen stappen door de gebruiker?</li><li>Heeft het team ook suggesties nodig om de stappen te verbeteren?</li><li>Wilt het team een gedetailleerd inzicht in alle te ondernemen stappen om de gebruikerservaring te verbeteren? </li></ul>



<p>Bovenstaande scenario&#8217;s gaan van simpel naar complexe onderzoekstrajecten.</p>



<h2 class="wp-block-heading">Het toepassen van
Scenarios</h2>



<p>Hoe kan je nu scenario’s toepassen om het gedrag van de gebruiker te koppelen aan de lay-out van een website? Dat doe je in een aantal stappen, deze staan hieronder beschreven:</p>



<h3 class="wp-block-heading">1. Voorbereiding (plan)</h3>



<p>Het doel van een UX sessie is dat de gebruikerservaring van de persona wordt besproken. Denk daarbij aan de mogelijke scenario’s, persona en functies die mogelijk besproken gaan worden. Maar denk ook aan het regelen van een ruimte incl. de benodigde materialen: post-its, sharpies, brown paper of white board.</p>



<p>Stel bij voorkeur een multidisciplinair team samen. Bijvoorbeeld een sessie met UX-onderzoekers, ontwerpers en testers. Let wel op de grootte van het team. Denk aan een teamgrootte van 5 tot max. 8 personen.</p>



<p>Vaak nodig je de deelnemers uit met een toelichting waar de sessie over gaat. Het dient duidelijk te zijn voor de teamleden wat het onderwerp is en wat er besproken gaat worden.</p>



<p>Wellicht kan je van te voren inschatten of er meer dan één sessie nodig is om alle geplande doelen te behandelen. Het komt regelmatig voor dat er meerdere persona’s besproken moeten worden. </p>



<h3 class="wp-block-heading">2. Start een sessie (do)</h3>



<p>De facilitator brengt de
eerste persona die in het scenario zal worden gebruikt naar voren. </p>



<p><strong>Persona:</strong> Dave is 23 jaar oud, studeert rechten en winkelt graag online. De redenen hiervoor zijn: tijd besparen, groter aanbod en meer variëteiten.</p>



<p><strong>Doel:</strong> Koop een betaalbaar en uniek cadeau voor een vriendin. </p>



<p>Er zijn meerdere mogelijkheden om de sessie te starten:</p>



<ul><li>De facilitator start met de introductie van de sessie en de doelen die tijdens de sessie worden besproken. Deze sessie kan strak begeleid worden of juist niet. </li></ul>



<ul><li>Een andere mogelijkheid is dat het team de belangrijkste bespreekpunten binnen het onderwerp bepaald. Zie het artikel: <a href="https://www.agile4all.nl/wat-is-lean-coffee/">Wat is lean coffee?</a></li></ul>



<h3 class="wp-block-heading">3. Visualiseer de stappen van de gebruiker</h3>



<p>Eindelijk het team gaat aan de slag.</p>



<p>Op post-its worden alle de stappen beschreven die de persona moet doorlopen om het doel te bereiken. </p>



<p>Eerst worden deze stappen verder uitgewerkt, denk hierbij aan reacties van het team op de stap. Observaties, eerdere inzichten of feedback van klanten. Maak hierbij onderscheid tussen feiten, vragen en aannames. Toon de kenmerken, zoals hoe de producten zijn afgebeeld en waar deze te vinden zijn.</p>



<p>Daarna volgen de ideeën en suggesties die deze stap kunnen verbeteren. Herhaal de stappen voor alle functies die van toepassing zijn. Dus elk doel en elk personage wordt apart behandeld.  </p>



<p>De sessie met post-its van de UX &#8211; User Experience &#8211; Scenario&#8217;s ziet er dan als volgt uit:</p>



<figure class="wp-block-image"><img decoding="async" loading="lazy" width="720" height="540" src="https://www.agile4all.nl/wp-content/uploads/2019/08/UX-User-Experience-Scenarios.jpg" alt="UX - User Experience - Scenario's" class="wp-image-2755" srcset="https://www.agile4all.nl/wp-content/uploads/2019/08/UX-User-Experience-Scenarios.jpg 720w, https://www.agile4all.nl/wp-content/uploads/2019/08/UX-User-Experience-Scenarios-300x225.jpg 300w, https://www.agile4all.nl/wp-content/uploads/2019/08/UX-User-Experience-Scenarios-100x75.jpg 100w" sizes="(max-width: 720px) 100vw, 720px" /></figure>



<p>Bekijk bovenstaande afbeelding, dan begrijp je hoe het stappenplan werkt.</p>



<p>Met het nemen van foto&#8217;s leg je deze sessie vast. Deel de foto&#8217;s met de teamleden. Stakeholders die niet bij deze sessie aanwezig waren ontvangen deze foto&#8217;s ook.</p>



<h3 class="wp-block-heading">4. Feedback (check)</h3>



<p>Feedback vragen en krijgen geeft extra inzichten. Belanghebbenden krijgen de ruimte om feedback te geven. Voor snelle feedback is het mogelijke om belanghebbenden direct na de sessie uit te nodigen om het increment te laten zien. Toesturen van de gemaakte foto&#8217;s met verzoek voor feedback kan natuurlijk ook. Een feedback sessie, zoals de <a href="https://www.agile4all.nl/ik-ik-jij-feedback-methode/">ik-ik-jij feedback methode</a> is in dit geval niet gebruikelijk. </p>



<h3 class="wp-block-heading">5. Bouwen! (act)</h3>



<p>Na het ontvangen van de feedback is er een sessie om de verkregen feedback mee te nemen in het scenario. Daarna bouwt en implementeert men de definitieve versie.</p>



<h2 class="wp-block-heading">Samenvattend</h2>



<p>Scenario’s is een eenvoudige
en efficiënte tool in het UX-onderzoek. Door gebruikerservaring te visualiseren
krijg je een beter inzicht in het gebruikersgedrag en de stappen die nodig zijn
om elke taak uit te voeren. </p>



<p>Het gevisualiseerde scenario, met suggesties en opmerkingen voor elke stap, maakt verbeteren gemakkelijk.</p>



<p>Een scenario is ook een goed startpunt voor een ontwerp- en ontwikkelteam om snel te komen tot een functioneel en doordacht ontwerp.</p>



<p>In een ander jasje en voor een ander gebruiksdoel ingezet. Scenario&#8217;s lijkt veel op: Plan, Do, Check en Act! De <a href="https://www.agile4all.nl/wat-is-de-six-sigma-methodiek/">PDCA kwaliteitscirkel</a> van Deming!</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/user-experience/">Wat is UX? User Experience!</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Blockchain</title>
		<link>https://www.agile4all.nl/blockchain/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=blockchain</link>
		
		<dc:creator><![CDATA[Peter]]></dc:creator>
		<pubDate>Sun, 03 Feb 2019 11:06:57 +0000</pubDate>
				<category><![CDATA[Intermediate]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://www.agile4all.nl/?p=462</guid>

					<description><![CDATA[<p><span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">6</span> <span class="rt-label rt-postfix">min.</span></span> Wat is blockchain? “The blockchain is an incorruptible digital ledger of economic transactions that can be programmed to record not just financial transactions but virtually everything of value.” Don &#38; Alex Tapscott, authors Blockchain Revolution (2016). Wat is een distributed ledger? Een ledger is een consensus van gerepliceerde, gedeelde en ...</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/blockchain/">Blockchain</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></description>
										<content:encoded><![CDATA[<span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">6</span> <span class="rt-label rt-postfix">min.</span></span>
<h1 class="wp-block-heading">Wat is blockchain?</h1>



<blockquote class="wp-block-quote"><p>“The blockchain is an incorruptible digital ledger of economic transactions that can be programmed to record not just financial transactions but virtually everything of value.” Don &amp; Alex Tapscott, authors Blockchain Revolution (2016).</p></blockquote>



<h2 class="wp-block-heading">Wat is een distributed ledger?</h2>



<p>Een ledger is een consensus van gerepliceerde, gedeelde en gesynchroniseerde digitale gegevens die geografisch verspreid zijn over meerdere sites, landen of instellingen. Een soort grootboek waarvan alle aangesloten partijen over een deel van de informatie beslissen. Bron: <a href="https://en.wikipedia.org/wiki/Distributed_ledger">https://en.wikipedia.org/wiki/Distributed_ledger</a></p>



<h2 class="wp-block-heading">Inleiding</h2>



<div class="wp-block-image"><figure class="alignright"><img decoding="async" src="https://www.agile4all.nl/wp-content/uploads/2018/11/blockchain-afbeelding.jpg" alt="blockchain illustratie" class="wp-image-468"/></figure></div>



<p>Eerst twee definities, een inleiding en ook nog Blockchain op een site over Agile werken! Waarom? Om 2 redenen, de belangrijkste reden is dat&nbsp;<span style="text-indent: 0em;">het een technologische&nbsp;</span><span style="text-indent: 0em;">ontwikkeling is waarvan je minimaal ‘the&nbsp;basics’ mag weten.</span></p>



<p><span style="text-indent: 0em;">De tweede reden is dat de tijd rijp is om over de mogelijkheden binnen jouw organisatie na te denken.</span></p>



<h2 class="wp-block-heading">De blockchain droom:<img decoding="async" loading="lazy" class="alignnone size-full wp-image-1096" src="https://www.agile4all.nl/wp-content/uploads/2018/11/shape-2622304_1280.jpg" alt="" width="1280" height="853"></h2>



<p><em>Zou het niet mooi zijn als elke transactie gegarandeerd gevalideerd is, doordat de transactie niet alleen is vastgelegd in een centraal register, maar in een verbonden gedistribueerd systeem van registers, die allemaal met elkaar verbonden zijn door een veilig validatie mechanisme</em>?</p>



<p>Dit is inmiddels geen droom meer, het is een harde realiteit.</p>



<p>Nu vraag je je wellicht af, waar gaat dit over? Maar denk eens aan de Bitcoin. Een saldo en een transactie wordt (h)erkent en gevalideerd door meerdere registers. Ik heb het in dit artikel echter niet over Bitcoin. Waar ik het o.a. wel over ga hebben is de mogelijkheid om van grondstof tot eindgebruiker de totale keten inzichtelijk te krijgen.</p>



<p>De mogelijkheden van blockchain reiken namelijk veel verder dan Bitcoin, het is een revolutionaire ontwikkeling die business op dit moment snoeihard veranderd. De vraag is natuurlijk waarom?</p>



<div class="wp-block-image"><figure class="alignleft"><img decoding="async" loading="lazy" width="341" height="314" src="https://www.agile4all.nl/wp-content/uploads/2018/11/redenen-blockchain.png" alt="5 redenen blockchain toepassen" class="wp-image-464" srcset="https://www.agile4all.nl/wp-content/uploads/2018/11/redenen-blockchain.png 341w, https://www.agile4all.nl/wp-content/uploads/2018/11/redenen-blockchain-300x276.png 300w" sizes="(max-width: 341px) 100vw, 341px" /></figure></div>



<p>Tijdsbesparing, lagere kosten, dalend risico en meer vertrouwen. Een ook nog voorsprong op de concurrent. Dat is bijna te mooi om waar te zijn. Dus kom ik met een korte schets van een &#8216;probleem&#8217;, waardoor je direct de business uitdaging herkent.</p>



<h2 class="wp-block-heading">&nbsp;</h2>



<h2 class="wp-block-heading">Business uitdaging</h2>



<p>Stel je eens voor dat je een contract aan het schrijven bent. Je hebt meerdere mensen nodig die een bijdrage leveren. Voorheen gebeurde dat door stukken door te sturen en de andere persoon revisies op dit stuk te laten doen. Dan wacht je totdat het stuk retour is voordat het naar de volgende gaat etc. etc. Hiervoor is een (deel)oplossing gevonden door bijvoorbeeld Google docs te gebruiken. Er is één document waar meer mensen tegelijkertijd aan kunnen werken.</p>



<p>De echte uitdaging komt echter als je externe partijen uitnodigt om aan hetzelfde document te werken, helemaal als er financiële consequenties uit voort kunnen vloeien. Niet echt werkbaar.</p>



<p>Bij (complexe) transacties zullen stukken, contracten en afspraken meerdere keren over en weer gaan en/of gewijzigd worden. Hoe complexer, hoe minutieuzer en tijdrovender deze activiteiten zijn. Hoe hoger de kosten zijn. Maar vooral wie heeft er nog (totaal) overzicht?</p>



<h2 class="wp-block-heading">De basis van blockchain is de Ledger!</h2>



<p>Een ledger is DE systematiek van vastlegging van een transactie en contract.&nbsp;Gebaseerd op een set afspraken: zoals de wijze van vastlegging en de vastgelegde records.</p>



<p>Ik kom met een simpel voorbeeld van het belang van de shared ledger:&nbsp;de aan- en verkoop van een fiets op afstand.</p>



<p>Piet koopt op een veilingsite een fiets van Klaas. Hij weet niet dat Klaas de eigenaar is. Van Klaas is vooraf al bepaald dat hij de rechtmatige verkoper is. Bij Piet is vooraf geaccordeerd dat hij het geld heeft om te kopen. Bij verkrijging van &#8216;hoogste bod&#8217; door Piet is de transactie rond.&nbsp;<span style="text-indent: 0em;">De bank krijgt uit de veilingsite de transactie door. De bank gaat direct tot afschrijving over bij Piet&nbsp;</span><span style="text-indent: 0em;">(</span><em style="text-indent: 0em;">transactie</em><span style="text-indent: 0em;">)</span><span style="text-indent: 0em;">. Piet heeft daar geen probleem mee</span><span style="text-indent: 0em;">. In de wetenschap dat het geld geblokkeerd blijft staan, totdat hij akkoord geeft direct na ontvangst van de fiets. Stel: De fiets is overeenkomstig de verkoopbeschrijving: er zijn dus geen belemmeringen. Het geld gaat door naar Klaas (contract).</span></p>



<p><span style="text-indent: 0em;">Een andere mogelijkheid is dat er een probleem is: de fiets is geleverd zonder trappers. Dan meldt Piet dat er een probleem is. Het geld gaat nog niet over naar Klaas (</span><em style="text-indent: 0em;">contract</em><span style="text-indent: 0em;">). De afhandeling van deze ledger kan dan bijvoorbeeld worden beoordeeld door een onpartijdige derde. De afspraak binnen het netwerk kan dan zijn dat onpartijdige derde een (bindend) voorstel doet.</span></p>



<h2 class="wp-block-heading">Transacties zijn vaak niet uniek</h2>



<p>Zoals in het voorgaande voorbeeld valt te lezen is er een set van afspraken w.o. de transactie, de vastlegging en naleving van het contract. Waar in dit voorbeeld veel winst te behalen valt is deze afspraken set van toepassing te verklaren op alle fietstransacties binnen dit business netwerk. In concreto: de afspraken set behorend bij de verkoop van de fiets van Piet naar Klaas, geldt dan ook voor alle andere fiets aankoop/verkoop transacties. Vanzelfsprekend wordt er dan ook verder gebouwd aan meer&nbsp; mogelijkheden binnen de transactie en contract.</p>



<p>Nu is dit slechts een simpel voorbeeld, maar je begrijpt ook dat complexe transacties uniek lijken, maar dit vaak niet zijn. Uniek omdat het voor de aan- en verkooppartijen een eenmalige transactie is, maar deze transactie niet uniek is voor de tussenpersonen (e.g. banken). Vragen zoals: wat is de herkomst, waar zijn op welk moment de goederen, wie is op welk moment eigenaar, bij overdracht direct overboeken etc. etc.&nbsp;<span style="text-indent: 0em;">zijn universele vragen.</span></p>



<p>En zelfs als de transacties nog complexer zijn, zullen ze later wellicht vaker gaan plaatsvinden. I.p.v. elke keer het wiel opnieuw uitvinden. Bouwt het business netwerk steeds aan nieuwe vormen binnen blockchain. Er zijn dus meerdere ledgers binnen een business netwerk.</p>



<p>Maar ook zullen de partijen toetreden tot meerdere business netwerken, omdat ook andere type dienstverleners van andere type ledgers nodig zijn.</p>



<h2 class="wp-block-heading">4 soorten blockchains</h2>



<p>Hoewel dit artikel gaat over business blockchains kan ik niet voorbij gaan aan 4 verschillende type blockchains;</p>



<ul><li>simpele vormen
<ul>
<li>gecentraliseerd</li>
<li>gedecentraliseerd</li>
</ul>
</li><li>distributed ledgers
<ul>
<li>anoniem</li>
<li>niet anoniem</li>
</ul>
</li></ul>



<p>Daar ga ik in dit artikel niet verder op in, maar is wel alvast handig om te weten.</p>



<h2 class="wp-block-heading">Waar moet een business blockchain aan voldoen?</h2>



<p>Een business blockchain kan pas tot stand komen als er voldaan is aan&nbsp;4 vereisten: shared ledger, smart contract, privacy en trust.</p>



<h1 class="wp-block-heading"><img decoding="async" loading="lazy" class="wp-image-466 aligncenter" src="https://www.agile4all.nl/wp-content/uploads/2018/11/Blockchain-puzzelstukjes.png" alt="De 4 onderdelen van blockchain" width="417" height="300"></h1>



<h3 class="wp-block-heading">Shared ledger:</h3>



<ul><li>Deelnemers zien alleen een deel van de transacties, terwijl alle informatie van alle partijen is opgenomen in de ledger</li><li>De afgesproken en benodigde informatie wordt gedeeld door deelnemers overeenkomstig het raamwerk van afspraken.</li><li>Deelnemers hebben een kopie, het werkelijke bewijs ligt in de vastlegging in de blockchain.</li></ul>



<h3 class="wp-block-heading">Smart Contract</h3>



<p>Het slimme contract is vanzelfsprekend. Volgens afspraken gaat de afhandeling via de blockchain. De business regels worden dus vastgelegd in het contract, ingebed in de blockchain en uitgevoerd met de transactie. Het contract is gevalideerd en getekend en in programmeertaal.</p>



<h3 class="wp-block-heading">Privacy</h3>



<p>Een belangrijke peiler. Het gaat om geld, het verdienmodel en transacties. Men wil soms niet weten wie de voorgaande eigenaar is en vaak geen openbaarheid gewenst over wie, tegen welke prijs, de nieuwe eigenaar is.</p>



<p>De ledger is gedeeld, maar deelnemers willen privacy. Dit betekent dat de algemene informatie en toestemmingen van betrokken partijen in netwerk wel te zien zijn, maar dat bijvoorbeeld de &#8216;eigen onderlinge afspraken&#8217; niet worden gedeeld.</p>



<p>Deelnemers willen namelijk dat de juiste vertrouwelijkheid bewaakt blijft en dat&nbsp;identiteit niet gelinked is aan een transactie. Overigens moeten de transacties vanzelfsprekend worden geverifieerd en wordt het proces&nbsp;beveiligd door cryptografie.</p>



<h3 class="wp-block-heading">Trust</h3>



<p>Een netwerk blijft alleen bestaan als er vertrouwen is tussen de partijen. Dit wordt bereikt door middel van consensus, de herkomst, onveranderlijkheid en finaliteit. Kortom, eenmaal plaatsgevonden? Dan kan niet meer gewijzigd worden.</p>



<p>De ledger is een vertrouwde bron van informatie, waarbij de deelnemers de transacties onderschrijven.</p>



<ul><li>Het netwerk beslist wie de transacties onderschrijven, onderschreven transacties worden toegevoegd aan de ledger met de juiste vertrouwelijkheid.</li><li>Assets hebben een verifieerbare controle mogelijkheid.</li><li>Transacties kunnen niet worden gewijzigd, toegevoegd en/of verwijderd.</li></ul>



<h2 class="wp-block-heading">Waarom is blockchain belangrijk?</h2>



<div class="wp-block-image"><figure class="alignleft"><img decoding="async" loading="lazy" width="341" height="314" src="https://www.agile4all.nl/wp-content/uploads/2018/11/redenen-blockchain.png" alt="5 redenen blockchain toepassen" class="wp-image-464" srcset="https://www.agile4all.nl/wp-content/uploads/2018/11/redenen-blockchain.png 341w, https://www.agile4all.nl/wp-content/uploads/2018/11/redenen-blockchain-300x276.png 300w" sizes="(max-width: 341px) 100vw, 341px" /></figure></div>



<p>Tijd, kosten, risico en vertrouwen.</p>



<p>Het bespaart tijd. Een transactietijd terug gebracht tot seconden in het netwerk.</p>



<p>Het bespaart kosten: Overhead en kosten tussenpersonen.</p>



<p>Risico daalt: fraude en cybercrime.</p>



<p>Vertrouwen: door gedeelde processen en vastlegging transacties.</p>



<p>Maar vooral NU niet te vergeten: toegevoegde waarde door een voorsprong in serviceniveau!</p>



<h2 class="wp-block-heading">Wie zijn de belangrijkste spelers?</h2>



<h3 class="wp-block-heading">Regulator (e.g. overheid)</h3>



<p>Een organisatie die de spelregels bepaald, zoals de overheid. Het is begrijpelijk dat een overheid geïnteresseerd is, want alles is goed te volgen en te controleren. Een goed voorbeeld hiervan zou jouw identiteit kunnen zijn. Een belastingdienst die boeken wil controleren, een ledger waar al jouw ID-informatie of medische gegevens op staat. Maar dan begrijp je ook meteen de zorgen: het is nieuwe technologie, data wordt op meerdere plekken vastgelegd en hoe zit het dan met veiligheid?</p>



<h3 class="wp-block-heading">Industriegroep</h3>



<p>Grote industriegroepen herkenen direct de kostenbesparingen en de beheersbaarheid van het proces. Een aantal organisaties zijn al volop onderweg, zoals&#8230;.</p>



<p>Een willekeurig voorbeeld zou kunnen zijn de autoindustrie. Waarvan van elk boutje in een auto bekend is, exact bekend is wat de auto allemaal heeft meegemaakt en dat de handel in 2<sup>e</sup> hands auto’s betrouwbaar is, omdat de gehele geschiedenis bekend is.</p>



<p>De regulators en industriegroepen zullen in eerste instantie vooral vanuit beheersing en kostenreductie (schoorvoetend) in blockchain stappen.</p>



<h3 class="wp-block-heading">Market Maker</h3>



<p>Dit is een organisatie die innoveert en die een nieuwe dienst / product bedenkt. Hier gaat het echt gebeuren en hier ontstaan nieuwe wereldspelers. High tech, grote behoefte, nieuwe producten en diensten. Kortom, hier voorspel ik de nieuwe giganten. Zoals voorheen e.g. Apple, Google, eBay, Alibaba etc..</p>



<h2 class="wp-block-heading">Is blockchain bewezen?</h2>



<p>Ik heb een kritisch Engelstalig artikel van Merltech.org voor je gevonden, zij geven aan dat de bewijsvoering van succesvolle blockchain technologie toepassingen wellicht nog niet toereikend is.</p>



<p>Zonder een oordeel te willen vellen over voor- en tegenstanders van blockchain meen ik dat je bij alle nieuwe technologieën de bewijslast in de startfase niet altijd direct helder is.</p>



<p>Voor een kritische noot m.b.t. &#8216;het geleverde bewijs&#8217; verwijs ik je naar een Engelstalig artikel op&nbsp;<a href="http://merltech.org/blockchain-for-international-development-using-a-learning-agenda-to-address-knowledge-gaps/">merltech.org</a>.</p>



<p>Mijn voorlopige antwoord op &#8216;bewijs leveren&#8217; is: zoek naar je eigen blockchain toepassingsmogelijkheden en valideer deze voordat je start. Daarna kies je voor een continue ontwikkelproces (in kleine stappen) en hou je voortdurend de vinger aan de pols.</p>



<h2 class="wp-block-heading">Tot slot:</h2>



<p>Heb je nog 19 minuten tijd. Dan heb ik een super interessante video voor je gevonden.</p>



<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<div class="x-resp-embed x-is-video x-is-youtube"><iframe loading="lazy" width="862" height="485" src="https://www.youtube.com/embed/Pl8OlkkwRpc?feature=oembed" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></div>
</div></figure>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/blockchain/">Blockchain</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Artificial Intelligence</title>
		<link>https://www.agile4all.nl/artificial-intelligence/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=artificial-intelligence</link>
		
		<dc:creator><![CDATA[Peter]]></dc:creator>
		<pubDate>Fri, 07 Dec 2018 14:58:48 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Intermediate]]></category>
		<category><![CDATA[Tech]]></category>
		<guid isPermaLink="false">https://www.agile4all.nl/?p=454</guid>

					<description><![CDATA[<p><span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">2</span> <span class="rt-label rt-postfix">min.</span></span> Wat is Artificial Intelligence (AI/A.I.)&#160; Wat doet Artificial Intelligence nu op een Agile website? Dat is simpel, het is één van de voorbeelden van technologische ontwikkelingen waar je in de nabije toekomst mee te maken krijgt. Er zijn diverse definities, maar Alan Turing (uitvinder computer) noemde het : &#8216;AI is ...</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/artificial-intelligence/">Artificial Intelligence</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></description>
										<content:encoded><![CDATA[<span class="rt-reading-time" style="display: block;"><span class="rt-label rt-prefix">Leestijd:</span> <span class="rt-time">2</span> <span class="rt-label rt-postfix">min.</span></span>
<h1 class="wp-block-heading"><strong>Wat is Artificial Intelligence (AI/A.I.)&nbsp;</strong></h1>



<p>Wat doet Artificial Intelligence nu op een Agile website? Dat is simpel, het is één van de voorbeelden van technologische ontwikkelingen waar je in de nabije toekomst mee te maken krijgt.</p>



<p>Er zijn diverse definities, maar Alan Turing (uitvinder computer) noemde het :</p>



<p><em>&#8216;AI is the science and engineering of making intelligent machines, especially intelligent computer programs&#8217;</em></p>



<p>Wat ik gemakshalve voor jou heb gedaan is het gezamenlijke uitgangspunt bepalen van alle definities. In tegenstelling tot wat vaak wordt gedacht is het eigenlijk vrij simpel om een helikopterview te hebben.</p>



<p>Alle definities gaan uit van:<strong><img decoding="async" loading="lazy" width="248" height="211" class="wp-image-476 alignright" src="https://www.agile4all.nl/wp-content/uploads/2018/11/digitaal-brein.png" alt="digitaal brein"></strong></p>



<ul><li>kunnen plannen</li><li>redenatie en leren</li><li>waarneming</li><li>het bouwen van een soort van begrip van kennis</li><li>communicatie in natuurlijke taal.</li></ul>



<p>En dat noemt men vaak: big data, reasoning, learning en problem solving.</p>



<h1 class="wp-block-heading">Twee hoofdcategorieën van A.I.</h1>



<p>AI valt in twee hoofdcategorieën in te delen:</p>



<p>Narrow AI: specifiek algoritme. Een voorbeeld is een Schaakprogramma.</p>



<p>General AI: leert en lost alle problemen op. (Dit is eigenlijk het doel waar iedereen naar streeft)</p>



<h1 class="wp-block-heading">Subcategorieën A.I.</h1>



<p>In plaats van de hoofdcategorieën hoor je veel vaker over: machine learning, cognitive systems, robotics en smart machines. Deze termen worden vaak gebruikt in samenhang met AI, soms als synoniem. Omdat ik het zelf super interessant vind is de kans groot dat ik later in andere artikel(en) er dieper op in ga, maar nu zal ik in vogelvlucht deze termen behandelen.</p>



<h5 class="wp-block-heading"><strong>Machine Learning&nbsp;</strong></h5>



<div class="wp-block-image"><figure class="alignleft"><img decoding="async" src="https://www.agile4all.nl/wp-content/uploads/2018/11/machine-learning.png" alt="" class="wp-image-478"/></figure></div>



<p>&nbsp;Machines leren door Algoritmes patronen te herkennen. Eigenlijk wordt een machine geleerd om de patronen te herkennen door herhaalde training. De machine begrijpt niet wat het doet en leert er dus niet van, dit is dus geen A.I.</p>



<h5 class="wp-block-heading"><strong>Cognitive Analytics</strong></h5>



<p>Trekt informatie uit ongestructureerde data door concepten en relaties in een kennisbase te plaatsen en te zoeken. Zoekt dus het antwoord.</p>



<h5 class="wp-block-heading"><strong>Robotics</strong></h5>



<p>Hardware en intelligente software &amp; data verrichten een taak waarvoor een bepaalde mate van intelligentie noodzakelijk is.</p>



<h5 class="wp-block-heading"><strong>Smart Machines</strong></h5>



<p>Tot een bepaalde hoogte neemt een smart machine zelf beslissingen. Dus een vorm van autonomie. Een cognitief systeem kan met elkaar gaan communiceren en daardoor beter worden.</p>



<h1 class="wp-block-heading"><strong>Fundamentele AI technieken:</strong></h1>



<ul><li>Heuristics (vaak herkenbaar als trail and error methodes)</li><li>Support vector machines (bijv. wel of geen spam)</li><li>Artificial neural network (nabouwen hersenen, maar nog met veel minder verbindingen)</li><li>Markov decision process ( framework om tot beslissingen te komen)</li><li>Natural language processing (taalherkening)</li></ul>



<p>Het gaat nu te ver om dit verder te behandelen, maar dit zijn technieken die je vaak hoort i.c.m. A.I.</p>



<h1 class="wp-block-heading"><strong>A.I. Applicaties</strong></h1>



<p>Voor sommige taken is een machine beter/meer geschikt dan een mens! En het gaat hard! Bijvoorbeeld Siri (Apple), Alexa (Google).</p>



<p>Deze applicaties zijn onder andere:</p>



<ul><li>Spraak herkenning (speech recognition)</li><li>Beeld-/gezichtsherkenning (image recognition)</li><li>Vertaling (translation)</li><li>Vraag en antwoord (question &amp; answering, Q&amp;A)</li><li>Games en oplossingen (game &#8211; solver)</li></ul>



<p>In de nabije toekomst zijn deze applicaties in staat mensen te vervangen, bijv. gezichtsherkenning voor security doeleinden.</p>



<h1 class="wp-block-heading"><strong>Technologie trend</strong></h1>



<ul><li>Cloud<img decoding="async" loading="lazy" class="wp-image-477 alignright" src="https://www.agile4all.nl/wp-content/uploads/2018/11/iot-Internet-of-Things.png" alt="" width="320" height="220"></li><li>Big Data</li><li>API’s (out of the box oplossingen, bijv. gezichtsherkenning)</li><li>Open Source</li><li>Internet of things (IoT) en standaardisatie.</li></ul>



<h1 class="wp-block-heading"><strong>Samenvatting</strong></h1>



<ul><li>Cloud is het platform en API’s zijn de ‘bouwstenen’.</li><li>Steeds meer ongestructureerde data, AI technologie heeft antwoorden.</li><li>Data is te trainen.</li><li>Open source AI technologieën, instapdrempel daalt.</li><li>Eerder gemaakte modellen zijn gemakkelijk aan te passen (open source)</li><li>Wijsheid van de groep is beschikbaar.</li><li>Internet of Things (IoT) zorgt voor nog meer data.</li></ul>



<p>Start your engines! Zijn er AI cases mogelijk in jouw organisatie? Agile denken en handelen helpt met deze vraag.</p>



<figure class="wp-block-image"><img decoding="async" src="https://www.agile4all.nl/wp-content/uploads/2018/11/robot.jpg" alt="" class="wp-image-479"/></figure>



<p>p.s. Denk dus voortaan niet alleen aan een robot bij A.I!</p>



<h2 class="wp-block-heading">Tot slot</h2>



<p>Artificial Intelligence komt goed tot zijn recht bij wat in het <a href="https://www.agile4all.nl/wat-is-het-cynefin-framework/">Cynefin framework</a> van Snowden het <em>ingewikkeld domein</em> wordt genoemd.</p>
<p>Het bericht <a rel="nofollow" href="https://www.agile4all.nl/artificial-intelligence/">Artificial Intelligence</a> verscheen eerst op <a rel="nofollow" href="https://www.agile4all.nl">agile4all</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
