De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Eindproject informatica

Verwante presentaties


Presentatie over: "Eindproject informatica"— Transcript van de presentatie:

1 Eindproject informatica
Software Engineering

2 Software engineering 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)

3 Eindproject Informatica
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: +- 65% Proces en documentatie: +- 35% Vergelijkbaar: profielwerkstuk

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

5 Watervalmodel Verschillende fasen.
Elke fase levert een mijlpaalproduct Fasen lopen in elkaar over Analyse Ontwerp Implementatie Acceptatietest Documentatie/oplevering

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

7 Ontwerpdocument Dit is een vervolg op je startdocument, met een stuk meer diepgang: Specificeer precies alle onderdelen van je project/product Gebruik zo concreet mogelijke beschrijvingen en getallen Dit document moet de kwaliteit van het eindproduct meetbaar maken Het document maakt onderscheid in WAT en HOE WAT ga je precies maken HOE ga je dat voor elkaar krijgen

8 Ontwerpdocument: wat Welke functionaliteit heeft het product?
Wat kan het precies? Welke schermen / knoppen zijn er? Welke handelingen kan de eindgebruiker verrichten en wat is daarvan het resultaat? Wat voor input en output is er …. De dingen die je hier beschrijft, komen later terug in je acceptatietest: Voldoet het eindproduct aan alle eisen en bevat het de beloofd functionaliteit?

9 Ontwerpdocument: HOE Beschrijf HOE je aan je eisen en onderdelen gaat voldoen: Bedenk verschillende oplossingen voor de deelprobelemen Laat zien wat je hebt overwogen en onderbouw je definitieve keuze Maak een (schematische) opzet van de structuur van de programmacode. Objecten / functies Schermlayouts Webpagina’s Databaseontwerp Te maken afbeeldingen, achtergronden en animaties Te gebruiken geluidsfragmenten en fonts.

10 Implementatie Schrijven van code en ontwerp grafische elementen
Nauwkeurig volgen van het ontwerp

11 Acceptatietest Tussentijds test je natuurlijk steeds, maar een acceptatietest heeft een andere functie Acceptatietest: voldoet het product aan de gestelde eisen? Maak uitgebreide lijst testcases Verkeerde invoer Uit het scherm lopen Pagina bekijken zonder ingelogd te zijn. Als het kan: verhelp bugs nog Onverholpen bugs en verschillen met originele ontwerp moet je toelichten

12 Documentatie Projectverslag Alle mijlpaaldocumenten
Projectverloop (evaluatie van verloop en samenwerking) Logboek! Tijdverantwoording naar Wt Oplossing evt. onenigheid in groepjes Handleiding (in geval van klant)

13 Deadlines 1. Startdocument: 29 januari 2. Ontwerp: 21 februari
3. Implementatie: 3 april 4. Testrapport: 10 april 5. Einddocumentatie: 10 april

14 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

15 Keuze 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) ±12 weken -> ± 30 lessen Lessen + thuiswerk = 60 SLU per persoon SE valentie 6 (= 3x een normale PO)

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

17 Php / Mysql ( / JavaScript / jQUERY / … )
Dynamische website gekoppeld aan SQL database Volledig “met de hand” te bouwen. Zelf php taal leren Denk aan bijv: Forum Rating/reviewsite Browsergame

18 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) Handige app voor gebruik in school (open dag bijvoorbeeld) ...

19 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 die Pokémon kan vangen?) Domotica (automatiseer je huis / kamer) Random coole projecten ...

20 From nand to tetris Fundamentele informatica. 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 -> (een 10 mee te halen) Zelfstudie!

21 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… 

22 Start project Brainstorm en oriëntatie (Wt brainstormt graag met je mee) Definitieve groepjes maken Projecttype en onderwerp kiezen Experimenteren met gekozen onderwerp Opstellen startdocument


Download ppt "Eindproject informatica"

Verwante presentaties


Ads door Google