Onderzoek naar toepassing van Agent Technologie binnen Reaal Verzekeringen
|
|
- Margaretha Hermans
- 8 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Onderzoek naar toepassing van Agent Technologie binnen Reaal Verzekeringen Alex Bongers 11 oktober 2004
2 Software Agents Voorwoord Deze afstudeerscriptie vormt de afsluiting van mijn studie Cognitieve Kunstmatige Intelligentie aan de Universiteit Utrecht. Het onderwerp van deze scriptie komt voort uit een opdracht van Reaal Verzekeringen Nederland. Deze opdracht heeft me in staat gesteld praktijkervaring op te doen en tegelijkertijd deze scriptie op te stellen, twee vliegen in één klap dus. Tijdens mijn plezierige tijd bij de afdeling IT Architectuur van Reaal Verzekeringen heb ik veel steun en opbouwende kritiek gekregen van Henk Lof. Ook mijn begeleider vanuit de universiteit, Frank Dignum, heeft mij van nuttige kritiek voorzien. Ik wil hierbij iedereen bedanken voor de aansporingen tijdens het schrijven van deze scriptie, en dan met name Maartje, die voor mij als officieuze derde begeleider heeft opgetreden. Rest mij nog te zeggen: Bedankt allemaal! Alex Bongers Utrecht, oktober
3 Software Agents Samenvatting Dit onderzoek stelt zich ten doel om de mogelijkheden van het gebruik van Agent Software Technologie voor Reaal Verzekeringen te onderzoeken aan de hand van een eenvoudige, representatieve casus. Een prototype op basis van deze casus zal worden gemaakt met behulp van Agent Software Technologie en op basis van de hiermee opgedane ervaringen worden conclusies getrokken en aanbevelingen gedaan. Deze aanbevelingen kunnen de basis zijn voor eventuele vervolgstappen die Reaal Verzekeringen kan nemen in de nabije toekomst voor wat betreft gebruikmaking van Agent Software Technologie. De centrale vragen die bij deze doelstelling aan de orde komen, zijn: 1. Wat is Agent Software Technologie? Agent Software Technologie is een nieuwe manier van software-ontwikkeling, gebruik makend van Software Agents. Software Agents worden in dit onderzoek als volgt gedefinieerd: Software Agents zijn autonome, probleemoplossende computationele (op software gebaseerde) entiteiten die in staat zijn om effectief te opereren in dynamische en open systemen. Ze worden vaak gebruikt in systemen waarbinnen ze samenwerken met andere Agents. Agents hebben verschillende kenmerken. Ten eerste zijn Agents autonoom, ze handelen met een zekere mate van zelfstandigheid, gebaseerd op de hen toegewezen verantwoordelijkheid. Ten tweede zijn Agents flexibel, omdat het mogelijk is voor één Agent om meerdere doelstellingen te hebben en meerdere manieren om deze te bereiken. Agents zijn ook robuust, doordat het mogelijk is voor een Agent (specifieker: de doelstelling(en) van deze Agent) om te falen. Daarnaast zijn Agents zowel pro-actief (reageren uit zichzelf) als reactief (reageren wanneer hierom expliciet gevraagd wordt). Tenslotte zijn Agents sociaal, omdat ze de mogelijkheid hebben om op een hoog niveau met elkaar te communiceren. Hiermee wordt bedoeld dat de communicatie kan verlopen aan de hand van abstracte concepten, zoals verzoeken, aanvaarden, informeren en dergelijke. 2
4 Software Agents 2. Welke Methoden, Technieken en Tools kunnen worden toegepast voor de ontwikkeling van een op Agent Technologie gebaseerd prototype? Als methode van procesontwerp is gekozen voor de methodiek van DEMO. Dit vanwege de enerzijds goede aansluiting met de systeemontwerptechniek van Prometheus, anderzijds vanwege de vele in dit onderzoek gevonden overeenkomsten tussen de Actoren binnen DEMO en Software Agents. Als systeemontwerpmethodologie is gekozen voor Prometheus. Deze keuze is gemaakt op basis van de goede aansluiting van de geproduceerde systeemontwerpen van Prometheus met de Agent Software Toolkit JACK, de (Agent Software) Tool die voor dit onderzoek is gekozen. JACK is gekozen vanwege zijn representatieve opzet van een Agent Software Toolkit en zijn veelzijdige en robuuste indruk. 3. Hoe kan een op Agent Technologie gebaseerd prototype met behulp van deze Methoden, Technieken en Tools ontwikkeld worden? In de casus van dit onderzoek wordt een geautomatiseerd verzekeringsaanvraagsysteem beschreven zoals dit operationeel is binnen ProteQ, een dochteronderneming van Reaal Verzekeringen. Het beschrijft de processen die door de klant aan de ene kant en het systeem aan de andere kant worden doorlopen om tot een automatische offerte- en verzekeringsaanvraag te komen via het internet. Er is in DEMO een gedetailleerd interactiemodel gemaakt op basis van het in de casus beschreven proces. Dit DEMO-model is daarna gebruikt als selectiekader in de systeemontwerpmethodologie van Prometheus, om zo de Agents die in het prototype gebruikt worden te definiëren. Het uit Prometheus voortgekomen Agent-systeemontwerp is daarna gebruikt om het prototype te implementeren met behulp van de Agent Software Toolkit JACK. 4. Wat zijn de ervaringen met het maken van dit prototype en welke conclusies kunnen hieruit getrokken worden? Voor wat betreft het modelleren van het bedrijfsproces zoals beschreven in de casus van dit onderzoek zijn er geen beperkingen van DEMO naar boven gekomen. DEMO is een goede keuze als modelleringsmethode van een bedrijfsproces, hoewel de nodige ervaring vereist is voor het maken van bruikbare modellen. 3
5 Software Agents Ook voor wat betreft het maken van een systeemontwerp in Prometheus aan de hand van de beschrijving in de casus zijn er geen beperkingen ondervonden. Prometheus is over het algemeen een geschikte systeemontwerpmethodologie voor het ontwerpen van Agent-systemen, hoewel de laatste van de drie ontwerpfasen van Prometheus op dit moment nog beperkte meerwaarde biedt ten opzichte van de eerste twee ontwerpfasen. De Agent Software Toolkit JACK tenslotte is ook robuust en veelzijdig gebleken, op het gebruik van grote en complexe datasets na, hiervoor is het zogenaamde onderdeel beliefset op dit moment nog niet voldoende geschikt gebleken. Een eventuele koppeling met bestaande database-systemen zou hiervoor een oplossing kunnen zijn. Gekeken naar de verschillen in aanpak en mogelijkheden tussen Agent Technologie en de binnen Reaal Verzekeringen gebruikte vorm van objectgeoriënteerde softwareontwikkeling, genaamd Component Based Development, valt op dat Agent Software Technologie binnen CBD de volgende voordelen kan hebben. Agent Software Technologie biedt een decentrale besturing van een softwaresysteem. Tevens heeft Agent Software Technologie onder andere als meerwaarde de mogelijkheid tot uitgebreide redentatie over de selectie van de meest geschikte aanpak van een te nemen actie op dat moment. Software Agents bieden geen ondersteuning bij het ontwikkelen van zelflerende intelligente systemen. 5. Welke aanbevelingen kunnen gedaan worden op basis van de getrokken conclusies? Reaal Verzekeringen kan een eerste stap zetten richting de acceptatie van Agent Software Technologie door de mogelijkheden tot ontwikkeling van haar procescomponenten met behulp van Agent Software Technologie te onderzoeken. Deze procescomponenten kunnen daarna eventueel gekoppeld worden aan enerzijds legacy-systemen en anderzijds nieuwe technologieën zoals Neurale Netwerken. Reeds bestaande mogelijkheden van Software Agents zoals uitgebreide redenatie over selectie van aanpak zou nu al een optie kunnen zijn voor deze eventuele nieuwe varianten van procescomponenten. 4
6 Inhoudsopgave 1 Inleiding Aanleiding Onderzoeksdoelstelling Onderzoeksvraag Afgeleide hoofdvragen Indeling Scriptie Software Agents Inleiding Wat zijn Software Agents? BDI en Software Agents OO en Software Agents Methoden, Technieken en Tools Inleiding Selectie van de Methoden, Technieken en Tools Waarom DEMO? Waarom Prometheus? Waarom JACK? Wat is DEMO? Hoe werkt DEMO? De Kernpunten van DEMO BDI en DEMO Actoren en Software Agents Wat is Prometheus? Hoe werkt Prometheus? Wat is JACK? Hoe werkt JACK? Aansluitingen Aansluiting DEMO en Prometheus Aansluiting Prometheus en JACK
7 INHOUDSOPGAVE Software Agents 4 Experiment Inleiding Casus Ontwerpbeslissingen Beschrijving Beschrijving van het DEMO-model Beschrijving van Prometheus Beschrijving van het prototype Ervaringen Ervaringen met DEMO Ervaringen met Prometheus Ervaringen met JACK Conclusie Inleiding Conclusies Conclusie DEMO Conclusie Prometheus Conclusie JACK Het aspect Intelligentie Antwoorden op de hoofdvragen Toepasbaarheid van Agent Technologie voor Reaal Verzekeringen Aanbevelingen Inleiding Aanbevelingen Aanbevelingen voor wat betreft gebruik van de Methode, Techniek en Tool Aanbevelingen voor Reaal Verzekeringen A 59 A.1 De casus A.1.1 De processen B 62 B.1 De Systeem Specificatie Fase B.1.1 Specificatie van de systeemdoelen B.1.2 Hergroeperen van de systeemdoelen B.1.3 Functionaliteiten B.1.4 Scenario s B.1.5 Alternatieve scenario s B.1.6 Gebruikte percepts en actions B.1.7 Interne data bronnen
8 INHOUDSOPGAVE Software Agents B.1.8 Externe data bronnen C 73 C.1 De Architectuur Ontwerp Fase C.1.1 Datakoppeling diagram C.1.2 Agent beschrijvingen C.1.3 Samengesteld scenario C.1.4 Interactie diagram D 82 D.1 De JDE met het prototype D.2 Een JACK programmacode-voorbeeld E 89 E.1 Het prototype in werking
9 Hoofdstuk 1 Inleiding 1.1 Aanleiding Software ontwikkeling is een zeer dynamisch vakgebied. Naarmate de ontwikkelingen in de informatietechniek toenemen komen er ook nieuwe ontwikkelingen op het gebied van software ontwikkeling. Bedrijven maken tegenwoordig veelvuldig gebruik van informatietechnologie, waar het ontwikkelen van zeer specialistische software bij komt kijken. Om de voortgang binnen een bedrijfstak bij te houden en tegelijkertijd concurrerend te blijven werken is het daarom noodzakelijk om onderzoek te doen naar nieuwe gebieden van software ontwikkeling. Daarom is er binnen Reaal Verzekeringen, een grote verzekeraar in Nederland, door haar afdeling IT Architectuur in het najaar van 2003 begonnen met een vooronderzoek (een zogenaamde verkenning ). Hierbij is gekeken naar nieuwe methoden en ontwikkelingen op het gebied van software en softwareontwikkeling [13]. De afdeling IT Architectuur is een onderdeel van Reaal Verzekeringen en heeft als taak de informatie- en applicatie-architectuur binnen Reaal in goede banen te leiden en te ontwikkelen, alsmede ook op de hoogte te blijven van de nieuwe ontwikkelingen die zich op het gebied van de ICT afspelen en deze te beoordelen op relevantie voor Reaal Verzekeringen. In dit vooronderzoek is met name gekeken naar het mogelijke potentieel van Agent Software Technologie. Er wordt geconcludeerd dat Agent Software Technologie een nieuwe stap is in de ontwikkeling van het vakgebied software engineering, dat de technologie zich al in een vergevorderd stadium bevindt (met name wat betreft Multi-Agent Systemen 1 ) en dat de markt van aanbieders zich in de komende jaren op weg naar volwassenheid zal moeten begeven [13]. Agent Software Technologie [15] is gebaseerd op een nieuwe manier van software-ontwikkeling, gebruik makend van Software Agents 2. In de verkenning wordt aanbevolen om voorlopig geen investeringen in 1 Multi-Agent Systemen zijn systemen die gebruik maken van meerdere Software Agents 2 voor een verdere uitleg van Software Agents, zie hoofdstuk 2 8
10 1.2 Onderzoeksdoelstelling Software Agents Agent Technologie te doen en de ontwikkelingen op dit gebied te volgen. Ook wordt aanbevolen om in 2004 of 2005 een experiment op beperkte schaal uit te voeren, om daarmee meer vertrouwd te raken met de concepten van Agent Technologie. Het management van IT Architectuur heeft besloten om deze aanbevelingen op te volgen. Dat heeft geleid tot dit onderzoek, dat zich ten doel stelt om de mogelijkheden van het gebruik van Agent Technologie voor Reaal Verzekeringen te onderzoeken door het maken van een prototype aan de hand van een eenvoudige, representatieve casus. Het prototype 3 zal worden gemaakt met behulp van Agent Software Technologie en op basis van de hiermee opgedane ervaringen worden conclusies getrokken en aanbevelingen gedaan voor de eventuele vervolgstappen in de nabije toekomst. Binnen de vakgroep Intelligent Systems van de Faculteit der Informatica verbonden aan de Universiteit Utrecht wordt er al lange tijd onderzoek gedaan naar de mogelijkheden die Agent Software Technologie kan bieden. Deze vakgroep is dan ook bereid gevonden door IT Architectuur om haar assistentie te verlenen aan dit onderzoek binnen Reaal Verzekeringen. Om duidelijkheid te krijgen omtrent het doel van dit onderzoek is het noodzakelijk dat er helder voor ogen staat wat de doelstelling van het onderzoek is, welke centrale vraag gesteld kan worden en hoe deze centrale vraag uiteindelijk kan worden beantwoord. 1.2 Onderzoeksdoelstelling Dit onderzoek stelt zich ten doel om de mogelijkheden van het gebruik van Agent Technologie voor Reaal Verzekeringen te onderzoeken aan de hand van een eenvoudige, representatieve casus. Een prototype op basis van deze casus zal worden gemaakt met behulp van Agent Software Technologie en op basis van de hiermee opgedane ervaringen worden conclusies getrokken en aanbevelingen gemaakt voor de eventuele vervolgstappen in de nabije toekomst. 1.3 Onderzoeksvraag Naar aanleiding van de onderzoeksdoelstelling kan de centrale vraag als volgt geformuleerd worden: Hoe kan een prototype op basis van Agent Software Technologie ontwikkeld worden en in hoeverre is dit toepasbaar op de software ontwikkeling binnen Reaal Verzekeringen? 3 een implementatie van software in een Agent Software Tookit 9
11 1.4 Afgeleide hoofdvragen Software Agents 1.4 Afgeleide hoofdvragen Uit de centrale vraag kunnen de volgende hoofd- en deelvragen geformuleerd worden: 1. Wat is Agent Software Technologie? Wat zijn Software Agents? 2. Welke Methoden, Technieken en Tools kunnen worden toegepast voor de ontwikkeling van een op Agent Technologie gebaseerd prototype? Welke Methode is geschikt om het bedrijfsproces schematisch weer te geven? Hoe werkt deze Methode? Welke Methodologie 4 is geschikt om het (Agent) systeem te ontwerpen? Hoe werkt deze Methodologie? Welke (Agent) Software Tool is geschikt om het prototype in te implementeren? Hoe werkt deze Tool? 3. Hoe kan een op Agent Technologie gebaseerd prototype met behulp van deze Methoden, Technieken en Tools ontwikkeld worden? Hoe kan het bedrijfsproces aan de hand van de Methode weergegeven worden? Hoe kan het Agentsysteem aan de hand van de Methodologie ontworpen worden? Hoe kan het prototype in de Agent Software Tool geïmplementeerd worden? 4. Wat zijn de ervaringen met het maken van dit prototype? 5. Welke conclusies kunnen uit de ervaringen afgeleid worden? 6. Welke aanbevelingen kunnen gedaan worden op basis van de conclusies? 4 ook wel: ontwerptechniek 10
12 1.5 Indeling Scriptie Software Agents 1.5 Indeling Scriptie Nu de aanleiding en doelstelling van dit onderzoek bekend zijn, zal vervolgens aan de hand van de hoofd- en deelvragen worden geprobeerd de centrale vraag te beantwoorden. De opbouw van deze scriptie volgt de verschillende hoofd- en deelvragen zoals geformuleerd in 1.4. Ten eerste zal het volgende hoofdstuk een antwoord geven op de vraag wat Agent Software Technologie is. Dit zal gebeuren aan de hand van een uitleg van wat Software Agents zijn, wat de concepten zijn waarop ze zijn gebaseerd en hoe ze zich verhouden ten opzichte van object-georiënteerde software, de meest gangbare methode van software ontwikkeling op dit moment. Vervolgens wordt de keuze van de te gebruiken methode, methodologie en tool verantwoord en wordt hun onderlinge samenhang verklaard. Hierna volgt een beschrijving van de werking van de gebruikte methode, methodologie en tool. Deze onderdelen, tezamen met de casus, worden gebruikt in de ontwikkeling van het prototype. Dit hoofdstuk 3 geeft zo een antwoord op de hoofdvraag welke Methoden, Technieken en Tools kunnen worden toegepast voor de ontwikkeling van een op Agent Technologie gebaseerd prototype. Vervolgens is er een beschrijving van het gebruik van de gekozen methode, methodologie en tool tijdens de ontwikkeling van het prototype, gevolgd door de werking hiervan. Hierna volgen de opgedane ervaringen tijdens de ontwikkeling van het prototype. Dit hoofdstuk, hoofdstuk 4, beantwoordt de vraag hoe een op Agent Technologie gebaseerd prototype met behulp van deze Methoden, Technieken en Tools ontwikkeld kan worden, alsook de vraag wat de ervaringen met het maken van een prototype zijn. In hoofdstuk 5 worden uit deze ervaringen conclusies getrokken. Dit als antwoord op de vierde hoofdvraag. Hoofdstuk 6 tenslotte sluit deze scriptie af met aanbevelingen voor Reaal Verzekeringen voor wat betreft de nabije toekomst op het gebied van software-ontwikkeling. 11
13 Hoofdstuk 2 Software Agents Om duidelijkheid te krijgen voor wat betreft de betekenis en inhoud van Agent Technologie is het belangrijk dat er eerst duidelijkheid is wat betreft de definitie en werking van Software Agents, de eigenlijke bouwstenen en hoofdconcepten van Agent Technologie. Software Agents zijn derhalve het onderwerp van dit hoofdstuk. 2.1 Inleiding Sinds de opkomst van internet is de manier van omgaan met informatie en de manier om deze informatie vast te leggen en te raadplegen veranderd. Onder andere is er een behoefte ontstaan naar nieuwe manieren van softwareontwikkeling om met deze nieuwe dynamische en open systemen om te kunnen gaan. Op dit moment is de veruit meest gebruikte methode voor softwareontwikkeling de object georiënteerde ontwikkelmethode. Dit is een bepaalde manier om het ontwerp, de constructie en de implementatie van software aan te pakken. Software wordt hierbij opgebouwd en samengevoegd uit componenten (objecten genoemd) afkomstig uit verschillende bronnen; de componenten op zich kunnen zijn ontwikkeld in verschillende programmeertalen. Uit onderzoek in gedistribueerde kunstmatige intelligentie 1 [14] is eind jaren tachtig onderzoek begonnen naar zogenaamde Software Agents. 2.2 Wat zijn Software Agents? Software Agents worden in dit onderzoek als volgt gedefinieerd: Software Agents zijn autonome, probleemoplossende computationele 2 entiteiten die in staat zijn om effectief te opereren in dynamische en open systemen. Ze 1 dit zijn systemen opgebouwd uit een gedecentraliseerde groep Agents die samen de oplossing van een probleem nastreven 2 op software gebaseerd 12
14 2.3 BDI en Software Agents Software Agents worden vaak gebruikt in systemen waarbinnen ze samenwerken met andere Agents, die op hun beurt weer andere doelstellingen kunnen hebben. In deze tekst zal vaak worden verwezen naar de begrippen Agents en Software Agents, in dit onderzoek wordt met deze begrippen één en dezelfde entiteit aangeduid. Agents hebben verschillende kenmerken die ervoor zorgen dat ze erg geschikt zijn om in te zetten in deze nieuwe manier van software ontwikkeling [21]. Ten eerste zijn Agents autonoom, ze handelen met een zekere mate van zelfstandigheid, gebaseerd op de hen toegewezen verantwoordelijkheid. Ten tweede zijn Agents flexibel, omdat het mogelijk is voor één Agent om meerdere doelstellingen te hebben en meerdere manieren om deze te bereiken. Agents zijn ook robuust, doordat het mogelijk is voor een Agent (specifieker: de doelstelling(en) van deze Agent) om te falen. Daarnaast zijn Agents zowel pro-actief (reageren uit zichzelf) als reactief (reageren wanneer hierom expliciet gevraagd wordt). Tenslotte zijn Agents sociaal, omdat ze de mogelijkheid hebben om op een hoog niveau met elkaar te communiceren. Hiermee wordt bedoeld dat de communicatie kan verlopen aan de hand van abstracte concepten, zoals verzoeken, aanvaarden, informeren en dergelijke [7]. De hierboven genoemde kenmerken zijn precies de kenmerken die benodigd zijn in de computationele systemen van nu en die van de nabije toekomst. 2.3 BDI en Software Agents Meestal worden Agents (en de daarbij behorende Agent Software Toolkit 3 ) gemodelleerd naar cognitieve modellen die behoren bij hoger-niveau cognitieve eigenschappen. Deze cognitieve modellen omvatten concepten als: beliefs, knowledge, desires, intentions, et cetera. Het meest gebruikte model voor Agents is het Beliefs, Desires and Intentions model (ook wel: BDI) [9]. Het is een model dat als basisconcept gebruik maakt van de BDI theorie van rationale actie, dat oorspronkelijk ontwikkeld is door Michael Bratman [4]. Het is een theorie van praktisch redeneren, die zich in het bijzonder richt op de rol die intenties spelen op praktisch redeneren. Praktisch redeneren is redeneren gericht op acties [19] en bestaat uit tenminste twee verschillende activiteiten: 1. De beslissing welke stand van zaken er bereikt moet worden. 2. De beslissing hoe deze stand van zaken bereikt moet worden. 3 zie
15 2.4 OO en Software Agents Software Agents Dit BDI-model correspondeert op de volgende manier met Agents: Beliefs komen overeen met de informatie die de Agent heeft over de wereld om hem heen. Deze informatie kan incompleet of incorrect zijn. Desires representeren de stand van zaken die de Agent graag zou willen zien ontstaan. Intentions representeren de Desires die de Agent zich heeft voorgenomen (ook wel: waar de Agent zich aan heeft gecommitteerd) om te bewerkstelligen. Er zijn veel verschillende formele 4 modellen ontwikkeld die de onderlinge relatie tussen Beliefs, Desires en Intentions analyseren [14]. Daarnaast zijn er ook meer generieke BDI architecturen ontwikkeld, die als een uitbreiding van het oorspronkelijke BDI-model kunnen worden beschouwd, gericht op het doel om op basis hiervan Software Agents te construeren [14]. Iedere implementatie van een Agent Software Toolkit heeft zijn eigen opvattingen over BDI en de vertaling hiervan naar de werking van de toolkit. 2.4 OO en Software Agents Met OO wordt hier bedoeld: de object-georiënteerde manier van software ontwikkelen. Agents zijn autonome entiteiten die interacteren met elkaar en met hun omgeving. Maar zijn het slechts objecten met extra attributen of behoren ze echt tot een totaal andere aanpak van software ontwikkelen? Belangrijk is dat Agents en objecten verschillend genoeg zijn om ze ook verschillend te behandelen [17]. De meeste bedrijven vereisen een balans tussen gestandaardiseerde procedures (een gecentraliseerd proces) en individueel initiatief (een gedecentraliseerd proces); een extreem van beide is fataal voor het bedrijf. Agentgebaseerde omgevingen kunnen én gecentraliseerd (de controle van het proces ligt op één plek) én gedecentraliseerd (gedistribueerde controle, de controle over het proces is verspreid over de verschillende Agents) te werk gaan, terwijl object-georiënteerde omgevingen voor dit laatste geen directe ondersteuning bieden. Hoewel Agents dus zeker gecentraliseerde systemen kunnen ondersteunen, bieden ze ook de mogelijkheid tot gedistribueerde procesafhandeling en hierdoor ook een ondersteuning voor een juiste balans hiertussen. In object-georiënteerde talen worden objecten gecreëerd door een klasse 5, eenmaal gecreëerd kan dit object niet meer van klasse veranderen. Agents bieden een meer flexibele aanpak. Een specifieke Agent kan tegelijkertijd, of 4 gebaseerd op Logica 5 een indeling van objecten naar type 14
16 2.4 OO en Software Agents Software Agents op verschillende momenten, verschillende rollen vervullen (die van werknemer, klant of verkoper bijvoorbeeld). Hoewel een Agent op één moment de rol van werknemer aanneemt, verandert dit de Agent zelf niet, hij blijft dezelfde entiteit, hij gebruikt op dat moment slechts een verschillende set van kenmerken. Agenten kunnen zo verschillende rollen uitoefenen in verschillende domeinen. Als iemand naar zijn werk gaat, speelt hij de werknemer-rol. Als iemand daarna thuiskomt, verandert de rol in die van echtgenoot bijvoorbeeld. Object-georiënteerde talen bieden geen directe ondersteuning voor deze domein-specifieke mechanismen die vereist zijn voor Agent-gebaseerde omgevingen. De enkelvoudige klasse aanpak is efficiënt en betrouwbaar, de meerdere dynamische klassenaanpak biedt flexibiliteit en modelleert onze perceptie van de wereld op een exactere manier. Agents ondersteunen echter beide aanpakken, de keuze ligt bij de ontwerper. Agent-communicatie kan op een hoger abstractieniveau plaatsvinden dan de communicatie tussen objecten in object-georiënteerde talen. Iedere Agent communiceert vanuit zijn eigen rol met een ander Agent. Voor deze communicatie bestaat een afgesproken standaard [7]. Een voordeel van communicatie op een hoger abstractieniveau is dat deze communicatie het gebruik van expliciete taalhandelingen toestaat [7], waardoor termen zoals verzoeken, ontvangen en dergelijke expliciet kunnen worden gemaakt. Een Agent doet een verzoek aan een andere Agent en kan op de hoogte worden gebracht door de ontvangende Agent dat deze zijn verzoek heeft ontvangen en dat deze zich zal committeren aan de uitvoering van dit verzoek. Dit alles kan gebeuren zonder dat de verzoekende Agent op de hoogte is van de manier waarop dit verzoek door de ontvangende Agent zal worden uitgevoerd. Deze manier van communicatie is hiermee platform- en programmeertaal-onafhankelijk. Bij de ontwikkeling van software systemen kan er gekozen worden uit een mix van beide aanpakken. Sommige software ontwikkelaars hebben er een sterke voorkeur voor om Agents op te bouwen uit objecten en om de infrastructuur voor Agent-gebaseerde systemen boven op een support-systeem 6 te bouwen dat ook gebruikt wordt in object-georiënteerde systemen. Deze benadering is ook de benadering die de voor dit onderzoek gekozen Agent Software Toolkit JACK heeft. Een Agent Software Toolkit is een praktisch toepasbare programmeertaal waarmee software geschreven kan worden die gebruik maakt van Software Agents. Software Agents worden dus gebouwd met behulp van een Agent Software Toolkit. Een Agent Software Toolkit leidt tot een praktische toepassing van Agent Technologie. Meer over een Agent Software Toolkit en de andere bouwstenen voor een Agent-gebaseerd systeem in het volgende hoofdstuk. 6 bijvoorbeeld een programmeertaal 15
17 Hoofdstuk 3 Methoden, Technieken en Tools 3.1 Inleiding In dit hoofdstuk wordt de selectie van de te gebruiken onderdelen verantwoord en wordt de werking van de gekozen methode, ontwerpmethodologie en tool uitgelegd en beschreven. Deze methode, methodologie en tool zijn de bouwstenen waarop het ontwerp en de implementatie van het prototype is gebaseerd. Afsluitend volgt een verklaring van de onderlinge samenhang tussen de gekozen onderdelen. 3.2 Selectie van de Methoden, Technieken en Tools Als methode van procesontwerp op basis van de casus 1 is gekozen voor de methodiek van DEMO. Na een schematische beschrijving van het bedrijfsproces wordt overgegaan op het systeemontwerp. Als technische methodologie van het systeemontwerp is gekozen voor Prometheus. Na een specificatie van het (Agent) systeem wordt er overgegaan tot implementatie van dit systeemontwerp met behulp van de Agent Software Toolkit JACK Waarom DEMO? Agents weerspiegelen de echte wereld en kennen sociale interactie met elkaar. Het zoeken is naar een methodiek die ook deze sociale interactieprincipes onderkend. DEMO is een methode die aan deze eisen voldoet. Het is mogelijk om met DEMO een schematisch diagram van het proces dat de casus beschrijft op te stellen, zodat er een indeling ontstaat naar Actoren 2. Met 1 zie bijlage A 2 zie
18 3.2 Selectie van de Methoden, Technieken en ToolsSoftware Agents deze indeling van het proces in Actoren wordt een selectie naar verantwoordelijkheden binnen het proces van de casus bekend. De overtuiging is dat aan de hand van de Actor-definitie van DEMO Software Agents makkelijker kunnen worden geïdentificeerd. DEMO kan dan later tijdens het systeemontwerp optreden als een selectiekader van Agentfunctionaliteiten, vanwege de reeds benoemde verantwoordelijkheden binnen het proces dat de casus beschrijft. Meer hierover in hoofdstuk Waarom Prometheus? Zoals ook bij de Agent Software Toolkits het geval is, zijn er in de loop der tijd ook verschillende soorten Agent Modellering Talen (ook wel: methodologiën) ontwikkeld. Enkele van de meest bekende Agent Modellering Talen zijn MESSAGE, TROPOS, MaSE en Prometheus [14]. Veel van de genoemde methodologiën verkeren nog in de onderzoeksfase, richten zich op slechts een beperkt deelgebied van Agent Systeem-modellering of zijn nog niet volledig in voldoende detail beschreven. De ontwikkelaars van de methodologie Prometheus geven duidelijk aan dat ze gedurende het totale ontwerpproces van hun methodologie nauw hebben samengewerkt met de makers van de Agent Software Toolkit JACK en dat het doorlopen van de methodologie Prometheus een goede basis is voor het implementeren van een Software Agent Systeem in JACK. Daarnaast heeft het onlangs verschijnen van het eerste volledig gedetailleerde boek [20] over de methodologie Prometheus, met daarin de benodigde stappen die kunnen worden doorlopen om tot een goed systeemmodel van een Agent Software Programma te komen, bijgedragen tot de keuze voor Prometheus Waarom JACK? Er zijn in de loop der jaren zeer veel verschillende Agent Software Toolkits ontwikkeld en er zijn er nog meer in ontwikkeling. Enkele van de meest bekende Agent Programmeertalen zijn ZEUS, RETSINA, JADE en JACK. Al deze talen hebben hun specifieke voor- en nadelen, en na een overweging tussen deze Agent Toolkits op basis van de praktische toepasbaarheid, inzetbaarheid, technische ondersteuning en de volwassenheid van de ontwikkeltool (waaronder die van de ontwikkelomgeving 3 ), is er gekozen voor de Agent Software Toolkit JACK. Deze overweging is gemaakt met raadpleging van de meest recente versie van het boek Agent-Based Software Development [14]. In dit boek worden veel Agent Software Toolkits beschreven zodat het relatief eenvoudig is om deze op basis van de eigenschappen die hier zijn genoemd en de eigenschappen die in het boek worden verbonden aan iedere Agent Software Toolkit, met elkaar te kunnen vergelijken. De JACK 3 een ontwikkelomgeving is de ondersteunende gebruikersomgeving waarbinnen een programmeur programmacode kan ontwikkelen 17
19 3.3 Wat is DEMO? Software Agents Agent Taal is gebaseerd op een praktische, veelgebruikte programmeertaal en wordt door zijn ontwikkelaars aangeprezen als een commercieel en industrieel product, waarmee een mate van robuustheid gepaard moet gaan. De Agents zoals die in JACK worden gebruikt voldoen daarnaast aan de minimale set van Agent-eigenschappen zoals die in hoofdstuk 2 zijn genoemd; ze zijn autonoom, flexibel, robuust, pro- en reactief en sociaal. Hiermee is JACK representatief voor de familie van Agent Software Toolkits en daardoor een goede keuze als de tool waarin het prototype van dit onderzoek wordt ontwikkeld. 3.3 Wat is DEMO? DEMO staat voor Design & Engineering Methodology for Organizations. DEMO is oorspronkelijk ontwikkeld binnen de Technische Universiteit te Delft [6] en is gericht op het modelleren van bedrijfsprocessen om zo een kapstok te creëren waarbinnen inrichtingsvraagstukken op een samenhangende manier kunnen worden uitgelegd (bijvoorbeeld informatietechnische inrichtingen). DEMO is een methode om schematisch een bedrijfsproces weer te geven. Deze schematische voorstelling van een bedrijfsproces maakt gebruik van een transactiesymbool tussen twee Actoren. Een Actor is een persoon als volbrenger van een Actor-rol. Een Actor-rol is een stuk authoriteit en verantwoordelijkheid dat aan iemand is toegewezen op basis van zijn competenties. Actoren zijn dus individuele sets van verantwoordelijkheden zoals die te onderkennen zijn binnen ieder bedrijfsproces Hoe werkt DEMO? Actoren voeren twee soorten handelingen uit, te weten productie-acties en coördinatie-acties. Productie-acties Door het verrichten van productie-acties dragen Actoren direct bij aan het realiseren van de functie van een organisatie. Voorbeelden van productieacties zijn het verkopen van goederen en het afsluiten van een verzekering. Er worden drie soorten productie-acties onderscheiden [5]: 1. Essentiële productie-acties 2. Informationele productie-acties 3. Documentele productie-acties 18
20 3.3 Wat is DEMO? Software Agents Essentiële acties beschrijven de kern van de business van een organisatie. Informationele acties betreft het verspreiden van kennis (over essentiële acties) en het afleiden van nieuwe kennis uit bestaande. Documentele acties beschrijven het opslaan, transporteren, kopiëren et cetera van de documenten waarin die kennis is vastgelegd. Coördinatie-acties Door het verrichten van coördinatie-acties gaan Actoren verplichtingen over productie-acties aan en komen ze die na. Voorbeelden van coördinatie-acties zijn het verzoeken en het beloven (van productie-acties). Productie-acties en coördinatie-acties zijn de atomen van de bedrijfsprocessen in een organisatie. Ze komen altijd en alléén maar voor in universele patronen, transacties geheten. Transacties zijn de moleculen van bedrijfsprocessen. Bij het volbrengen van een transactie zijn twee actoren betrokken, de ene is de Initiator (bijvoorbeeld de klant) en de ander de Executor (bijvoorbeeld de leverancier). Een bedrijfsproces is dus een structuur van transacties De Kernpunten van DEMO Zoals hierboven al genoemd maakt DEMO schematisch gebruik van een transactiesymbool tussen twee Actoren. Dit transactiesymbool beeldt een set van communicatie-acties tussen twee Actoren uit. Een transactie vindt plaats tussen twee entiteiten, een Initiator en een Executor. Elke transactie die plaatsvindt tussen Actoren in DEMO kan opgedeeld worden in vier communicatieonderdelen, te weten: 1. Verzoeken 2. Beloven 3. Verklaren 4. Aanvaarden Zie figuur 3.1 voor het in DEMO gebruikte transactiesymbool en de opdeling daarvan in de vier communicatieonderdelen. In de verzoek-stap verzoekt de Initiator de Executor tot het uitvoeren van een taak. De Executor beoordeelt dit verzoek en als hij dit verzoek besluit aan te nemen, belooft de Executor de Initiator dat hij de taak gaat uitvoeren. Als de Executor de taak heeft uitgevoerd verklaart deze de oplevering hiervan aan de Initiator, waarna de Initiator het resultaat beoordeelt en na een positieve beoordeling zal aanvaarden. 19
Archimate risico extensies modelleren
Archimate risico extensies modelleren Notatiewijzen van risico analyses op basis van checklists versie 0.2 Bert Dingemans 1 Inleiding Risico s zijn een extra dimensie bij het uitwerken van een architectuur.
Nadere informatieUML. From weblog http://dsnippert.wordpress.com. Dennis Snippert
UML From weblog http://dsnippert.wordpress.com Naam: Dennis Snippert Inhoudsopgave 1. Wat is Uml?... 3 2. UML diagrammen... 4 3. Uitleg diagrammen... 5 3.1. Usecase diagram:... 5 3.2. Class diagram:...
Nadere informatieCover Page. The handle http://hdl.handle.net/1887/20225 holds various files of this Leiden University dissertation.
Cover Page The handle http://hdl.handle.net/1887/20225 holds various files of this Leiden University dissertation. Author: Heijstek, Werner Title: Architecture design in global and model-centric software
Nadere informatieInvloed van IT uitbesteding op bedrijfsvoering & IT aansluiting
xvii Invloed van IT uitbesteding op bedrijfsvoering & IT aansluiting Samenvatting IT uitbesteding doet er niet toe vanuit het perspectief aansluiting tussen bedrijfsvoering en IT Dit proefschrift is het
Nadere informatieVraag Ondersteuning door Virtuele Experts
Vraag Ondersteuning door Virtuele Experts Ondersteunen van de opdrachtgever in de Bouw gedurende de initiatieffase 1 Introductie Deze dissertatie beschrijft een onderzoek naar de toepassing van ICT om
Nadere informatieCover Page. The handle http://hdl.handle.net/1887/29570 holds various files of this Leiden University dissertation.
Cover Page The handle http://hdl.handle.net/1887/29570 holds various files of this Leiden University dissertation. Author: Beek, Maurice H. ter Title: Team automata : a formal approach to the modeling
Nadere informatieDATAMODELLERING BEGRIPPENBOOM
DATAMODELLERING BEGRIPPENBOOM Inleiding In dit whitepaper wordt de datamodelleervorm begrippenboom inclusief de begrippenlijst beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen.
Nadere informatieDATAMODELLERING ARCHIMATE DATA- & APPLICATIEMODELLERING
DATAMODELLERING ARCHIMATE DATA- & APPLICATIEMODELLERING Inleiding In dit whitepaper wordt de datamodelleervorm ArchiMate data- & applicatiemodellering beschreven. Deze modelleervorm staat in verhouding
Nadere informatiecase: toestandsdiagrammen
Hoofdstuk 13 case: toestandsdiagrammen In dit hoofdstuk wordt het maken van de eerste versie van de toestandsdiagrammen voor het boodschappensysteem van Hans en Jacqueline uitgewerkt. 13.1 Vind klassen
Nadere informatieSoftware Processen. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1. Het software proces
Software Processen Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Het software proces Een gestructureerd set van activiteiten nodig om een software systeem te ontwikkelen Specificatie;
Nadere informatieRapportage Lineage. Introductie. Methode. J. Stuiver
Rapportage Lineage Rapportage Lineage J. Stuiver Introductie In elk project is het essentieel om informatie over het project en haar activiteiten voor alle partijen beschikbaar te stellen. Deze informatie
Nadere informatieConnect Social Business
Connect Social Business Joey Kaan September 2014 Inhoudsopgave 1 Achtergronden 4 2 Probleemstelling & Doelstelling 5 2.1 Leren Professioneel Functioneren.................. 5 2.2 Facebook API leren door
Nadere informatieDe ontwikkeling van een gebouwbeheersysteem
De ontwikkeling van een gebouwbeheersysteem Een afstudeeropdracht elektrotechniek Auteurs: R. Hulzebos S.H. de Lange Opleiding: Hanzehogeschool faculteit techniek De ontwikkeling van een gebouwbeheersysteem
Nadere informatieNederlandse samenvatting (Dutch summary)
Nederlandse samenvatting (Dutch summary) Ditproefschriftpresenteerteen raamwerk voorhetontwikkelenvanparallellestreaming applicaties voor heterogene architecturen met meerdere rekeneenheden op een chip.
Nadere informatieDATAMODELLERING CRUD MATRIX
DATAMODELLERING CRUD MATRIX Inleiding In dit whitepaper wordt de datamodelleervorm CRUD Matrix beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil je een beeld
Nadere informatieCORA 1.0 Bedrijfs- en ICT-referentiearchitectuur voor woningcorporaties
CORA 1.0 Bedrijfs- en ICT-referentiearchitectuur voor woningcorporaties Hoe zorgen we ervoor dat we nieuwe diensten en producten soepel in onze bedrijfsvoering op kunnen nemen? Hoe geven we betere invulling
Nadere informatieSamenvatting. Bijlage B
Bijlage B In dit proefschrift stellen we ons het doel de besluitvorming van agenten en de communicatie tussen deze agenten te beschrijven en te formaliseren opdat de agenten rechtvaardigbare opvattingen
Nadere informatieSoftware Test Plan. Yannick Verschueren
Software Test Plan Yannick Verschueren November 2014 Document geschiedenis Versie Datum Auteur/co-auteur Beschrijving 1 November 2014 Yannick Verschueren Eerste versie 1 Inhoudstafel 1 Introductie 3 1.1
Nadere informatieDATAMODELLERING ARCHIMATE DATAMODELLERING
DATAMODELLERING ARCHIMATE DATAMODELLERING Inleiding In dit whitepaper wordt de datamodelleervorm ArchiMate datamodellering beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen.
Nadere informatieDATAMODELLERING RACI MATRIX
DATAMODELLERING RACI MATRIX Inleiding In dit whitepaper wordt de datamodelleervorm RACI Matrix beschreven. Deze modelleervorm staat in verhouding tot een aantal andere data modelleervormen. Wil je een
Nadere informatieKIM. Slimme acties ondernemen
KIM Slimme acties ondernemen CONTROLE KWIJT? Herkent u dit soort ervaringen ook? Uw organisatie heeft allerlei systemen in huis, maar Niemand weet echt meer hoe het systeem exact werkt Voor kleine wijzigingen
Nadere informatieHet Analytical Capability Maturity Model
Het Analytical Capability Maturity Model De weg naar volwassenheid op het gebied van Business Intelligence. WHITEPAPER In deze whitepaper: Wat is het Analytical Capability Maturity Model (ACMM)? Een analyse
Nadere informatieDATAMODELLERING DATA MAPPING MODEL
DATAMODELLERING DATA MAPPING MODEL Inleiding In dit whitepaper wordt de datamodelleervorm data mapping model beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil
Nadere informatieHERGEBRUIK VAN REQUIREMENTS
HERGEBRUIK VAN REQUIREMENTS EEN PRAKTISCHE AANPAK BUSINESS ANALYSE CENTER OF EXCELLENCE - SYNERGIO Inhoudsopgave 1 HERGEBRUIK VAN REQUIREMENTS... 3 1.1 GEBRUIKEN VERSUS HERGEBRUIKEN... 4 2 STRATEGIE...
Nadere informatieProjectorganisatie Marc Martojo Esther krijnen Rodger Buyvoets Danilo Meulens
Concrete projectbeschrijving De afstudeeropdracht is om een informatief, innovatief en interactief boek te ontwikkelen dat als presentatie materiaal gebruikt kan worden om weer te geven hoe bijzonder en
Nadere informatieSoftware Test Plan. Yannick Verschueren
Software Test Plan Yannick Verschueren Maart 2015 Document geschiedenis Versie Datum Auteur/co-auteur Beschrijving 1 November 2014 Yannick Verschueren Eerste versie 2 December 2014 Yannick Verschueren
Nadere informatieOplossingsvrij specificeren
Oplossingsvrij specificeren ir. J.P. Eelants, projectmanager Infrabouwproces CROW Samenvatting De methodiek van oplossingsvrij specificeren richt zich niet alleen op het formuleren van functionele eisen.
Nadere informatieLes F-02 UML. 2013, David Lans
Les F-02 UML In deze lesbrief wordt globaal beschreven wat Unified Modeling Language (UML) inhoudt. UML is een modelleertaal. Dat wil zeggen dat je daarmee de objecten binnen een (informatie)systeem modelmatig
Nadere informatieConnect Social Business
Connect Social Business Plan van Aanpak Joey Kaan September 2014 Inhoudsopgave 1 Achtergronden 4 2 Probleemstelling & Doelstelling 5 2.1 Leren Professioneel Functioneren.................. 5 2.2 Facebook
Nadere informatieISM: BPM voor IT Service Management
ISM: BPM voor IT Service Management ISM: BPM voor IT Service Management Het jonge IT-vakgebied wordt bestookt met allerlei frameworks om grip te krijgen op de input en output: ITIL, ASL, BiSL, COBIT en
Nadere informatieVoorbeeldvraag 1. Welke uitspraak is JUIST:
Voorbeeldvraag 1 Welke uitspraak is JUIST: 1. De basisstelling van Nicolas Carr (auteur van "IT doesn't matter") is dat de investeringen die in IT gedaan worden niet opwegen tegen de voordelen ervan. Het
Nadere informatieConceptueel Modelleren GEÏNTEGREERD DATA MODELLEREN MET DEMO EN DATA VAULT
Conceptueel Modelleren GEÏNTEGREERD DATA MODELLEREN MET DEMO EN DATA VAULT Introductie Wineke Sloos BSc Taal & Kunstmatige Intelligentie @ Tilburg University MSc Information Management @ Tilburg University
Nadere informatieKleine cursus PHP5. Auteur: Raymond Moesker
Kleine cursus PHP5 Auteur: Raymond Moesker Kleine cursus PHP PHP is platform en CPU onafhankelijk, open source, snel, heeft een grote userbase, het is object georiënteerd, het wordt omarmd door grote bedrijven
Nadere informatieTestomgevingen beheer
Testomgevingen beheer Testen brengt het verwachte resultaat en de huidige toestand bij elkaar. Het geeft aanknopingspunten om de planning te maken, het product te verbeteren en om zorgen bij belanghebbenden
Nadere informatieSamenvatting. Het ontwerpen van controlemechanismen in netwerkorganisaties vanuit een waardeperspectief
Samenvatting Het ontwerpen van controlemechanismen in netwerkorganisaties vanuit een waardeperspectief Tegenwoordig worden diensten steeds vaker door een netwerk van partijen aangeboden. Als een consument
Nadere informatieOpdrachtformulering (pagina 3 van 7)
Afstudeerovereenkomst van Tim Wils Bijlage 1 Opdrachtformulering (pagina 3 van 7) Dit project betreft een eigen framework (soort API) waarmee relatief gemakkelijk en in korte tijd eindproducten opgezet
Nadere informatieDATAMODELLERING BASIS UML KLASSEMODEL
DATAMODELLERING BASIS UML KLASSEMODEL Inleiding In dit whitepaper wordt de datamodelleervorm basis UML klassemodel beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen.
Nadere informatieBusiness Workflow innovaties in SAP S/4 HANA
Business Workflow innovaties in SAP S/4 HANA Op dit moment vindt er wereldwijd een technologie gebaseerde bedrijfsrevolutie plaats die op het eerste gezicht geen grenzen kent. Met zeer grote snelheid worden
Nadere informatieInformatica 2 Studiehandleiding
Informatica 2 Studiehandleiding Embedded Systems Engineering Groep: ES1D ir drs E.J Boks 25-02-2010 Inhoud 1 Inleiding... 2 2 Doelstelling... 3 3 Beoordeling... 4 4 Eisen aan het verslag... 6 Voorbeeld
Nadere informatieConnect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB
Connect Social Business Plan van Aanpak voor mijn stage bij ConnectSB Joey Kaan September 21, 2014 Inhoudsopgave 1 Achtergronden 4 2 Probleemstelling & Doelstelling 5 2.1 Leren Professioneel Functioneren..................
Nadere informatieCanonieke Data Modellering op basis van ArchiMate. Canonieke Data Modellering op basis van Archimate Bert Dingemans
Canonieke Data Modellering op basis van ArchiMate Canonieke Data Modellering op basis van Archimate Bert Dingemans Abstract Modelleren op basis van de open standard ArchiMate is een goed uitgangspunt voor
Nadere informatieDATAMODELLERING SIPOC
DATAMODELLERING SIPOC Inleiding In dit whitepaper wordt de datamodelleervorm Sipoc beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil je een beeld krijgen van
Nadere informatieOnderzoeksopzet. Marktonderzoek Klantbeleving
Onderzoeksopzet Marktonderzoek Klantbeleving Utrecht, september 2009 1. Inleiding De beleving van de klant ten opzichte van dienstverlening wordt een steeds belangrijker onderwerp in het ontwikkelen van
Nadere informatievanuit de technische en organisatorische omgeving, werk-verdeling, budget, planning, en hergebruik van componenten. Het documenteren van SA dient
9 Samenvatting Software heeft vooruitgang in veel vakgebieden mogelijk gemaakt en heeft een toenemend invloed op ons leven en de samenleving in zijn geheel. Software wordt gebruikt in computers, communicatienetwerken,
Nadere informatieSoftware Mobiliteit. UAMS - 6 maart 2001. Theo D'Hondt Lab voor Pogrammeerkunde Vrije Universiteit Brussel http://prog.vub.ac.
Software Mobiliteit Theo D'Hondt Lab voor Pogrammeerkunde Vrije Universiteit Brussel http://prog.vub.ac.be/~tjdhondt p. 1 Overzicht Stelling Objecttechnologie Distributie Mobiliteit Evolutie Besluit p.
Nadere informatieUitleg algemene structuur WTell
Uitleg algemene structuur WTell Brondocument C:\WebServer\Handleiding\WTellAlgemeen\WTellStructuurGlobaal.odt Versiebeheer Versie Datum Uitleg 1.0v 21-09-11 1e versie met uitleg globale structuur WTell
Nadere informatieUML is een visuele taal om processen, software en systemen te kunnen modeleren.
Vragen inleinding UML 1. Wat is UML? UML is een visuele taal om processen, software en systemen te kunnen modeleren. 2. Waar bestaat UML uit? Notaties(zijn symbolen, commentaar en waarden etc.) en diagrammen(grafische
Nadere informatieMethodiek. Versie: 16/05/2012 13:42:35
Methodiek Versie: 16/05/2012 13:42:35 Inhoudsopgave Methodiek... 2 Onze visie op het functioneel ontwerp... 2 Stappen in het ontwerpproces... 3 Methodiek Inleiding In dit deel van de encyclopedie wordt
Nadere informatieTaakcluster Operationeel support
Ideeën en plannen kunnen nog zo mooi zijn, uiteindelijk, aan het eind van de dag, telt alleen wat werkelijk is gedaan. Hoofdstuk 5 Taakcluster Operationeel support V1.1 / 01 september 2015 Hoofdstuk 5...
Nadere informatieTechnisch Ontwerp W e b s i t e W O S I
Technisch Ontwerp W e b s i t e W O S I WOSI Ruud Jungbacker en Michael de Vries - Technisch ontwerp Website Document historie Versie(s) Versie Datum Status Omschrijving / wijzigingen 0.1 20 nov 2008 Concept
Nadere informatieBedrijfsproces Patterns
Bedrijfsproces Patterns In dit document worden bedrijfsproces patterns beschreven met behulp van de Actor Activity Diagramming syntax. Patterns zijn specifieke deeltjes van een bedrijfsproces die in meerdere
Nadere informatieWorkshop 12 ART-DECOR en Acute overdracht. Michael Tan Kai Heitmann Maarten Ligtvoet
Workshop 12 ART-DECOR en Acute overdracht Michael Tan Kai Heitmann Maarten Ligtvoet 22 november 2012 Topics Aanpak en visie Perinatologie Michael Tan Uitleg Acute Overdracht in ART-DECOR Kai Heitmann Faciliteren
Nadere informatieinfo Nspyre Freelance Professionals Schrijf je nu in!
Nspyre Freelance Professionals Schrijf je nu in! info Nspyre Externe Inhuur Herculesplein 24 3584 AA Utrecht T 088-827 50 00 F 088-827 50 99 www.nspyre.nl/freelance externeinhuur@nspyre.nl Nspyre Nspyre
Nadere informatieOntwikkeling informatiesysteem
Ontwikkeling informatiesysteem Voorletters en naam: xxx Studentnummer: xxx Datum: 23 december 2013 Onderwijsinstelling: NCOI Opleidingsgroep Naam opleiding: Bachelor Bedrijfskundige Informatica Naam module:
Nadere informatieKenmerken van DLArchitect
Kenmerken van DLArchitect Bert Dingemans, e-mail : bert@dla-os.nl www : http://www.dla-os.nl 1 Inhoud KENMERKEN VAN DLARCHITECT... 1 INHOUD... 2 INLEIDING... 3 ARCHITECTUUR... 3 Merode... 3 Methode en
Nadere informatieSECTORWERKSTUK 2013-2014
SECTORWERKSTUK 2013-2014 1 HET SECTORWERKSTUK Het sectorwerkstuk is een verplicht onderdeel voor alle leerlingen uit het Mavo. Het maken van een sectorwerkstuk is een manier waarop je, als eindexamenkandidaat,
Nadere informatiePlan van Aanpak Afstuderen
Plan van Aanpak Afstuderen Michiel Graat 27-09-2005 Inhoudsopgave 1 Inleiding 3 1.1 Terminologie............................. 3 1.2 Opdracht............................... 4 1.3 JavaCard...............................
Nadere informatieProject methodiek. Auxilium BV Oude Delft 48 2611 CD Delft. T: 015-261 23 16 F: 015-213 34 83 E: info@auxilium.nl
Project methodiek Auxilium BV Oude Delft 48 2611 CD Delft T: 015-261 23 16 F: 015-213 34 83 E: info@auxilium.nl Inhoud 1 PROJECTMETHODIEK... 3 1.1 TIME-BOXING... 3 1.2 USER-STORIES EN STORY-POINTS... 3
Nadere informatieStakeholder behoeften beschrijven binnen Togaf 9
Stakeholder behoeften beschrijven binnen Togaf 9 Inventarisatie van concerns, requirements, principes en patronen Bert Dingemans Togaf 9 kent verschillende entiteiten om de behoeften van stakeholders te
Nadere informatieDEEL I KENNISMANAGEMENT: INLEIDING EN TOEPASSINGSGEBIEDEN
DEEL I KENNISMANAGEMENT: INLEIDING EN TOEPASSINGSGEBIEDEN 2. Kennis...6 2.1 Definitie... 6 2.2 Gezichtspunten ten aanzien van kennis... 9 3. Kennismanagement...16 3.1 Definitie...16 3.2 Belang van kennismanagement...18
Nadere informatieMuseumbezoek onder Studenten
Museumbezoek onder Studenten Ontwerprapport CMD-Project Jelle Clignet CMD2B 1108174 Inhoudsopgave Inleiding 2 Concept 3 Beschrijving van het concept 3 Applicatie 3 Ondersteunende middelen 3 Middelen 4
Nadere informatieIntroductie tot de cursus
Inhoud introductietalen en ontleders Introductie tot de cursus 1 Plaats en functie van de cursus 7 2 Inhoud van de cursus 7 2.1 Voorkennis 7 2.2 Leerdoelen 8 2.3 Opbouw van de cursus 8 3 Leermiddelen en
Nadere informatieBegrippenlijst Inzicht in de wereld van big data, marketing en analyse
Begrippenlijst Inzicht in de wereld van big data, marketing en analyse 4orange, 13 oktober 2015 Hogehilweg 24 1101 CD Amsterdam Zuidoost www.4orange.nl 2 Inhoud Achtergrond & Aanleiding... 3 A... 3 B...
Nadere informatieEnterprise Resource Planning. Hoofdstuk 3 Planning, ontwerp en implementatie van Enterprise Resource Planning-systemen
Enterprise Resource Planning Hoofdstuk 3 Planning, ontwerp en implementatie van Enterprise Resource Planning-systemen Pearson Education, 2007; Enterprise Resource Planning door Mary Sumner Leerdoelstelling
Nadere informatieModule 1 Programmeren
Module 1 Programmeren Programmeertalen 13 1.1 Inleiding 13 1.2 Programmeertalen in historisch perspectief 13 1.2.1 Machinecode 13 1.2.2 Assembleertalen (assembly) 14 1.2.3 Hogere programmeertalen 15 1.2.4
Nadere informatieApplication interface. service. Application function / interaction
Les 5 Het belangrijkste structurele concept in de applicatielaag is de applicatiecomponent. Dit concept wordt gebruikt om elke structurele entiteit in de applicatielaag te modelleren: softwarecomponenten
Nadere informatieOplossingen voor het testen van objectgeoriënteerde software. Oplossingen voor het testen van. Overzicht. Pieter van den Hombergh.
Oplossingen voor het testen van objectgeoriënteerde software Pieter van den Hombergh Fontys Hogeschool voor Techniek en Logistiek Software Engineering 14 maart 2013 HOM/FHTeL Oplossingen voor het testen
Nadere informatieWaar Bepaal ten slotte zo nauwkeurig mogelijk waar het onderwerp zich afspeelt. Gaat het om één plek of spelen meer plaatsen/gebieden een rol?
Hoe word ik beter in geschiedenis? Als je beter wilt worden in geschiedenis moet je weten wat er bij het vak geschiedenis van je wordt gevraagd, wat je bij een onderwerp precies moet kennen en kunnen.
Nadere informatiePlan van Aanpak. Auteur: Roel Konieczny Docent: Stijn Hoppenbrouwers Plaats, datum: Nijmegen, 7 mei 2004 Versie: 1.0
Plan van Aanpak Auteur: Roel Konieczny Docent: Stijn Hoppenbrouwers Plaats, datum: Nijmegen, 7 mei 2004 Versie: 1.0 Plan van Aanpak Roel Konieczny Inhoudsopgave 1 INLEIDING... 3 2 PROBLEEMGEBIED EN DOELSTELLING...
Nadere informatieIndustrieel Ontwerpen
Industrieel Ontwerpen Industrieel ontwerpen, het vakgebied Industrieel Ontwerpen in Twente Industrieel Ont Industrieel ontwerpen, het vakgebied Industrieel Ontwerpen houdt zich bezig met het ontwikkelen
Nadere informatieMijnGeld Help. Inhoudsopgave. Wat is MijnGeld? 2. Doorloop 3. Importeren van transacties 5. Consolideren met bankafschriften 12
Inhoudsopgave MijnGeld Help Wat is MijnGeld? 2 Doorloop 3 Importeren van transacties 5 Consolideren met bankafschriften 12 Koppelingen met digitale documenten 16 Contact 21 Wat is MijnGeld? MijnGeld is
Nadere informatieProces to model en model to execute
Proces to model en model to execute Een end-to-end (bedrijfs)proces (figuur 1) is het geheel van activiteiten die zich, op een bepaalde plaats door een bepaalde rol, in bepaalde volgorde opvolgen en waarvan
Nadere informatieSocio-technisch systemen. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 2 Slide 1
Socio-technisch systemen Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 2 Slide 1 Systeem categoriën Technische op computer gesteunde systemen Systemen die HW en SW bevatten, maar waar
Nadere informatieSporthuis/GoSport Roy Schungel 1570046
Sporthuis/GoSport 1570046 Document Informatie Versie Datum Status Aanpassingen Getroffen pagina s 1.0 20-06-2013 Definitief Colofon Soort document: Versie: 1.0 Afstudeerscriptie Opdrachtgever: Opdrachtgever:
Nadere informatieVoorlopig onderzoeksplan Bachelorscriptie CleanDoc-
Voorlopig onderzoeksplan Bachelorscriptie 2011 -CleanDoc- Wouter Lockefeer 0545228 Probleemstelling Een goede programmeertaal moet niet alleen efficiënte programma's opleveren, maar ook handig zijn in
Nadere informatieDit voorbeeldproject beschrijft het gebruik van web services (open standaarden) voor de ontsluiting van kernregistraties bij de gemeente Den Haag.
Voorbeeldproject Een Haagse SOA Dit voorbeeldproject beschrijft het gebruik van web services (open standaarden) voor de ontsluiting van kernregistraties bij de gemeente Den Haag. Aanleiding Vanuit de visie
Nadere informatieAERIUS II. Mark Wilmot Product Owner AERIUS. Ministerie van EL&I Programma Directie Natura 2000 Programma Stikstof (PAS)
AERIUS II Mark Wilmot Product Owner AERIUS Ministerie van EL&I Programma Directie Natura 2000 Programma Stikstof (PAS) m.j.wilmot@mineleni.nl Inhoud Toelichting AERIUS II Project Demo Agile / Scrum proces
Nadere informatieBenodigde capaciteit, middelen, faciliteiten en infrastructuur
Elementen van een businessplan De toegevoegde waarde en doelstellingen Doelgroepen en waarde proposities Aanbod van producten en diensten Risicoanalyse en Concurrentie Speelveld / Ecosysteem Business model
Nadere informatieStageplan. Stageplan v0.3 10-03-11 Dennis Wagenaar
Stageplan Stageplan v0.3 10-03-11 Dennis Wagenaar 1 Inhoudsopgave Inleiding...3 Organisatorische aspecten...3 Gegevens van de student...3 Gegevens van de stageorganisatie...3 Gegevens van de stagebegeleider...3
Nadere informatieBRP-BZM Use Case Realisations Guidelines
BRP-BZM Use Case Realisations Guidelines Versie 2.0 02-09-2011 Definitief Versiehistorie Datum Versie Auteur 23-12-2010 0.1 Eerste versie R.F. Schaaf 04-01-2011 1.0 Feedback verwerkt R. Schaaf en D. Geluk
Nadere informatieDATAMODELLERING DATA FLOW DIAGRAM
DATAMODELLERING DATA FLOW DIAGRAM Inleiding In dit whitepaper wordt de datamodelleervorm data flow diagram beschreven. Deze modelleervorm staat in verhouding tot een aantal andere modelleervormen. Wil
Nadere informatieProactief en voorspellend beheer Beheer kan effi ciënter en met hogere kwaliteit
Proactief en voorspellend beheer Beheer kan effi ciënter en met hogere kwaliteit Beheer kan efficiënter en met hogere kwaliteit Leveranciers van beheertools en organisaties die IT-beheer uitvoeren prijzen
Nadere informatieModel-driven Distributed Software Deployment
Technische Universiteit Delft, EWI, Afdeling Software Technologie Philips Research, Healthcare Systems Architecture, Eindhoven 17 Maart 2009 Introductie Software Engineering Software Deployment Model-driven
Nadere informatiecase: use-case-diagram
Hoofdstuk 9 case: use-case-diagram Dit hoofdstuk beschrijft de totstandkoming van de use-cases voor EasyShop, het maaltijdsysteem van Hans en Jacqueline. Het zijn de functionele systeemeisen die hier worden
Nadere informatieGEDRAGSMANAGEMENT. Inleiding. Het model. Poppe Persoonlijk Bas Poppe: 06 250 30 221 www.baspoppe.nl info@baspoppe.nl
GEDRAGSMANAGEMENT Dit kennisitem gaat over gedrag en wat er komt kijken bij gedragsverandering. Bronnen: Gedragsmanagement, Prof.dr. Theo B. C. Poiesz, 1999; Samenvatting boek en college, A.H.S. Poppe,
Nadere informatieJaarproject programmeren bij LORE
Jaarproject programmeren bij LORE Elke onderzoeksgroep heeft een eigen karakter en vereisten. Zo ook met LORE. Opdat je zou weten wat we van je verwachten maar ook wat je van ons mag verwachten, hebben
Nadere informatieMDA experiences in een uitvoeringsorganisatie. Eelco van Mens (Architect, Mn Services) 5 juni 2008
MDA experiences in een uitvoeringsorganisatie MDA experiences in een uitvoeringsorganisatie Eelco van Mens (Architect, Mn Services) 5 juni 2008 2 Inhoud Korte introductie Mn Services Overwegingen om met
Nadere informatieRelease datum: 11 juni 2012
Highlights 1 HSExpert versie 5.2 Begin juni is versie 5.2 van HSExpert gereleased. In versie 5.2 zijn vooral wijzigingen op het RiAxion (Arbo) dossier doorgevoerd. Daarnaast zijn er wat kleinere wijzigingen
Nadere informatieBijlage bacheloropleiding Informatica
Bijlage bacheloropleiding Informatica 2011-2012 Bijlage I Eindtermen van de bacheloropleiding (artikel 1.3) De bachelor Informatica: a. kennis en inzicht a1. heeft kennis van en inzicht in de belangrijkste
Nadere informatieQUESTI OPSTARTGIDS ALGEMENE INSTELLINGEN EN LVS
01 - WELKOM BIJ QUESTI Welkom bij Questi. Alvorens je opstart, willen we je graag attent maken op enkele zaken. Voor je op de knop inloggen klikt, bekijk je best even de algemene filmpjes onder de knop
Nadere informatieAls eerste bedankt voor het aanschaffen van deze PDF waarin ik je handige tips en trucs zal geven over het schrijven van een handleiding.
Bedankt! Als eerste bedankt voor het aanschaffen van deze PDF waarin ik je handige tips en trucs zal geven over het schrijven van een handleiding. Graag zou ik je willen vragen mij een email te sturen
Nadere informatieICT: HOOFDROLSPELER OF BACKSTAGE ASSISTANT? Steven Van Uffelen INCA Networks NV
ICT: HOOFDROLSPELER OF BACKSTAGE ASSISTANT? Steven Van Uffelen INCA Networks NV Nieuwe Wereld Nieuwe Business Nieuwe IT Uw nieuwe werknemers The times they are changing Uw medewerkers toen How can I help
Nadere informatieDEMO: De theorie. DEMO: de theorie. Toepassing bij de Koninklijke Marechaussee: KOWA. Ervaringen in de praktijk. Vragen 21-11-2013.
DEMO: De theorie Presteren door Sociale Interactie Lec. E.G. (Edward) van Dipten MI Vicevoorzitter EEi De Meern 30 januari 2014 Agenda DEMO: de theorie Toepassing bij de Koninklijke Marechaussee: KOWA
Nadere informatieAppraisal. Datum:
Appraisal Naam: Sample Candidate Datum: 08-08-2013 Over dit rapport: Dit rapport is op automatische wijze afgeleid van de resultaten van de vragenlijst welke door de heer Sample Candidate is ingevuld.
Nadere informatieBedrijfsproces-Architectuur
Bedrijfsproces-Architectuur Methoden en Richtlijnen in de Praktijk HET NUT VAN PROCES-ARCHITECTUUR Bij het in kaart brengen van de processen in een organisatie, speelt een groot aantal vragen. Het zijn
Nadere informatieDeel I Hoofdstuk 4: Modelleren van Toestand
Deel I Hoofdstuk 4: Modelleren van Toestand 2005 Prof Dr. O. De Troyer Toestandsmodel pag. 1 Berichten of boodschappen OO is gebaseerd op hoe de reële wereld werkt 2005 Prof. Dr. O. De Troyer Toestandsmodel
Nadere informatieIn Vlaanderen bestaat er nog geen leerlijn programmeren! Hierdoor baseren wij ons op de leerlijn die men in Nederland toepast voor basisscholen.
Leerlijn programmeren In Vlaanderen bestaat er nog geen leerlijn programmeren! Hierdoor baseren wij ons op de leerlijn die men in Nederland toepast voor basisscholen. Deze leerlijn is opgebouwd aan de
Nadere informatieDATAMODELLERING TOEPASSEN DATA ANALYTICS
DATAMODELLERING TOEPASSEN DATA ANALYTICS Inleiding In dit whitepaper wordt een toepassingsgebied beschreven voor datamodellering. Een toepassing is een werkveld op het vlak van architectuur of modellering
Nadere informatieVraag 1. Vraag 1a TERUGKOPPELING PROEFTENTAMEN. Software architecture
Software architecture IM0203 TERUGKOPPELING PROEFTENTAMEN Vraag 1 Vraag 1a Veel van de in het werkboek besproken patterns kunnen ingezet worden voor het referentiesysteem. We lopen de patterns hier stuk
Nadere informatiePracticumhandleiding. (versie 2010)
(versie 2010) Belangrijk! In deze handleiding treft u alle informatie aan die nodig is voor de uitvoering van het practicum. Behalve de organisatie van het practicum zelf en een korte beschrijving van
Nadere informatie