1 Software Engineering EINDPROJECT INFORMATICA. SOFTWARE ENGINEERING 2 Managen van grotere softwareprojecten Onstaan uit noodzaak: betrouwbare software.

Slides:



Advertisements
Verwante presentaties
informatica keuzevak in 5- en 6-vwo
Advertisements

Het profielwerkstuk Hoe maak je dat ?.
Project Software Engineering
Stijn Hoppenbrouwers Software Engineering les 1 Algemene inleiding en Requirements Engineering.
Projectmanagement Hoofdstuk 5 Maken van een Plan van aanpak Roel Grit.
Op het Zuyderzee College
Thinkquest2 versie 2013 info: vanaf februari 2013.
Software Architectuur Over de samenhang der dingen = Over de connecties tussen componenten Over de afhankelijkheden tussen modules Over de belangen van.
BattleBots The school battle.
De kern van projectmanagement
1 Demo of Praktijk Over de problematiek bij het ontwerpen van informatiesystemen Mark Dumay Afstudeervoordracht 15 oktober 2004.
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
Hoofdstuk 4 Globale structuur van een project
Vademecum Energiebewust Ontwerpen van nieuwbouwwoningen Eric van Zee 16 februari 2007.
Inleiding Software Engineering
Projectmanagement (SBC) 19 november 2009
Project planning + Functioneren in een groep
Research & Development 1 Tom Heskes Voorjaar 2006.
Research & Development 1 Tom Heskes, Erik Barendsen, Peter Lucas Voorjaar 2007.
HALLO OPLETTEN : Waarom sql DOEN : Introductie opdracht
ICTB/NB Projectmanagement.
Hoofdstuk 2 Het onderzoeksonderwerp formuleren en verduidelijken Methoden en technieken van onderzoek, 5e editie, Mark Saunders, Philip Lewis, Adrian.
Informatica in de Tweede fase Havo en VWO. De uitgangspunten Informatica is een vak in de vrije ruimte voor de havo 240 slu (voor het vwo 280 slu) het.
Designing Knowledge Systems b Hoofdstuk 11 van Knowledge Engineering and Management. The CommonKADS Methodology. b A.Th. Schreiber, J.M. Akkermans, A.A.Anjewierder,
Ontwerpprojecten Ofwel hoe combineren we drie stromen? Steven Nijhuis.
Ofwel hoe combineren we drie stromen? Steven Nijhuis
HBO-I Conference Tour RUP| versie 1.0 | 18 maart 2010 RUP toegepast binnen DUO Een korte impressie hoe we binnen DUO RUP ingevoerd hebben (aan het.
LauwersCollege Buitenpost Informatica
Deel XII Eerste echte e-commerce applicatie (vervolg) 1 Internetapplicaties Deel 12: Eerste echte e-commerce applicatie: Ontwerp (vervolg)
R E S E A R C H klas vragen, noteren op het bord, waarom doe je research?
Leerlingen ontwikkelen apps
26 mei  Wie ben je?  Verwachtingen? Wettelijk Meerwaarde Valkuilen NODEN – VRAGEN?
Het bacheloreindproject (BEP) 1BT04 / 1GT04
R E S E A R C H. Doel - Je weet waarom research doen nuttig en noodzakelijk is - Je hebt (in overleg) een onderwerp gekozen voor jouw immersive space.
Eindproject informatica
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Plan van Aanpak.
Loopbaan oriëntatie en begeleiding
Programmeren.
Loopbaan oriëntatie en begeleiding
Agenda  Lesuur minuten  Wat kun je met programmeren?  Wat is code en hoe werkt het?  Code schrijven: de basis  Lesuur minuten  Zelf.
Turing deel 2 Hoofdstuk 8 Programmeren met Java Objectgeoriënteerd programmeren, klasse Applet, variabelen (primitieve typen en referentie typen), arrays.
I NFORMATICA, IETS VOOR JOU ? Kies bewust Voorlichting HAVO-VWO Juf Greijmans.
Peel en MaasNet.nl Het digitaal geheugen van Peel en Maas.
Wetenschap & Technologie en zaakvakonderwijs [naam trainer]
Programmeren. Wat is programmeren? Het schrijven van opdrachten voor de processor De processor “spreekt” machinetaal:
PLANNING MAKEN Stap één bij projecten. HOE MAAK JE EEN ANALYSE? Wat is het verschil tussen een planning en een plan?
Eindproject informatica
Welkom bij de presentatie van de Cube of Life, gemaakt door Team Z.
Programmeren.
Software Development fundamentals
HERZIENING INFORMATICA DEEL 1.
Projectplan en fasering BGT regio Nijmegen
Objectgeoriënteerd Programmeren
Welkom Gym 5 en ouders! Programma vanavond Profielwerkstuk (PWS)
Eindproject informatica
Lectora als ontwikkeltool voor interactieve multimedia programma’s
Digi(bord)boek project <titel project>
Informatica Keuzevak in de 2e fase.
Onderzoekend leren in de natuurwetenschappen
Product van TU Delft, SEC
INFORMATICA Hoofdstuk 13 - Projectmanagement.
Eindproject informatica
Technisch Ontwerp inhoud
Stap drie bij projecten
Product van TU Delft, SEC
Java Masterclass Sar Maroof.
Software Development fundamentals
Onderzoek doen met de Grow –app NIBI
Talentontwikkeling op school Het ontwerpen van een programma voor talentontwikkeling door (aankomend) leraren.
Transcript van de presentatie:

1 Software Engineering EINDPROJECT INFORMATICA

SOFTWARE ENGINEERING 2 Managen van grotere softwareprojecten Onstaan uit noodzaak: betrouwbare software Grote projecten gestructureerd aanpakken Heel precies specificeren: Wat gaat er precies gemaakt worden (eisen) Wie gaat wat precies doen (taakverdeling en planning) Wat is er precies gedaan (documentatie en verantwoording)

EINDPROJECT INFORMATICA 3 Ontwikkelen van een groot informaticaproduct in teamverband Doorlopen van een volledige ontwerpcyclus volgens het waterval model Eindproduct belangrijk, maar projectmanagement en proces zeker ook. Weging: Product: +- 60% Proces en documentatie: +- 40% Vergelijkbaar: profielwerkstuk

GROEPJES 4 Groepjes van 3 (eventueel 4) Verschillende rollen (vaak meerdere rollen per persoon of meerdere personen per rol): Projectleider (verplicht!) Programmeur Grafisch ontwerper Gamedesigner (game) Leveldesigner (game) Databaseontwerper (php) Tester...

WATERVALMODEL 5 Verschillende fasen. Elke fase levert een mijlpaalproduct Fasen lopen in elkaar over Functioneel ontwerp Technisch ontwerp Implementatie Testen Documentatie/oplevering Analyse

ANALYSE 6 Vaststellen eisen (indien van toepassing: in overleg met opdrachtgever) Maken projectplan (startdocument) Taakverdeling Tijdsplanning Beknopte beschrijving van de projectinhoud

FUNCTIONEEL ONTWERP 7 Beschrijft WAT je gaat maken: Welke functionaliteit heeft het product? Wat zijn de concrete eisen aan deze functionaliteit? Dit is een vervolg op je startdocument, met een stuk meer diepgang: Specificeer precies alle onderdelen van je project Gebruik zo concreet mogelijke beschrijvingen en getallen Dit document moet de kwaliteit van het eindproduct meetbaar maken

TECHNISCH ONTWERP 8 Beschrijft HOE je het gaat maken: Beschrijft o.a. het volgende: De structuur van de programmacode. Objecten Scripts Pagina’s (php) Databaseontwerp (php) Te maken afbeeldingen, achtergronden en animaties. Te gebruiken geluidsfragmenten en fonts. …

IMPLEMENTATIE 9 Schrijven van code en ontwerp grafische elementen Nauwkeurig volgen van functioneel en met name het technisch ontwerp

TESTEN 10 Testcases uitvoeren a.d.h.v. ontwerp Maak uitgebreide lijst testcases Verkeerde invoer Uit het scherm lopen Pagina bekijken zonder ingelogd te zijn. … Verhelp zo veel mogelijk bugs en fouten n.a.v.. Het testrapport Onverholpen bugs en verschillen met originele ontwerp toelichten

DOCUMENTATIE 11 Projectverslag Alle mijlpaaldocumenten Projectverloop Logboek! Tijdverantwoording naar Wt Oplossing evt. onenigheid in groepjes Handleiding (in geval van klant)

DEADLINES 1. Startdocument: 10 januari 2. Functioneel ontwerp: 31 januari 3. Technisch ontwerp: 21 februari 4. Implementatie: 10 april 5. Testrapport: 15 april 6. Einddocumentatie: 15 april 12

TECHNISCHE BEPERKINGEN Voordat we de mogelijkheden bespreken: eerst even dit: De benodigde tools en hard- en software zijn erg afhankelijk van je onderwerpkeuze. Houd dat in je achterhoofd! Er kan van aardig wat op de school PC’s, maar zeker niet alles: 3D engines?  Eigen hardware aanleveren/meenemen Speciale tools nodig?  portable versies of eigen hardware Wt heeft wat random hardware beschikbaar in overleg 13

KEUZE 14 Voor het project kun je o.a. kiezen uit: Simulatie of Gamedesign Dynamische website met Php/MySQL/Javascript/etc. Bouwen van een nuttige Android of iOS app Electrotechniek: Arduino of Raspberry Pi From NAND to Tetris (Fundamentele informatica) Eventueel eigen idee (in overleg met Wt uiteraard) ± 14 weken -> ± 40 lessen Lessen + thuiswerk = 70 SLU per persoon SE valentie 6 (= 3x een normale PO)

GAMEDESIGN / SIMULATIE 15 Bouw een game of liever nog een interessante simulatie Kies een geschikte programmeertaal/omgeving: (Greenfoot, Python, UDK/Unity (3D), …) Denk eens aan: Evolutieprogrammeren (zie bijvoorbeeld: Boxcar2D)Boxcar2D Simulatie (met Netlogo kun je toffe dingen doen)Netlogo Schrijf een AI of andere MOD voor een bestaande game...

PHP / MYSQL ( / JAVASCRIPT / JQUERY / … ) 16 Dynamische website gekoppeld aan SQL database Volledig “met de hand” te bouwen. Zelf php taal leren (lijkt op Java) Denk aan bijv: Forum Rating/reviewsite Browsergame …

APP ONTWIKKELING Ontwerpen van een nuttige Android of iOS app iOS (Objective C) vereist Apple hard- en software: zelf regelen! Android (Java) vereist pc met adminrechten: zelf regelen Testdevices: zelf regelen Denk aan: Game of grafische simulatie (libgdx is tof voor android)libgdx Handige app voor gebruik in school (open dag bijvoorbeeld)... 17

ELECTROTECHNIEK: ARDUINO OF RASPBERRY PI Combinatie van “programmeren en solderen” Arduino’s en Raspberry Pi’s + basis componenten beschikbaar Denk aan: Robotica (bouw je eigen drone?) Domotica (automatiseer je huis / kamer) Random coole projecten... Random coole projecten 18

FROM NAND TO TETRIS 19 Zelfstudiecursus Computer Science Niveau: 1e jaar universiteit (Harvard) Bouw een (virtuele) computer vanaf de grond af op en programmeer een tetris game ervoor Logische poorten -> Hardware -> Machinetaal -> Hogere programmeertaal -> Operating system -> Software Uitdaging voor de echte Informatica held

EIGEN IDEE Eigen ideeën voor de invulling zijn welkom Informatica gerelateerd Qua diepgang en omvang vergelijkbaar met andere keuzes. Zelfde ontwerpcyclus Zelfstandigheid vereist: Wt heeft niet overal verstand van… 20

START PROJECT 21 Deze week: Brainstorm en oriëntatie Direct na de vakantie: Definitieve groepjes maken Projecttype en onderwerp kiezen Experimenteren met gekozen onderwerp Opstellen startdocument