plan van aanpak - hhs studentweb12109886/bestanden/plan van aanpak unittest.pdf · - concept...
TRANSCRIPT
Plan van Aanpak
Project Unittest
Pascal de Vilder 13116266 Miguel Agterberg 12109886
1
Inhoudsopgave
1. Achtergronden ............................................................................................................... 2
2. Projectresultaat .............................................................................................................. 3
3. Projectactiviteit .............................................................................................................. 4
4. Projectgrenzen en Randvoorwaarden ............................................................................. 5
5. Tussenresultaten ............................................................................................................ 6
6. Kwaliteit ......................................................................................................................... 7
7. Projectorganisatie .......................................................................................................... 8
8. Planning ....................................................................................................................... 10
9. Kosten en baten ............................................................................................................ 11
10. Risico’s ...................................................................................................................... 13
Bijlage 1: ............................................................................................................................. 14
2
1. Achtergronden
Project Unittest is een intern project binnen Croon Elektrotechniek BV. Croon Elektrotechniek staat al
125 jaar aan de basis van vele technologische ontwikkelingen. Ze zijn verantwoordelijk voor de complete
technische installaties in duizenden gebouwen, talloze schepen, tunnels, bruggen, sluizen, vele
industriële complexen en tienduizenden andere projecten in allerlei marksectoren. Croon opereert
zowel op de nationale en internationale markt. Met deze diensten dragen zij bij aan het goed én
kostenefficiënt functioneren van organisaties, gebouwen, schepen, infrastructurele en industriële
installaties.
Het project Unittest zal worden uitgevoerd door de afdeling Techniek Technische Automatisering. Deze
afdeling is dagelijks bezig om innovatieve systemen en technologieën te integreren in de
bedrijfsprocessen van klanten. Dit wordt gedaan conform de internationaal gehanteerde standaarden
zoals IEC 1131, ISA-88 en ISA-95. Indien gewenst, vanaf consultancy tot en met maintenance. Met een
gedegen en integrale aanpak zijn zij in staat om eventuele productieverliezen of procesverstoringen tot
een minimum te beperken.
PLC’s zijn “programmable logic controllers”, een product wat multifunctioneel inzetbaar is voor specifiek
aansturingstaken door deze te herprogrammeren. Het is hierbij de bedoeling dat er een zogenaamde
unit testbench wordt gemaakt. Deze unit test moet alle aspecten die in de praktijk van de PLC
voorkomen kunnen testen, om zo correcte werking te garanderen en een fout te vinden.
PLC programma’s worden in veel technische apparaten binnen Croon gebruikt daarom is dit onderzoek
van belang. Wanneer er een positief resultaat uit het onderzoek komt betekent dit dat veel projecten
effectiever uitgevoerd kunnen worden en zal veel tijd bespaard worden.
In volgende hoofdstukken zal verder worden ingegaan op de project resultaten, tussenresultaten en
activiteiten die nodig zullen zijn. Projectgrenzen waarin wordt aangegeven wat nog wel en wat nog niet
gedaan moet worden. Kwaliteiten waarin wordt aangegeven hoe de kwaliteit van de resultaten
gewaarborgd zal worden. Verder wordt er ook nog gekeken naar de organisatie, planning, kosten en
baten en risico’s.
3
2. Projectresultaat
Het doel van dit project is te onderzoeken wat de mogelijkheden zijn voor unittesting binnen de
projecten van Croon en een advies over de toepasbaarheid van unittesten op te stellen. Dit advies
moet worden weergegeven in een rapport met bevindingen van het onderzoek, tevens moet een unit
testcase worden ontwikkeld.
Het advies moet antwoord geven op de vraag, Wat voor effect zal het invoeren van unittesten hebben
op nieuwe projecten. Er moet worden gekeken naar de kosten van het ontwikkelen en invoeren van unit
testen, en de besparingen na de invoering.
Het ontwikkelen van PLC programma’s is een complex procedure. Een belangrijk onderdeel is het testen
van het programma. Tijdens het testen kunnen fouten worden opgespoord en weet men dat het
functioneel is. Om dit proces te verbeteren kan gebruikt worden gemaakt van unittesting. Onderdelen
van een programma kunnen apart van elkaar getest worden. Dit levert veel voordelen op zoals:
vereenvoudigd opsporen van fouten, documentatie en verbeterde integratie.
Inmiddels is de ontwikkeling van unittesten verder ontwikkeld en zijn er tools, methoden en
bibliotheken beschikbaar. Hierdoor is het hard nodig om opnieuw te kijken naar de toepasbaarheid van
unit-testen binnen de projecten van Croon.
Een resultaat van dit project is ook dat de Projectteamleden kennis ontwikkelen over de
programmeertaal .Net en de functionaliteiten van diverse PLC’s
4
3. Projectactiviteit
Het project kan worden ingedeeld in een aantal projectfases. Elke fase heeft een aantal
projectactiviteiten waaraan gewerkt moet worden. Hieronder worden de Fases en de projectactiviteiten
benoemd:
Fase 0: Maken van een Plan van Aanpak
- Verdiepen in het onderwerp unit testen. - Gesprek met opdrachtgever binnen Croon - Maken van een voorlopig plan van aanpak. - Bespreken voorlopig plan van aanpak met opdrachtgever. - Opstellen van een definitief plan van aanpak. Fase 1: Onderzoek Unit testen
- Verdiepen in de programmeertaal .Net. - Verdiepen in de functionaliteiten van diverse PLC’s. - Onderzoek over de werking van unit testen. - Documentatie over de werking van unit testen verwerken in het rapport. - Onderzoek naar huidige procedure voor het schrijven/debuggen van programma’s. - Documentatie over de huidige procedure voor het schrijven/debuggen van programma’s verwerking in het rapport. - Samenstellen onderzoeksrapport als tussenresultaat - Bespreking met opdrachtgever
Fase 2: Ontwikkelen Test unit case
- Ontwikkelen unitcase - Ontwikkelen programma voor test - Testen unitcase - Verbeteren unitcase - Rapport samenstellen over ontwikkeling. - Handleiding unitcase schrijven
Fase 3: Onderzoeken Toepasbaarheid Unit testen
- Onderzoeken effect gebruiken unit testcase in project - Documentatie onderzoek effect gebruiken unit testcase in project verwerken - Onderzoeksrapport met voor- en nadelen - Rapport concrete cijfers (winst/verlies) - Bespreking met opdrachtgever - Advies maken - Concept adviesrapport maken - Bespreking met opdrachtgever
5
4. Projectgrenzen en Randvoorwaarden Er zullen een aantal grenzen worden gesteld aan het project om ervoor te zorgen dat er niet te veel of te
weinig wordt gedaan. Dit zal helpen om de planning effectief te houden.
Voor de eerste fase van het project zal alleen een onderzoek worden gedaan. Het is nog niet nodig om
en testcase te maken. Na de eerste fase kan worden bepaald of doorgaan met het project rendabel is.
Er zal alleen onderzoek worden gedaan naar unit testen, andere vormen van testen hoeven niet
onderzocht te worden.
In de tweede fase zal een test unitcase worden ontwikkeld, deze unitcase hoeft niet compleet te zijn,
het hoeft alleen geschikt te zijn voor vooraf gekozen project, waarop het getest zal worden.
Het project begint op 27 januari, vertraging van de startdatum heeft als gevolg dat enkele teamleden
geen project hebben en zullen dus extra kosten veroorzaken. De geplande einddatum van het project is
vrijdag 1 augustus. Verschuiving van de deadline is alleen acceptabel ten gevolge van een veranderd
startdatum.
Voor het project is een budget van 420.000 euro begroot, (zie het hoofdstuk Kosten en Baten), dit
budget mag niet worden overschreden.
Er zijn een aantal zaken die voor het project van belang zijn. Er moet voor een geschikte werkruimte ter
beschikking worden gesteld waarin het team kan overleggen en werken. Voor het onderzoeken kan ook
gebruikt worden gemaakt van flexwerken. Het project kan alleen slagen als er voldoende mensen
beschikbaar zijn, in totaal 4 teamleden nodig zijn en een teamleider.
6
5. Tussenresultaten Aan de hand van de projectactiviteiten kunnen tussenresultaten worden bepaald.
Fase 0:
Gesprek met opdrachtgever van Croon gehad
Definitief plan van aanpak geschreven
Fase 1:
Rapport met documentatie van werking test unit
Rapport met documentatie van procedure van schrijven en debuggen van programma’s
Onderzoeksrapporten naar opdrachtgever(Croon) gestuurd
Fase 2:
Testcase theorie geschreven
Programma voor testcase opgeleverd
Rapport over ontwikkeling van testcase
Rapport over werking van testcase
Handleiding voor testcase
Fase 3:
Onderzoeksrapport effectiviteit unit testcase
Adviesrapport
Rapport over uiteindelijk kosten en baten project
Eindgesprek met opdrachtgever gehad
7
6. Kwaliteit Omdat de conclusies van de onderzoeken van dit project lastig of niet te kwantificeren zijn, draait de
kwaliteitscontrole voornamelijk op documentatie van de genomen stappen en de feedback hierop.
Om de kwaliteit van de tussenresultaten te waarborgen, moeten alle (onderzoeks)verslagen aan de
volgende voorwaarden voldoen:
Het doel van het onderzoek moet worden gesteld
De onderzoeksmethode moet worden beschreven, dit moet, indien van toepassing, bevatten:
- De verrichte handelingen
- Gebruikte software
- Meetopstelling
De rapporten worden, zowel tussentijdig als op het eind, teruggekoppeld aan de opdrachtgever,
die dan kan beoordelen of de kwaliteit voldoet.
- Deze terugkoppeling naar de opdrachtgever vindt 1x per week plaats in de vorm van
weekrapporten.
- Terugkoppeling komt ook als een tussenrapport geschreven is.
8
7. Projectorganisatie Project Unittest zal onder leiding van een projectleider en 4 groepsleden worden uitgevoerd. De taak
van de projectleider is het bewaken van de voortgang, het maken van de werkplanning, het aansturen
van de groepsleden en wanneer nodig hulp bieden bij problemen, en het contact met de opdrachtgever.
Het is van belang dat de projectleider tijdig geïnformeerd wordt over knelpunten door de
Projectteamsleden. Zij dragen hier zelf verantwoordelijk voor. Deelresultaten worden besproken met de
opdrachtgever. Mogelijke vertraging en bijstelling van de aanpak worden door de projectleider met de
opdrachtgever besproken.
Op basis van de projectactiviteiten is gekeken welke expertise nodig is voor de realisatie van de
activiteiten. Op basis hiervan is het projectteam samengesteld. Alle projectteamleden zijn in dienst bij
Croon.
Opdrachtgever:
Naam: Jeroen Hooft Adres: Van Breestraat 145, Amsterdam Telefoonnummer: 020-3536852 Emailadres: [email protected] Beschikbaarheid: Maandag t/m Vrijdag van 9:00 tot 18:00 Functie: Afdelingshoofd Technische automatisering Projectteam: Naam: Patrick van den Sloot Adres: Rivierpad 45, Delft Telefoonnummer: 015-8279852 Emailadres: [email protected] Beschikbaarheid: Maandag t/m Donderdag van 9:00 tot 18:00 Vrijdag van 9:00 tot 15:00 Functie: Projectleider
Naam: Anneliek Scholenbeek Adres: President Kennedystraat 13, Nootdorp Telefoonnummer: 015-3642618 Emailadres: [email protected] Beschikbaarheid: Maandag t/m Vrijdag van 9:00 tot 18:00 Functie: Senior Engineer en projectsecretaris Naam: Max Copper Adres: Fluitekruid 42, Delft Telefoonnummer: 015-2383695 Emailadres: [email protected] Beschikbaarheid: Maandag t/m Vrijdag van 9:00 tot 18:00 Functie: Programmeur en Notulist
9
Naam: Frederiek de Groot Adres: Pootstraat 85, Delft Telefoonnummer: 015-9684824 Emailadres: [email protected] Beschikbaarheid: Maandag t/m Woensdag van 9:00 tot 18:00 Vrijdag van 9:00 tot 18:00 Funtie: Programmeur Naam: Arie Noot Adres: Bentelosstraat 53, Den Haag Telefoonnummer: 070-4472953 Emailadres: [email protected] Beschikbaarheid: Maandag t/m Vrijdag van 9:00 tot 18:00 Functie: Informatieanalist Team afspraken:
Werkafspraken: Op de werkplek zal een agenda aanwezig zijn, de groepsleden kunnen hier afspraken en deadlines in plaatsen. Vakantiedagen en verlof kunnen alleen in overleg met de projectleider worden aangevraagd, bijvoorkeur tenminste 2 weken van te voren, zodat hier bij planning rekening mee gehouden kan worden. Overleg: Elke Week zal op donderdag om 9:00 uur gezamenlijk worden vergaderd. Tijdens de vergadering kunnen de groepsleden over de voortgang van het project praten, en eventuele problemen naar voren brengen. De notulist houd in het kort bij wat besproken is en zet gemaakte afspraken in een verslag. Ziekte: Bij ziekte moet projectleider op de hoogte worden gesteld via telefoon of mail. Bij langdurige ziekte komt er vervanging voor de projectmedewerker.. Communicatie: De Projectleider heeft de taak om de opdrachtgever op de hoogte te stellen van de voortgang. Dit zal doormiddel van weekverslagen en tussenrapporten gebeuren. In weekverslagen zal kort worden samengevat welke activiteiten zijn verricht en de vooruitgang ten opzichte van de planning. Alle documenten dienen in een archief te worden ondergebracht. Dit gebeurt zowel digitaal als op papier. Definitieve documenten dienen als PDF opgeslagen te worden
10
8. Planning
11
9. Kosten en baten
Bij ieder project zal kosten en baten een belangrijk onderdeel vormen. Er kan worden gezien welke
investering gemaakt zal moeten worden en wat de opbrengst zal worden. In dit hoofdstuk zullen de
kosten en baten van dit project worden toegelicht.
Kosten
Ieder Projectteamlid werkt 40 uur per week tijdens de uitvoering. Het project heeft een looptijd van 6
maanden. Dit betekent in totaal 26 weken. Uitgegaan wordt van 4 weken verlof (inclusief feestdagen).
uur per werknemer of een totaal van
uur. Uitgegaan wordt van een gemiddeld uurtarief van € 70,= per uur (geen verschil in tarieven tussen de verschillende Projectteamleden). Dit is in overeenstemming met de interne begrotingsrichtlijnen van Croon. De kosten van het huren/onderhouden van de werkruimte zal €400 per week kosten, bij deze kosten zijn computers inbegrepen. Om betrouwbare informatie te verkrijgen zal toegang tot een database nodig zijn, hiervoor is eenmalig een bedrag van €1000 nodig. Bij het maken van een testcase zal benodigde software ter beschikking moeten worden gesteld, een licentie van 12 maanden zal €3000 kosten. Voor kantoorartikelen, het printkosten en andere zaken zal een bedrag van €60 per week nodig zijn. Er wordt een post onvoorzien begroot van 10%. Deze is post in opgenomen om mogelijk onverwachte uitgaven zoals kosten voor extra programmatuur , inhuur deskundigen en om extra inzet bij vertraging op te vangen.
Kosten Aantal Totaal
Mensuren/uur € 70,00 4400 € 308.000,00
Werkruimte/week € 400,00 26 € 10.400,00
Database € 1.000,00 1 € 1.000,00
Software € 3.000,00 1 € 3.000,00
Drukkosten/week € 60,00 26 € 1.560,00
Onvoorziene uitgaven 10,00% € 32.396,00
Totaal Kosten € 356.356,00
Baten
12
De opbrengsten van dit project zullen zijn in de vorm van kostenbesparing. Wanneer het project
succesvol is afgerond kan worden besloten om unit testen in te voeren en zullen de kosten van alle
projecten met PLC’s worden verlaagd. De baten zijn op het moment nog niet in te schatten.
13
10. Risico’s
Tijdens het project zullen een aantal risico’s aanwezig zijn die vertraging kunnen opleveren, we maken
onderscheid tussen interne en externe risico’s. De volgende risico’s hebben voornamelijk gevolgen op
ons project.
Intern:
- Definitieve deadline
o Een definitieve deadline kan ervoor zorgen dat een project wordt gehaast om op tijd
met een eindproduct te komen.
o Langere doorlooptijd nodig om voldoende kwaliteit te leveren.
- Onvoldoende expertise binnen het bedrijf aanwezig.
o omdat dit een nieuw onderwerp is kan het zijn dat buiten het bedrijf deskundigen
moeten worden ingehuurd. Dit brengt kosten met zich mee.
Extern:
- Onduidelijke randvoorwaarden
o Omdat het onderwerp nieuw kan het zijn dat de scope van het project breder is dan nu
in het plan van aanpak is gedefinieerd.
Er is op een risico analyse gemaakt voor het project, hieruit is gekomen dat er een risicopercentage van
18% is, dit valt in een acceptabele range. Een ingevuld spreadsheet is te vinden in bijlage 1.
14
Bijlage 1:
Categorie Risico Waarde * Factor
** Zwaarte ** Risicotot.
Tijdsfactor maak keuze
1 Geschatte looptijd van het project 3 - 6 maanden 1 4 4
2 Kent het project en definitieve deadline Ja 2 4 8
3 Is de tijd voldoende om project te realiseren Voldoende 1 4 4
Complexiteit van het project maak keuze
4
Aantal functionele deelgebieden dat betrokken is
1 0 4 0
5 Aantal functionele deelgebieden dat gebruik gaat maken van de resultaten
1 0 2 0
6
Gaat het om een aanpassing of een nieuw project
Geheel nieuw 3 5 15
7 In hoeverre zullen bestaande verantwoordelijkheden moeten wijzigen
Minimaal 1 5 5
8 Zijn er andere projecten afhankelijk van dit project
Nee 0 5 0
9 Wat zal de houding zijn van de gebruikers Geïnteresseerd 1 5 5
10 Zijn er deelprojecten, is de voortgang afhankelijk van de coordinatie hiertussen
Nee 1 3 3
De Projectteam maak keuze
11 Welke medewerkers werken aan het project mee Voorn. interne 0 4 0
12 Wat is het geografische spreiding van de projecten 1-3 1 2 2
13 Aantal projectleden dat op piektijden > 80% betrokken is 1-5 0 5 0
14 Verhouding materiedeskundigen tov projectdeskundigen Goed 0 5 0
15 Nemen gebruikers deel aan de Projectteam In sterke mate 0 3 0
De projectleiding maak keuze
16 Is de projectleiding materiedeskundig Zeer deskundig 0 3 0
17 Hoe deskundig is de projectleiding mbt de projectplanning Redelijk deskundig
2 3 6
18 Hoeveel ervaring heeft de projectleider met projecten als deze Redelijk veel ervaring
1 3 3
19 Hoe deskundig zijn de adviseurs op het te onderzoeken gebied Zeer deskundig 0 5 0
20 Hoe deskundig zijn de materiedeskundigen op het te onderzoeken gebied
Zeer deskundig 0 5 0
21 Hoe betrokken zijn de verantwoordelijke lijnmanagers bij het project Sterk betrokken 0 5 0
22 Is de kans groot dat de samenstelling van de Projectteam wijzigt tijdens het project
0 5 0
23 Worden door de Projectteam standaardmethoden gebruikt Ja, alleen maar 0 4 0
15
Vervolg risico-analyse
Categorie Risico Waarde * Factor
** Zwaarte ** Risicotot.
Duidelijkheid van het project maak keuze
24 Zijn probleem en doelstelling voldoende bekend bij alle projectleden
Ja, iedereen 0 5 0
25 Is het onderzoeksgebied nauwkeurig vastgelegd Redelijk 2 5 10
26 Is er voldoende afbakening met andere projecten Voldoende 0 4 0
27 Is er voldoende tijd gepland voor afstemming en besluitvorming Voldoende 0 4 0
28 Zijn de randvoorwaarden duidelijk De meeste wel 1 4 4
29 Werken de randvoorwaarden beperkend genoeg Redelijk 2 5 10
Totaal 79
Risicopercentage ***
18%