Plan van aanpak – Meesterproef 1: Webdevelopment Plan van aanpak – Meesterproef 1: Webdevelopment .......................................................................... 1 Inleiding ................................................................................................................................................... 2 Projectopdracht ....................................................................................................................................... 3 Doelstelling .......................................................................................................................................... 3 Projecteindresultaat ............................................................................................................................ 3 Projectdoel .......................................................................................................................................... 3 Projectactiviteiten ................................................................................................................................... 4 Tussenproducten ..................................................................................................................................... 6 Overview webapplicatie .......................................................................................................................... 7 Stickemup Modules ................................................................................................................................. 8 Gebruikers profiel module. ................................................................................................................. 8 Klanten module. .................................................................................................................................. 8 Magazijn module. ................................................................................................................................ 8 Machines module. ............................................................................................................................... 9 Orders module..................................................................................................................................... 9 Ordermodules. .................................................................................................................................... 9 Kantoor/Ordervoorbereiding .......................................................................................................... 9 Voorbereiding ................................................................................................................................ 10 Productie ....................................................................................................................................... 10 Afwerking ...................................................................................................................................... 10 Expeditie ........................................................................................................................................ 10 Offerte module. ................................................................................................................................. 10 Planning ................................................................................................................................................. 11 Conclusie ............................................................................................................................................... 12
Inleiding Deze periode gaan wij een website maken voor het concept Urenregistratiesysteem Stickemup. De webapplicatie Stickemup wordt een content managementsysteem waarmee de medewerkers van Stickemup kunnen werken.
Stickemup is een drukkerij. Een vellen offsetdrukkerij. Het bedrijf verwerkt het drukwerk in blokjes met zelfklevende reclame / notitiestickers. Jancovich, de directeur wil alles zoveel mogelijk informatiseren. Hij en de directie willen hun handmatige orderzakken systeem geautomatiseerd hebben. Binnen het vellen offsetprocedé volgen alle orders dezelfde weg en maken in meer of mindere mate gebruik van arbeidskracht en of machine en materialen. Ik ga een content managementsysteem ontwikkelen voor Stickemup om de voorcalculatie van het werkproces bij Stickemup te verbeteren. Om dit project tot een goed einde te brengen zal ik verschillende fases doorlopen. Deze fases zal u dan beoordelen met een GO of een NO-GO. Bij een GO, dus een goede keuring, zal ik verder gaan met de volgende tussen producten. Bij een NO-GO zullen we in overleg nieuwe afspraken maken over het verdere verloop van het ontwikkelen van de applicatie.
De verschillende fases die doorlopen zullen worden zijn
Oriëntatiefase & PVA Het oriënteren naar mogelijke oplossingen om de vraag naar een geheel geïnformatiseerd uren, machine en materialen registratiesysteem. Ontwerpfase Het ontwerpen van een interface (Het grafische gedeelte wat de gebruiker te zien krijgt bij het gebruiken van de applicatie.) en een logo dat samen de huisstijl van de webapplicatie gaan vertegenwoordigen. Daarna het ontwikkelen van het technisch ontwerp. Dit om de technische aspecten en functies zo duidelijk mogelijk op een rij te hebben staan. Realisatiefase In deze fase worden de aspecten uit het functioneel/technische ontwerp volledig tot applicatie omgezet naar een werkende webapplicatie. Testfase Na het realiseren van het systeem zal er uitvoerig getest worden om mogelijk voorkomende fouten te corrigeren. Acceptatiefase Na het afronden van de webapplicatie zal deze volledig werkend aan u worden opgeleverd.
Projectopdracht Doelstelling De webapplicatie Stickemup biedt serviceverlening voor de medewerkers van Stickemup. De kern van deze applicatie zal bestaan uit een registratiesysteem op het gebeid van de order verwerking. In dit registratiesysteem zal onder andere een registratie module zitten voor het vestleggen van de werkuren, materiaal en machine gebruik. Daarnaast zal het mogelijk zijn om de totale kosten te verrekenen. Dit bedrag wordt uitgerekend aan de hand van de materiaal, machine, (expeditie)voertuigen en werkuren die de werknemers van Stickemup maken. Uit eindelijk zal het systeem een ondersteuning zijn op het gebeid van een nacalculatie om de voorcalculatie van het werkproces van uw bedrijf te verbeteren. Het CMS zal worden beheerd door personen zonder enige specifieke technische kennis. Daarom is het vooral belangrijk dat de interface er zo gebruiksvriendelijk uit komt te zien.
Projecteindresultaat Zoals gezegd in de inleiding ga ik een systeem maken die de mensen van Stickemup helpt beter voor te calculeren en zo de efficiëntie van het bedrijf op te voeren. Het projecteindresultaat is dan ook een werkende webapplicatie die online komt te staan die evenals toegankelijk is voor medewerkers als voor de opdrachtgevers van nieuwe bestellingen. In deze applicatie komen allerlei verschillende modules die voor de medewerkers interessant kunnen zijn bij het streven naar een efficiënter en economischer functionerend bedrijf. Enkele voorbeelden zijn; een database met alle goederen en materialen van het magazijn van Stickemup waardoor er een duidelijk overzicht is van wat aanwezig is en wat mogelijk besteld moet worden. Een module waar je aan de hand van het registreren van uren, materiaal en machine gebruik kunt bekijken hoe goed de planning en voorcalculaties zijn. Dit zijn maar enkele voorbeelden van de verschillende functionaliteiten die de applicatie zal krijgen. In het hoofdstuk deelprojecten een complete lijst met modules.
Projectdoel Aan het eind van periode 3 (23 – 31 maart) zal er een webapplicatie online staan, met een werkend content managementsysteem, met daarin alle specificaties die zijn opgegeven door de klant van Stickemup; Jancovich aka Wim van Heur
Projectactiviteiten Om van te voren precies te weten waar u aan toe bent en wat ik nu precies aan het doen ben, wordt er hier beschreven wat de verschillende projectactiviteiten zijn. Dit zodat er een houvast komt en hopelijk geen verwarring voorkomt tijdens het realiseren van het eindproduct.
Oriënteren en bestuderen De oriëntatiefase. Jezelf de vraag stellen: “Wat is er nodig?” Rondkijken op het internet en kijken of er soortgelijke applicaties bestaan. Zo ja, welke informatie vragen ze van de gebruiker, en welke functionaliteit bieden ze de gebruiker? Dit is zorgvuldig gedaan, oriënteren op het gebeid van de barcodes en natuurlijk de functionaliteiten van andere web applicaties. Dit hebben wij samen met onder andere elkaar, Jan van den Biggelaar en Wim va Heur gedaan. Dan wordt het oriënteren naar welke functionaliteit en gegevens er gebruikt gaan worden voor de applicatie. Welke technieken/methodes en tools zijn ervoor nodig om dit te realiseren? Dit is behandeld in het oriëntatie verslag. Ontwerpen interface De ontwerpfase. Hier ga ik nadenken over de interface van de applicatie met in het achterhoofd dat het zo gebruiksvriendelijk mogelijk moet zijn. In deze fase ga ik een interface te ontwerpen in Illustrator met daarbij een logo van Stickemup. Daarna ga ik kijken wat het beste overkomt met betrekking tot gebruiksvriendelijkheid, functionaliteit, kleurgebruik, etc. Functioneel/technisch ontwerp Dit hoort nog steeds bij de ontwerp fase. Hier stel ik een functioneel/technisch ontwerp op, daar komt het volgende in;
Normalisatie ERD Flow-chart Use cases Use case diagram PSD’s
Over deze termen zal ik u nader in het werkproces informatie over verschaffen zodat ook voor u totaal duidelijk is waar deze uitwerking voor gelden wat ze uiteindelijk opleveren.
Ontwerp interface omzetten in XHTML/CSS Nu begint officieel de realisatiefase. Ik begin met de interface. De lay-out wordt vanuit photoshop/illustrator omgezet naar XHTML/CSS. Dit betekent dus alle formulieren maken, zodat het gereed is om PHP achter te bouwen. Het is belangrijk dat dit wordt gedaan voordat er ook maar één regel programmeertaal wordt geschreven. Dit om het voorkomen van fouten, dubbelwerk en andere grotere problemen zo gering mogelijk te houden. Uitwerken functioneel/technisch ontwerp Dit houdt in de kern van de webapplicatie op te zetten. Hier zet ik de use-cases of, voor sommige complexere modules, de PSD’s om in de programmeertaal PHP. Dit is de kern van de realisatiefase en zal daarom ook de meeste tijd gaan innemen. Implementeren modules Dit is nog steeds een deel van de realisatiefase. Alle gemaakte modules worden nu bij elkaar gevoegd tot een applicatie. Deze zal on-line worden gezet en vervolgens uitvoerig getest worden. Test cases schrijven Ook al test ik vaak de website terwijl ik bezig ben met ontwikkelen, het is hoe dan ook noodzakelijk een test-case op te stellen. Dit zodat meerdere mensen de applicatie kunnen testen, en hoe meer mensen testen, hoe groter de kans is dat er fouten uitgehaald worden. Testen website m.b.v. test cases Een paar testers zullen dan de test cases te volgen en de webapplicatie testen. Er is ruimte om eventuele foutmelding te noteren, met daarbij de omschrijving en waar het probleem zich voor deed. Eventueel website aanpassen Mochten er foutmeldingen naar boven zijn gekomen bij het testen van de webapplicatie, dan is het zaak deze zo snel mogelijk op te sporen en aan te passen. Wanneer de fouten er zijn uitgehaald wordt er opnieuw getest op gebreken of fouten. Opleveren eindproduct Acceptatiefase. De website met CMS systeem is gebouwd en uitvoerig getest. Er zijn geen fouten meer gevonden. Is dit het geval, dan is het zaak alle inlog gegevens, adressen etc. te verwerken in het eindverslag en het systeem volledig werkend op te leveren.
Tussenproducten In de aanloop naar het eindproduct worden er een aantal tussenproducten gemaakt. Al de tussenproducten die gemaakt worden in dit project zet ik hieronder voor de volledigheid nog een keer op een rij. 1. Oriëntatie verslag / Plan van aanpak 2.
3.
4.
5.
6.
Grafisch ontwerp 2.1. Ontwerp interface 2.2. Ontwikkelen logo Functioneel / technisch ontwerp 3.1. Normalisatie 3.2. ERD 3.3. Flow‐chart 3.4. Use cases 3.5. Use case diagram 3.6. PSD’s Realisatie 4.1. Gebruikers profiel module 4.2. Klanten module 4.3. Magazijn module 4.4. Machines module 4.5. Orders module 4.6. Ordermodules 4.7. Order status 4.8. Ordervoorbereiding (Registratie van uren, machine en materialen gebruik) 4.9. Voorbereiding (Registratie van uren, machine en materialen gebruik) 4.10. Productie (Registratie van uren, machine en materialen gebruik) 4.11. Afwerking (Registratie van uren, machine en materialen gebruik) 4.12. Expeditie (Registratie van uren, machine en materialen gebruik) 4.13. Expeditie kosten verrekenen 4.14. Offerte module Test cases 5.1. Unittest 5.2. Integratietest 5.3. Systeemtest 5.4. Gebruikerstest Eindverslag 6.1. URL adres 6.2. Inlog gegevens 6.3. Broncode 6.4. Gemaakte documentatie (PVA, etc.)
Overview webapplicatie Tijdens de vergadering hebben wij ons georiënteerd met de vraag naar een systeem dat de het bedrijf van Jancovich zoveel mogelijk informatiseert. Hij en de directie willen hun handmatige orderzakken systeem geautomatiseerd hebben. Samen met Wim van Heur hebben we nogmaals enkele gelijksoortige systemen bekeken en specs opgesteld die ons systeem moet inhouden. Hieronder een duidelijke omschrijving van de functies van het systeem Stickemup in het hoofdstuk Stickemup modules. Stickemup zal een vijftal rechten niveaus bevatten in het systeem. Gast Een gast bent u als u zonder reden of rechten de website van Stickemup bezoekt. Hier kunt u mogelijk contact maken met Stickemup of nieuws vinden van Stickemup. Admin De admin kan zoals vanzelf sprekend alles in het systeem zien, bewerken, aanpassen en mogelijk verwijderen in de meeste gevallen is de Admin de eigenaar van het bedrijf dat de opdracht geeft gegeven voor het ontwikkelen of de applicatie. Managers/Projectleiders De managers/projectleiders van Stickemup kunnen met meer rechten bijvoorbeeld nieuwe klanten aanmaken en orders toevoegen. Ze hebben bijna de zelfde rechten als de Admin alleen zijn zij niet gemachtigd om veranderingen in het systeem aan te brengen waar zij niet of nauwelijks iets mee te maken hebben. Medewerkers De medewerkers van Stickemup kunnen hun uren, machine en materialen gebruik registreren. Klanten De klanten van Stickemup kunnen hun orderstatus online direct volgen.
Stickemup Modules
Gebruikers profiel module. De gebruikers profiel module is er voor uw werknemers. Hier staan hun persoonlijk gegevens opgeslagen. Deze kunnen ze hier natuurlijk zelf bewerken. Daarnaast is het mogelijk voor de klant om zijn/haar order online te volgen (order status). De login gegevens voor de klant zullen gemaild worden naar de klant waardoor deze zijn of haar order online stap voor stap kan volgen. Onder deze module vallen de volgende functies: Profiel beheer (Alle rechten niveaus). o Profiel overzicht. o Profiel wijzigen. Gebruikers beheer (Admin). o Gebruikers overzicht. o Gebruikers toevoegen. o Gebruikers wijzigen. o Gebruikers verwijderen.
Klanten module. De klanten module is er voor administratoren en de managers/projectleiders. Hier kunnen de werknemers van Stickemup klanten aanmaken en beheren. Onder deze module vallen de volgende functies: Klanten beheer (Admin & managers/projectleiders). o Klanten overzicht. o Klanten toevoegen. o Klanten wijzigen.
Magazijn module. De magazijn module is er voor administratoren en de managers/projectleiders. Hier is het mogelijk om de goederen die heb bedrijf momenteel bezit in het magazijn te beheren. Onder deze module vallen de volgende functies: Magazijn beheer (Admin & managers/projectleiders). o Magazijn overzicht. o Producten toevoegen. o Producten wijzigen. o Producten verwijderen.
Machines module. De machines module is er voor administratoren en de managers/projectleiders. Dit is de beheer sectie van het systeem en maakt het mogelijk aanpassingen en wijzigen te verrichten. Onder deze module vallen de volgende functies: Machine beheer (Admin & managers/projectleiders). o Machine overzicht. o Machine toevoegen. o Machine wijzigen. o Machine verwijderen.
Orders module. De Order module is er voor administratoren en de managers/projectleiders. Hier kunnen de administratoren en de managers/projectleiders van Stickemup orders aanmaken en beheren. Deze module is eigenlijk niet van toepassing maar omdat er anders geen test data is zal er toch iets moeten komen om orders aan te maken. Onder deze module vallen de volgende functies: Order beheer (Admin & managers/projectleiders). o Order overzicht. o Order toevoegen. o Order wijzigen.
Ordermodules. De Order modules is er voor Medewerkers, administratoren en de managers/projectleiders. Hier wordt het proces van de order precies bijgehouden door de werknemers. Dit gebeurd stap voor stap. De werknemers registreren wat zei doen, hoe lang en met welke machines en materialen.
Kantoor/Ordervoorbereiding Hier registreren de werknemers van het kantoor hun uren die ze kwijt zijn aan het maken van een planning en een bijbehorende voorcalculatie. Daarnaast is het mogelijk om de status van de order aan te passen. Onder deze module vallen de volgende functies:
Ordervoorbereiding(Medewerkers, Admin & managers/projectleiders). o Urenregistratie. o Planning* (Deze planning kan mogelijk later in de realisatie fase nog gedigitaliseerd en geïmplementeerd worden in het systeem). o Voorcalculatie* (Deze voorcalculatie kan mogelijk later in de realisatie fase nog gedigitaliseerd en geïmplementeerd worden in het systeem).
o Orderstatus.
Voorbereiding Hier registreren de werknemers van de voorbereiding hun uren die ze maken tijdens het voorbereiden van de order. Daarnaast is het mogelijk om de status van de order aan te passen. Onder deze module vallen de volgende functies:
Voorbereiding(Medewerkers, Admin & managers/projectleiders). o Registratie van uren, machine en materialen gebruik. o Orderstatus. Productie Hier registreren de werknemers van de productie afdeling hun uren die ze maken tijdens het verwerken van de order. Daarnaast is het mogelijk om de status van de order aan te passen. Onder deze module vallen de volgende functies:
Productie(Medewerkers, Admin & managers/projectleiders). o Registratie van uren, machine en materialen gebruik. o Orderstatus.
Afwerking Hier registreren de werknemers van de afwerking afdeling hun uren die ze maken tijdens het afwerken van de order. Daarnaast is het mogelijk om de status van de order aan te passen. Onder deze module vallen de volgende functies:
Afwerking(Medewerkers, Admin & managers/projectleiders). o Registratie van uren, machine en materialen gebruik. o Orderstatus.
Expeditie Hier registreren de werknemers van de expeditie afdeling hun uren die ze maken tijdens het afwerken van de order. Ze rekenen de expeditie en transport kosten uit en kunnen daarnaast de status van de order aanpassen. Onder deze module vallen de volgende functies:
Expeditie(Medewerkers, Admin & managers/projectleiders). o Registratie van uren, machine en materialen gebruik. o Expeditie kosten verrekenen* (*Deze expeditie module kan mogelijk later in de realisatie fase nog worden uitgebreid).
o Orderstatus.
Offerte module. Hier is het mogelijk om de offerte te overzien. De offerte module is er voor administratoren en de managers/projectleiders. Onder deze module vallen de volgende functies: Offerte beheer (Admin & managers/projectleiders & Klanten*). o Offerte overzicht* (*Deze offerte module kan mogelijk later in de realisatie fase nog worden uitgebreid). *Klanten zullen natuurlijk enkel hun eigen offertes kunnen opvragen in het systeem.
Planning Zie (bijlage) document (file) planning_mp1.mpp Deze heb ik bijgeleverd in de mail
Conclusie Zoals u heeft kunnen lezen is zal er veel functionaliteit in de webapplicatie Stickemup zitten. Hoe meer functionaliteit des te meer oriëntatie en planning eraan vooraf gaat wil het project tot een goed einde komen.
In dit verslag heeft u onder andere kunnen zien wat het projecteindresultaat wordt, met de bijbehorende projectdelen en de strokenplanning.
Gr. Paul van der Linden