Nationale Studenten Enquete 35% • Respons tot nu toe: 30% 25% 20% 31% 15% 10% • Help! Red ons imago! 22% 24% 18% 5% 0% Informatica/kunde – Deze week laatste kans – Kijk in je mail van 13 januari – Of vraag een nieuwe link www.nse.nl Betafaculteit Utrecht uni Landelijk Modelleren van synthesetaken • • • • Templates voor synthese Kennismanagement Interviewen Zelftest deels gebaseerd op boek en slides ‘The CommonKADS Methodology’ Modelleren van synthesetaken 2 Vorige keer: modelleren van analysetaken knowledgeintensive task analytic task classification diagnosis synthetic task prediction planning design modelling assessment assignment scheduling monitoring configuration design Modelleren van synthesetaken 3 Vandaag: modelleren van synthesetaken knowledgeintensive task analytic task classification diagnosis synthetic task prediction planning design modelling assessment assignment scheduling monitoring configuration design Modelleren van synthesetaken 4 Leerdoel • begrijpen en kunnen hanteren van de taakmethoden voor synthesetaken modelleren / herkennen Concrete taakbeschrijving taakmodel illustreren / toepassen aanpassen / combineren Modelleren van synthesetaken 5 SYNTHESE Modelleren van synthesetaken 6 Synthese • requirements (hard, soft), system structures (possible, valid, preferred) Modelleren van synthesetaken 7 Synthese • Gegeven een verzameling requirements, construeer een systeembeschrijving dat aan deze eisen voldoet requirements (extern) constraints & preferences (intern) soft requirement preference “snel system" hard requirement "prijs lager dan €2,000" Modelleren van synthesetaken “voorkeur voor goedkoopste component" constraint "P166 processor vereist 16Mb" 8 “Ideale” synthesemethode • Operationaliseer requirements – ‘preferences’ en constraints • Genereer alle mogelijke systeemstructuren • Selecteer een subset van geldige systeemstructuren – voldoe aan de constraints • Orden de geldige systeemstructuren – gebaseerd op ‘preferences’ Modelleren van synthesetaken 9 Vb: Ontwerpen van een logo “Ik krijg allereerst van de klant een pakket met eisen. Ik ga dan met de klant in gesprek om dit pakket uit te splitsen in eisen die echt hard zijn en eisen die zachter en meer een wens zijn. Dan begint het creatieve proces waarin ik mijn ideeën uitwerk in een aantal verschillende logo’s. Modelleren van synthesetaken 10 Vb: Ontwerpen van een logo Modelleren van synthesetaken 11 Vb: Ontwerpen van een logo Na dit creatieve deel beoordeel ik de ontwerpen op de harde eisen. Ontwerpen die niet goed genoeg zijn vallen af. Dan gebruik ik de zachte eisen om een prioritering aan te brengen tussen de verschillende ontwerpen. Vervolgens maak ik een afspraak met de klant om hieruit het uiteindelijke ontwerp te selecteren.” Modelleren van synthesetaken 12 nieuw logo blauw logo naam in logo bloemmotief druppelvorm synthesis favoriet: nummer 2: Modelleren van synthesetaken 13 Design (ontwerp) • synthesetaak • het te construeren systeem is een fysieke artifact – voorbeeld: ontwerp van een auto • kan het creatieve ontwerp van componenten omvatten • creatief ontwerp is zeer moeilijk voor kennistechnologie • subtype zonder creatief ontwerp: configuration design Modelleren van synthesetaken 14 CONFIGURATION DESIGN Modelleren van synthesetaken 15 Configuration design • requirement (hard & soft), component, design (skeletal & extension), violation, action Modelleren van synthesetaken 16 Configuration design (configuratie-ontwerp) • gegeven voorgedefinieerde componenten, vind een configuratie die voldoet aan de requirements en constraints – vb: configuratie van een computer • vorm van ontwerp die goed geautomatiseerd kan worden • kost veel rekenkracht Modelleren van synthesetaken 17 Configuration design: ‘propose & revise’-methode • Eenvoudige basis ‘loop’: – ‘Propose a design extension’ – ‘Verify the new design’, – ‘If verification fails, revise the design’ • Specifieke domeinkennis requirements – ‘revise strategies’ Modelleren van synthesetaken 18 Vb. Samenstellen van een maaltijd • “Ik heb de volgende gegevens van mijn gasten: De maaltijd is voor vier personen. Twee mensen zijn vegetarisch. Een persoon is allergisch voor noten. Er is een voorkeur voor de Indiase keuken. Curries vindt men lekker, vooral met rajta en rijst. Chinees mag ook. Men is geen fan van de Franse keuken. Er is anderhalf uur tijd voor het diner. Modelleren van synthesetaken 19 Vb. Samenstellen van een maaltijd • “Op basis van de tijdsbeperkingen en het beschikbare budget kies ik voor een driegangen diner: bestaand uit een voorgerecht, hoofdgerecht en nagerecht. Ik heb vijf standaard vegetarische diners op de plank liggen. Menu 2 komt het best overeen met de voorkeuren. Deze is als volgt. Voor: Mulligatawny soep, hoofd: curry met kokos en mango, en na: Kulfi. Modelleren van synthesetaken 20 Vb. Samenstellen van een maaltijd • “Hopelijk klopt het met de randvoorwaarden? Nee. In Kulfi zitten noten. Het menu is dus niet notenvrij. Mhm, ik zie drie alternatieven: de noten weglaten, een ander nagerecht, of de noten alleen weglaten uit het toetje van de allergische persoon. In dit geval is het het beste om een ander nagerecht te nemen. Een goede kandidaat is het nagerecht van menu 3: Kheer. Modelleren van synthesetaken 21 Vb. Samenstellen van een maaltijd • “Alles OK nu? Oh nee, zelfde probleem: Daar zitten amandelen in, dus wederom niet notenvrij. Dan maar de noten uit het nagerecht weglaten. Voldoet het nu aan de voorwaarden? … Ja.” Modelleren van synthesetaken 22 Configuration design • Ontwerp van een systeem op basis van bestaande componenten • Twee mechanismen / loops: 1. Uitbreiden huidige ontwerp met nieuwe component 2. Wijzigen van huidige ontwerp Modelleren van synthesetaken 23 lekkere maaltijd < 1.5 uur < 30 € p/p indiaas chinees liever geen frans requirements specify skeletal design operationalize soft requirements propose 3-gangen diner extension voor- hard requirements design vegetarisch geen noten verify … nagerecht: kulfi zonder noten modify … nagerecht: kheer noten weglaten action critique violation gerecht: mullisoep hoofdgerecht: curry nagerecht: kulfi onwaar truth value onwaar waar ander nagerecht Modelleren van synthesetaken select action list - ander nagerecht - noten weglaten nagerecht bevat noten 24 Configuratie: methodecontrole operationalize(requirements -> hard-reqs + soft-reqs); specify(requirements -> skeletal-design); while new-solution propose(skeletal-design + design + soft-reqs -> extension) do design := extension add design; verify(design + hard-reqs -> truth-value + violation); if truth-value = false then critique(violation + design -> action-list); repeat select(action-list -> action); modify(design + action -> design); verify(design + hard-reqs -> truth-value + violation); until truth-value = true; end while Modelleren van synthesetaken 25 Opdracht Levert de taakmethode altijd een ontwerp dat aan alle harde eisen voldoet? Licht toe. Modelleren van synthesetaken 26 Configuration design? Modelleren van synthesetaken 27 Configuration design? Modelleren van synthesetaken 28 Configuratie: domeinschema act ion t ype fix act ion 1+ fix preference const raint rating: universal const raint expression implies 1+ design element computes design element 1+ defines preference 1+ calculat ion expression component preference expression 0+ paramet er component 1+ Modelleren van synthesetaken model list: list has-parameter value: universal 29 ASSIGNMENT Modelleren van synthesetaken 30 Assignment • subject, set, groep, resource, allocation Modelleren van synthesetaken 31 Assignment (toekenning) • maak een ‘mapping’ tussen twee verzamelingen objecten – toekenning van kamers aan werknemers – toekenning van vliegtuigen aan gates • ‘mapping’ voldoet aan requirements en constraints • kan gezien worden als een afgeslankte vorm van configuration design Modelleren van synthesetaken 32 Assignment: methode zonder ‘backtracking’ • Orden toekenning van subjecten aan resources door eerst een subset van subjecten te selecteren • Indien nodig: groepeer de subjecten in subjectgroepen voor gezamenlijke resourcetoekenning – vereist een speciaal type van constraints en preferences • Neem een subject(groep) en ken hieraan een resource toe • Herhaal dit proces totdat alle subjecten een resource hebben Modelleren van synthesetaken 33 Assignment • “Een onderneming gaat over naar een nieuw bedrijfspand en ik ben gevraagd een nieuwe kamerindeling te maken. Ik heb momenteel de volgende gegevens: er zijn 14 werknemers er zijn 10 kamers 4 kamers zijn geschikt voor twee mensen de directrice moet in een grote kamer secretaresses moeten zo veel mogelijk op een kamer één van de secretaresses wil graag een kamer op het zuiden • …” • • • • • • Modelleren van synthesetaken 34 clara (directrice) clara (secretaresse) trudy (secretaresse) geertje (secretaresse) hanna (secretaresse) wendy … kamer A (2 pers.) kamer B (2 pers.) kamer C (groot) hanna & geertje, kamer A trudy & wendy, kamer B clara, kamer Modelleren van C synthesetaken clara trudy geertje hanna wendy trudy & wendy hanna & geertje kamer A kamer B kamer C 35 Assignment: methodecontrole while not empty subjects do select-subset(subjects -> subject-set); while not empty subject-set do group(subject-set -> subject-group); assign(subject-group + resources + currentallocations -> resource); current-allocations := < subject-group, resource > add current-allocations; subject-set := subject-set delete subject-group; resources := resources delete resource; end while subjects := subjects delete subject-set; end while Modelleren van synthesetaken 36 Assignment: methodevariaties • Bestaande allocatie – als aanvullende input • subject-specifieke constraints en preferences – zie ook synthese en configuration-design Modelleren van synthesetaken 37 assignment? Modelleren van synthesetaken 38 PLANNING Modelleren van synthesetaken 39 Planning • plan goal, requirements (hard & soft), plans (possible, valid & preferred) Modelleren van synthesetaken 40 Planning • Gegeven een bepaald doel genereer een plan dat bestaat uit een geordende verzameling van activiteiten om dat doel te bereiken Modelleren van synthesetaken 41 Planning • deelt vele kenmerken met synthese • belangrijkste verschil: het systeem bestaat uit activiteiten plus tijdsafhankelijkheden • voorbeelden: plannen van een reis, plannen van werkzaamheden • automatisering is alleen feasible als de basiselementen van het plan voorgedefineerd zijn Modelleren van synthesetaken 42 requirements plan goal weekend naar parijs generate plan composition knowledge met het vliegtuig operationalize possible plans eco-friendly met de bus met de trein hard requirements select subset constraints met de bus valid plans korte reistijd met de trein preferences soft requirements sort list of preferred plans Modelleren van synthesetaken preference ordering knowledge no 1: met de trein no 2: met de bus 43 SCHEDULING Modelleren van synthesetaken 44 Scheduling • job, unit, resource, schedule Modelleren van synthesetaken 45 Scheduling • Genereer een allocatie van units aan time slots en resources dat aan de gegeven requirements voldoet. Modelleren van synthesetaken 46 Scheduling (roosteren) • Gegeven een verzameling van voorgedefinieerde ‘jobs’ die elk bestaan uit een sequentie van achtereenvolgende activiteiten (genaamd ‘units’), ken alle units toe aan resources op ‘time slots’ – vb. productieplanning op de fabrieksvloer • Vaak gedaan na planning (= specificatie van jobs) • Let op: de termen “planning” en “scheduling” hebben hier een duidelijk verschillende betekenis Modelleren van synthesetaken 47 Scheduling: ‘temporal dispatching’-methode • Specificeer een initieel schema • Selecteer een unit • Selecteer een resource voor deze unit • Ken de resource toe aan deze unit • Evalueer het huidige rooster • Modificeer het rooster indien nodig Modelleren van synthesetaken 48 Scheduling: vb • Er zijn drie activiteiten: • tentamenvoorbereiding (1 uur) • maaltijdbereiding (1 uur) • boodschappen (1 uur) • Er zijn twee kandidaten: • de man (15:00 - 17:00) • de vrouw (16:00 - 18:00) • De vraag is: Wie doet wat wanneer? Modelleren van synthesetaken 49 Scheduling: select en assign • Rooster – tentamenvoorbereiding: man 15-16 – maaltijdbereiding: man 16-17 – boodschappen: vrouw 17-18 • Probleem: boodschappen na maaltijdbereiding Modelleren van synthesetaken 50 Scheduling: verify en modify • Rooster – tentamenvoorbereiding: man 15-16 – maaltijdbereiding: man 16-17 – boodschappen: vrouw 16-17 • Probleem: boodschappen tegelijk met maaltijdbereiding Modelleren van synthesetaken 51 Scheduling: verify en modify • Rooster – tentamenvoorbereiding: man 15-16 – maaltijdbereiding: vrouw 17-18 – boodschappen: vrouw 16-17 • Probleem: vrouw doet meer dan man Modelleren van synthesetaken 52 Scheduling: verify en modify • Rooster – tentamenvoorbereiding: man 15-16 – maaltijdbereiding: vrouw 17-18 – boodschappen: man 16-17 • In orde Modelleren van synthesetaken 53 truth value specify jobs tentamenvoorbereiding maaltijdbereiding boodschappen onwaar waar select schedule tentamenvoorbereiding: maaltijdbereiding: boodschappen: candidate unit select man 15-16uvan Modelleren synthesetaken onwaar constraint: boodschappen voor maaltijdbereiding constraint: vrouw doet niet meer dan man assign target resource man 16-17u verify modify tentamenvoorbereiding: ? tentamenvoorbereiding: man 15-16u maaltijdbereiding: ? tentamenvoorbereiding: man 15-16u maaltijdbereiding: ? tentamenvoorbereiding: man 15-16u boodschappen: ? maaltijdbereiding: man 16-17u boodschappen: ? tentamenvoorbereiding: man 15-16u maaltijdbereiding: man 16-17u boodschappen: ? tentamenvoorbereiding: man 15-16u maaltijdbereiding: vrouw 17-18u boodschappen: vrouw 17-18u maaltijdbereiding: vrouw 17-18u boodschappen: vrouw 16-17u boodschappen: man 16-17u vrouw 17-18u 54 Scheduling • toekennen van units aan resources • verschil met assignment? – tijd! Modelleren van synthesetaken 55 Scheduling: methodecontrole specify(jobs -> schedule); while new-solution select(schedule -> candidate-unit) do select(candidate-unit + schedule -> target-resource); assign(candidate-unit + target-resource -> schedule); evaluate(schedule -> truth-value); if truth-value = false then modify(schedule -> schedule); end while Modelleren van synthesetaken 56 Scheduling: typisch domeinschema schedule job release-date: time due-date: time includes {temporally ordered} resource {dynamically linked} type: string start-time: time end-time: time job unit unit preference constraint start: time end: time resource-type: string is performed at resource capacity constraint Modelleren van synthesetaken 57 Scheduling? Modelleren van synthesetaken 58 Scheduling? Modelleren van synthesetaken 59 MODELLING Modelleren van synthesetaken 60 Modeling (modelleren) • toegevoegd voor compleetheid • constructie van een abstracte beschrijving van een systeem om bepaalde eigenschappen uit te leggen of te voorspellen • voorbeelden: – constructie van een simulatiemodel van nuclear ongeluk – het proces van kennismodelleren zelf • zelden geautomatiseerd => creatieve stappen Modelleren van synthesetaken 61 COMBINEREN VAN TAAKTYPES Modelleren van synthesetaken 62 In applicaties: typische taakcombinaties • monitoring + diagnosis • productieproces • monitoring + assessment • zorgtaken (thuiszorg) • diagnosis + planning • opsporen en oplossen van fouten in apparaten • classificatie + planning • militaire toepassingen Modelleren van synthesetaken 63 hoofdstuk 4 KNOWLEDGE MANAGEMENT Modelleren van synthesetaken 64 Wat is knowledge management? • kennis wordt gezien als een resource • KM = er voor zorgdragen dat de resource – op het juiste moment wordt afgeleverd – beschikbaar is op de juiste plaats – gegoten is in de juiste vorm – voldoet aan de geldende kwaltiteitscriteria – verkregen wordt tegen de laagste kosten • resource wordt gebruikt in ‘business process’ Modelleren van synthesetaken 65 Wat maakt KM lastig? • Specifieke eigenschappen van kennis zoals: – – – – – – – – ‘tacitness’ niet tastbaar en moeilijk te meten zit in ‘agents’ met een eigen wil wordt niet geconsumeerd in een proces, kan zich verbeteren door gebruik vluchtigheid verreikende organisationele impact lange aanvliegroute ‘non-rival’, kan tegelijkertijd gebruikt worden door verschillende processen Modelleren van synthesetaken 66 Continue verbetering van knowledge assets Knowledge assets Construct new knowledge Apply your best knowledge Value chain Modelleren van synthesetaken 67 Nonaka’s model Modelleren van synthesetaken 68 Vier ambities van kennismanagement Resources Process Products & services 1 Use the best available knowledge Task execution 2 3 4 Acquire new knowledge Acquire knowledge about - process - working environment Acquire knowledge -customers -markets -technology - competition Improve system Innovate products & services Task improvement Elk ambitieniveau vereist zijn eigen specifieke acties Modelleren van synthesetaken 69 zie verder in boek (hfdst 4) … Modelleren van synthesetaken 70 INTERVIEWTECHNIEKEN Modelleren van synthesetaken 71 Beoordeel interview op: 1. doelgerichtheid 2. structurering 3. kwantiteit van elicitatie 4. kwaliteit van elicitatie Modelleren van synthesetaken 72 Firma interview – part 2 http://www.youtube.com/watch?v=0J-TVNGda8I Modelleren van synthesetaken 73 ZELFTEST Modelleren van synthesetaken 74 Vraag 1 • Welk taaktype bevat resource(s) als dynamische kennisrol? A) B) C) D) E) F) G) H) planning scheduling assignment planning en scheduling scheduling en assignment planning en assignment planning, scheduling en assignment noch planning, noch scheduling, noch assignment Modelleren van synthesetaken 75 Vraag 2 • Is planning een subtype van configuration design? A) ja B) nee Modelleren van synthesetaken 76 Vraag 3 • Wanneer vindt binnen configuration design verificatie plaats? A) nadat alle extensies voorgesteld (‘proposed’) zijn B) elke keer als een nieuwe extensie voorgesteld (‘proposed’) is C) verificatie vindt nooit plaats Modelleren van synthesetaken 77 Vraag 4 • Het schrijven van een literatuurstudie is een voorbeeld van A) B) C) D) socialisatie externalisatie internalisatie combinatie Modelleren van synthesetaken 78 Werkcolleges 1. 2. 3. 4. bestuderen gehele practicumopdracht, werken aan opdracht 1 en opstarten opdracht 2 afronden opdracht 1, werken aan opdracht 2 afronden opdracht 2, opstarten opdracht 3 werken aan opdracht 3, verwerken feedback opdracht 2 (aanwezigheid verplicht) 5. afronden opdracht 3, opstarten opdracht 4 6. 7. 8. werken aan opdracht 4, verwerken feedback opdracht 3 (aanwezigheid verplicht) afronden opdracht 4, opstarten opdracht 5 en 6 werken aan opdracht 5 en 6, verwerken feedback opdracht 4 (aanwezigheid verplicht) Modelleren van synthesetaken 79 Deadlines • Wo 11 feb 2015: opdracht 1 (23.59 uur) • Wo 18 feb 2015: opdracht 2 (23:59 uur) • Wo 4 mrt 2015: opdracht 3 (23:59 uur) • Wo 25 mrt 2015: opdracht 4 (23:59 uur) • Ma 6 apr / wo 8 apr 2015: presentatie • Wo 15 apr 2015: eindrapport (18:00 uur) Modelleren van synthesetaken 80