Prep Hard Win Easy

Category: Mediadevelopment

MA | Project documentatie 2016 v1.2

Gebaseerd op het KD Applicatie- en mediaontwikkeling

Inleiding

In dit document vind je informatie over de fases en voor het maken van documentatie bij het uitvoeren van projecten als Mediadeveloper.

Algemeen

De volgende opmerkingen gelden voor elk document dat je schrijft binnen de uitvoering van een project. Controleer dus elke document voor dat je inlevert of laat controleren op deze punten:

Begin elk document met een duidelijke inleiding. In de inleiding vertel je waar het document over gaat zodat de lezer weet wat hij gaat lezen. Probeer daarbij zo specifiek mogelijk te zijn; geef geen uitleg wat een Schriftelijk Advies, FO of TO is maar leg kort uit wat je gaat vertellen, hoe het document is op gebouwd of iets dat de lezer moet weten voordat hij het document gaat lezen.

Zorg dat de opmaak van de documenten consequent is. Gebruik niet onnodig veel verschillende soorten opmaak van de tekst zonder dat je daar een reden voor hebt, dit leidt alleen maar af van de inhoud. Vermijdt onnodig gebruik van ingewikkelde formuleringen als het document is bedoeld voor de opdrachtgever. Gebruik zoveel mogelijk de functies van je teksteditor om het document netjes op te maken, bijvoorbeeld kop- en voetteksten, automatische inhoudsopgave, opmaakprofielen etc. De verschillende documenten binnen een project moeten een gelijke opmaak hebben zodat je duidelijk kunt zien dat ze bij elkaar horen.

Zorg dat belangrijke informatie duidelijk in of op het document vermeld staat. Als je een document op de grond vindt moet je kunnen zien van wie het is, waarvoor en wanneer het is geschreven en welke pagina.

Geef alle documenten een duidelijk versienummer zodat je weet wat je laatste versie is, en wat een eerdere versie is.. Elke keer als je een document (voorlopig) oplevert geef het een nieuw nummer. Aan het nummer moet ook te zien zijn dat het een definitieve versie is. Begin je nummering bijvoorbeeld met 0.1, 0.2, 0.3 … De definitieve versie krijgt dan het nummer 1.0. Als het definitieve document in de loop van het project toch nog moet aanpassen, door bijvoorbeeld nieuwe informatie of inzichten, ga je verder met 1.1, 1.2 etc. Zo is duidelijk te zien dat de laatste documenten een aanpassing is op de definitieve versie.

Planning en logboek

Om het proces van het maken van een project of opdracht goed te laten verlopen is het handig om een planning te maken. Hierdoor kan je zien wanneer welk onderdeel af moet zijn, of er verschillende fasen zijn die je moet plannen en hoeveel tijd het project of de opdracht in beslag gaat nemen.

Om tijdens een project of een opdracht, de werkzaamheden die je doet goed te volgen, zul je een logboek bij moeten houden. Het logboek verschaft de projectbegeleider inzicht in het verloop van je project (uitvoering), in de planning en in het realiseren van je product. Je werkzaamheden leg je vast om je voortgang te bewaken.

Lever bij elk product dat je oplevert je planning en je logboek als bijlage in. De planning en het logboek zijn documenten die de projectbegeleider van jou wil zien. Dit zijn dus geen documenten die de opdrachtgever wil zien.

Naam: Groep: Project:
Datum Tijd Activiteit

Kerntaak 1: Ontwerpen van de applicatie, (cross)media-uiting

De volgordelijke plaats van de documenten binnen het proces:

Schriftelijk advies --------> Functioneel ontwerp --------> Technisch ontwerp ------------->
Plan van aanpak --------------------------------------------------------------------------->

Bovenstaande betekent dat werkproces 1.2 parallel loopt aan de andere werkprocessen en van invloed is op alle te schrijven documenten binnen kerntaak 1.

Werkproces 1.1 Stelt de vraag en/of informatiebehoefte vast

Doel: Verwachtingen afstemmen
Input: Projectbeschrijving/Briefing/RFP
Output: Schriftelijk advies/Offerte
Beoordeling: Projectbegeleider vervolgens opdrachtgever
Voor wie: Opdrachtgever

Schriftelijk advies/Offerte:

  • Algemene aanleiding/inleiding/omschrijving van de gewenste werkzaamheden
  • Bij een waterval proces, alle eisen en wensen van de opdrachtgever beschrijven en indelen op prioriteit volgens MoSCoW methode
  • Bij een Agile proces, omzetten van alle eisen en wensen van de opdrachtgever naar userstories
  • Haalbaarheid van cruciale eisen en wensen
  • Voor- en nadelen beschrijven van cruciale eisen en wensen en adviseren
  • Uren- en kostenopgave
  • Grove planning op basis van ontwerp, realisatie, implementatie en onderhoud/beheer fase

Werkproces 1.2 Maakt een plan van aanpak

Doel: Vastleggen wat je gaat doen
Input: Schriftelijk advies, !! Feedback van de opdrachtgever
Output: Plan van aanpak
Beoordeling: Projectbegeleider vervolgens opdrachtgever
Voor wie: Opdrachtgever en team

Plan van aanpak:

  • Projectomschrijving
  • Aanleiding > Wat is ‘de uitdaging’ en waarom nu?
  • Doelstelling > Wat wil de opdrachtgever bereiken en gericht op welke doelgroep?
  • Op te leveren resultaten, producten en/of diensten
  • Alle activiteiten benoemen en koppelen aan projectleden (zie FO en TO)
  • Fasering en gedetailleerde activiteitenplanning
  • Risico’s benoemen
  • Taken, verantwoordelijkheden en contactgegevens van de projectleden
  • Hoe ga je communiceren, onderling, maar ook met opdrachtgever; welke tools ga je daar evt voor gebruiken.(Elke week Skypen, per mail, etc.)

Werkproces 1.3 Levert een bijdrage aan een functioneel ontwerp of Game Design Document

Doel: Vastleggen hoe je het gaat doen vanuit de gebruikers
Input: Schriftelijk advies en PvA
Output: Functioneel ontwerp
Beoordeling: Projectbegeleider vervolgens opdrachtgever
Voor wie: Opdrachtgever en team

Functioneel ontwerp:

  • Doelgroep/Eindgebruikers > Wie zijn ze?, wat verwachten ze, hoe benaderen we ze
  • Eisen omzetten naar functionaliteiten/userstories
  • Per functionaliteit/userstory een wireframe of klikbare prototype
  • Sitemap/Menustructuur
  • Stroomdiagram van een belangrijke functionaliteit/userstory
  • Opzet van een acceptatietestplan uit te voeren in KT2
  • Eenvoudige beschrijving van afhankelijkheden van andere systemen/bronnen/diensten/API’s/sites

Werkproces 1.4 Maakt een technisch ontwerp

Doel: Vastleggen hoe en waarom je het gaat doen vanuit de techniek
Input: Schriftelijk advies, Functioneel ontwerp
Output: Technisch ontwerp
Beoordeling: Projectbegeleider
Voor wie: Teamleden en nieuwe medewerkers

Technisch ontwerp:

  • Per complexe functionaliteit/userstory een wireframe met gedetailleerde uitwerking
  • Toelichten van de gekozen oplossing(en)
  • Database ontwerp/model / Entity Relation Diagram / Type velden
  • Sequence diagram van een complexe functionaliteit/userstory
  • Volledige beschrijving van afhankelijkheden van andere systemen/bronnen/diensten/API’s/sites

Werkproces 1.5 Richt de ontwikkelomgeving in

Doel: Inzicht verkrijgen van OTAP omgevingen
Input: Functioneel Ontwerp en Technisch Ontwerp
Output: Resultaat opnemen in het technisch ontwerp
Beoordeling: Projectbegeleider
Voor wie: Teamleden en nieuwe medewerkers

Beschrijving inrichting van ontwikkelomgeving:

  • Welke ontwikkelomgeving er gebruikt gaat worden
  • Welke taal ga je gebruiken
  • Welke hulpmiddelen heb je nodig
  • Hoe pak je de inrichting aan en is het gelijk aan de productieomgeving

Kerntaak 2: Realiseren van de applicatie, (cross)media-uiting

Werkproces 2.1 Legt een gegevensverzameling aan

Doel: Aantonen van kennis van het bewerken en analyseren van data
Input: Functioneel Ontwerp en Technisch Ontwerp
Output: Digitaal formaat met data
Beoordeling: Projectbegeleider
Voor wie: Teamleden

Fysiek bewijs in digitaal formaat:

  • Database aanmaken
  • Back up/dump van database
  • Database moet op zijn minst gevuld zijn met voorbeeld data

Werkproces 2.3 Realiseert een (cross)media uiting en/of systeem

Doel: Aantonen dat je in staat bent om te programmeren volgens documentatie en planning
Input: FO, TO en planning
Output: Digitaal formaat met data, screenshots van het systeem en een realisatieverslag
Beoordeling: Projectbegeleider
Voor wie: Teamleden

Fysiek bewijs in digitaal formaat:

  • Gehele back up van project
  • Moet gevuld zijn met voorbeelddata
  • Opgenomen in versiebeheer
  • Screenshots van het systeem (applicatie en database)
  • Conventie en documentatie

Realisatieverslag:

  • Persoonlijke logboek in verhaalvorm
  • Wat ging goed of fout -> noem voorbeelden

Werkproces 2.5 Test het ontwikkelde product

Input: Testplan uit het Functioneel Ontwerp en TO
Output: Acceptatietestrapport
Beoordeling: Projectbegeleider
Voor wie: De opdrachtgever

Acceptatietestrapport:

  • Beschrijving van wat je gaat testen zoals beschreven in FO
  • Overzicht van testers en hun inzet
  • Uitvoeren van de test
  • Screenshots van het testen (eventuele foutmeldingen)
  • Verzamelen testresultaten en verbeteringen beschrijven
  • Uitvoeren van de verbeteringen

Werkproces 2.6 Optimaliseert de game of (cross)media-uiting

Input: Acceptatietestrapport
Output: Optimalisatieplan
Beoordeling: Projectbegeleider vervolgens opdrachtgever
Voor wie: Opdrachtgever en teamleden

Optimalisatieplan:

  • Gebruiksvriendelijkheid rapport
  • Toegankelijkheid rapport
  • Overzicht zoekmachine instellingen

Werkproces 2.7 Bewaakt de voortgang en evalueert het project

Input: Plan van aanpak en teamvergaderingen
Output: Actuele gedetailleerde activiteitenplanning en Evaluatie
Beoordeling: Projectbegeleider
Voor wie: Opdrachtgever en teamleden

Actuele gedetailleerde activiteitenplanning:

  • Teamleden
  • Tijdindeling
  • Meetpunten

Evaluatie

  • Verzamelen teamfeedback betreft jouw eigen inzet en verbeterpunten beschrijven

Kerntaak 3: Implementeren van de applicatie of (cross)media-uiting

Werkproces 3.1 Maakt of levert een bijdrage aan het implementatieplan

Input: De gerealiseerde applicatie
Output: Implementatieplan en presentatie
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Systeem- en/of Applicatiebeheerder van de productieomgeving

Implementatieplan:

Beschrijf het volgende:

  • Ingrijpende veranderingen in de organisatie
  • Hoe en wie de gegevens gaan converteren, importeren of invoeren
  • Procedures en verantwoordelijkheden
  • Uitrol(deploy) aanpak(big bang, gefaseerd, parallel, gecombineerd?)
  • Stappen in de vorm van een draaiboek op basis van tijd
    • Alle te installeren hard- en software
    • Infrastructuur, Servers(Web, DB, Mail etc.) en modules
    • Systeemtest
  • Beheerders training bij ingrijpende veranderingen
  • Te verwachten toekomstige applicatie-, gegevens- en technisch beheer

Presentatie hand-out

  • Presentatie van het implementatieplan aan projectbegeleider, opdrachtgever en betrokken medewerkers

Werkproces 3.3 Implementeert een applicatie of (cross)media-uiting en/of -systeem

Input: Implementatieplan
Output: Implementatierapport
Beoordeling: Projectbegeleider
Voor wie: Systeem- en/of Applicatiebeheerder van de productieomgeving

Implementatierapport:

  • Uitvoeren en documenteren van installatie volgens implementatieplan in samenwerking met beheerder

Werkproces 3.4 Evalueert een implementatie

Input: Implementatieplan en uitkomst van implementatie
Output: Rapport met conclusies en verbeterpunten en procesverslag
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Toekomstige beheerders en ontwikkelaars

Procesverslag van het gehele implementatietraject:

  • Hoe verliep de voorbereiding
  • Hoe verliep de uitvoering, denk aan: conversie, invoering, tijdpadbewaking, training, procedures hanteren, overdracht naar beheer

Rapport met conclusies en verbeterpunten

Kerntaak 4: Onderhouden en beheren van de applicatie, (cross)media-uiting

Werkproces 4.1 Onderhoudt applicaties of (cross)media-uiting

Input: Functioneel ontwerp
Output: Onderhoud- en beheerplan, Rapport over de uitvoering van het onderhoud
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Systeem- en/of Applicatiebeheerders en toekomstige ontwikkelaars

Onderhoud- en beheerplan:

  • Beschrijven, uitvoeren(en documenteren) van procedures voor:
    • preventief onderhoud zoals updates, monitoring en unit-tests
    • virus bescherming
    • back-up en restore
    • incidenten-registratie
    • (nieuwe) eisen en wensen registratie
  • Rapporteren van alle ondernomen stappen en vervolgacties aan opdrachtgever/projectbegeleider

Werkproces 4.2 Verzamelt, controleert, bewerkt en archiveert (cross)mediabestanden

Input: Alle projectdocumenten
Output: Resultaat opnemen in het onderhoud- en beheerplan en het archief
Beoordeling: Projectbegeleider
Voor wie: Toekomstige beheerders en ontwikkelaars

Archivering (procedures voor het archiveren van (gegevens van) applicaties):

  • Toelichting gewenste format, type, kwaliteit en compressiefactor van de mediabestanden
  • Analyse aangeleverde format, type, kwaliteit en compressiefactor van de mediabestanden
  • Conversie mediabestanden

Archief:

  • Digitaal formaat

Werkproces 4.3 Bewaakt de samenhang van media-uitingen

Input: De gerealiseerde applicatie
Output: Resultaat opnemen in het onderhoud- en beheerplan
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Toekomstige beheerders en ontwikkelaars

Media-uitingen:

  • Audio en visuele stijl samenhang controle(sluit de stijl aan bij andere media-uitingen van de opdrachtgever)
  • Advies over andere (sociale)media mogelijkheden

Werkproces 4.4 Stelt script samen ten behoeve van het samenvoegen van content

Input: De gerealiseerde applicatie
Output: Resultaat opnemen in het onderhoud- en beheerplan
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Toekomstige beheerders en ontwikkelaars

Opmaak:

  • Weergave en uitleg van gebruikte opmaak/gridsysteem/theme/template

Werkproces 4.5 Beheert de content

Input: Onderhoud- en beheerplan
Output: Resultaat opnemen in het onderhoud- en beheerplan en fysiek bewijs in digitaal formaat met screenshots van het systeem
Beoordeling: Projectbegeleider
Voor wie: Toekomstige gebruikers, beheerders en ontwikkelaars

Contentbeheer:

  • Korte beschrijving van de route die content aflegt vanaf creatie tot publicatie
  • Beschrijving van verdeling van rollen, rechten en verantwoordelijkheden
  • Beschrijving van procedures/regels voor aanleveren van bruikbare content
  • Gebruikershandleiding en instructies van de wijze waarop content in de applicatie(s) wordt bewerkt en ingebracht
  • Bewerking van analoge naar digitale content (scannen, converteren, etc.)

Beoordeling communicatie

Tijdens het beoordelen van de communicatie wordt er op de volgende punten gelet:

  • Zijn er vooraf afspraken over onderlinge normen en waarden gemaakt?
  • Hoe is er met problemen om gegeaan?
  • Welke communicatiemiddelen zijn er gebruikt?
  • Hoe is de samenwerking verlopen?
  • Voelen de teamleden zich serieus genomen?
  • Is een ieders mening en idee welkom?
  • Is er voldoende motivatie- of vaardigheid?
  • Worden hoofd- en bijzaken herkend?
  • Is er gebruikt gemaakt van LSD:)(Luisteren, Samenvatten en Doorvragen)

Beoordeling documentatie

Tijdens het beoordelen van de documentatie wordt er op de volgende punten gelet.

Onderdeel: Uitleg:

Titelblad:

een duidelijk voorblad met daarop vermeld:

  • de titel van het document
  • plaats, de maand en het jaartal van publicatie (inlever datum)
Inhoudsopgave:

de inhoudsopgave vermeldt de titels van de hoofdstukken, paragrafen met de daarmee corresponderende nummering en de pagina’s. Deze moet automatisch worden gegenereerd met Word.

De inhoudsopgave moet een duidelijk overzicht geven van het document.

Voorwoord:

hierin behandel je zaken die niet rechtstreeks in verband staan met het onderwerp zoals:

  • bedankjes aan medewerkers en instellingen
  • de aanleiding tot het document
  • als er een vorige document bestaat: het verband met het vorige

Inleiding:

een definitie en afbakening van het onderwerp:

  • de probleemstelling (tip: gebruik hierbij de project naam)
  • een uitleg over de opbouw van het document
  • toelichting op de methode van onderzoek

Opmerking: het voorwoord en de inleiding mogen op 1 pagina worden gezet.

Kern:

de antwoorden op alle vraagstukken en opdrachten:

  • Geef niet te veel maar zeker niet te weinig antwoord op vragen en opdrachten.
  • Verwerk de vraag of opdracht in uw antwoord, vermeld anders de vraag of opdracht voorafgaand aan uw antwoord.
  • Geef duidelijk aan om welke vragen opdrachten en/of hoofdstukken het gaat.

In de inleiding heeft je voor een probleemstelling gekozen waardoor het document zich kan beperken tot een thema. De probleemstelling is de centrale vraag die beantwoord moet worden. De belangrijkste aspecten die je bij het schrijven in de gaten moet houden zijn:

  • de overzichtelijkheid: die moet blijken uit de indeling in hoofdstukken en paragrafen (Zie ook de inhoudsopgave)
  • de objectiviteit: beperk je bij de weergave van de feiten tot die feiten. Loop niet op conclusies vooruit.

Slot:

Dit is het laatste hoofdstuk waarin:

  • een terugblik op de kern wordt gegeven (samenvatting)
  • conclusies uit de voorafgaande hoofdstukken worden getrokken
  • een mening van de schrijver wordt geformuleerd. (o.a. Wat vond je ervan en wat heb je ervan geleerd)

Bronvermelding:

  • geef precies aan waar je de informatie gevonden hebt (boeken, tijdschriften, kranten, Internet). Bij internet vermeldt je de site naam.
  • Opmerking: het slot en de bronvermelding mogen op 1 pagina worden gezet.

De verzorging:

  • Zorg dat je alle koppen en subkoppen een opmaakprofiel geeft. Dit heb je nodig om later uw inhoudsopgave te genereren.
  • De hoofdstukken en paragrafen dienen exact dezelfde benaming te hebben als in de inhoudsopgave. (Gebruik hiervoor de optie Inhoudsopgave in Word)
  • Gebruik een voettekst met daarin, (links)namen, (midden)documentnaam, (rechts)blz. nummering.
  • nummer de pagina’s behalve titelblad.
  • De (hoofd)letters die jij voor de hoofdstuktitels enz. gebruikt moeten consequent van dezelfde soort zijn.
  • Het standaard lettertype dat je gebruikt is Arial 11pt.
  • De hoofdstukken dienen boven aan een volgende pagina te beginnen.

Verwijzingen en/of voetnoten dienen steeds op dezelfde wijze te zijn aangegeven.

Algemeen

Wanneer je informatie van Internet haalt let dan op het volgende:

  • letterlijk kopiëren van Internet is niet goed. Filter alle onnodige informatie er tussenuit en geef duidelijk antwoord op de vragen, niet meer en niet minder.

Bewaar zelf altijd een digitale kopie van de instructie. Op deze manier heb je altijd een back-up van jouw document en kun je dit document later gebruiken als referentie materiaal.

Standaarden coderen

Er zijn een aantal redenen waarom de layout van de code van groot belang is. Met name zorgt een goede layout voor een verhoging van de kwaliteit van de code. In de code sluipt heel gemakkelijk een foutje. Bij een goede layout is het vaak al moeilijk een fout te vinden en te herstellen, laat staan bij code die onoverzichtelijk is opgesteld. De code moet later bij onderhoud van het programma met zo min mogelijk moeite gelezen kunnen worden. Onoverzichtelijk geschreven code maakt dit juist moeilijk zo niet onmogelijk. De code moet door anderen gelezen kunnen worden. Als je samenwerkt met anderen, is het handig als die anderen ook de code kunnen lezen die jij geschreven hebt.

Codeblokken

Codeblokken zijn regels code die tussen accoladen staan. Binnen een codeblok kunnen weer andere codeblokken voorkomen. Zo staat in het voorbeeld hieronder de codeblok van een lus binnen de codeblok van een methode staan. Een codeblok wordt voorafgegaan door een openingsaccolade { en wordt afgesloten met een sluitaccolade }. Na een openingsaccolade springt je op de volgende regel één tab in. Na de sluitaccolade springt je op de volgende regel terug.. De openingsaccolade staat als laatste teken op een regel na een spatie meteen na bijvoorbeeld het sluithaakje na van een methode. De sluitaccolade staat als enig teken op de regel en in de kolom van de eerste letter die staat op de regel van de openingsaccolade.

Voorbeeld:

tekenTekst($ tekst) {
int teller;   
           coderegel;  
           coderegel;  
           for( teller = 0; teller < 10; teller ++)  {  
                       coderegel ;  
                       coderegel ;  
           }  
           coderegel ;  
           coderegel ;  
}  

Operatoren

Vergelijkingsoperatoren (==, !=, <, <=, > en >=) worden altijd omgeven door spaties.

Voorbeelden:

for( teller = 0; teller < 10; teller ++)

Ook numerieke operatoren ( *, /, +, -, %, *=, /=, +=, -=, %=, ++, en --) worden omgeven door spaties, één ervoor en één erachter.

Voorbeeld:

som = a + b;

In dit voorbeeld komt ook de toekenningsoperator ( =) voor die ook door spaties omgeven wordt.

Commentaar

Toelichting op je code is heel belangrijk. Zo kan de ander met wie je samenwerkt, de code begrijpen en kun je zelf de code een jaar later ook nog begrijpen.

Om op één regel commentaar te leveren gebruik je // en om op meerdere regels achter elkaar commentaar te zetten, gebruik je /* … */. Zet in ieder geval boven elk blok PHP-code commentaar, boven elke klasse en elke methode in de klasse:

In commentaar dat over de gehele klasse gaat, staat de naam van de klasse, een algemene beschrijving van de klasse, de naam van de auteur en het versienummer met de datum van de laatste wijziging.

Boven elke methode staat de naam van de methode, een algemene beschrijving van de methode, de parameters en wat de teruggave is. Als er geen parameters zijn, dan staat er achter Parameters: geen. Hetzelfde geldt voor return. Ook wordt er eventueel naar andere methodes binnen (zoals in het voorbeeld) of buiten de klasse verwezen.

Door deze manier van commentaar schrijven (zie de dubbele asteriksen aan het begin en het einde van het commentaar) kan er op eenvoudige manier een PHPdoc gemaakt worden.

Voor een voorbeeld van een PHPdoc, zie:

http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_phpDocumentor.howto.pkg.html#basics.docblock

Zie verder voor de conventies van coderen:

http://framework.zend.com/manual/1.12/en/coding-standard.coding-style.html

Taxikosten

Een taxibedrijf hanteert het volgende tarief:

  • Per gereden km € 1,=. Daarboven een bedrag per gereden minuut: € 0,25 tussen 8.00 en 18.00 uur, € 0,45 buiten deze periode.
  • Van vrijdagavond 22.00 uur tot maandagochtend 7.00 uur worden de ritprijzen verhoogd met een weekendtoeslag van 15%. Deze toeslag wordt alleen toegepast als de rit begint in de genoemde periode.

De te ontwikkelen software moet aan de hand van de ritgegevens de ritprijs berekenen. Je mag er vanuit gaan dat een rit op één en dezelfde dag begint en eindigt.

Ouderbijdrage school

Een basisschool berekent de ouderbijdrage als volgt:

  • Een basisbedrag van € 50,=. Daarnaast voor elk kind jonger dan 10 jaar € 25,= (voor maximaal 3 kinderen) en voor elk kind van 10 jaar en ouder € 37,= (voor maximaal 2 kinderen).
  • De maximale ouderbijdrage bedraagt € 150,=.
  • Voor éénoudergezinnen wordt op de berekende bijdrage (nádat de controle op het maximum heeft plaatsgevonden) een reductie toegepast van 25%.

De te ontwikkelen software moet aan de hand van de gezinsgegevens de verschuldigde ouderbijdrage bepalen. De leeftijd van elk kind moet aan de hand van geboortedatum en een peildatum worden berekend.

Autoverhuur

Een autoverhuurbedrijf hanteert de volgende tarieven:

  • Voor personenauto’s: Per gereden kilometer een bedrag van € 0,20 (voor elke dag dat de auto verhuurd is zijn de eerste 100 km vrij). Daarnaast een bedrag van € 50,= per dag.
  • Voor personenbusjes bedraagt de kilometerprijs € 0,30 en het dagtarief € 95,=.

De auto wordt uitgegeven met een volle tank benzine. Bij het inleveren van de auto wordt de tank weer volledig gevuld.

De te ontwikkelen software moet aan de hand van de verhuurgegevens het verschuldigde bedrag berekenen. Het aantal dagen moet worden bepaald aan de hand van begin- en einddatum verhuurperiode. Je mag er vanuit gaan dat elke maand 30 dagen telt. Bij het bepalen van de kosten moet onderweg getankte benzine ook betrokken worden.

Dierenpark

Het Noorder Dierenpark in Emmen hanteert onder andere de volgende tarieven voor abonnementen:

  • Echtpaar € 61,=
  • Gezin met 1 kind € 71,=
  • Gezin met 2 kinderen € 82,=
  • Persoonlijk € 30,=
  • Elk kind extra € 11,=
  • Echtpaar 65+ € 65,=
  • Persoonlijk 65+ € 26,=

De te ontwikkelen software moet aan de hand van de gegevens van de abonnementaanvrager de abonnementsprijs bepalen.
De leeftijd van de volwassene(n) moet aan de hand van geboortedatum en een peildatum worden berekend.

Kinderbijslag

Een kinderbijslagregeling ziet er als volgt uit:

  • Voor elk kind jonger dan 12 jaar bedraagt de kinderbijslag € 150,= per kwartaal, voor elk kind vanaf 12 jaar en jonger dan 18 jaar is dit bedrag € 235,=.
  • Afhankelijk van het totale aantal kinderen kan het berekende bedrag nog worden verhoogd met een opslagpercentage:
  • Dit opslagpercentage bedraagt 2% bij 3 of 4 kinderen, 3% bij 5 kinderen en 3.5% bij 6 of meer kinderen.

De te ontwikkelen software moet aan de hand van de gezinsgegevens de aan dat gezin toegekende kinderbijslag bepalen. De leeftijd van elk kind moet aan de hand van geboortedatum en een peildatum worden berekend.

Camping

Bij een camping in de omgeving van Emmen gelden in het hoofdseizoen (11 juli tot en met 15 augustus) de volgende tarieven (alle genoemde bedragen zijn per etmaal):

  • plaatshuur (breedte 10 meter) € 30,=
  • per persoon € 5,=
  • hond € 4,=
  • per meter meer € 3,=
  • per meter minder € 2,= (korting)
  • auto bij tent € 6,=

Buiten het hoofdseizoen bedraagt de plaatshuur € 25,= (de overige bedragen zijn gelijk aan die in het hoofdseizoen).

De te ontwikkelen software moet aan de hand van de reserveringsgegevens het verschuldigde campinggeld bepalen. Het aantal dagen binnen en buiten het hoofdseizoen moet worden bepaald aan de hand van begin- en einddatum (je mag er vanuit gaan dat de begin- en einddatum in juli en/of augustus vallen).

Containerverhuur (voor bouwafval, puin etc)

Bij een containerverhuurbedrijf gelden de volgende tarieven:

  • De huur bedraagt € 40,= per m3 per dag.
  • Het afvoeren van een volle bak (inclusief het eventueel plaatsen van een lege) kost € 60,= als het volume van de bak 2 m3 of minder bedraagt, anders € 125,=.
  • Vaste klanten krijgen op het totale verschuldigde bedrag een korting van 15%.

De te ontwikkelen software moet aan de hand van de verhuurgevens het verschuldigde huurbedrag berekenen. De lengte van de huurperiode moet worden bepaald aan de hand van begin- en einddatum.
De begin- en einddatum vallen in hetzelfde kalenderjaar. Je mag bij deze opdracht uitgaan van maanden van 30 dagen).

Transportbedrijf

Een transportbedrijf hanteert tarieven die gebaseerd zijn op zowel het volume als op het gewicht van de te vervoeren lading:
Voor niet-vloeibare ladingen:

  • Volume-component: € 0,80 per m3
  • Gewicht-component: € 0,55 per kg

Voor vloeibare ladingen bedragen deze tarieven resp. € 1,25 en € 0,45.

De som van de beide componenten levert de transportkosten per kilometer. Voor buitenlandse ritten geldt een toeslag van 45% op de buiten Nederland gereden kilometers. Voor buitenlandse ritten wordt tevens een toeslag berekend voor douanekosten: 3.5% van de waarde van de lading. De minimum toeslag voor douanekosten bedraagt € 45,=.

De te ontwikkelen software moet aan de hand van de gegevens van een transport het verschuldigde bedrag berekenen.

Waterverbruik

Voor de kosten van het waterverbruik gelden drie mogelijke tarieven:

  • tarief 1: vastrecht € 100,= per jaar
  • tarief 1: verbruikskosten € 0,25 per m3
  • tarief 2: vastrecht € 75,= per jaar
  • tarief 2: verbruikskosten € 0,38 per m3
  • tarief 0: Voor de betreffende verbruiker wordt de voordeligste mogelijkheid (tarief 1 of tarief 2) gekozen.

De te ontwikkelen software moet voor een verbruiker het verschuldigde bedrag over het afgelopen jaar bepalen.

Glashandel

Een glashandel werkt met de volgende tarieven:

  • Gewoon glas: Glaskosten € 30,= per m2, snijkosten € 10,= per bestelling.
  • Speciaal glas: Glaskosten € 55,= per m2, snijkosten € 25,= per bestelling.

Voor de berekening van de glaskosten wordt uitgegaan van gehele vierkante meters (bijvoorbeeld 0,6 m2 besteld, 1 m2 berekend), tenzij de bestelde grootte uit restanten kan worden gesneden; dit wordt aangegeven met een restantcode.
Als de totale glaskosten € 145,= of hoger zijn worden geen snijkosten in rekening gebracht.
Als de glaskosten meer bedragen dan € 250,= dan wordt een korting van 5% gegeven.

De te ontwikkelen software moet aan de hand de gegevens van een bestelling het verschuldigde bedrag bepalen.

Houthandel

Bij een houthandel gelden de volgende tarieven:
Voor klasse 1 bedraagt de houtprijs € 300,= per m3, voor klasse 2 is de prijs € 500,= en voor klasse 3 is het € 450,=.
Het schaafloon bedraagt € 0,60 per m2.
Als de totale houtkosten € 200,= of meer bedragen dan wordt geen schaafloon in rekening gebracht.
Afhankelijk van de gevraagde levertijd wordt een korting gegeven:

  • 14 dagen <= levertijd < 21 dagen : 1 % korting
  • 21 dagen <= levertijd < 28 dagen : 2 % -
  • 28 dagen <= levertijd : 2,5% -

De te ontwikkelen software moet aan de hand van de gegevens van een bestelling het verschuldigde bedrag bepalen. De levertijd in dagen dient te worden bepaald met behulp van de gevraagde leverdatum en de huidige datum. De huidige datum en de gevraagde leverdatum vallen in hetzelfe kalenderjaar. Je mag bij deze opdracht uitgaan van maanden van 30 dagen.

Opleidingsinstituut

Bij een opleidingsinstituut gelden de volgende tarieven:

  • Voor schriftelijke vakken: Lesgeld € 50,=, voor het studiemateriaal €50,=.
  • Voor mondelinge vakken: Lesgeld € 150,=, voor het studiemateriaal € 50,=
  • Voor practische vakken: Lesgeld € 150,=, voor het studiemateriaal € 125,=.

Als het totale aantal vakken 5 of meer bedraagt wordt alléén op het lesgeld een korting gegeven van 5%.
Cursisten jonger dan 19 jaar ontvangen op het totale cursusgeld een korting van 2%.
Cursisten die de cursussen door bemiddeling van het arbeidsbureau volgen hoeven het studiemateriaal niet te betalen.

De te ontwikkelen software moet voor een cursist (die zich voor meerdere cursussen kan inschrijven) het aan het opleidingsinstituut verschuldigde bedrag te bepalen. De leeftijd van elke cursist moet aan de hand van geboortedatum en een peildatum worden berekend.

Schijventarief Inkomstenbelasting

De verschuldigde inkomstenbelasting wordt als volgt bepaald:
Het belastbaar inkomen (het eindbedrag van de belastingaangifte) wordt verminderd met de belastingvrije som (afhankelijk van de tariefgroep (zie verderop)); het resultaat heet de belastbare som.
Deze belastbare som vormt de basis voor het berekenen van de inkomstenbelasting:

  • Over de eerste € 8.000 bedraagt de belasting : 35,75%
  • Over het gedeelte € 8.001 t/m € 25.000 : 37,05%
  • Over het gedeelte € 25.001 t/m € 54.000 : 50%
  • Over het gedeelte vanaf € 54001 : 60%

De belastingvrije som is afhankelijk van de tariefgroep:

  • tariefgroep 1: € 419,=
  • tariefgroep 2: € 8.799,=
  • tariefgroep 3: € 17.179,=
  • tariefgroep 4: € 15.503,=
  • tariefgroep 5: € 15.503,=
  • + 12% van het belastbaar inkomen met een maximum van € 6.704,=

De te ontwikkelen software moet voor een belastingplichtige de verschuldigde belasting over het afgelopen jaar bepalen.

Bestelling (1)

De verschillende artikelen zijn genummerd met behulp van zescijferige artikelnummers: de eerste 4 posities geven het jaar aan waarin het artikel is gefabriceerd en de laatste 2 posities een volgnummer.
Afhankelijk van de leeftijd van de artikelen wordt een leeftijdskorting gegeven:

  • 2 jaar <= leeftijd < 3 jaar : leeftijdskorting = 5%
  • 3 jaar <= leeftijd < 5 jaar : - 10%
  • 5 jaar <= leeftijd : - 25%

Behalve deze leeftijdskorting is er nog een andere korting mogelijk: als het vijfde cijfer van het artikelnummer even is dan wordt een extra korting van 2% gegeven.

De te ontwikkelen software moet voor een bestelling (die kan bestaan uit meerdere bestelregels) het verschuldigde bedrag bepalen. De leeftijd van de bestelde artikelen moet worden bepaald met behulp van een peildatum.

Eenmalige uitkering

Werknemers met een huidig maandsalaris beneden een bepaalde grens ontvangen een eenmalige uitkering.
Deze grens is afhankelijk van de leeftijd en burgelijke staat van de werknemer:

  • Voor ongehuwde werknemers jonger dan 21 jaar bedraagt deze grens € 1300,=, voor de overige werknemers € 1425,=.
  • Deze uitkering bedraagt 1,75% van het totale salaris verdiend in het afgelopen jaar.
  • Als de uitkering volgens bovenstaande berekening minder dan € 250,= bedraagt dan wordt deze opgetrokken naar € 250,=.

De te ontwikkelen software moet aan de hand van de salarisgegevens van een werknemer de uitkering bepalen waar die werknemer recht op heeft. De leeftijd van de werknemers moet worden bepaald met behulp van een peildatum.

Vakantiedagen

Elke werknemer binnen een bedrijf heeft recht op een aantal zogenaamde basis-vakantiedagen:
dit aantal is afhankelijk van de afdeling waarbinnen de betreffende werknemer werkzaam is: Voor de werknemers uit afdeling 1 is dit aantal 24, voor afdeling 2 23, voor afdeling 3 22, voor de overige afdelingen 20. Het afdelingsnummer is het eerste cijfer van het personeelsnummer.
Afhankelijk van leeftijd en diensttijd kan dit aantal verhoogd worden:
Als de betreffende werknemer 10 jaar of langer in dienst is wordt het aantal dagen verhoogd met 3; als de werknemer 50 jaar of ouder is dan ontvangt hij of zij 5 dagen extra. Werknemers vanaf 55 jaar krijgen er elk jaar nog eens 1 dag bij.
Zo krijgt een werknemer van 58 jaar aan leeftijdsdagen 5 (ouder dan 50) plus 4 (voor 55, 56, 57 en 58 jaar).

De te ontwikkelen software moet aan de hand van de gegevens van een werknemer het aantal vakantiedagen bepalen. De leeftijd van de werknemers en het aantal dienstjaren moeten worden bepaald met behulp van een peildatum.

Contributie Sportvereniging (1)

Binnen een sportvereniging gelden de volgende regels voor het bepalen van de jaarlijkse contributie:
Seniorleden betalen € 75,=, juniorleden € 40,=. Men is seniorlid als men 18 jaar of ouder is. Men kan spelend – of niet spelend lid zijn.
Spelende leden betalen naast de clubcontributie ook nog bondscontributie: deze bedraagt voor zowel senior- als juniorleden € 45,=.
Op de clubcontributie (dus niet de bondscontributie) wordt een korting gegeven die afhankelijk is van de duur van het lidmaatschap:

  • 4 jaar <= duur lidmaatschap < 7 jaar : korting 2%
  • 7 jaar <= duur lidmaatschap : korting 3,5%

De te ontwikkelen software moet aan de hand van de lidgegevens de verschuldigde contributie bepalen.
De leeftijd van de leden en het aantal jaren lid moeten worden bepaald met behulp van een peildatum.

Contributie Sportvereniging (2)

Binnen een sportvereniging kunnen één of meer van de volgende sporten beoefend worden: voetbal, volleybal, basketbal, handbal, atletiek.
De jaarlijkse contributie wordt als volgt bepaald: De basiscontributie bedraagt € 40,=. Per beoefende sport komt hier een bedrag bij; dit bedrag is afhankelijk van het aantal sporten dat men beoefend:

  • bij 1 of 2 sporten € 25,= per sport
  • bij 3 of 4 sporten € 22,= per sport
  • bij 5 sporten € 20,= per sport.

Juniorleden (jonger dan 18 jaar) en veteranen (40 jaar en ouder) krijgen 10% korting. Is men 5 jaar of langer lid dan geldt er een (extra) korting van 5%.

De te ontwikkelen software moet aan de hand van de lidgegevens de verschuldigde contributie bepalen.
De leeftijd van de leden en het aantal jaren lid moeten worden bepaald met behulp van een peildatum.

Bibliotheek

Op basis van uitleendatum en retourdatum wordt bepaald hoe lang een boek uitgeleend is geweest. Voor het gemak wordt er vanuit gegaan dat elke maand 30 dagen heeft.
Een eventuele uitleenboete is afhankelijk van het aantal uitleendagen en van het soort boek:

  • Romans: Als dagen > 21 een boete van € 0,25 per dag.
  • Studieboeken: Als dagen > 30 een boete van € 1,= per week. Een deel van een week telt hierbij als volle week: stel dagen = 39, dus 9 dagen te laat, 2 x € 1,= boete.

Het soort boek kan worden bepaald aan de hand van het vier-cijferig boeknummer: romans 1e cijfer = 9, studieboeken 1e cijfer <> 9.

De te ontwikkelen software moet voor een terugbezorgd boek de eventuele boete bepalen.

Verkopersprovisie

Een bedrijf berekent de provisie voor haar verkopers over de afgelopen kalendermaand als volgt:
3% van de omzet in euro’s plus € 4,= per verkochte eenheid. Het berekende provisiebedrag wordt daarna verhoogd met een percentage dat afhankelijk is van het aantal verkochte eenheden in het afgelopen 12 maanden.
Dit percentage wordt als volgt berekend:

  • voor de eerste 10.000 stuks : 1% per 1000
  • voor de tweede 10.000 stuks : 1,5% per 1000
  • daarboven : 2% per 1000

Het percentage kan nooit hoger worden dan 50%

De te ontwikkelen software moet aan de hand van de omzetgegevens van een verkoper het uit te keren provisiebedrag bepalen.

Peildatum

De peildatum is een tijdstip op de tijdlijn dat aangeeft wanneer de waarde van het gegeven bepaald is. Informatie is gerelateerd aan een tijdstip. Bij gegevens die in de loop van de tijd relatief veel veranderen, is de datum relevant. In feite zijn er eigenlijk geen gegevens die niet gebonden zijn aan tijd. Een peildatum wordt toegepast bij gegevens die sterk afhankelijk zijn van tijd.

Datúúúm©* oefeningen

(*I. Aachboun)

  1. Schrijf een PHP-script dat de copyrightinformatie in het volgende formaat weergeeft. Om het huidige jaar te krijgen kunt u de datum() functie gebruiken.

    Verwacht formaat: © 2013 PHP-oefeningen - UnboundiT

  2. Maak een eenvoudig ‘verjaardagsaftelprocedure’ script, het script telt het aantal dagen tussen de huidige dag en de verjaardag.
  3. Schrijf een PHP-script om de huidige datum af te drukken in de volgende indeling. Om de informatie over de huidige datum te verkrijgen, kunt u de functie datum() gebruiken.

    Voorbeeld formaat : (ga ervan uit dat de huidige datum 1 september 2013 is).
    2013/09/01
    13.09.01
    01-09-13

  4. Schrijf een PHP-script om het verschil tussen twee data te berekenen.

    Voorbeeld data: 1981-11-04, 2013-09-04
    Verwacht resultaat: 31 jaar, 10 maanden, 11 dagen

  5. Schrijf een PHP-script om een datum om te zetten van yyyy-mm-dd naar dd-mm-yyyy.

    Voorbeeld datum: 2012-09-12
    Verwacht resultaat: 12-09-2012

  6. Schrijf een PHP-script om de datum om te zetten naar een timestamp.

    Voorbeeld datum: 12-05-2014
    Verwacht resultaat: 139985852800

  7. Schrijf een PHP-script om een aantal dagen tussen twee data te berekenen.
  8. Schrijf een PHP-script om de eerste en laatste dag van een maand vanaf een bepaalde datum te krijgen.
  9. Schrijf een PHP-script om de huidige datum af te drukken als: Zaterdag de 7e of Friday the 13th
  10. Schrijf een PHP-script om te controleren of de opgegeven data geldig zijn of niet?
  11. Schrijf een PHP-script om het tijdsverschil in dagen en jaren, maanden, dagen, uren, minuten en seconden tussen twee data te krijgen.
    Opmerking: Gebruik de DateTime klasse.
  12. Schrijf een PHP-script om het maandnummer te veranderen in de naam van de maand.
  13. Schrijf een PHP-script om de datum van gisteren te krijgen.
  14. Schrijf een PHP-script om de huidige datum/tijd van ‘Australia/Melbourne’ te krijgen.
  15. Schrijf een PHP-script om te controleren of een datum een weekend is of niet.
  16. Schrijf een PHP-script om het aantal dagen van een bepaalde datum op te tellen/af te trekken.

    Voorbeeld output : Oorspronkelijke datum : 2011-01-01-01
    Voor 40 dagen : 2010-11-22 2010-11-22
    Na 40 dagen : 2011-02-10

  17. Schrijf een PHP-functie om de begin- en einddatum van een week (per weeknummer) van een bepaald jaar te krijgen.

    Voorbeeld week en jaar : 12, 2014
    Output:
    Startdatum van de week: 2014-3-24
    Einde van de week: 2014-3-30

  18. Schrijf een PHP-script om de huidige leeftijd van een persoon te berekenen.

    Geboortedatum van de steekproef: 11.4.1987
    Output : Uw leeftijd : 27 jaar, 1 maand, 29 dagen.

  19. Schrijf een PHP-script om de weken tussen twee data te berekenen.

    Voorbeeld output: De weken tussen 1/1/2014 en 12/31/2014 bedraagt 52 weken.

  20. Schrijf een PHP-script om het nummer van de maand voor de huidige maand te krijgen.
  21. Schrijf een PHP-script om seconden om te zetten in dagen, uren, minuten en seconden.

    Voorbeeld seconden: 200000
    Verwachte output: 2 dagen, 7 uur, 33 minuten en 20 seconden.

  22. Schrijf een PHP-script om de voorgaande 6 maanden gerekend vanaf de huidige maand te krijgen.
  23. Schrijf een PHP-script om de huidige maand en de voorgaande drie maanden te krijgen.
  24. Schrijf een PHP-script om de datum met een maand te verhogen

    Voorbeeld datum: 2012-12-21
    Verwachte output: 2013-01-21

  25. Schrijf een PHP-script om de huidige datum in het Italiaans te krijgen.

    Voorbeeld output: Vandaag is lun on ott 06, 2014.

  26. Schrijf een PHP-script om het nummer om te zetten naar een maandnaam.
  27. Schrijf een PHP-script om het aantal dagen van de huidige maand op te vragen.
  28. Schrijf een PHP-script om de tijd in een bepaalde tijdzone weer te geven.

Einde schooljaar is in zicht, je gaat op stage. Om het mogelijk te maken om jou te introduceren bij een stagebedrijf en het bedrijf de gelegenheid te geven om jouw competenties en vaardigheden te beoordelen is een portfolio essentieel.

Het portfolio bestaat uit drie onderdelen; introductiedeel, bewijsdeel en een show case. Jij gaat de komende tijd van start met het maken van de intro- en het bewijsdeel.

Taak 1 Instructie Portfolio

Deze taak heeft als doel dat jij:

  • Weet wat een portfolio is
  • Weet hoe een portfolio is samengesteld
  • Weet voor wie jij een portfolio maakt

Opdrachten:

4hr4 timebox

  • maak een Word template/sjabloon volgens de spelregels zoals die in de sectie Beoordeling documentatie zijn beschreven(bijvoorbeeld voorblad, inhoudsopgave, inleiding etc)
  • onderzoek en maak een overzicht en omschrijving van de doelgroepen voor jouw portfolio site
  • beschrijf wat elke doelgroep graag zou willen zien aan informatie
  • maak een overzicht van de informatie die jij op jouw portfolio wil/moet tonen

4hr4 timebox

Wat je nodig hebt

Op te leveren producten

Een document met daarin:

  • Overzicht van de doelgroepen
  • Overzicht van de eisen en verwachtingen van de doelgroepen
  • Minimaal 10 veelgebruikte portfolio onderdelen

En een bijgewerkte logboek


Taak 2 Ontwerp van het portfolio en opzet ontwikkelomgeving

Deze taak heeft als doel dat jij:

  • Weet welke informatie je gaat opnemen in jouw portfolio
  • Weet hoe je jouw portfolio gaat indelen
  • Weet hoe jij de gebruiker door de informatie heen gaat leiden
  • Weet wat met de term “mobile first design” wordt bedoeld
  • Weet hoe een beschrijving van een ontwikkelomgeving wordt gemaakt

Wireframing is een belangrijke stap in elk ontwerpproces. In de eerste plaats is het bedoeld om de informatie hiërarchie van uw ontwerp te definiëren, waardoor het makkelijker is om de indeling(layout) te maken op basis van hoe jij wil dat de gebruiker de informatie verwerkt.

Opdrachten:

4hr4 timebox

  • Maak een overzicht van de data(informatie) die jij in jouw portfolio gaat opnemen
  • Maak wireframes van de verschillende views/secties/pagina’s

4hr4 timebox

  • Maak een sitemap met behulp van Gliffy, een voorbeeld kan je hier vinden.
  • Maak een scenario hoe jij wil dat een personeelsmedewerker van een toekomstige stagebedrijf door jouw portfolio heen gaat
  • Maak een beschrijving van jouw ontwikkelomgeving aan de hand van de productieomgeving(shared-hosting)

Wat je nodig hebt

Een wireframing tool:

Een diagram tool:

Een responsive CSS Grid of Flexbox Layout en webfonts:

Proef teksten en afbeeldingen


Informatie over projectdocumentatie ontwikkelomgeving

Op te leveren producten

  • Overzicht van de te gebruiken data
  • Wireframes van alle views op basis van een (responsive) grid of flexbox layout
  • Korte scenario van een bezoeker die jou wil gaan uitnodigen voor een stage sollicitatie gesprek
  • Beschrijving van jouw ontwikkelomgeving


Taak 3 Realisatie van het grid/flexboxes en vlakken-indeling

Deze taak heeft als doel dat jij:

  • Weet wat een grid is
  • Weet wat een flexbox layout is
  • Weet wat responsive- en adaptivewebdesign is
  • Weet hoe jij de gebruiker door de data heen wil leiden
  • Weet hoe jij een vlakken-indeling kan maken

Het wordt nu tijd dat jij jouw wireframes gaat omzetten naar daadwerkelijk HTML/CSS. Begin met het scripten van hoekige vlakken op het grid/flexbox. Denk na over de flow oftwel volgorde van de informatie die jij de bezoekers wil presenteren, van boven naar beneden is de gemakkelijkste, gevolgd door van links naar rechts. Zorg er voor dat de manier waarop gebruikers dingen doen op verschillende views/sectie’s/pagina’s niet veranderen oftwel zorg voor “consistency“. Het zal in sommige gevallen erin resulteren dat jij jouw wireframes moet aanpassen om die consistentie van header, navigatie, content, footer, sidebars, subnavigatie en kleuren te bereiken.

Hieronder is een voorbeeld van een wireframe die een lay-out gebruikt die tegenwoordig vaak voorkomt.

Opdrachten:

4hr4 timebox


  • Onderzoek veelgebruikte portfolio layouts(vlakken-indelingen) bijvoorbeeld met de hulp van Wirify
  • Maak een indeling in grid/flexboxes, gebruik hiervoor de instructies op w3schools Grid of w3schools Flexbox
  • Maak jouw grid/flexboxes responsive, gebruik ook hier de instructies van w3schools Mediaqueries

4hr4 timebox

  • Maak HTML/CSS layouts van al jouw views/secties/pagina’s op basis van jouw in taak 2 gemaakte wireframes
  • Voorzie al jouw views/secties/pagina’s van proef content

Wat je nodig hebt

Proef content zoals teksten, afbeeldingen en iconen

Een responsive Grid of Flex layout:

  • w3schools Flexbox
  • w3schools Grid
  • w3schools Mediaqueries
  • Gebruik de Mobile first methode en maak gebruik van onderstaande breakpoints:
        
        /* Small Devices, Tablets */
        @media only screen and (min-width : 768px) {
    
        }
    
        /* Medium Devices, Desktops */
        @media only screen and (min-width : 992px) {
    
        }
    
        /* Large Devices, Wide Screens */
        @media only screen and (min-width : 1200px) {
    
        }
    

Bronnen

Op te leveren producten

  • Een responsive grid/flexbox layout
  • Doordachte HTML/CSS layouts gevuld met proef content


Taak 4 Realisatie van de navigatie

Deze taak heeft als doel dat jij:

  • Weet wat Ajax is
  • Weet wat de HTML DOM is

Het is nu tijd om jouw views/secties/pagina’s zichtbaar te maken door gebruik te maken van navigatie-elementen. We gaan gebruik maken van AJAX, AJAX maakt webpagina’s asynchroon dit houdt in dat deze worden bijgewerkt door het achter de schermen uitwisselen van gegevens met een web-server. Hierdoor is het mogelijk is om delen van een webpagina te veranderen zonder dat de hele pagina wordt herladen. Om dynamisch de inhoud, structuur en stijl van een pagina te kunnen veranderen moet je weten dat er zoiets is als de DOM.

Opdrachten:

4hr4 timebox

  • Stel vast welk vlakken in jouw layout niet veranderen zoals de sidebar, header en footer.
  • Maak jouw navigatie-elementen(links/buttons) in het daarvoor bedoelde vlak in jouw layout.
  • Stel vast in welk vlak(DOM element) in jouw layout de content moet veranderen.
  • Script in JS een AJAX functie die het mogelijk maakt om achter de schermen HTML content te laden.

4hr4 timebox

  • Voorzie elke link/button van een onclick event die de AJAX functie called en aangeeft welk vlak(DOM element) moet veranderen.
  • Controleer jouw HTML en CSS met de beschikbare validators.
  • Test de koppelingen naar jouw views/secties/pagina’s. Als het goed is bevatten deze nu nog uitsluitend proef content. In de volgende taak gaan wij alle views/secties/pagina’s vullen met content.

Wat je nodig hebt

Op te leveren producten

  • Javascript: een AJAX functie om HTML pagina’s op te halen
  • HTML: Navigatie koppelingen naar alle views/secties/pagina’s vlakkenindeling


Taak 5 Realisatie, invoegen van de content en werkend maken van de navigatie

Deze taak heeft als doel dat jij:

  • De te gebruiken content zoals projecten, opdrachten en experimenten verzameld
  • Content netjes structureerd en opmaakt
  • Content views/secties/pagina’s realiseerd
  • Koppelen van de navigatie aan de diverse views/secties/pagina’s

Nu is het moment dat jij jouw content gaat verwerken, dit houdt in dat jij het werk dat je inmiddels voor school hebt gemaakt verzameld en opmaakt. Zoals jij in de vorige taak hebt gedaan weet jij hoe jij jouw navigatie koppeld aan proefcontent, nu ga jij jouw echte content koppelen/ontsluiten.

Opdrachten:

4hr4 timebox

  • Verzamel alle content die jij op jouw portfolio wil tonen, denk naast alle schoolopdrachten en projecten ook aan thuisexperimenten.
  • Maak screenshots van jouw content en zorg voor een korte tekstuele omschrijving, voorzie elke stukje content van bijvoorbeeld een link naar GIThub, teamgrootte, jouw rol binnen het team, gebruikte technieken, datum van uitvoer…etc.
  • Elk stukje content is een article bestaande uit bijvoorbeeld een header, footer, title, subtitle etc.
  • Realiseer nu daadwerkelijk jouw content views/secties/pagina’s zorg voor een duidelijke opmaak uiteraard gebaseerd op jouw grid/flexboxes.

4hr4 timebox

  • Zorg nu voor koppelingen vanuit jouw navigatie naar al jouw content. Zorg er ook voor dat links naar bijvoorbeeld GIThub die in de content zitten ook echt werken.
  • Zorg er voor dat waar nodig interne links in de views/secties/pagina’s ook werken. Bijvoorbeeld…op de opdrachten pagina een link naar opdracht 7.
  • Controleer of jouw views/secties/pagina’s wel een duidelijke outline hebben met een online outline service. Pas deze waar nodig aan.
  • Controleer de optimalisatie van jouw website met behulp van Google Pagespeed, mik op een score van minimaal 70. Volg waar nodig de adviezen op.

Wat je nodig hebt

Op te leveren producten

  • Een volledig geoptimaliseerde werkende portfolio in een lokale testomgeving.






MA | Project documentatie 2017 v0.1

Gebaseerd op het KD Applicatie- en mediaontwikkeling geldig vanaf Cohort 2017

Inleiding

In dit document vind je informatie over de fases en voor het maken van documentatie bij het uitvoeren van projecten als Mediadeveloper.

Algemeen

De volgende opmerkingen gelden voor elk document dat je schrijft binnen de uitvoering van een project. Controleer dus elke document voor dat je inlevert of laat controleren op deze punten:

Begin elk document met een duidelijke inleiding. In de inleiding vertel je waar het document over gaat zodat de lezer weet wat hij gaat lezen. Probeer daarbij zo specifiek mogelijk te zijn; geef geen uitleg wat een Behoefteanalyse, FO of TO is maar leg kort uit wat je gaat vertellen, hoe het document is op gebouwd of iets dat de lezer moet weten voordat hij het document gaat lezen.

Zorg dat de opmaak van de documenten consequent is. Gebruik niet onnodig veel verschillende soorten opmaak van de tekst zonder dat je daar een reden voor hebt, dit leidt alleen maar af van de inhoud. Vermijdt onnodig gebruik van ingewikkelde formuleringen als het document is bedoeld voor de opdrachtgever. Gebruik zoveel mogelijk de functies van je teksteditor om het document netjes op te maken, bijvoorbeeld kop- en voetteksten, automatische inhoudsopgave, opmaakprofielen etc. De verschillende documenten binnen een project moeten een gelijke opmaak hebben zodat je duidelijk kunt zien dat ze bij elkaar horen.

Zorg dat belangrijke informatie duidelijk in of op het document vermeld staat. Als je een document op de grond vindt moet je kunnen zien van wie het is, waarvoor en wanneer het is geschreven en welke pagina.

Geef alle documenten een duidelijk versienummer zodat je weet wat je laatste versie is, en wat een eerdere versie is.. Elke keer als je een document (voorlopig) oplevert geef het een nieuw nummer. Aan het nummer moet ook te zien zijn dat het een definitieve versie is. Begin je nummering bijvoorbeeld met 0.1, 0.2, 0.3 … De definitieve versie krijgt dan het nummer 1.0. Als het definitieve document in de loop van het project toch nog moet aanpassen, door bijvoorbeeld nieuwe informatie of inzichten, ga je verder met 1.1, 1.2 etc. Zo is duidelijk te zien dat de laatste documenten een aanpassing is op de definitieve versie.

Planning en logboek

Om het proces van het maken van een project of opdracht goed te laten verlopen is het handig om een planning te maken. Hierdoor kan je zien wanneer welk onderdeel af moet zijn, of er verschillende fasen zijn die je moet plannen en hoeveel tijd het project of de opdracht in beslag gaat nemen.

Om tijdens een project of een opdracht, de werkzaamheden die je doet goed te volgen, zul je een logboek bij moeten houden. Het logboek verschaft de projectbegeleider inzicht in het verloop van je project (uitvoering), in de planning en in het realiseren van je product. Je werkzaamheden leg je vast om je voortgang te bewaken.

Lever bij elk product dat je oplevert je planning en je logboek als bijlage in. De planning en het logboek zijn documenten die de projectbegeleider van jou wil zien. Dit zijn dus geen documenten die de opdrachtgever wil zien.

Naam: Groep: Project:
Datum Tijd Activiteit

Kerntaak 1: Levert een bijdrage aan het ontwikkeltraject

De volgordelijke plaats van de documenten binnen het proces:

Behoefteanalyse --------> Functioneel ontwerp --------> Technisch ontwerp ------------->
Plan van aanpak --------------------------------------------------------------------------->

Bovenstaande betekent dat werkproces K1-W2 parallel loopt aan de andere werkprocessen en van invloed is op alle te schrijven documenten binnen kerntaak 1.

Werkproces K1-W1 Stelt de opdracht vast

Doel: Verwachtingen afstemmen
Input: Projectbeschrijving/Briefing/RFP
Output: Behoefteanalyse/Offerte
Beoordeling: Projectbegeleider vervolgens opdrachtgever
Voor wie: Opdrachtgever

Behoefteanalyse/Offerte:

  • Bij een waterval proces, alle eisen en wensen van de opdrachtgever beschrijven en indelen op prioriteit volgens MoSCoW methode
  • Bij een Agile proces, omzetten van alle eisen en wensen van de opdrachtgever naar userstories
  • Haalbaarheid van cruciale eisen en wensen
  • Voor- en nadelen beschrijven van cruciale eisen en wensen en adviseren
  • Uren- en kostenopgave
  • Grove planning op basis van ontwerp, realisatie, implementatie en onderhoud/beheer fase

Werkproces K1-W2 Levert een bijdrage aan het projectplan

Doel: Vastleggen wat je gaat doen
Input: Behoefteanalyse, !! Feedback van de opdrachtgever
Output: Plan van aanpak
Beoordeling: Projectbegeleider vervolgens opdrachtgever
Voor wie: Opdrachtgever en team

Plan Van Aanpak(PvA)

De inhoud van een volledige PvA moet minimaal bestaan uit het volgende:

  • Inleiding : Voor welk bedrijf?, Wat doet het bedrijf?, Hoe is de opdracht tot stand gekomen?
  • Doelstelling : Wat is het doel van dit project?
  • Omschrijving van het project : Wat zijn de ‘high-level’ functionaliteiten?
  • Leden van de projectgroep : Wie zijn betrokken?, Hoe ga je communiceren, onderling, maar ook met opdrachtgever; welke tools ga je daar evt voor gebruiken.(Elke week Skypen, per mail, etc.)
  • Benodigdheden : Welke middelen heb je nodig voor succes?
  • Takenlijst Ontwerpen, Realiseren, Implementeren en Onderhouden en beheren

Planning

De planning bestaat uit twee onderdelen: de algemene projectplanning en de planning voor de huidige taak.

Algemene project Planning
Taak Begindatum Einddatum Duur
Ontwerpen 23-02-2017 30-03-2017 240
Realiseren
Implementeren
Onderhouden en beheren
Planning ontwerpen
Subtaak Begin datum/tijd Eind datum/tijd Duur Wie Opleveren*
Plan van aanpak schrijven 23-03-2017 12:45 23-03-2017 14:45 120 Naam Medewerker
Naam Projectleider
S

*S=schriftelijk    T=toelichting    D=digitaal

Werkproces K1-W3 Levert een bijdrage aan het ontwerp

Functioneel ontwerp:

Doel: Vastleggen hoe je het gaat doen vanuit de gebruikers
Input: Behoefteanalyse en PvA
Output: Functioneel ontwerp
Beoordeling: Projectbegeleider vervolgens opdrachtgever
Voor wie: Opdrachtgever en team

  • Doelgroep/Eindgebruikers > Wie zijn ze?, wat verwachten ze, hoe benaderen we ze
  • Eisen omzetten naar functionaliteiten/userstories
  • Per functionaliteit/userstory een wireframe of klikbare prototype
  • Sitemap/Menustructuur
  • Stroomdiagram van een belangrijke functionaliteit/userstory
  • Opzet van een acceptatietestplan uit te voeren in KT2
  • Eenvoudige beschrijving van afhankelijkheden van andere systemen/bronnen/diensten/API’s/sites

Technisch ontwerp:

Doel: Vastleggen hoe en waarom je het gaat doen vanuit de techniek
Input: Behoefteanalyse, Functioneel ontwerp
Output: Technisch ontwerp
Beoordeling: Projectbegeleider
Voor wie: Teamleden en nieuwe medewerkers

  • Per complexe functionaliteit/userstory een wireframe met gedetailleerde uitwerking
  • Toelichten van de gekozen oplossing(en)
  • Database ontwerp/model / Entity Relation Diagram / Type velden
  • Sequence diagram van een complexe functionaliteit/userstory
  • Volledige beschrijving van afhankelijkheden van andere systemen/bronnen/diensten/API’s/sites

Werkproces K1-W4 Bereidt de realisatie voor

Doel: Inzicht verkrijgen van OTAP omgevingen
Input: Functioneel Ontwerp en Technisch Ontwerp
Output: Resultaat opnemen in het technisch ontwerp
Beoordeling: Projectbegeleider
Voor wie: Teamleden en nieuwe medewerkers

Beschrijving inrichting van ontwikkelomgeving:

  • Welke ontwikkelomgeving er gebruikt gaat worden
  • Welke taal ga je gebruiken
  • Welke hulpmiddelen heb je nodig
  • Hoe pak je de inrichting aan en is het gelijk aan de productieomgeving

Kerntaak 2: Realiseren van de applicatie, (cross)media-uiting

Werkproces 2.1 Legt een gegevensverzameling aan

Doel: Aantonen van kennis van het bewerken en analyseren van data
Input: Functioneel Ontwerp en Technisch Ontwerp
Output: Digitaal formaat met data
Beoordeling: Projectbegeleider
Voor wie: Teamleden

Fysiek bewijs in digitaal formaat:

  • Database aanmaken
  • Back up/dump van database
  • Database moet op zijn minst gevuld zijn met voorbeeld data

Werkproces K2-W1 Realiseert (onderdelen van) een product

Doel: Aantonen dat je in staat bent om te programmeren volgens documentatie en planning
Input: FO, TO en planning
Output: Digitaal formaat met data, screenshots van het systeem en een realisatieverslag
Beoordeling: Projectbegeleider
Voor wie: Teamleden

Fysiek bewijs in digitaal formaat:

  • Gehele back up van project
  • Moet gevuld zijn met voorbeelddata
  • Opgenomen in versiebeheer
  • Screenshots van het systeem (applicatie en database)
  • Conventie en documentatie

Realisatieverslag:

  • Persoonlijke logboek in verhaalvorm
  • Wat ging goed of fout -> noem voorbeelden

Werkproces K2-W2 Test het ontwikkelde product

Input: Testplan uit het Functioneel Ontwerp en TO
Output: Acceptatietestrapport
Beoordeling: Projectbegeleider
Voor wie: De opdrachtgever

Acceptatietestrapport:

  • Beschrijving van wat je gaat testen zoals beschreven in FO
  • Overzicht van testers en hun inzet
  • Uitvoeren van de test
  • Screenshots van het testen (eventuele foutmeldingen)
  • Verzamelen testresultaten en verbeteringen beschrijven
  • Uitvoeren van de verbeteringen

Werkproces 2.6 Optimaliseert de game of (cross)media-uiting

Input: Acceptatietestrapport
Output: Optimalisatieplan
Beoordeling: Projectbegeleider vervolgens opdrachtgever
Voor wie: Opdrachtgever en teamleden

Optimalisatieplan:

  • Gebruiksvriendelijkheid rapport
  • Toegankelijkheid rapport
  • Overzicht zoekmachine instellingen

Werkproces 2.7 Bewaakt de voortgang en evalueert het project

Input: Plan van aanpak en teamvergaderingen
Output: Actuele gedetailleerde activiteitenplanning en Evaluatie
Beoordeling: Projectbegeleider
Voor wie: Opdrachtgever en teamleden

Actuele gedetailleerde activiteitenplanning:

  • Teamleden
  • Tijdindeling
  • Meetpunten

Evaluatie

  • Verzamelen teamfeedback betreft jouw eigen inzet en verbeterpunten beschrijven

Kerntaak 3: Implementeren van de applicatie of (cross)media-uiting

Werkproces K3-W1 Optimaliseert het product

Input: De gerealiseerde applicatie
Output: Implementatieplan en presentatie
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Systeem- en/of Applicatiebeheerder van de productieomgeving

Implementatieplan:

Beschrijf het volgende:

  • Ingrijpende veranderingen in de organisatie
  • Hoe en wie de gegevens gaan converteren, importeren of invoeren
  • Procedures en verantwoordelijkheden
  • Uitrol(deploy) aanpak(big bang, gefaseerd, parallel, gecombineerd?)
  • Stappen in de vorm van een draaiboek op basis van tijd
    • Alle te installeren hard- en software
    • Infrastructuur, Servers(Web, DB, Mail etc.) en modules
    • Systeemtest
  • Beheerders training bij ingrijpende veranderingen
  • Te verwachten toekomstige applicatie-, gegevens- en technisch beheer

Presentatie hand-out

  • Presentatie van het implementatieplan aan projectbegeleider, opdrachtgever en betrokken medewerkers

Werkproces K3-W2 Levert het product op

Input: Implementatieplan
Output: Implementatierapport
Beoordeling: Projectbegeleider
Voor wie: Systeem- en/of Applicatiebeheerder van de productieomgeving

Implementatierapport:

  • Uitvoeren en documenteren van installatie volgens implementatieplan in samenwerking met beheerder

Werkproces K3-W3 Evalueert het opgeleverde product

Input: Implementatieplan en uitkomst van implementatie
Output: Rapport met conclusies en verbeterpunten en procesverslag
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Toekomstige beheerders en ontwikkelaars

Procesverslag van het gehele implementatietraject:

  • Hoe verliep de voorbereiding
  • Hoe verliep de uitvoering, denk aan: conversie, invoering, tijdpadbewaking, training, procedures hanteren, overdracht naar beheer

Rapport met conclusies en verbeterpunten

Kerntaak 4: Onderhouden en beheren van de applicatie, (cross)media-uiting

Werkproces P1-K1-W1 Onderhoudt een applicatie

Input: Functioneel ontwerp
Output: Onderhoud- en beheerplan, Rapport over de uitvoering van het onderhoud
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Systeem- en/of Applicatiebeheerders en toekomstige ontwikkelaars

Onderhoud- en beheerplan:

  • Beschrijven, uitvoeren(en documenteren) van procedures voor:
    • preventief onderhoud zoals updates, monitoring en unit-tests
    • virus bescherming
    • back-up en restore
    • incidenten-registratie
    • (nieuwe) eisen en wensen registratie
  • Rapporteren van alle ondernomen stappen en vervolgacties aan opdrachtgever/projectbegeleider

Werkproces 4.2 Verzamelt, controleert, bewerkt en archiveert (cross)mediabestanden

Input: Alle projectdocumenten
Output: Resultaat opnemen in het onderhoud- en beheerplan en het archief
Beoordeling: Projectbegeleider
Voor wie: Toekomstige beheerders en ontwikkelaars

Archivering (procedures voor het archiveren van (gegevens van) applicaties):

  • Toelichting gewenste format, type, kwaliteit en compressiefactor van de mediabestanden
  • Analyse aangeleverde format, type, kwaliteit en compressiefactor van de mediabestanden
  • Conversie mediabestanden

Archief:

  • Digitaal formaat

Werkproces 4.3 Bewaakt de samenhang van media-uitingen

Input: De gerealiseerde applicatie
Output: Resultaat opnemen in het onderhoud- en beheerplan
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Toekomstige beheerders en ontwikkelaars

Media-uitingen:

  • Audio en visuele stijl samenhang controle(sluit de stijl aan bij andere media-uitingen van de opdrachtgever)
  • Advies over andere (sociale)media mogelijkheden

Werkproces 4.4 Stelt script samen ten behoeve van het samenvoegen van content

Input: De gerealiseerde applicatie
Output: Resultaat opnemen in het onderhoud- en beheerplan
Beoordeling: Projectbegeleider en opdrachtgever
Voor wie: Toekomstige beheerders en ontwikkelaars

Opmaak:

  • Weergave en uitleg van gebruikte opmaak/gridsysteem/theme/template

Werkproces P1-K1-W2 Beheert gegevens

Input: Onderhoud- en beheerplan
Output: Resultaat opnemen in het onderhoud- en beheerplan en fysiek bewijs in digitaal formaat met screenshots van het systeem
Beoordeling: Projectbegeleider
Voor wie: Toekomstige gebruikers, beheerders en ontwikkelaars

Contentbeheer:

  • Korte beschrijving van de route die content aflegt vanaf creatie tot publicatie
  • Beschrijving van verdeling van rollen, rechten en verantwoordelijkheden
  • Beschrijving van procedures/regels voor aanleveren van bruikbare content
  • Gebruikershandleiding en instructies van de wijze waarop content in de applicatie(s) wordt bewerkt en ingebracht
  • Bewerking van analoge naar digitale content (scannen, converteren, etc.)

Beoordeling communicatie

Tijdens het beoordelen van de communicatie wordt er op de volgende punten gelet:

  • Zijn er vooraf afspraken over onderlinge normen en waarden gemaakt?
  • Hoe is er met problemen om gegeaan?
  • Welke communicatiemiddelen zijn er gebruikt?
  • Hoe is de samenwerking verlopen?
  • Voelen de teamleden zich serieus genomen?
  • Is een ieders mening en idee welkom?
  • Is er voldoende motivatie- of vaardigheid?
  • Worden hoofd- en bijzaken herkend?
  • Is er gebruikt gemaakt van LSD:)(Luisteren, Samenvatten en Doorvragen)

Beoordeling documentatie

Tijdens het beoordelen van de documentatie wordt er op de volgende punten gelet.

Onderdeel: Uitleg:

Titelblad:

een duidelijk voorblad met daarop vermeld:

  • de titel van het document
  • plaats, de maand en het jaartal van publicatie (inlever datum)
Inhoudsopgave:

de inhoudsopgave vermeldt de titels van de hoofdstukken, paragrafen met de daarmee corresponderende nummering en de pagina’s. Deze moet automatisch worden gegenereerd met Word.

De inhoudsopgave moet een duidelijk overzicht geven van het document.

Voorwoord:

hierin behandel je zaken die niet rechtstreeks in verband staan met het onderwerp zoals:

  • bedankjes aan medewerkers en instellingen
  • de aanleiding tot het document
  • als er een vorige document bestaat: het verband met het vorige

Inleiding:

een definitie en afbakening van het onderwerp:

  • de probleemstelling (tip: gebruik hierbij de project naam)
  • een uitleg over de opbouw van het document
  • toelichting op de methode van onderzoek

Opmerking: het voorwoord en de inleiding mogen op 1 pagina worden gezet.

Kern:

de antwoorden op alle vraagstukken en opdrachten:

  • Geef niet te veel maar zeker niet te weinig antwoord op vragen en opdrachten.
  • Verwerk de vraag of opdracht in uw antwoord, vermeld anders de vraag of opdracht voorafgaand aan uw antwoord.
  • Geef duidelijk aan om welke vragen opdrachten en/of hoofdstukken het gaat.

In de inleiding heeft je voor een probleemstelling gekozen waardoor het document zich kan beperken tot een thema. De probleemstelling is de centrale vraag die beantwoord moet worden. De belangrijkste aspecten die je bij het schrijven in de gaten moet houden zijn:

  • de overzichtelijkheid: die moet blijken uit de indeling in hoofdstukken en paragrafen (Zie ook de inhoudsopgave)
  • de objectiviteit: beperk je bij de weergave van de feiten tot die feiten. Loop niet op conclusies vooruit.

Slot:

Dit is het laatste hoofdstuk waarin:

  • een terugblik op de kern wordt gegeven (samenvatting)
  • conclusies uit de voorafgaande hoofdstukken worden getrokken
  • een mening van de schrijver wordt geformuleerd. (o.a. Wat vond je ervan en wat heb je ervan geleerd)

Bronvermelding:

  • geef precies aan waar je de informatie gevonden hebt (boeken, tijdschriften, kranten, Internet). Bij internet vermeldt je de site naam.
  • Opmerking: het slot en de bronvermelding mogen op 1 pagina worden gezet.

De verzorging:

  • Zorg dat je alle koppen en subkoppen een opmaakprofiel geeft. Dit heb je nodig om later uw inhoudsopgave te genereren.
  • De hoofdstukken en paragrafen dienen exact dezelfde benaming te hebben als in de inhoudsopgave. (Gebruik hiervoor de optie Inhoudsopgave in Word)
  • Gebruik een voettekst met daarin, (links)namen, (midden)documentnaam, (rechts)blz. nummering.
  • nummer de pagina’s behalve titelblad.
  • De (hoofd)letters die jij voor de hoofdstuktitels enz. gebruikt moeten consequent van dezelfde soort zijn.
  • Het standaard lettertype dat je gebruikt is Arial 11pt.
  • De hoofdstukken dienen boven aan een volgende pagina te beginnen.

Verwijzingen en/of voetnoten dienen steeds op dezelfde wijze te zijn aangegeven.

Algemeen

Wanneer je informatie van Internet haalt let dan op het volgende:

  • letterlijk kopiëren van Internet is niet goed. Filter alle onnodige informatie er tussenuit en geef duidelijk antwoord op de vragen, niet meer en niet minder.

Bewaar zelf altijd een digitale kopie van de instructie. Op deze manier heb je altijd een back-up van jouw document en kun je dit document later gebruiken als referentie materiaal.

Standaarden coderen

Er zijn een aantal redenen waarom de layout van de code van groot belang is. Met name zorgt een goede layout voor een verhoging van de kwaliteit van de code. In de code sluipt heel gemakkelijk een foutje. Bij een goede layout is het vaak al moeilijk een fout te vinden en te herstellen, laat staan bij code die onoverzichtelijk is opgesteld. De code moet later bij onderhoud van het programma met zo min mogelijk moeite gelezen kunnen worden. Onoverzichtelijk geschreven code maakt dit juist moeilijk zo niet onmogelijk. De code moet door anderen gelezen kunnen worden. Als je samenwerkt met anderen, is het handig als die anderen ook de code kunnen lezen die jij geschreven hebt.

Codeblokken

Codeblokken zijn regels code die tussen accoladen staan. Binnen een codeblok kunnen weer andere codeblokken voorkomen. Zo staat in het voorbeeld hieronder de codeblok van een lus binnen de codeblok van een methode staan. Een codeblok wordt voorafgegaan door een openingsaccolade { en wordt afgesloten met een sluitaccolade }. Na een openingsaccolade springt je op de volgende regel één tab in. Na de sluitaccolade springt je op de volgende regel terug.. De openingsaccolade staat als laatste teken op een regel na een spatie meteen na bijvoorbeeld het sluithaakje na van een methode. De sluitaccolade staat als enig teken op de regel en in de kolom van de eerste letter die staat op de regel van de openingsaccolade.

Voorbeeld:

tekenTekst($ tekst) {
int teller;   
           coderegel;  
           coderegel;  
           for( teller = 0; teller < 10; teller ++)  {  
                       coderegel ;  
                       coderegel ;  
           }  
           coderegel ;  
           coderegel ;  
}  

Operatoren

Vergelijkingsoperatoren (==, !=, <, <=, > en >=) worden altijd omgeven door spaties.

Voorbeelden:

for( teller = 0; teller < 10; teller ++)

Ook numerieke operatoren ( *, /, +, -, %, *=, /=, +=, -=, %=, ++, en --) worden omgeven door spaties, één ervoor en één erachter.

Voorbeeld:

som = a + b;

In dit voorbeeld komt ook de toekenningsoperator ( =) voor die ook door spaties omgeven wordt.

Commentaar

Toelichting op je code is heel belangrijk. Zo kan de ander met wie je samenwerkt, de code begrijpen en kun je zelf de code een jaar later ook nog begrijpen.

Om op één regel commentaar te leveren gebruik je // en om op meerdere regels achter elkaar commentaar te zetten, gebruik je /* … */. Zet in ieder geval boven elk blok PHP-code commentaar, boven elke klasse en elke methode in de klasse:

In commentaar dat over de gehele klasse gaat, staat de naam van de klasse, een algemene beschrijving van de klasse, de naam van de auteur en het versienummer met de datum van de laatste wijziging.

Boven elke methode staat de naam van de methode, een algemene beschrijving van de methode, de parameters en wat de teruggave is. Als er geen parameters zijn, dan staat er achter Parameters: geen. Hetzelfde geldt voor return. Ook wordt er eventueel naar andere methodes binnen (zoals in het voorbeeld) of buiten de klasse verwezen.

Door deze manier van commentaar schrijven (zie de dubbele asteriksen aan het begin en het einde van het commentaar) kan er op eenvoudige manier een PHPdoc gemaakt worden.

Voor een voorbeeld van een PHPdoc, zie:

http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_phpDocumentor.howto.pkg.html#basics.docblock

Zie verder voor de conventies van coderen:

http://framework.zend.com/manual/1.12/en/coding-standard.coding-style.html

De volgordelijke plaats van de documenten binnen het proces:

Behoefteanalyse

ToDo

Plan Van Aanpak(PvA)

De inhoud van een volledige PvA moet minimaal bestaan uit het volgende:

Inleiding

  • Voor welk bedrijf?
  • Wat doet het bedrijf?
  • Hoe is de opdracht tot stand gekomen?

Doelstelling

  • Wat is het doel van dit project?

Omschrijving van het project

  • Wat zijn de 'high-level' functionaliteiten?

Leden van de projectgroep

  • Wie zijn betrokken?
  • Hoe ga je communiceren, onderling, maar ook met opdrachtgever; welke tools ga je daar evt voor gebruiken.(Elke week Skypen, per mail, etc.)

Benodigdheden

  • Welke middelen heb je nodig voor succes?

Takenlijst

De taken zijn de volgende:

  1. Ontwerpen
  2. Realiseren
  3. Implementeren
  4. Onderhouden en beheren

Planning

De planning bestaat uit twee onderdelen: de algemene projectplanning en de planning voor de huidige taak.

Overall Fase Planning
Taak Begindatum Einddatum Duur
Ontwerpen 23-02-2017 30-03-2017 240
Realiseren
Implementeren
Onderhouden en beheren
Fase Planning ontwerpen
Subtaak Begin datum/tijd Eind datum/tijd Duur Wie Opleveren*
Plan van aanpak schrijven 23-03-2017 12:45 23-03-2017 14:45 120 Naam Medewerker
Naam Projectleider
S

*S=schriftelijk    T=toelichting    D=digitaal

Functioneel Ontwerp(FO)

ToDo

Technisch ontwerp(TO)

ToDo

Ontwikkelomgeving

ToDo

Acceptatietest

Een volledige Acceptatietest moet minimaal het volgende bevatten:

Installatie documentatie

ToDo

Evaluatie implementatie

ToDo

Implementatieplan

ToDo

Snapshot documentatie

ToDo

Procedureboek

ToDo

Kwaliteitshandboek

ToDo

Bestandsformaten documentatie

ToDo

Archivering

ToDo

Copyright © 2024 Prep Hard Win Easy

Theme by Jim DunkUp ↑