11/12/2014
Introductieproject
Informatica Introductiecollege 10 november 2014 Paul Bergervoet (presentatie door Silja Renooij, met dank aan F. Wiering en W. Hürst)
1
Hoofddoel van het project Ontwikkelen en uitbreiden van kennis en vaardigheden Informatica: programmeren vele andere aspecten (datastructuren, databases, (web)interfaces, ...) Academisch: analytisch denken argumenteren / logisch redeneren interpreteren Algemeen: samenwerken in teams communicatie zelfwerkzaamheid eigen verantwoordelijkheid presenteren (schriftelijk en mondeling) voor variërend publiek
2
1
11/12/2014
Hoe verloopt een project in het algemeen? project kent fasen deliverables (documenten, producten)
fasen opdrachtkeuze planning
analyseren van vereisten ontwerpen bouwen en testen opleveren en presenteren
meer hierover in hoorcollege 2
3
Waarom de projectvorm? realistisch, gericht op beroepspraktijk algemene vaardigheden toepassen van verworven vaardigheden verwerf en pas kennis toe die je nu nodig hebt werken aan je eigen probleem inzetten van je eigen sterke punten, creativiteit wetenschappelijke methoden van de informatica vroege kennismaking met onderwerpen die later in de bachelor
opleiding aan de orde komen
motiverend!
4
2
11/12/2014
Bachelor Informatica Informatica: automatiseren wat we al kunnen/weten • systeemontwerp en implementatie oplossen wat we nog niet kunnen/weten
• modelleren, ontwerp methoden en algoritmen oorspronkelijk prescriptief, maar steeds vaker ook descriptief
• zo werkt apparaat, proces, systeem, ... • data-analyse, visualisatie
Gametechnologie: specifiek domein • nieuw vakgebied
Informatiekunde: bestudeert maatschappelijke rol ICT, informatiemaatschappij descriptief • geeft context
5
Bachelorvakken: plaats in het curriculum
6
http://www.cs.uu.nl/bama/IcaMajor.html
3
11/12/2014
Groepen en begeleiders
groepsindeling uit Osiris is niet van toepassing! eerstejaars: ingedeeld per (halve) tutorgroep begeleider: tutor of andere docent; mede bepaald door
opdracht
de meesten weten dus al in welke groep ze zitten! ben je niet in een groep ingedeeld? in de pauze even melden!!
Eerste actie van groep: onderwerpkeuze! bepalen voor eerste bijeenkomst met begeleider
7
Informaticaproject: inleiding Jullie gaan iets bouwen! Deliverables (zie website): begin: een projectdocument: met de planning, het ontwerp en de constructieplannen eind: een werkend en demonstreerbaar product een website en flyer een verslag met reflectie op het project + handleiding
Op verschillende momenten toon je op verschillende manieren je voortgang. Verwachte inzet (p.p.): 7,5 ECTS = 7,5 x 28 uur = 210 uur 8
4
11/12/2014
Soorten opdrachten Bouw een complete tool. Doorgaans eenvoudige theorie; meer nadruk op ‘uiterlijkheden’.
Bouw een deel van een complex systeem. Meer nadruk op probleemoplossing dan op ‘uiterlijkheden’.
9
Opdrachten
(niet vastomlijnd)
Eigen idee; laat je bijv inspireren door: • • • • • • •
Computer Detective EHBO trainer Image stitching / panorama reconstructie Steganografie (data hiding) / digitaal watermerken ASCII-art generator Geotagging 2D `matrixcodes'
MyMap: kortste-pad kaart Weet wat je eet Verkiezingsuitslagen; berekenen en analyseren Sport: wie speelt er tegen wie? Simulatie van een 4-bits processor Shopping assistent 3D-illustraties Stoplichtsimulatie Logische puzzels Taalkist: leg het begrip grammatica uit Fanatiek geocachen
Wees creatief en ambitieus!!
10
5
11/12/2014
Procedure: hoe?
Wie gaan dit doen? Jij (met je team) Hoe word je geacht dit te doen? Zoek dat zelf maar uit Dit is geen standaard vak waar we je leren hoe je dingen moet doen; je moet het hier jezelf leren. Maak je geen zorgen: we helpen wel (komt straks)
11
Procedure: waarom? Leer te werken in een team essentieel in meeste werkomgevingen, zeker in software engineering samen verantwoordelijk zijn voor het geheel Leer hoe je dingen zelf uit moet zoeken we kunnen niet alles onderwijzen vakgebied is erg aan veranderingen onderhevig Leren door te doen is vaak effectiever je leert beter door dingen zelf te ervaren, dan door te luisteren naar iemand die er over vertelt timemanagement Leren van fouten is vaak nog beter!
12
6
11/12/2014
Betrokkenen: de begeleider Je tutor is doorgaans ook je begeleider. Taak en rol: de begeleider is geen onderdeel van het project team hij/zij heeft de rol van adviseur hij/zij ondersteunt met management en organisatorische
zaken hij/zij biedt hulp, waar nodig
hij/zij kan contact leggen met experts uit het Departement hij/zij monitoort je prestaties en vooruitgang hij/zij is betrokken bij de uiteindelijke beoordeling
13
Groepen en begeleiders
Eerste bijeenkomsten met begeleider: (NB: 1-6 zijn twee projectgroepen per tutorgroep!!!)
1, phi, Jeroen Fokker,
[email protected], neem contact op. 2, sigma, Paul Bergervoet,
[email protected], vrijdag 14/11, vanaf 13.15u, volgens rooster. 3, rho, Gerard Vreeswijk,
[email protected], vrijdag 14/11, vanaf 13.15u, volgens rooster. 4, psi, Ad Feelders,
[email protected], vrijdag 14/11, vanaf 15u, BBG563. 5, pi, Atze Dijkstra,
[email protected], donderdag 13/11, vanaf 15u, BBG568. 6, S/T,TWIN, Hans Bodlaender,
[email protected], di 11/11, vanaf 11u, BBG503. Honours, Paul Bergervoet,
[email protected], woensdag 12/11, vanaf 10u, BBG472.
14
7
11/12/2014
Betrokkenen: studentassistent
Assistenten: Gerben Aalvanger (ICA) ?? (GT)
Taak en rol: je kunt ze benaderen voor technisch- en programmeeradvies een aantal verplichte bezoeken ....
15
Betrokkenen: coordinator en juryleden
Coordinator: Paul Bergervoet voor alles rondom de organisatie van het vak:
teamindeling, opdrachttoewijzing, regelingen, website, schema’s van colleges, presentaties en symposium Juryleden: Verschillende interne en externe experts bij eindpresentaties en symposium
16
8
11/12/2014
Hoorcolleges 1. Introductie & organisatie 2. Software engineering & teamwerk 3. Tools, rights, en resources 4. Gastspreker van
VALORI│BUSINESS IT OPTIMIZATION
(testen)
5. Gastspreker … Doel: algemeen, globale introducties geen “blauwdruk” maar hints en tips oriëntatie op arbeidsmarkt (niet direct relevant voor je project)
Aanwezigheid: verplicht, ook bij 4 en 5!
17
Projectmeetings wekelijks; gaan bij default door verplicht voor iedereen 1 in aanwezigheid van begeleider; rest zelf
jullie organiseren ze (voorzitter, agenda, notulen....) begeleider observeert en adviseert begeleider grijpt in, indien nodig
In het ideale geval doet de begeleider niets, maar hij/zij heeft wel het laatste woord.
18
9
11/12/2014
Teamwerk (kort) Dit project vereist inspanning van het hele team Werken in een team is lastig (met name als heel divers)
Zorg er dus voor dat: je met elkaar praat je elkaars talenten ontdekt en gebruikt je ook werkt aan de dingen waar je weinig/niets van weet je ook anderen helpt om te leren en zichzelf te verbeteren iedereen evenveel bijdraagt Het bijhouden van een logboek is verplicht! aantal gewerkte uren + wat je daarin gedaan hebt tenminste wekelijks ge-update
19
Projectdocument Wat wil je en wat heb je er voor nodig? een planning die het team en de begeleider in staat stelt het
juiste ambitieniveau van het project te bepalen
een eenduidige beschrijving van de eisen en specificaties waar
het product aan moet voldoen: wat wil je kunnen en wat heb je nodig om dat te kunnen? Welke dingen zijn optioneel: wat kan je er eventueel uitlaten, wat kan je eventueel nog toevoegen? een beschrijving of verbeelding van de 'oplossing' voor het gekozen probleem en hoe je dit naar een implementatie gaat vertalen. Helder geschreven, duidelijk maar beknopt. (een andere groep moet met jouw document in de hand precies het door jou gewenste systeem kunnen bouwen!) Inleverwijze en deadline: zie website
20
10
11/12/2014
Vragen
Mogen we open source software gebruiken? Mogen we code hergebruiken (bijv. van ander vak)? Mogen we plaatjes, geluiden etc van internet gebruiken?
Ja, gebruik vooral wat er beschikbaar is, maar geef het duidelijk aan: ivm beoordeling ivm credits denk aan juridische zaken (hoorcollege 3)! Ook het gebruik van hardware is toegestaan, mits je daar over beschikt (of via Departement: overleg met je begeleider) en je zelf de benodigde support regelt.
21
Advies Bereid je voor op het ergste dingen kunnen en zullen mis gaan teamgenoten kunnen uitvallen Zorg dus voor een plan B! hou teamgenoten goed in de gaten, bespreek problemen in
een vroeg stadium
problemen zijn niet erg, maar er niets mee doen wel!
Mik hoog en wees ambitieus, echter wees ook realistisch in je planning je ambities niet realiseren is acceptabel mislukken door luiheid, te weinig inspanning of een chaotisch aanpak is dat niet!
22
11
11/12/2014
Implementatie en testen
implementatie: kies zelf je taal gebruik versiecontrol, bijv. met Git/GitHub, TFS, SVN (zie ook hoorcollege 3)
zorg dat je code netjes op orde is (voorzien van
commentaar)
Belangrijk: implementatie betekent ook testen! testen van correctheid: geen bugs? testen van functionaliteit, usability, etc.
23
Presentaties
Halverwege presenteer je aan je begeleider en de studentassistent je ‘tussenproduct’; tevens geef je een ‘tussenpresentatie’ aan je medestudenten. kort, wat is opdracht, wat kan je systeem al en wat nog
niet.
noem eventuele problemen de zaal draagt tips en ideeën aan
Aan het eind volgt ook een eindpresentatie en demonstratie van je eindproduct, op de jurydag en het symposium Details: zie website; aanwezigheid verplicht!
24
12
11/12/2014
Reflectieverslag hoe is je project verlopen? alles volgens plan? haalbaar? voortschrijdend inzicht?
wat wist/kon je al? onverwachte inbreng?
hoe heb je gewerkt (individueel, groep)? planning, organisatie?
nieuwe kennis/vaardigheden opgedaan? wat is nog niet opgelost? waar ben je nieuwsgierig naar geworden?
25
Promotiemateriaal & beoordeling Om je project te promoten maak je een website een flyer Overtuig hiermee het publiek, en de jury.... Zie website voor details; de aandacht die je aan deze onderdelen besteedt wordt ook meegewogen in het cijfer. Het uiteindelijke cijfer wordt bepaald door de begeleider; dit kan zijn: hetzelfde voor het hele team iets beter of slechter afhankelijk van verschillen in individuele bijdragen veel beter of slechter, afhankelijk van (te laag) aantal gewerkte uren afwezigheid bij projectmeetings en hoorcolleges luiheid of bovengemiddelde inspanning
26
13
11/12/2014
Planning informaticaproject: tot Kerst Week 46 kennismaking onderwerp (eigen -> neem contact op met coordinator
en begeleider!); organiseren team + omgeving, logboek, website, svn(?)
Week 47 planning analyseren vereisten + ontwerpen
brainstormen met student assistent; kennismaking begeleider,
logboek aan begeleider tonen (verplicht!)
Week 48 website opzetten (webspace beschikbaar) bouwen
Week 49 bouwen en testen projectdocument in definitieve vorm inleveren (bij begeleider).
Week 50 bouwen en testen website tonen aan studentassistent tussenproduct tonen aan studentassistent
Week 51 bouwen en testen
tussenpresentaties teams
27
Planning informaticaproject: vanaf Kerst Week 2 bouwen en testen eindverslag schrijven website afmaken
Week 3 bouwen en testen eindverslag schrijven flyer maken
Week 4 afronden vr: eindverslag (reflectie) + werkend systeem inleveren (bij
begeleider)
vr: definitieve website op projectspace; flyer mailen naar
coördinator
Week 5 wo: presentatie voor jury Vr: symposium CD/DVD box inleveren met alle deliverables (op symposium)
28
14
11/12/2014
Meer informatie vakwebsite bevat alle regels, deadlines etc. Let ook op evt afwijkende tijden en zalen!
nuttig materiaal op site documenten over projectmatig werken links naar tools collegeslides
volg het nieuws op
de vakwebsite!!
29
Aan de slag Deze week nog: onderwerpen + begeleiders toebedeeld (eigen? -> neem gelijk contact
op met coordinator en begeleider!)
bedenk een naam voor je team bijeenkomst zonder begeleider wijs iemand aan die de communicatie met begeleider, coördinator en
studentassistent verzorgt (voorzitter)
maak een afspraak met de studentassistent voor volgende week zet alles klaar voor een logboek (urenregistratie), de team-website en
het project (svn, dropbox, googledocs, facebook, ...?)
Ga vervolgens aan de slag met een planning en analyse: wat ga je bouwen? aan wat voor eisen moet het voldoen?
college woensdag over
software-ontwikkelcyclus en teamwerk
veel succes gewenst! 30
15