Work In Progress gebaseerd op kwalificatiedossier Crebo 25187

B1-K1 Levert een bijdrage aan het ontwikkeltraject

Context

Beroepshouding

Resultaat

Complexiteit

Verantwoordelijkheid en zelfstandigheid

Vakkennis en vaardigheden

Sjablonen van StichtingPraktijkLeren

Sjabloon_testrapport
Sjabloon_technisch_ontwerpLet op! Komt niet/nauwelijks overeen met eerdere examens. Gebruik liever het onderliggende “Technisch ontwerp” gedeelte.
Sjabloon_projectplan
Sjabloon_functioneel_ontwerp
Sjabloon_configuratieoverzicht
Sjabloon_Programma_van_Eisen
Sjabloon_Aanpassingendocument
Bijlage_11_Sjabloon_evaluatieverslag
Bijlage_8_Sjabloon_document_versiebeheer
Bijlage_7_Sjabloon_testrapport
Bijlage_1_Sjabloon_Acceptatietest

B1-K1-W1 Stelt de opdracht vast

De ontwikkelaar overlegt met de opdrachtgever/projectleider om diens vraag naar de technische realisatie van
(onderdelen van) een applicatie, media-uiting of game duidelijk te krijgen. Hij analyseert de beschikbare informatie
en gegevens, eisen en wensen die hij heeft geïnventariseerd om een beeld te krijgen van zijn opdracht en vraagt om
een bevestiging van zijn opdrachtgever/projectleider. De ontwikkelaar neemt zijn kennis met betrekking tot nieuwe
ontwikkelingen op technologisch gebied mee in zijn gesprek.

B1-K1-W1 Stelt de opdracht vast
Resultaat Een door de opdrachtgever goedgekeurde opdracht waarin de beschikbare informatie en de eisen en behoeften van de opdrachtgever zijn verwerkt (programma van eisen).
Input Briefing / projectbeschrijving / klant en/of opdrachtgever gesprek
Op te leveren
  • Een gevoerd gesprek
  • Een gecommuniceerd Programma van Eisen
Samenwerking Opdrachtgever / projectleider
Voor wie Opdrachtgever
Competenties Analyseren, Op de behoeften en verwachtingen van de “klant” richten, Vakdeskundigheid toepassen

Creëren en innoveren, Onderzoeken, Bedrijfsmatig handelen

Probeer kort en bondig onderstaande vragen te beantwoorden en vat de antwoorden in een of meer volledige zinnen samen in het betreffende hoofdstuk. Gebruik niet meer dan 60 woorden.

Op te leveren product en/of dienst Toelichting
Een gevoerd gesprek
Een gecommuniceerd Programma van Eisen
Hoofdstuk|paragraaf|subparagraaf Vragen:
Inleiding:
  • Wie heeft de opdracht gekregen
  • Wat is de opdracht
  • Hoe is de opdracht ontstaan

Bedrijf:
  • Welke branche
  • Aanleiding
  • Huidig systeem

Probleemstelling:
  • Wie heeft een probleem?
  • Wat is het probleem, wat zijn mogelijke oorzaken, wat is de urgentie en wat zijn de consequenties voor het bedrijf en haar medewerkers?
  • Waar doet het probleem zich voor?
  • Wanneer is het een probleem?
  • Waarom is het een probleem?
  • Hoe is het probleem onstaan, hoe lang bestaat het probleem al en hoe groot is het probleem?
Doelgroep(en):
  • Beschrijf voor wie de applicatie bestemd is.
Vormgeving:
  • Beschrijf de vormgeving van de website (kleuren, lettertypes). Gebruik eventueel een vlekkenplan om de grove indeling van de vensters weer te geven.
Informatie:
  • Beschrijf globaal welke informatie door de applicatie gegeven wordt en welke overzichten en rapportages door de applicatie gegenereerd worden.
Overig:
  • Geef hier andere relevante informatie, indien nodig.

B1-K1-W2 Levert een bijdrage aan het projectplan

B1-K1-W2 Levert een bijdrage aan het projectplan
Resultaat Een realistische planning -inclusief voortgangsgesprekken – voor de realisatie van de applicatie, media-uiting of game.
Input Briefing / projectbeschrijving / klant en/of opdrachtgever gesprek
Op te leveren
  • Een projectplan
  • Een toelichting op het projectplan
Samenwerking Team / projectleider
Voor wie Opdrachtgever
Competenties

Samenwerken en overleggen, formuleren en rapporteren, plannen en organiseren

Probeer kort en bondig onderstaande vragen te beantwoorden en vat de antwoorden in een of meer volledige zinnen samen in het betreffende hoofdstuk. Gebruik niet meer dan 60 woorden.

Projectplan

Hoofdstuk|paragraaf|subparagraaf Vragen:
Inleiding In de inleiding van het projectplan staat voor welk bedrijf een applicatie wordt gemaakt, wat het bedrijf globaal doet en wat de opdracht is. Uiteraard kunnen hier nog andere onderwerpen aan toegevoegd worden.
Doelstellingen Onder de doelstellingen komen alle projectdoelstellingen te staan die uit de opdracht blijken.
Betrokkenen In een overzicht noem je de personen die meewerken aan het project. Neem in dit overzicht ook de contactgegevens van betrokkenen op.
Benodigdheden In een overzicht noem je op welke inzet en middelen nodig zijn om de werkzaamheden binnen dit project te kunnen verrichten. In het overzicht kunnen kantoorartikelen staan, hardware, software, gereedschappen/tools, verbindingen, beschikbare ruimtes en dergelijke.
Takenlijst De takenlijst is een overzicht met alle werkzaamheden die verricht moeten worden om het volledige project (tot en met de oplevering van de applicatie) uit te voeren. Zorg ervoor dat je ook zaken als gesprekken en mailen opneemt.
Planning

In de planning wordt de takenlijst chronologisch opgenomen. Daarbij wordt vermeld hoe lang een taak duurt en wanneer en door wie een taak wordt uitgevoerd. Maak gebruik van de onderstaande lay-out.

Planning ontwerp
Taak Begindatum Begintijd Einddatum Eindtijd Duur Betrokkenen
Plan van aan Aanpak schrijven dd-mm-jjjj uu:mm dd-mm-jjjj uu:mm uu:mm Naam of namen
Risico’s Maak een overzicht over wat jij denkt dat er fout kan gaan in het project en geef aan welke maatregelen je hiervoor treft.
Projectgrenzen Zet in een overzicht welke activiteiten er binnen het project niet worden uitgevoerd.

B1-K1-W3 Levert een bijdrage aan het ontwerp

B1-K1-W3 Stelt de opdracht vast
Resultaat Een bijdrage aan het ontwerp document
Input Programma van eisen, projectplan, bestaande data.
Op te leveren
  • Een functioneel ontwerp en technisch ontwerp
  • Een toelichting op het functioneel ontwerp en technisch ontwerp
Samenwerking Opdrachtgever / projectleider
Voor wie Klant en/of opdrachtgever
Competenties Analyseren, omgaan met verandering en aanpassen, overtuigen en beïnvloeden, presenteren, formuleren en rapporteren, vakdeskundigheid toepassen

Functioneel Ontwerp

Hoofdstuk|paragraaf|subparagraaf Uitwerking
Inleiding In dit ontwerp maak je een overzicht van de functionaliteiten waaraan de applicatie moet voldoen
Functionaliteiten Hier vermeld je alle functionaliteiten (zie PvE) die de applicatie gaat bieden. Geef hierbij duidelijk aan wat eisen en wensen zijn (prioriteiten). Zorg ervoor dat het ook voor niet vakgenoten duidelijk omschreven is. Maak gebruik van lijsten of schema’s.
Basis lay-out

Geef in één of meer schetsen aan, hoe de applicatie er uit gaat zien. In deze schets(en) moeten duidelijk de onderstaande punten naar voren komen.

  • Lay-out applicatie
    • Plaats menu
    • Plaats content
    • Plaats titel
    • Plaats logo
    • enzovoorts
  • Opmaak
    • Kleurgebruik
    • Lettertype
    • enzovoorts
  • Bediening van de applicatie (indien van toepassing)

Navigatiestructuur Geef aan hoe er binnen de applicatie genavigeerd gaat worden. Geef hierbij in hoofdlijnen aan welke schermen/vensters(view/secties/pagina’s) er zijn binnen de applicatie en hoe deze in relatie met elkaar staan. Laat notificaties achterwege.
Gebruikersscherm Geef, indien van toepassing, van elk formulier aan welke gegevens er gebruikt worden. Laat in een of meer schetsen zien hoe deze gegevens worden weergegeven.
Uitvoerontwerp Beschrijf hoe de uitvoer/output van de applicatie is. Het betreft hier online- en printbased output. Denk daarbij aan rapportages/overzichten/rekeningen/bewijzen/geluid/pdf/doc/xls/email.

Technisch Ontwerp

Hoofdstuk|paragraaf|subparagraaf Uitwerking
Technische specificaties Werk het functioneel ontwerp uit naar technische specificaties. Gebruik, indien gewenst, schematechnieken (Vooral een Class Diagram en in sommige gevallen Use – of Activity Diagram). Je dient ervoor te zorgen dat de oplossing/uitwerking haalbaar en realistisch is.
Relationeel datamodel
  • Normaliseer de overzichten en eventueel formulieren. Gebruik hiervoor de 0e tot en met 3e normaalvorm.
  • Voeg de 3e normaalvormen samen tot één 3e normaalvorm.
  • Maak op basis van de samenvoeging het EntiteitRelatieDiagram (ERD), waarin duidelijk naar voren komt:
    • Welke entiteiten gebruikt worden
    • Welke eigenschappen of attributen gebruikt worden en bij welke entiteiten zij horen
    • Welke sleutels gebruikt worden
    • Welke relaties er zijn.
  • Maak op basis van het ERD de datadictionary. Gebruik daarvoor het onderstaand schema per entiteit.
Naam entiteit
Definitie
Attribuutnaam Datatype Toelichting
Relatie Toelichting
R1
R2

B1-K1-W4 Bereidt de realisatie voor

B1-K1-W4 Bereidt de realisatie voor
Resultaat De realisatie is voorbereid en startklaar.
Input Ontwerp.
Op te leveren
  • Een ontwikkelomgeving
  • Een configuratieoverzicht

Samenwerking
Voor wie Bijvoorbeeld een toekomstige medeontwikkelaar.
Competenties Materialen en middelen inzetten, plannen en organiseren, kwaliteit leveren, formuleren en rapporteren

Beschrijving Ontwikkelomgeving

Hoofdstuk|paragraaf|subparagraaf Uitwerking
Te gebruiken hardware

Onderstaande hardware is nodig om de applicatie te kunnen maken en is gebaseerd op bijvoorbeeld de minimale vereisten om Android Studio Simulator te kunnen draaien:

Onderdeel Vereisten
Processor XX-bit Dual-core AMD of Intel processor
RAM X GB
Harde schijf XXX GB
Grafische kaart XXXX x XXXX minimum schermresolutie met X GB of meer onboard graphics
Internetverbinding XX Mb/s
Overig Buro, Stoel, Scherm, Keyboard en Muis.
Te gebruiken software

Hieronder staat de software die nodig is om de applicatie in de vorm van een webapplicatie te bouwen:

Software Opmerkingen
Besturingssysteem XX-bit Microsoft Windows XX pro, versie XX.X.XXXXX Build XXXXX of Chrome OS voor Chromebooks platform XXXXX.XX.X versie XX.X.XXXX.XXX of macOS versie XX.X
IDE Microsoft Visual Studio Code, versie X.XX.X, etc
Ondersteunende frameworks en servers .net Framework versie X.X, Java SDK SE XXXXX, Microsoft Visual C++ XXXX Redistributable, etc
Webserver Apache versie X.X.XX, etc
Applicatieserver PHP versie X.X.X en/of Tomcat versie X.X.XX, Strawberry Perl versie X.XX.X.X, etc
Databaseserver MariaDB XX.X.XX
FTP- en/of mailserver FileZilla FTP Server versie X.X.XX, Mercury Mail Transport System versie X.XX, etc
Browsers Naar eigen inzicht Google Chrome versie XX.X.XXXX.XXX, Mozilla Firefox Standard Release voor Desktop versie XX.X.X, Microsoft Edge versie XX.X.XXX.XX, Opera voor Desktop versie XX.X.XXXX.XX, etc

B1-K2 Realiseert en test (onderdelen van) een product


B1-K2-W1 Realiseert (onderdelen van) een product

B1-K2-W1 Realiseert (onderdelen van) een product
Resultaat Gerealiseerde (onderdelen van een) applicatie, media-uiting of game die voldoen aan de eisen van de opdracht. Complete en goed verzorgde documentatie.
Input Materialen en middelen
Op te leveren
  • Het kwaliteitshandboek
  • Het creatiescript
  • De broncode van de applicatie of van onderdelen ervan
  • De werkende applicatie of onderdelen ervan
Samenwerking
Voor wie
Competenties Materialen en middelen inzetten, analyseren, plannen en organiseren, kwaliteit leveren, et druk en tegenslag omgaan.

Kwaliteitshandboek

Hoofdstuk|paragraaf|subparagraaf Toelichting
De planning van de realisatie en de test

Maak gebruik van de onderstaande tabel om een planning van de realisatie en de test te maken.

Planning van de realisatie en test
Onderdeel / Scherm / Venster Programmeur Van Tot
De realisatie

Maak gebruik van de onderstaande tabel om de realisatie te documenteren.

Realisatie
Onderdeel / Scherm / Venster Programmeur Klaar op Opmerking
De wijzigingen na de test <- Hier Germain

Maak gebruik van de onderstaande tabel om te documenteren welke wijzigingen er na de test zijn doorgevoerd.

Wijzigingen
Naam bestand Programmeur Van Tot Wijziging


B1-K2-W2 Test het ontwikkelde product

B1-K2-W2 Test het ontwikkelde product
Resultaat Correct uitgevoerde testactiviteiten en (vervolg)acties die bijdragen aan een goed functionerend product. Bijgewerkte documentatie en duidelijk beschreven testresultaten en eventuele verbetervoorstellen.
Input Applicatie, ontwerp
Op te leveren
  • Het testplan
  • Het testlog
Samenwerking
Voor wie
Competenties Formuleren en rapporteren, vakdeskundigheid toepassen, materialen en middelen inzetten, analyseren, creëen innoveren.

Testplan

Hoofdstuk|paragraaf|subparagraaf Toelichting
Inleiding Het testrapport bestaat uit een testplan en testlog.
Testvoorbereiding Het testplan bestaat uit een gegevensset en een lijst met te testen onderdelen van de applicatie. Zorg ook voor een gegevensset voor het toevoegen en het wijzigen van gegevens.
Gegevensset

Maak gebruik van onderstaande tabel om een gegevensset te maken.

Activiteit
Productcode Product
kf Koffie
ts Tomatensoep
Te testen onderdelen

Maak gebruik van de onderstaande tabel om te bepalen welke onderdelen van de applicatie getest moeten worden.

Onderdeel Formulier Functie Afwijkend paginaontwerp
Reservering Ja Medewerker kan een reservering toevoegen. Nee
Bon Ja Medewerker kan een bon voor de klant genereren. Ja
Testlog

Het tweede deel van het testrapport bestaat uit een testlog. Maak gebruik van onderstaande tabel bij het testen van de onderdelen van de applicatie.

Testlog
Pagina Datum test Tester Defect Prioriteit Verbeteractie Datum actie Afgehandeld door
Reservering 2-12-2015 Koos 0
Bon 3-12-2015 Joke Totaal te betalen wordt niet zichtbaar. 3 Selectiequery moet naar database gestuurd worden. 19-12-2015 Peter

De prioriteit van problemen wordt door middel van een getal aangeduid.

  • 0 = Geen prioriteit
  • 1 = Lage prioriteit voor een probleem waar niet meteen een oplossing voor hoeft te worden gevonden.
  • 2 = Prioriteit voor een probleem dat opgelost dient te worden, maar waar voorlopig mee gewerkt kan worden.
  • 3 = Hoogste prioriteit voor een probleem dat onmiddellijk opgelost dient te worden.

B1-K3 Levert een product op


B1-K3-W1 Optimaliseert het product

B1-K3-W1 Optimaliseert het product
Resultaat Een optimaal werkend product en waar nodig bijgewerkte documentatie.
Input Gebruikersreacties, testresultaten.
Op te leveren
  • Een in- en aangevuld sjabloon acceptatietest
  • Het testrapport van de aanpassingen
  • Een (export van) de gewijzigde database gevuld met testdata
  • Een gewijzigde broncode van de applicatie of van onderdelen ervan
  • Een werkende gewijzigde applicatie of onderdelen ervan
Samenwerking Opdrachtgever en/of toekomstige applicatie gebruikers, projectleider.
Voor wie Projectleider
Competenties Samenwerken en overleggen, vakdeskundigheid toepassen, op de behoeften en verwachtingen van de “klant” richten, formuleren en rapporteren, aandacht en begrip tonen.

In het kort:

  • Jij maakt van één functionaliteit met diverse scenarios een acceptatietest.
  • De opdrachtgever test en jij noteert en verwerkt dit in de bestaande acceptatietest.
  • Bespreek gewenste aanpassingen en verwerk dit in de bestaande acceptatietest.
  • Jij programmeert, test en verwerkt dit in een testrapport en in de bestaande acceptatietest.
  • Jij levert complete applicatie op.

Acceptatietest

Functionaliteit
Actie
Scenario
Verwacht resultaat
Werkelijk resultaat
Aanpassingen
Uitvoering Uren Prioriteit Door

Testrapport

Functionaliteit
Actie
Scenario
Resultaat Aanpassingen
Akkoord ontwikkelaar Datum Initialen

B1-K3-W2 Levert het product op

B1-K3-W2 Levert het product op
Resultaat Een door de opdrachtgever /projectleider opgeleverd product.
Input
Op te leveren
  • De applicatie in de productieomgeving
  • Documentversiebeheer
  • De presentatie van de applicatie
  • De demonstratie van de applicatie
Samenwerking
Voor wie Oprachtgever / projectleider
Competenties Presenteren, op de behoeften en verwachtingen van de “klant” richten.

Documentversiebeheer

Versienummer 1.00
Releasedatum
Tickets
Ontwikkelomgeving
Broncode
Database
Database-verbinding
Ontwikkeltool
Productieomgeving
Applicatie
Database
Database-verbinding

B1-K3-W3 Evalueert het opgeleverde product

B1-K3-W3 Evalueert het opgeleverde product
Resultaat Het proces en product zijn geëvalueerd door de ontwikkelaar en de betrokkenen en schriftelijk vastgelegd.
Input Opleverproces.
Op te leveren
  • Een geaccordeerd evaluatieverslag
Samenwerking Projectteam, opdrachtgever, leidinggevende.
Voor wie
Competenties Samenwerken en overleggen, kwaliteit leveren, formuleren en rapporteren.

Evaluatieverslag

Hoofdstuk|paragraaf|subparagraaf Toelichting
Inleiding In dit evaluatieverslag wordt het product en het proces met betrekking tot de ontwikkeling van de nieuwe restaurantapplicatie voor Excellent Taste beschreven.
Betrokkenen Noteer welke betrokkenen uit het proces jij om feedback vraagt.
Evaluatie product Beschrijf de punten die goed zijn gegaan en benoem eventuele verbeterpunten.
Evaluatie proces Beschrijf de punten die goed zijn gegaan en benoem eventuele verbeterpunten.

P1-K1 Onderhoudt en beheert de applicatie


P1-K1-W1 Onderhoudt een applicatie

P1-K1-W1 Onderhoudt een applicatie
Resultaat Incidenten (vragen, verzoeken, verstoringen) zijn op correcte wijze afgehandeld. Goed functionerende applicatie, die up to date is.
Input sla,
Op te leveren
  • De ingevulde en geaccordeerde Bijlage 3 Persoonlijke ticketlijst opdracht 1
  • Het ingevulde aanpassingendocument
  • De gewijzigde applicatie met de doorgevoerde wijzigingen voor twee tickets
    • Het creatiescript voor de database (indien gewijzigd)
    • Een (export van) de database gevuld met testdata
    • De broncode van onderdelen van de applicatie die je gewijzigd hebt.
    • De applicatie die je gewijzigd hebt.
Samenwerking opdrachtgever, organisatie, [applicatie leverancier]
Voor wie
Competenties Formuleren en rapporteren, analyseren, onderzoeken, op de behoeften en verwachtingen van de “klant” richten, kwaliteit leveren, instructies en procedures opvolgen.

P1-K1-W2 Beheert gegevens

P1-K1-W2 Beheert gegevens
Resultaat De documentatie m.b.t. de in beheer zijnde producten is volledig en digitaal gearchiveerd. content getoets op juistheid, volledigheid en bruikbaarheid.
Input
Op te leveren
  • Gearchiveerde applicatiedocumentatie
Samenwerking
Voor wie
Competenties Formuleren en rapporteren, analyseren, kwaliteit leveren, instructies en procedures volgen.

Keuzedelen


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