Kerntaak 2: Realisatie

Situatie

Van je projectleider heb je de startdocumenten gekregen. Daarin vind je de behoefteanalyse, het plan van aanpak, het functioneel en het technisch ontwerp.

Opdracht 1: Gegevensverzameling

Aan de hand van het technisch ontwerp maak je de documentatie over de structuur van de gegevensverzameling (datadictionary). Aan de hand van de rapportages bepaal je welke gegevens je gaat gebruiken bij de realisatie van de applicatie.

Leg een gegevensverzameling aan. Doe dat met de volgende stappen.

  • Maak een datadictionary aan de hand van het Entiteiten Relatie Diagram.
  • Leg een lijst gegevens aan die je bij de realisatie en de test gaat gebruiken. De gegevens die je gebruikt, baseer je op de rapportages en schermafbeeldingen die bij de behoefteanalyse zijn meegeleverd
  • Onderzoek of de software die je voor de gegevensverzameling gaat gebruiken, geschikt is en of er nog modules nodig zijn voor de gegevensverzameling.
  • Bespreek de bovengenoemde punten met je projectleider.
  • Maak een (SQL-)script waarmee de gegevensverzameling wordt aangemaakt.
  • Test het (SQL-)script.
  • Realiseer de gegevensverzameling.
  • Zorg voor een, volgens onderstaande vormeisen, actuele en complete documentatie in het rapport Documentatie Gegevensverzameling.

Resultaten

Het resultaat van deze opdracht is het volgende.

  • Een gegevensverzameling waarmee de applicatie gerealiseerd en getest kan worden.
  • Een actuele en complete documentatie

Vormeisen

Het resultaat moet aan de volgende punten voldoen.

  • De documentatie Gegevensverzameling heeft een voorblad. Het voorblad bevat de volgende elementen.
    • De naam van het project
    • De naam van het product: Gegevensverzameling
    • De datum, waarop het product is ingeleverd.
    • De naam of namen van de personen die aan het product hebben meegewerkt.
    • Het versienummer
    • Eventueel een logo
  • De documentatie bevat een inhoudsopgave.
  • Het taalgebruik is zakelijk.
  • Er wordt vaktaal gebruikt.
  • De lay-out van het (SQL-)script voldoet aan de standaard van FastDevelopment.
  • Het (SQL-)script is van voldoende commentaar voorzien.

Inhoudseisen

Het resultaat moet aan de volgende punten voldoen:

  1. Documentatie Gegevensverzameling
    1. Datadictionary
    2. Gegevens
    3. Software
  2. (SQL-)script
  3. Gerealiseerde gegevensverzameling

Uitwerking op onderdelen

  1. Datadictionary

    Een datadictionary is een beschrijving van de entiteiten met de velden en de relaties op databaseniveau. Bovendien wordt er op de verschillende onderdelen een toelichting gegeven. Zie het volgende voorbeeld:

    Entiteit Bestelling
    Definitie Algemene factuurgegevens bij een bestelling door een klant
    Attribuutnaam Datatype Toelichting
    Datum Date De datum waarop de bestelling is gedaan
    Factuurnummer Varchar(15) Factuurnummer bestaat uit de datum en klantnummer
    Relatie Toelichting
    R1 Een bestelling wordt altijd door een klant gedaan.
    R2 Een bestelling bevat altijd een of meer bestelregels.

    Voor elke entiteit wordt een dergelijke tabel gemaakt.

  2. Gegevens

    Per tabel wordt de inhoud weergegeven zoals deze wordt opgeslagen.

    Bestelling
    Datum Factuurnummer
    2012-12-20 20121220156
    .... ....
    .... ....
    2012-12-21 20121221367

    Zorg ervoor dat onderlinge verwijzingen tussen tabellen juist zijn!

  3. Software

    Geef een korte beschrijving van de software die gebruikt wordt om de gegevensverzameling te beheren. Beschrijf eventueel aanvullende modules die nodig zijn om de gegevensverzameling te kunnen beheren.

  4. (SQL) script

    Het (SQL-)script maakt de structuur van de gegevensverzameling aan en zet de gegevens klaar die gebruikt worden bij het realiseren en testen van de applicatie. Het script moet leesbaar en te onderhouden zijn. Dat betekent dat er voldoende commentaar in je code moet staan en dat de lay-out van de code volgens de standaard moet zijn zoals je die gewend bent. Als niet duidelijk is volgens welke standaard je moet coderen, vraag dat dan aan je projectleider. Of gebruik de standaard van onderstaande voorbeelden.

    --Maak tabel bestelling aan
    create table bestelling (
        datum date, 
        factuurnummer varchar(11),
        primary key(factuurnummer)
    );
    
    --Voer gegevens in de tabel bestelling in
    insert into bestelling(datum, factuurnummer)
        values('2012-12-20', '20121220156');
    ...
    ...
    insert into bestelling(datum, factuurnummer)
        values('2012-12-21', '20121221367');
    

Opdracht 2: Realisatie

Aan de hand van het plan van aanpak en het functioneel en technisch ontwerp maak je eerst het kwaliteitshandboek in orde om daarna de applicatie of een gedeelte ervan te realiseren.

Realiseer de applicatie of een gedeelte ervan. Doe dat in de volgende stappen:

  • Stel het kwaliteitshandboek op volgens de gegeven vormeisen.
  • Maak een planning voor de realisatie.
  • Leg de planning van de realisatie voor aan de projectleider.
  • Realiseer de applicatie.
  • Vul tijdens de realisatie van de applicatie het kwaliteitshandboek verder in.
  • Voer het technisch gesprek met je projectleider.

Resultaten

Het resultaat is (een gedeelte van) de applicatie, met alle onderliggende codes, die goed functioneert en volgens het ontwerp gerealiseerd is. Het kwaliteitshandboek is volledig ingevuld. Je hebt een technisch gesprek gevoerd.

Vormeisen

Het resultaat moet aan de volgende punten voldoen.

Kwaliteitshandboek

  • Het kwaliteitshandboek heeft een voorblad. Het voorblad bevat de volgende elementen:
    • De naam van het project
    • De naam van het product: Gegevensverzameling
    • De datum waarop het product is ingeleverd.
    • De naam of namen van degenen die aan het product hebben meegewerkt.
    • Het versienummer
    • Eventueel een logo
  • De documentatie bevat een inhoudsopgave.
  • Het taalgebruik is zakelijk.
  • Er wordt vaktaal gebruikt.

Applicatie

  • De applicatie of delen ervan zijn gerealiseerd volgens het kwaliteitshandboek.
  • De code van de applicatie is volgens de standaard van FastDevelopment geschreven.
  • De applicatie is zuinig geprogrammeerd.
  • De code is voorzien van voldoende commentaar. Tenminste elke functie, methode en klasse is voorzien van commentaar.
  • De opbouw van de applicatie is logisch.
  • De code van de applicatie is te onderhouden.

Inhoudseisen

  • In het kwaliteitshandboek zijn de tabellen volledig ingevuld.
  • De applicatie of delen ervan zijn gerealiseerd volgens het Functioneel ontwerp en het Technisch ontwerp.
  • De applicatie of delen ervan zijn in het kwaliteitshandboek vastgelegd.
  • In het technisch gesprek wordt het verloop van het project, de problemen die zijn voorgekomen en de techniek van de applicatie besproken.

Uitwerking op onderdelen

Kwaliteitshandboek

Het kwaliteitshandboek bestaat uit drie onderdelen: 1 planning van de realisatie, 2 de realisatie en 3 wijzigingen na de realisatie.

In de planning staat een lijst met alle pagina's van de applicatie met daarachter de naam van de persoon die de pagina gaat maken en wanneer hij dat gaat doen. Deze lijst met pagina's is dezelfde als die in het functioneel ontwerp.

Planning van de realisatie
Pagina Programmeur Van Tot

Deze tabel moet helemaal ingevuld zijn voor het kwaliteitshandboek gebruikt kan worden tijdens de realisatie.

Daarna volgt de werkelijke realisatie.

Realisatie
Pagina Programmeur Klaar op

In de kolom pagina staan de namen van alle pagina's. Als dat niet zo is, dan kan het kwaliteitshandboek niet tijdens de realisatie gebruikt worden.

Tot slot volgt een overzicht van de wijzigingen die zijn aangebracht nadat de pagina klaar was. Dit kan zijn naar aanleiding van de uitkomsten van de test. Een pagina kan diverse keren genoemd worden als er meer wijzigingen zijn aangebracht. Een ongewijzigde pagina zal in deze lijst niet voorkomen. Deze tabel vul je in tijdens het uitvoeren van opdracht 3.

Wijzigingen
Naam bestand Programmeur Van Tot Wijziging

Technisch gesprek

Dit gesprek gaat over de techniek achter de applicatie. Tijdens dit gesprek is het de bedoeling dat je laat zien wat jouw kennis van programmeren is. Dit gesprek is bestemd voor vakgenoten. Met name voor de projectleider, zodat hij op de hoogte is van de gang van zaken en de gebruikte technieken tijdens het project. In dit deel gebruik je vaktaal.

In het technisch gesprek vertel je hoe het project is verlopen. Wat ging er goed? Welke problemen ben je tegengekomen? Welke oplossingen heb je gevonden? Ook kun je de technische werking uitleggen van die delen van de applicatie waaraan je gewerkt hebt. De projectleider zal vragen stellen naar aanleiding van de code die hij ziet of aan je vragen iets te laten zien.

De applicatie is of delen ervan zijn nog niet getest. Het kan dus voorkomen dat er fouten optreden tijdens het technisch gesprek. Dat is op zich niet erg, want de applicatie of delen ervan worden nog niet beoordeeld. Het gaat namelijk om je technische kennis. Bij een optredende fout moet je wel kunnen verklaren, aan de hand van de foutmelding, wat er fout gaat en hoe je het eventueel kunt oplossen. Ook dat heeft met je programmeerkennis en programmeervaardigheid te maken.

Opdracht 3: Test

De applicatie is gerealiseerd en wordt nu getest aan de hand van de gegevens die bij opdracht 1 Gegevensverzameling zijn opgesteld.

Opdracht

Test de applicatie en breng eventueel verbeteringen aan. Doe dat in de volgende stappen:

  • Maak een testplan.
  • Voer de test uit en documenteer de resultaten van de test.
  • Breng in overleg met de projectleider verbeteringen aan in de applicatie of in delen ervan op basis van de testlog.
  • Documenteer deze verbeteringen in het kwaliteitshandboek in de tabel Wijzigingen.

Resultaten

De resultaten van deze opdracht zijn de volgende:

  • Uitgevoerde tests
  • Ingevulde testrapportage
  • Aangevulde tabel Wijzigingen in het kwaliteitshandboek

Vormeisen

Het resultaat moet aan de volgende punten voldoen:

  • Het testrapport heeft een voorblad. Het voorblad bevat de volgende elementen.
    • De naam van het project
    • De naam van het product: Gegevensverzameling
    • De datum waarop het product is ingeleverd.
    • De naam of namen van de personen die aan het product hebben meegewerkt.
    • Het versienummer
    • Eventueel een logo
  • De documentatie bevat een inhoudsopgave.
  • Het taalgebruik is zakelijk.
  • Er wordt vaktaal gebruikt.
  • De code van de applicatie is volgens de standaard van FastDevelopment geschreven.
  • De code is voorzien van voldoende commentaar.

Inhoudseisen

  • In het kwaliteitshandboek zijn alle wijzigingen aan de applicatie opgenomen in de tabel Wijzigingen.
  • Er is een testrapport met daarin een testplan en testlog.
  • Er is een goed functionerend applicatie of een deel ervan.

Uitwerking op onderdelen

Testrapport

Het testrapport bestaat uit een testplan en testlog.

Het testplan bestaat uit een gegevensset en een lijst met te testen pagina's van de applicatie. De gegevensset bestaat uit de gegevens of een gedeelte ervan uit opdracht 1.

Bestelling
Datum Factuurnummer
2012-12-20 20121220156
... ...
... ...
2012-12-21 20121221367

De gegevens van de pagina's die getest worden, worden overgenomen uit het functioneel ontwerp.

Naam pagina Formulier Functie Afwijkend pagina ontwerp
Hoofdpagina Nee Belangstelling voor de website en voor de producten opwekken Nee
Productenpagina Nee Lijst met producten tonen waaruit de klant een keuze kan maken. Nee
... ... .... ...
... ... .... ...
Bestelpagina Ja Klant kan product bestellen. Nee

Het tweede deel van het testrapport bestaat uit een testlog.

Testlog
Pagina Datum test Tester Defect Prioriteit Verbeter actie Datum actie Afhandelaar
Hoofdpagina 2-12-2012 Koos - 0
Producten pagina 3-12-2012 Koos Pagina wordt te lang 2 Minder items op pagina 20-12-2012 Joke
Bestel pagina 3-12-2012 Joke Naam van klant wordt niet zichtbaar 3 Selectie query moet naar db gestuurd worden 19-12-2012 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.

Aan de hand van deze indeling kun je bepalen welke problemen het eerst opgelost moeten worden.

Op elke regel waar in de kolom Prioriteit een 0 staat, hoeft geen verbeteractie ondernomen te worden. Waar op een regel een 1 staat, betekent dat er niet meteen een verbeteractie ondernomen hoeft te worden. Waar een 2 of 3 staat, dienen wel verbeteracties ondernomen te worden.