Eindrapport Nahnisim Sim Jacobs Han Mermans Niels Mangelschots Niels Maes. 3 e Jaar Toegepaste Informatica Thomas More Geel

Maat: px
Weergave met pagina beginnen:

Download "Eindrapport Nahnisim 2013-2014. Sim Jacobs Han Mermans Niels Mangelschots Niels Maes. 3 e Jaar Toegepaste Informatica Thomas More Geel"

Transcriptie

1 Eindrapport Nahnisim Sim Jacobs Han Mermans Niels Mangelschots Niels Maes 3 e Jaar Toegepaste Informatica Thomas More Geel

2 2 VOORWOORD Deze analyse is gemaakt in het kader van het vak Businessproject en businesscommunicatie in de opleiding Toegepaste Informatica aan de Thomas More Hogeschool Kempen te Geel. Het is opgesteld in een samenwerking tussen Sim Jacobs, Niels Maes, Niels Mangelschots en Han Mermans. Wij willen enkele mensen bedanken voor hun hulp bij het tot stand brengen van dit document. Allereerst bedanken we de jeugddienst van de stad Turnhout, vooral Loes omdat zij ons van alle nodige informatie voorzag. Ook bedanken we bij deze onze coaches Els Peetermans en Dirk De Peuter voor hun steun bij het schrijven van de inhoud.

3 3 MANAGEMENTSAMENVATTING Dit document bevat een uitgebreide analyse die steun biedt bij de creatie van een webapplicatie die het beheer van de jeugddienst van de stad Turnhout zal vergemakkelijken. De beschrijving van de functionele eisen bevat een opsomming van alle eisen waaran de applicatie zal moeten doen. Deze eisen zullen ook een prioriteit meekrijgen dankzij het toepassen van de MoSCoWmethode. Zo worden de eisen van zowel de webapplicatie als de website beschreven, maar ook de integratie met de sociale netwerksite Facebook. Vervolgens vindt u een volledig uitgewerkt datamodel dat weergeeft hoe de data van de leden zal worden bijgehouden. Een datamodel stelt de tabellen in de database en hun relaties visueel voor. De relaties zullen ook worden beschreven en tenslotte wordt ook visueel weergegeven wat personen met verschillende bevoegdheden zullen kunnen doen met het systeem in het Use Case Diagram. Aangezien de jeugddienst van Turnhout momenteel Excel-bestanden gebruikt bij het organiseren van hun werking is er ook onderzoek gedaan naar het importeren van Excel-gegevens. Hoe dit wordt mogelijk gemaakt wordt verder beschreven in dit document. Beveiliging van de gevoelige gegevens in de database stond bovenaan het prioriteitenlijstje. Daarom wordt ook beschreven hoe hier de nodige aandacht aan wordt geschonken. Omdat Facebook zo gigantisch populair is bij jongeren kan enige vorm van integratie in deze webapplicatie niet ontbreken. Daarom is er ook uitgebreid onderzocht welke van de vele nuttige features die Facebook aanbiedt op deze webapplicatie van toepassing zouden kunnen zijn. Om te kiezen uit de vele verschillende programmeertalen en databasemanagementsystemen is een Weighted Ranking Methode toegepast. Deze vorm van vergelijken geeft de gekozen criteria elk een wegingsfactor waarmee de score die aan de mogelijke keuze wordt gegeven vermenigvuldigd wordt. Zo krijg je een zo objectief mogelijke vergelijking.

4 4 INHOUDSTAFEL VOORWOORD... 2 MANAGEMENTSAMENVATTING... 3 INHOUDSTAFEL... 4 INLEIDING FUNCTIONELE EISEN Beschrijving functionele eisen Applicatie Ledenlijst beheren Activiteiten beheren Gesprekken beheren Statistieken genereren Mailsysteem Inleiding osticket Beschrijving Installatie en implementatie Prijs Conclusie Website Registratie Activiteitenkalender Integratie Facebook MoSCoW DATAMODEL Relationeel schema Attributenlijst Relatiebeschrijvingen Use Case Diagram INVOEGEN EXCEL-GEGEVENS IN DATABASE Wat is een CSV bestand? Voorbeeld CSV bestand Voordelen ENCRYPTIE Methode: Salt Voorbeeld Waarom encrypten van data? Risico s ANALYSE FACEBOOK Sociale plug-ins Like Button Send Button Comments Facebook API s Open Graph API Social Graph Voorbeeld Conclusie ANALYSE PROGRAMMEERTALEN Aanbod van verschillende talen PHP... 22

5 Voordelen Nadelen ASP.NET Voordelen Nadelen Ruby Voordelen Nadelen Python Voordelen Nadelen Java Voordelen Nadelen Een keuze maken Kostprijs Weighted Ranking Method Weighted Ranking Method - Verklaring Conclusie ANALYSE DATABASEMANAGEMENTSYSTEMEN Aanbod van verschillende databasemanagementsystemen Microsoft Access Voordelen Nadelen MySQL Voordelen Nadelen Microsoft SQL Server Voordelen Nadelen Oracle Database Voordelen Nadelen SQLite Voordelen Nadelen Een keuze maken Weighted Ranking Method - Verklaring Conclusie SUB TOOLS STATISTIEKEN GENEREREN Google Charts Voordelen Nadelen Voorbeelden Chart.js Voordelen Nadelen Voorbeelden WRM Resultaat Verklaring Conclusie Bootstrap Voordelen Voorbeelden REEDS BESCHIKBARE PAKKETTEN Wat is SQL injectie, sessionhacking en XSS-scripting? Framework CodeIgniter Voordelen... 38

6 Nadelen Symfony Voordelen Nadelen Conclusie Content managementsystemen Joomla Voordelen Nadelen Conclusie Drupal Voordelen Nadelen Conclusie Apex Voordelen Nadelen Conclusie WRM BESLUIT LITERATUURLIJST... 43

7 7 INLEIDING De jeugddienst van Turnhout is een vereniging die zich inzet voor de jongeren in Turnhout. Ze organiseren wekelijks spelletjes, gaan met de kinderen op reis en zijn een contactpunt voor de jongeren. Bij het organiseren van activiteiten, reizen en het bijhouden van jongeren komen natuurlijk een heleboel administratieve zaken bij kijken. Deze worden momenteel bijgehouden in een Excel-document. Dit document omvat allerlei informatie van de kinderen en activiteiten. Na verloop van tijd wordt zo n bestand te groot en dus te omslachtig om mee te werken. Het was overduidelijk dat de jeugddienst nood had aan een nieuw systeem dat beter omgaat met informatie. Een systeem dat alle informatie in verband met kinderen en activiteiten bijhoudt, zorgt voor een betere communicatie met de jeugd, in een grafische vorm alle bijgehouden informatie kan tonen en nog veel meer. Daarom werd de hulp van de studenten van 3Ti ingeroepen. Het is onze opdracht om een project te analyseren dat eventueel uitgewerkt kan worden tot een webapplicatie die de jeugddienst kan gebruiken. De teksten en diagrammen over deze analyse staan volledig uitgewerkt in dit document. Het is via dit document dat we onze visie willen tonen aan de jeugddienst van Turnhout. We bespreken de verschillende aandachtspunten die de dienst ons heeft opgedragen. Elk aandachtspunt is geanalyseerd en verwerkt. Hierdoor ontstaat er een document waarin alle tools staan beschreven die nodig zijn voor de uitwerking van de applicatie. We beginnen met het bespreken van de functionele eisen die de jeugddienst heeft opgesteld. Op basis van deze eisen creëren we een MoSCoW-overzicht dat duidelijk maakt welke eisen voorrang krijgen en welke eventueel kunnen afvallen in geval van tijdsnood. Het datamodel dat van toepassing is wordt ook volledig besproken en gevolgd door het use case diagram. Deze geeft een beeld van wat de gebruikers allemaal moeten kunnen met het systeem. Hierna begint de eigenlijke analyse van mogelijke oplossingen voor het systeem. We bespreken onder meer de integratie van de bestaande Excel-documenten in het nieuwe project, hoe we de veiligheid kunnen garanderen doormiddel van encryptie en hoe de integratie van verschillende Facebook plug-ins en API s van toepassing zijn voor de applicatie. In het geval van het ontwikkelen van een nieuw systeem bekijken we ook de keuze van programmeertalen en welke hiervan de meest voordelige is. We doen ook een onderzoek naar eventuele bestaande pakketten die handig kunnen zijn voor het project. We bekijken hierbij onder andere de beschikbare CMS-systemen die op het internet te vinden zijn.

8 8 1 FUNCTIONELE EISEN 1.1 Beschrijving functionele eisen Applicatie o Ledenlijst beheren (toevoegen, bekijken, aanpassen, verwijderen) o Activiteiten beheren (toevoegen, bekijken, aanpassen, verwijderen) o Gesprekken beheren (toevoegen, bekijken, aanpassen, verwijderen) o Statistieken genereren o Mailsysteem Website o Registratie voor leden o Activiteitenkalender 1.2 Applicatie Ledenlijst beheren Om een goed overzicht te bewaren van de leden zal de jeugddienst jongeren kunnen toevoegen aan hun ledenlijst. De detailgegevens van de leden zullen kunnen bekeken en aangepast worden. Er zal ook een profielfoto kunnen worden toegevoegd. Deze profielfoto kan ook worden aangepast. Wanneer er een lid verhuist zal hij/zij verwijderd kunnen worden uit de lijst. Van elk lid wordt ook bijgehouden wie de ouders zijn, en wie zijn broers of zussen zijn. Kinderen kunnen worden gesorteerd en gezocht op basis van verschillende criteria. Bij overschrijding van een bepaalde leeftijd zal een lid niet meer onder de vleugels van de jeugddienst vallen en bijgevolg een andere status krijgen of verwijderd worden uit de lijst Activiteiten beheren Van de georganiseerde activiteiten zullen ook een aantal gegevens kunnen worden bijgehouden. Zo zijn er de naam, datum en plaats van de activiteit, maar ook een lijst van benodigdheden voor de organisatie en een lijst van aanwezigen. Er zullen activiteiten kunnen worden bekeken, aangepast, toegevoegd en verwijderd worden Gesprekken beheren Indien nodig voeren de medewerkers van de jeugddienst gesprekken met leden die het nodig hebben. Van deze gesprekken wordt ook informatie bijgehouden Statistieken genereren Om het stadsbestuur te overtuigen van het nut van hun werking wenst de jeugddienst statistieken te kunnen voorleggen. Deze statistieken kunnen worden gegenereerd uit de database. 1.3 Mailsysteem Inleiding Om vlot te werken zou het handig zijn als het mailverkeer ook in de web applicatie wordt verwerkt. Het is mogelijk een lijstje van inkomende mails weer te geven en aan de hand van enkele clicks de binnenkomende post door te geven aan de bevoegde medewerkers. Deze mensen kunnen dan de vraag beantwoorden of de informatie verwerken binnen dezelfde applicatie.

9 osticket Beschrijving osticket is een plugin die het mogelijk maakt om een mailsysteem in je applicatie te implementeren indien er gebruik wordt gemaakt van PHP en MySQL. Uit de afweging van de te gebruiken programmeertalen blijkt dat een implementatie van osticket zeker mogelijk is binnen de webapplicatie Installatie en implementatie De installatie wordt via een stappenplan uitgelegd op de website Na de installatie zal osticket moeten geconfigureerd worden. Ook hiervoor is een handleiding te vinden op de website. Om mails te versturen zal je altijd een adres nodig hebben. osticket kan geconfigureerd worden met een Gmailadres Prijs osticket biedt verschillende paketten aan. Gratis: o Zelf hosten o Ondersteund door de gebruikersgemeenschap Basis: o 2 MB Attachments o Ondersteuning via telefoon en Standaard: o 4 MB Attachments o Ondersteuning via telefoon en Premium: o 8 MB Attachments o Ondersteuning via telefoon en o Vebeterde beveiliging Conclusie Indien er gekozen wordt om een applicatie in PHP te maken en MySQL te gebruiken voor de database kan osticket gebruikt worden. Het belangrijkste voordeel hiervan is dat er rechtstreeks vanuit de applicatie zal kunnen gecommuniceerd worden. De informatie die gebruikt wordt zal binnen de applicatie kunnen blijven. De omslachtigheid van de installatie en implementatie kan mogelijk als nadeel gezien worden. Maar een installatie vindt natuurlijk maar één keer plaats. 1.4 Website Registratie Potentiële gebruikers zullen zich ook zelf kunnen registreren, om zoveel mogelijk mensen te bereiken Activiteitenkalender Alle gebruikers zullen een activiteitenkalender kunnen bekijken die gevuld wordt vanuit de database.

10 Integratie Facebook Om voor een goede communicatie te zorgen tussen de jeugddienst en de jongeren kijken we naar de integratie van Facebook. Het zou via Facebook mogelijk zijn om de website meer bekend te maken onder de jeugd door gebruik te maken van Like- en Deelknoppen en reacties. 1.6 MoSCoW Functionele eis Applicatie Ledenlijst beheren (toevoegen, bekijken, aanpassen, verwijderen) Activiteiten beheren (toevoegen, bekijken, aanpassen, verwijderen) Gesprekken beheren (toevoegen, bekijken, aanpassen, verwijderen) Statistieken genereren Mailsysteem Website Registratie voor leden Activiteitenkalender Facebook MoSCoW toekenning Must have Must have Should have Must have Could have Must have Could have Should have

11 11 2 DATAMODEL 2.1 Relationeel schema

12 Attributenlijst Reclame id Naam Autonummering String ReclamePerActiviteit id ActiviteitId reclameid Autonummering Activiteit id soortactiviteitid rapportid datum beginuur einduur omschrijving uitleg prijsperpersoon geldactiviteit inschrijvenopvoorhand Autonummering Date Date Date Double Double Boolean SoortActiviteit id omschrijving Autonummering ActiviteitPerGroep id activiteitid groepid Autonummering Groep id naam Autonummering ActiviteitPerBuurt id activiteitid buurtid Autonummering Buurt id gemeenteid naam Autonummering Aanwezigheid id activiteitid jongerenid gespot Autonummering Boolean PersoneelPerActiviteit id personeelid Autonummering

13 13 activiteitid Personeel id gemeenteid naam voornaam adres GSM functie Autonummering Familie id jongereid broerofzusid Autonummering Jongere id groepid buurtid jongereid gemeenteid heeftfamilie naam voornaam adres telefoon GSM Geboortedatum datumregistratie facebook geslacht foto Autonummering Boolean Date Date Char Blob JongerePerRapport id jongereid rapportid Autonummering Rapport id opmerking titel datum laatstewijziging Autonummering Date Date PersoneelPerRapport id rapportid personeelid Autonummering Opvolging id jongereid titel Autonummering

14 14 omschrijving opgelost id naam postcode id jongereid voogdid id buurtid naam voornaam functie contactnummer notities Gemeente Boolean JongerePerVoogd Voogd Autonummering Autonummering Autonummering 2.3 Relatiebeschrijvingen 1. Reclame Activiteit a. Een soort reclame kan voor meerdere activiteiten gebruikt worden en een activiteit kan meerdere soorten reclame hebben. 2. Activiteit SoortActiviteit a. Een activiteit is van een bepaalde soort en een soortactiviteit hoort bij meerdere activiteiten. 3. Activiteit Groep a. Een activiteit kan voor meerdere groepen worden georganiseerd en voor een groep kunnen meerdere activiteiten gemaakt worden. 4. Activiteit Buurt a. Een activiteit kaan doorgaan in meerdere buurten en in een buurt kunnen meerdere activiteiten georganiseerd worden. 5. Activiteit Personeel a. Een activiteit kan georganiseerd worden door meerdere personeelsleden en een personeelslid kan bij meerdere activiteiten helpen. 6. Activiteit Jongere a. Bij een activiteit kunnen meerdere jongere aanwezig zijn en een jongere kan bij meerdere activiteiten aanwezig zijn. 7. Activiteit Rapport a. Een activiteit heeft 1 rapport en een rapport gaat over 1 activiteit. 8. Jongere Groep a. Een jongere kan maar in 1 groep zitten en in 1 groep kunnen meerdere jongeren zitten. 9. Jongere Familie a. Een jongere kan 0 of meerdere broers of zussen hebben (familie) en een familie heeft sowieso 1 jongere. 10. Jongere Opvolging a. Een jongere heeft 1 of meerdere opvolgingen en een opvolging hoort bij 1 jongere. 11. Jongere Voogd a. Een jongere kan meerdere voogden hebben en een voogd kan meerdere jongere hebben.

15 12. Jongere Rapport a. Een jongere kan op meerdere rapporten staan en een rapport kan meerdere jongere hebben. 13. Jongere Gemeente a. Een jongere woont in 1 gemeente en in een gemeente kunnen meerdere jongeren wonen. 14. Jongere Buurt a. Een jongere woont in 1 buurt en in een buurt kunnen meerdere jongeren wonen. 15. Personeel Rapport a. Een personeelslid kan op meerdere rapporten staan en een rapport kan meerdere personeelsleden hebben. 16. Personeel Gemeente a. Een personeelslid woont in 1 gemeente en in een gemeente kunnen meerdere personeelsleden wonen. 17. Buurt Gemeente a. Een buurt hoort bij 1 gemeente en in een gemeente zijn er meerdere buurten. 18. Voogd Buurt a. Een voogd woont in 1 buurt en een in een buurt kunnen meerdere voogden wonen. 15

16 2.4 Use Case Diagram 16

17 17 3 INVOEGEN EXCEL-GEGEVENS IN DATABASE Het invoegen van bestaande Excel-gegevens is noodzakelijk en word mogelijk gemaakt met behulp van een MySQL databank. Sla het Excel-bestand op als een CSV-bestand en maak gebruik van de phymyadmin importeer functie. 3.1 Wat is een CSV bestand? Een CSV-bestand is een specificatie voor tabelbestanden. De informatie word gescheiden door komma s, daarom noemen mensen het ook wel eens een kommagescheiden bestand. Het bestand bestaat alleen uit tekst die wordt gescheiden door komma s en enters. Met behulp van het programma Excel kan je dus sheets exporteren naar CSV-formaat. 3.2 Voorbeeld CSV bestand voornaam,naam,adres,geslacht Verheyen,Mieke, Markt 15,m Mertens,Toon, Molenstraat 18,m 3.3 Voordelen Aangezien er in het verleden veel is gewerkt met Microsoft Excel is de functie een groot voordeel. Elk aparte Excel-bestand dat al bestaat kan gemakkelijk in de databank worden geïmporteerd.

18 18 4 ENCRYPTIE Om de veiligheid van data te optimaliseren stellen wij voor om wachtwoorden en gevoelige gegevens zoals naam, adres en aanwezigheid te encrypteren volgens een veilige methode. Een gewoon MD5, SHA1, NTLM algoritme gaat het een aanvaller niet moeilijk maken om deze data te decrypteren. Daarom gebruiken we beter een methode die het de aanvaller moeilijker maakt om data buit te maken. De beste methode om data te beschermen is door de webapplcatie alleen in een privaat netwerk beschikbaar te maken. 4.1 Methode: Salt Genereer een random string van 3 karakters of meer en plak deze voor het wachtwoord. Nu heb je een wachtwoord met drie random tekens vooraan. Bedenk een vaste variabele van minimum 7 karakters of meer die je niet zult opslaan in de database maar enkel in de broncode van je applicatie. Plak deze nogmaals vooraan het wachtwoord met de drie random tekens. Deze vaste variabele kan je bekijken als de decryption key dus bewaar deze op een veilige plek Voorbeeld Random salt Static salt Wachtwoord String mmj 24#NS@!mKQH ikbenloes mmj24qns@mkqhikbenloes Hashed values ikbenloes b83efb74c ff0cffbac9f mmj24qns@mkqhikbenloes 9afafccafceb781c1131d77daaa617ec Met deze methode voorkomen we voor een groot deel dat de aanvaller de uiteindelijke decryption key in handen kan krijgen. Als de aanvaller ontdekt dat de eerste drie karakters niet van toepassing zijn is er wel een probleem. We kunnen de lengte van elke random salt string verschillend maken maar dan moeten we dit opvangen in de applicatie omdat het dan meermaals moet decrypteren en wachten op een positief resultaat. Het decrypteert dan een eerste keer met -3 karakters vooraan, als deze actie faalt probeert het te decrypteren met -4 en zo verder tot er een positief resultaat is. Bewaar nooit een salt string in de databank! Dit maakt het aanvallers makkelijk Waarom encrypten van data? Aanvallers kunnen de databank rechtstreeks binnendringen door middel van de meest gebruikte methode namelijk sql-inject scripts. Door authenticatie te omzeilen in de sql-query worden gegevens buitgemaakt zonder enige tussenkomst van de webapplicatie zelf. Je bent nooit 100% beschermd tegen exploits maar je moet het de aanvallers het wel zo moeilijk mogelijk maken. Mochten ze de databank kunnen lezen waarin alle gevoelige data is geëncrypteerd dan kunnen ze het niet lezen zonder de decryption key. 4.2 Risico s - Root access op de webserver o Oplossing: aparte encrpyie/decryptie server

19 19 5 ANALYSE FACEBOOK Facebook is zonder twijfel de bekendste en meest gebruikte social website die momenteel bestaat. Het is dus niet verwonderlijk dat de jeugddienst van Turnhout Facebook wil gebruiken als onder meer een communicatiemiddel. Facebook biedt voldoende plug-ins en API s die vrij gebruikt kunnen worden in de te ontwerpen webapplicatie. Slechts een drietal van de aangeboden plug-ins zijn van toepassing op de website. Daarnaast is er ook een API beschikbaar die zeker en vast gebruikt kan worden om zo het delen van artikels te vergemakkelijken. 5.1 Sociale plug-ins Facebook biedt een hele reeks aan sociale plug-ins die interessant kunnen zijn voor de webapplicatie van de Jeugddienst Turnhout. Omdat de jeugddienst vooral met een jong publiek werkt, is het een goed idee om integratie van Facebook te overwegen. We bespreken enkel elementen die van toepassing kunnen zijn voor het project Like Button De Like-knop van Facebook zorgt ervoor dat mensen snel bepaalde zaken kunnen delen met familie en vrienden. Een simpele klik op de knop zal bepaalde stukken van een website liken delen met Facebook waardoor ze gezien kunnen worden door vrienden. De Like-knop is vooral handig om ervoor te zorgen dat bepaalde stukken van de website meer aandacht krijgen. Als een gebruiker een bepaalde pagina interessant vindt en deze dus liket dan zullen zijn of haar vrienden op de hoogte worden gebracht van de bestaande pagina. Dit kan bijvoorbeeld gebruikt worden om de site van de jeugddienst te promoten Send Button Via de Send-knop is het voor een gebruiker mogelijk om inhoud van de website naar één of meerdere vrienden te versturen via een privaat Facebook-bericht. De Send-knop is in het Nederlands beter bekend onder Delen. Hoe kan dit van toepassing zijn voor de jeugddienst? Als een gebruiker van de website bevriend is met iemand die graag op vakantie wil gaan maar hiervoor niet genoeg budget heeft, kan deze gebruiker in een privébericht de voordelige vakantieactiviteit doorsturen naar deze vriend. Hierdoor wordt enkel de vriend in kwestie op een discrete manier op de hoogte gebracht Comments De Comments-plugin laat gebruikers toe om op eender welke pagina commentaar te plaatsen. Dit is vooral handig om op een snelle en eenvoudige manier een commentaarsectie toe te voegen op een pagina. Comments zijn in het Nederlands beter herkenbaar onder de naam Reacties. Op deze manier is het mogelijk om rechtstreeks per pagina of per voorgestelde activiteit feedback te krijgen van de gebruikers. De Comments-plugin kan ook gebruikt worden om voorstellen te krijgen van de gebruikers over toekomstige activiteiten. Gebruikers kunnen reageren op de commentaar van anderen en deze ook liken. Als er dus een voorstel wordt gedaan en andere gebruikers zijn hiermee eens, zal men dit sneller kunnen afleiden door het aantal likes van de geplaatste commentaar.

20 Facebook API s Niet alleen biedt Facebook een reeks sociale plug-ins, het bedrijf stelt ook een resem API s beschikbaar. Hoewel er tien API s tot onze beschikking staan, is er slechts één van toepassing op de webapplicatie van de jeugddienst, namelijk de Open Graph API Open Graph API Dankzij Open Graph is het mogelijk om externe site te integreren in de zogenaamde Social Graph. In een Open Graph worden websites gezien als een object waardoor het mogelijk is voor gebruikers om connecties te leggen tussen websites en Facebook. Het Open Graph protocol zorgt voor een manier om bepaalde inhoud gestructureerd aan te bieden zodat deze altijd op de zelfde manier wordt uitgelezen door verschillende sociale media sites zoals Facebook en Google+. Dit klinkt ingewikkeld maar is het totaal niet. Het implementeren van Open Graph gebeurt door het toevoegen van enkele meta-elementen in de head van de website. Dankzij Open Graph heeft u meer controle over hoe de inhoud van uw website getoond wordt op sociale media. Het is onder meer mogelijk om te bepalen welke afbeelding, titel, omschrijving en url gebruikt worden Social Graph Via de Open Graph is het mogelijk om inhoud van een website te integreren met de Social Graph. Deze Social Graph van Facebook houdt de connectie bij tussen gebruikers, pagina s en andere objecten. Het is technisch gezien een database met de relaties tussen alles en iedereen op de welbekende sociale website. Deze sociale grafiek is de kern van Facebook aangezien elke foto, reactie, prikbord update en veel meer hierin wordt opgeslagen. Elke keer wanneer de functionaliteit van Facebook uitbreidt wordt ook deze sociale grafiek groter, complexer en waardevoller Voorbeeld Om duidelijk te maken hoe simpel het is om gebruik te maken van Open Graph wordt er gebruik gemaakt van een voorbeeld van de nieuwssite deredactie.be. Dit stukje code komt uit de broncode van een artikel die op de website te vinden is. De code zorgt ervoor dat het artikel dat op Facebook wordt gezet er netjes uitziet. Facebook gaat dus op zoek naar deze meta-tags om het artikel op te maken. Zijn deze tags niet aanwezig dan is het mogelijk dat Facebook verkeerde informatie toont. <meta property="og:site_name" content="deredactie.be" /> <meta property="og:type" content="article" /> <meta property="og:title" content=""voor de werknemers én de klant zal niets veranderen"" /> <meta property="og:description" content="de directie van BNP Paribas Fortis beklemtoont dat de verkoop door de Belgische staat van zijn belang in de bank aan het Franse BNP Paribas, geen gevolgen zal hebben voor de klant." /> <meta property="og:url" content=" <meta property="og:image" content=" pe670/ jpg" />

21 21 De getoonde code geeft volgend resultaat op de Facebookpagina van deredactie.be. 5.3 Conclusie Facebook biedt een heleboel tools die heel nuttig zijn voor de webapplicatie van de Jeugddienst. Drie ervan kunnen we perfect implementeren, namelijk de Like- en Deelknop en de Reactie-sectie. De overige plug-ins die worden aangeboden zijn niet van toepassing voor de jeugddienst van Turnhout. De te implementeren plug-ins zijn niet alleen heel handig, ze zijn tegelijkertijd makkelijk te implementeren in de applicatie. Niet alleen zijn plug-ins van toepassing, ook springt er een API uit die aangeboden wordt door Facebook die een plaats vindt in de applicatie van de jeugddienst. Via de Open Graph API krijgen we een correcte opmaak als we artikels op Facebook plaatsen. Net als de plug-ins is ook deze API zeer makkelijk te installeren. Dankzij de hele Facebook-implementatie zijn we ervan overtuigd dat de website zo een breder publiek zal aanspreken. Aangezien de meeste jongeren actief zijn op Facebook, kunnen zij onmiddellijk nieuws ontvangen over de jeugddienst. Ook kunnen ze de nodige reacties geven aan bepaalde ideeën of evenementen.

22 22 6 ANALYSE PROGRAMMEERTALEN De keuze van een programmeertaal mag niet onderschat worden. Het is dankzij deze taal dat de gebruiker interactie heeft met het complete systeem. Het is dus vanzelfsprekend dat een analyse van verschillende programmeertalen belangrijk is. Deze analyse gebeurt door de verschillende talen te vergelijken met elkaar en de voor- en nadelen per taal op te sommen. We kijken onder meer naar de schaalbaarheid, het onderhoud en vooral de prijs van de verschillende programmeertalen. Uiteindelijk stellen we een WRM-methode op die één programmeertaal selecteert die het best te gebruiken is voor het ontwikkelen van de webapplicatie. 6.1 Aanbod van verschillende talen De keuze van een programmeertaal bij het ontwikkelen van een webapplicatie is een zeer belangrijke beslissing. Aangezien er vele verschillende talen beschikbaar zijn, is het belangrijk om hiertussen een vergelijking te maken. Een overzicht van de belangrijkste talen vindt u hieronder PHP PHP is speciaal ontwikkeld voor het opzetten van webapplicaties en is één van de meest voorkomende programmeertalen in dit gebied. Dit komt vooral omdat PHP freeware is waardoor veel onafhankelijke programmeurs hiermee werken. PHP is een zeer populaire programmeertaal. Meer dan 81% van alle websites die gebruik maken van een server-side programmeertaal draaien PHP. Enkele bekende sites die PHP gebruiken zijn onder andere Google, Facebook, YouTube en Yahoo. Op het moment van schrijven zijn er 166 PHP-jobs beschikbaar in België volgens de website van VDAB. Deze populariteit komt mede dankzij de open source licentie die PHP hanteert. Dit wil zeggen dat de broncode van PHP gepubliceerd is en vrij beschikbaar is voor het publiek. Iedereen kan de broncode dus vrij kopiëren en aanpassen zonder dat men auteursrechten moet betalen. Door deze open source licentie is het opstellen van een PHP-project ook zeer goedkoop Voordelen PHP draait op alle systemen. Dit is één van de redenen waarom PHP zo populair is; je hebt geen dure licentie nodig van Windows Server om een webapplicatie, geschreven in PHP, te ondersteunen. PHP draait namelijk op Linux wat een opensource besturingssysteem is. Hierdoor kan men al veel geld besparen. Dit betekent niet dat als je Windows hebt je geen PHP mag draaien. Een belangrijk punt is dat PHP gratis is. Je moet geen licentie betalen om gebruik te maken van deze populaire taal. PHP is vrij te downloaden van het internet waardoor het ook populair is bij startende programmeurs die net in de bedrijfswereld zijn terechtgekomen. PHP gaat goed hand in hand met MySQL-databases. Deze zouden veel sneller zijn dan de andere databases die beschikbaar zijn op de markt. Een ander pluspunt is dat een MySQL-database makkelijk te integreren is in PHP-applicaties. Er zijn gigantisch veel libraries die toegevoegd kunnen worden aan PHP waardoor te taal extra aantrekkelijk is voor de verschillende benodigdheden in de industrie Nadelen Hoewel PHP makkelijk is om te leren, is het dom om te denken dat een beginner meteen complexe sites kan ontwikkelen. Er zijn natuurlijk een heleboel frameworks beschikbaar die het werkproces versnellen.

23 23 Maar we moeten in het achterhoofd houden dat een beginnend team een bepaalde tijd nodig zal hebben om de voordelen van beschikbare tools te selecteren voor elk project ASP.NET ASP.NET is de opvolger van ASP en is onderdeel van het.net framework van Microsoft. In tegenstelling tot PHP is ASP.NET niet open source maar propriëtaire software. Slechts één individu of een bedrijf heeft de exclusieve auteursrechten op de software. Mensen kunnen dus niet zomaar de broncode kopiëren en aanpassen. Met andere woorden uitgelegd is ASP.NET niet gratis en moet er dus een som geld op tafel gelegd worden voordat je er gebruik van kan maken. ASP.NET kan enkel geïnstalleerd worden op systemen waarop het besturingssysteem Windows draait. Als men deze programmeertaal wil gebruiken, kan men dus beter gebruik maken van Windows Server. Het is echter mogelijk om een beperkte vorm van ASP.NET te draaien op een Linux machine. De functionaliteiten zijn dan wel niet allemaal beschikbaar. Meer dan 21% van alle websites die een server-side programmeertaal gebruiken, maken gebruik van ASP.NET. Sites die gebruik maken van ASP.NET zijn onder andere Live.com en MSN.com die allebei eigendom zijn van Microsoft. De website van VDAB biedt ons 308 jobs voor het ontwikkelen van ASP.NET Voordelen Ontwikkeling in ASP.NET is zeer makkelijk met de bestaande server controls die beschikbaar zijn. Hierdoor is er minder code nodig in vergelijking met andere programmeertalen om bepaalde functies te schrijven. Deze controllers zijn ingebouwd in Visual Studio waardoor je deze niet als aparte plug-ins moet toevoegen. ASP.NET maakt gebruik van master pages. Een master page kan ervoor zorgen dat elke webpagina op de site dezelfde lay-out heeft en zich hetzelfde gedraagt. Het is dan mogelijk om aparte pagina s te creëren met telkens een andere inhoud. Wanneer een gebruiker dan één van deze pagina s opvraagt zal deze pagina fuseren met de master page. Hierdoor krijg je de lay-out die je hebt geschreven in de master page en de inhoud van de aparte webpagina in één uiteindelijke resultaatpagina. Met ASP.NET is het niet nodig om de volledig ontwikkelde webpagina s te kopiëren naar de hosting server. Met deze programmeertaal is het voldoende om enkel de dll-bestanden te hosten op de server. Dit zorgt ervoor dat de broncode niet in het openbaar beschikbaar is op de hosting server wat een extra vorm van beveiliging voor de code met zich meebrengt Nadelen Zoals eerder aangehaald, is ASP.NET niet gratis. Voor de ontwikkeling van ASP-code moet je Visual Studio aankopen. De goedkoopste versie, Visual Studio 2013 Professional, heeft een prijskaartje van 646. Er zijn ook gratis pakketten te verkrijgen maar die bieden niet de verwachte voordelen. Kleine projecten zijn misschien wel mogelijk maar als men toekomstgericht wil werken en openstaat voor grotere projecten, is men uiteindelijk toch verplicht om over te stappen naar een betaalde versie van Visual Studio. ASP.NET draait niet op alle beschikbare systemen, enkel en alleen op Windows-besturingssystemen. Er is een versie beschikbaar voor Linux maar deze biedt niet alle oorspronkelijke functionaliteiten die deze taal te bieden heeft.

24 Ruby Ruby is een programmeertaal ontworpen om op een snelle en makkelijke manier objectgeoriënteerd te programmeren. Om Ruby te gebruiken voor de ontwikkeling van webapplicaties moeten we gebruik maken van de Ruby on Rails framework. Ruby hanteert een BSD-licentie waarbij de gebruikers de naam van auteur en licentie moeten vermelden als de software gebruiken in hun eigen producten. Ze mogen ook niet zonder toestemming de naam van de auteurs in advertentiemateriaal gebruiken. Ruby is te gebruiken op verschillende platforms zoals Windows en Linux. De taal wordt ongeveer door 0,5% van de websites, die gebruikmaken van een server-side programmeertaal, gebruikt. Enkele voorbeelden van websites die ontwikkeld zijn in deze taal zijn onder andere Hulu, Github en Howcast. Als we zoeken naar Ruby-ontwikkelaars vinden we slechts 10 jobs op de website van VDAB Voordelen Als je zoekt naar de voordelen van Ruby springt er altijd één naar de voorgrond, namelijk snelheid. In Ruby kan je in een kleinere periode grote projecten afronden. Waar het bij andere talen zo n 12 weken duurt, kan een Ruby-project al in zes weken afgerond zijn. Hoewel Ruby ontwikkeld is om te draaien op Linux, kan je ook Ruby-applicaties laten werken op Windows. Net zoals PHP hoeft men geen licentie te betalen om gebruik te maken van Ruby. Al sinds het ontwerp van Ruby, is deze taal ontwikkeld om volledig object georiënteerd te zijn en vooral in het voordeel te werken van de programmeurs. Een functie geschreven in zo n 10 lijnen PHP-code kan in 3 lijnen samengevat worden in Ruby Nadelen Ruby was oorspronkelijk niet ontwikkeld voor webapplicaties maar eerder voor het ontwikkelen van scripts met een makkelijke leesbaarheid. Hierdoor heeft Ruby niet dezelfde materniteit die je zou verwachten van een server-side programmeertaal zoals Java en PHP. De populariteit van Ruby is vele malen kleiner in vergelijking met PHP en ASP.NET. Dit kan een probleem vormen als je stuit op een programmeerprobleem. Er zijn veel minder communities die je met deze fout kunnen helpen. Het is moeilijker om een server te vinden die Ruby on Rails ondersteunt. Degenen die deze taal ondersteunen zijn ook nog eens een heel stuk duurder. Men betaalt net niet het dubbele voor Rubyhosting dan met PHP-hosting Python Naast het gebruik als een scriptingtaal, is Python ook een programmeertaal die vooral focust op een goede leesbaarheid. De syntax van Python zorgt ervoor dat men bepaalde functies in minder code kan uitdrukken in vergelijking met andere programmeertalen zoals C. We zullen gebruik moeten maken van het framework Django als we Python willen gebruiken voor het ontwikkelen van een webapplicatie. Python hanteert een licentie waarbij ontwikkelaars vrij de broncode van de taal mogen aanpassen. Dit doet denken aan een open source licentie maar dat is bij Python niet het geval. De Python-licentie is gebaseerd op het BSD-licentie wat vergelijkbaar is met de licentie van Ruby.

25 25 Het ontwikkelen van een webapplicatie in Python is dus redelijk goedkoop. Dit is zeker het geval als we in acht nemen dat Python meerdere platforms ondersteunt. Hierdoor kan er bijvoorbeeld gebruik gemaakt worden van Linux waardoor we zo goed als geen kosten hebben aan het besturingssyteem. Hoewel het ontwikkelen in Python redelijk goedkoop is, maken slechts 0,2% van de websites die gebruikmaken van een server-side programmeertaal gebruik van Python. Het webframework Django wordt vooral gebruikt door krantensites. Enkele bekende websites die gebruik maken van Python zijn onder meer Instagram, support.mozilla.com en de welbekende Britse krantensite The Guardian. Net als Ruby, zijn er slechts weinig jobaanbiedingen beschikbaar op de website van VDAB als we zoeken naar Python-ontwikkelaars. Zo zijn er slechts 18 jobs beschikbaar in België Voordelen De syntax van Python is duidelijk en goed leesbaar wat ervoor zorgt dat Python een goede programmeertaal is voor beginners. Python draait niet alleen op meerdere systemen, het heeft ook op de verschillende platforms dezelfde interface. Dit komt omdat het ontwerp van Python niet perse ontwikkelt met één enkel systeem in gedachte. Het zou dus mogelijk zijn om een Python-programma op te stellen op een Mac, te testen op een Linux-machine en deze te laten hosten door een Windows-systeem. Het opstellen van een Python webapplicatie is vrij goedkoop aangezien men geen licentie moet betalen voor het gebruik ervan Nadelen Python zou traag zijn in vergelijking met andere programmeertalen. Dit is in sommige gevallen niet echt een nadeel maar als snelheid een must is, is men toch genoodzaakt om een andere taal te zoeken. De kwaliteit van de Python-documentatie is minder goed in vergelijking met die van PHP of Java. Dit is een probleem als je bepaalde functies wil opzoeken. Voor het aanleren van een nieuwe programmeertaal is goede documentatie wel vereist. Er zijn niet veel Python-ontwikkelaars aanwezig op de markt. Het is veel gemakkelijker om een Java- of een PHP-ontwikkelaar te vinden. Dit wil dus ook zeggen dat bestaande Python-ontwikkelaars duurder zijn in vergelijking met andere ontwikkelaars. Net als Ruby is het hosten van Python bijna twee keer zo duur als PHP hosting. Het aantal hosting servers die Python ondersteunen is ook veel kleiner in vergelijking met PHP-hosting Java Eén van de meest bekende programmeertalen is zonder meer Java. Het is een klasse-gebaseerde en objectgeoriënteerde taal die de zogenaamde WORA-regel ( write once, run anywhere ) hanteert. Javaapplicaties worden gecompileerd tot een bytecode-bestand dat op eender welke computer architectuur werkt zolang het systeem Java kan draaien. Om gebruik te maken van Java als programmeertaal voor de ontwikkeling van webapplicaties zullen we gebruik moeten maken van de JavaServer Pages Standard Tag Library (JSTL) wat een onderdeel is van Java EE. Java hanteert de zogenaamde GNU General Public License waardoor ontwikkelaars alles met de software mogen doen wat ze willen zolang dat ze dat recht ook doorgeven aan anderen. De auteurs van de software moeten ook vermeld worden. Java is dus uiteindelijk freeware. Net zoals de meeste programmeertalen die al besproken zijn, is Java te gebruiken op meerdere platforms zoals Linux, Mac en Windows.

26 26 Java kent een gebruik van 2,7% bij websites die gebruik maken van een server-side programmeertaal. Enkele bekende websites die gebruik maken van Java zijn onder andere LinkedIn, Ebay en Adobe.com. Java is een zeer populaire taal onder de ontwikkelaars. Dit is ook af te leiden als we zoeken naar het aantal jobaanbiedingen op de site van VDAB. Er zijn zo n 469 jobs beschikbaar voor Java-ontwikkelaars Voordelen Het ontwikkelen van een webapplicatie in Java is goedkoop aangezien je geen licentiekosten moet betalen om gebruik te maken van de code. Terwijl PHP vooral geschikt is voor kleinere projecten, is Java ideaal voor de grote opdrachten omwille van zijn schaalbaarheid. Een voorbeeld van een drukbezochte website die gebruik maakt van Java is Gmail van Google. Ook Twitter maakt momenteel gebruik van Java. Deze sociale netwerksite was oorspronkelijk geschreven in Ruby maar is, omwille van schaalbaarheid, overgestapt naar Java webdevelopment. Java is platformonafhankelijk, wat ervoor zorgt dat Java op alle systemen die momenteel beschikbaar zijn kan draaien Nadelen Java is niet de beste keuze voor kleine projecten. Gebruik maken van Java voor een website met slechts één database is te veel werk voor zo n klein resultaat. Dit doe je beter in een andere taal. Het vinden van een hostingserver die Java webapplicaties kan hosten is zeer moeilijk in vergelijking met andere programmeertalen. 6.2 Een keuze maken Nu elke taal uitgebreid is besproken met de voornaamste voor- en nadelen per taal, is het mogelijk om bepaalde talen te schrappen waarbij de voordelen niet opwegen tegen de nadelen Kostprijs De kostprijs is één van de belangrijkste punten die invloed hebben op de keuze van een programmeertaal. De jeugddienst heeft een budget ter beschikking maar het is niet de bedoeling om dit al volledig op te gebruiken door een verkeerde programmeertaal te gebruiken. Als we de verschillende talen vergelijken op basis van de kostprijs, valt er één taal op, namelijk ASP.NET. Voor de ontwikkeling van ASP.NET ben je verplicht om Visual Studio Professional 2013 aan te kopen. Deze ontwikkelomgeving kost maar liefst 646. Hiernaast draait een ASP-systeem enkel op een Windowsbesturingssysteem waarvoor je ook moet betalen. Omwille van deze hoge kostprijs kunnen we ASP.NET schrappen uit de lijst van overwegende programmeertalen. De voordelen van deze taal wegen niet op tegen de nadelige kostprijs Weighted Ranking Method Om één uiteindelijke taal te selecteren maken we gebruik van de Weighted Ranking Method. Hierbij geven we de criteria waarop we vergelijken punten. Des te belangrijker de criteria, des te meer punten deze criteria kan opleveren. De taal die uiteindelijk de meeste punten heeft, zal gebruikt worden voor het project. We vergelijken de programmeertalen op volgende criteria en bijhorende punten: Kostprijs van de hosting: 10 punten Schaalbaarheid: 5 punten

27 27 Onderhoud: 5 punten Beschikbare ontwikkelaars: 5 punten Bij de kostprijs van de hosting kijken we naar de totale prijs die de jeugddienst zou moeten betalen als men de website wil hosten. Onder de schaalbaarheid verstaan we hoe makkelijk het is om de site uit te breiden. Des te beter de schaalbaarheid, des te hoger de score. We bekijken ook het onderhoud van de site en hoe makkelijk het is om de applicatie in deze taal te onderhouden. We hebben nagekeken hoeveel ontwikkelaars beschikbaar zijn per programmeertaal. Indien er meer ontwikkelaars zijn stijgt de score. Omdat we een lage kostprijs van het gebruik van een programmeertaal zeer belangrijk vinden krijgt dit criterium de hoogste score, namelijk een tien. De overige criteria zijn minder belangrijk in vergelijking met de kostprijs.

28 28 Met deze criteria en bijhorende punten krijgen we het resultaat in de volgende WRM-tabel: Criteria Gewicht PHP Ruby Python Java Kostprijs van hosting 10 80% 40% 40% 20% Schaalbaarheid 5 50% 40% 50% 80% Onderhoud 5 75% 75% 75% 75% Beschikbare ontwikkelaars 5 80% 30% 40% 90% Totaal 25 18,25 11,25 12,25 14, Weighted Ranking Method - Verklaring Criteria PHP Ruby Python Java Kostprijs van hosting Prijs ligt laag in vergelijking met andere talen De prijs bij Ruby is bij het dubbele van PHP-hosting Schaalbaarheid Matig schaalbaar Slecht schaalbaar, sites stappen na een tijd over op een andere taal. Onderhoud Beschikbare ontwikkelaars Matig te onderhouden Veel PHPontwikkelaars op de markt Matig te onderhouden Zeer weinig ontwikkelaars voor Ruby Net als Ruby; dubbele van PHP Matig schaalbaar Matig te onderhouden Weinig ontwikkelaars voor Python Totaal 18,25 11,25 12,25 14,25 Bijna geen hosts beschikbaar voor Java Zeer schaalbaar in vergelijking met de andere talen Matig te onderhouden Zeer veel Javaontwikkelaars aanwezig 6.3 Conclusie Door verschillende programmeertalen te vergelijken met elkaar hebben we een uiteindelijke keuze kunnen maken. We deden een onderzoek naar PHP, ASP.NET, Ruby, Python en Java waaruit PHP als beste taal is gekomen. Volgens ons is deze taal de beste voor de situatie. Het is de bedoeling dat de gekozen programmeertaal gebruikt zal worden tijdens het ontwikkelen van de webapplicatie van de jeugddienst. We hebben een taal kunnen kiezen door de voor-en nadelen van elke taal te vergelijken met de andere talen. Hierdoor kregen we een long list van de verschillende talen. Daaruit hebben we al kunnen besluiten welke talen eventueel gebruikt kunnen worden en welke niet. Een belangrijke factor waar we naar gekeken hebben is de kostprijs van de taal. Het opstellen van een applicatie als die van de jeugddienst mag in onze ogen niet te duur zijn. Hierdoor viel ASP.NET al weg aangezien men al een aardige som geld moet neertellen om in deze taal te ontwikkelen. Na het filteren van de talen creëerden we een WRM-tabel waarin deze talen beter met elkaar vergeleken konden worden. Door elk criterium een score te geven en deze per taal op te tellen krijgen we zo een winnende taal. Hieruit is gebleken dat PHP de meest voordelige taal is voor deze applicatie. Deze taal is in onze ogen de beste programmeertaal die gebruikt moet worden tijdens de ontwikkeling van het project.

29 29 7 ANALYSE DATABASEMANAGEMENTSYSTEMEN Het is belangrijk dat we gebruik maken van een databasemanagementsysteem (DBMS). In dit databasemanagementsysteem zullen alle gegevens terecht komen die van belang zijn voor dit project. Met behulp van een databasemanagementsysteem kunnen we alle belangrijke gegevens opvragen. Zo kunnen we de gegevens opvragen van alle leden van bij de jeugddienst, wie er allemaal werkt op de jeugddienst, 7.1 Aanbod van verschillende databasemanagementsystemen De keuze van een databasemanagementsysteem bij het ontwikkelen van een webapplicatie is zeer belangrijk. Er bestaan veel verschillende databasemanagementsystemen. Hieronder wordt een vergelijking gemaakt tussen de verschillende systemen Microsoft Access Microsoft Access is een relationele database-applicatie van Microsoft. Microsoft Access wordt meestal gebruikt door gebruikers die niet al te veel kennis hebben van het maken van een database. Access gebruikt dan ook een grafische interface en dit maakt het gemakkelijker. Met Access is het mogelijk om een front-end te bouwen. Een front-end houdt in dat het mogelijk is om formulieren, pagina s en rapporten te maken. We kunnen Access verkrijgen als onderdeel van Microsoft Office Professional. Het programma werd Access genoemd tot versie Momenteel is de naam veranderd naar Microsoft Office Access Voordelen - De kostprijs van Access is niet zo groot vergeleken met andere databasemanagementsystemen. - Access is gemakkelijk te gebruiken. Access werkt met een wizard waardoor je gewoon alles stap voor stap kan maken. Je hebt geen ervaring nodig met databases om het programma te gebruiken Nadelen - Het is niet mogelijk om met meerdere mensen in een keer te werken aan functionaliteiten. - Alle informatie van de database wordt opgeslagen in één bestand. Hierdoor zullen reports, query s en forms trager werken. - Access is een heel gemakkelijke database, we kunnen hier niet alles in doen. Dit databasemanagementsysteem is niet uitgebreid. - Elke database kan maximaal bestaan uit 2GB. - Access kan niet omgaan met veel data, dit wil zeggen dat wanneer we dicht bij het maximum zitten alles wat trager zal lopen.

30 MySQL MySQL is een opensource-managementsysteem. Om een database op te bouwen, gegevens eruit halen of te onderhouden gebruiken we SQL (Structured Query Language). In het begin werd MySQL vooral gebruikt voor internettoepassingen zoals gastenboeken en fora, dit werd meestal gecombineerd met PHP. Momenteel wordt bijna altijd MySQL gebruikt voor internettoepassingen. Ook wordt MySQL voortaan gebruikt voor standalone software. Voorbeelden van websites die gebruik maken van MySQL zijn: - Wikipedia - Google - Youtube Voordelen - MySQL is volledig gratis. - MySQL biedt een zeer hoge prestatie. - Ondersteunt een groot aantal embedded applicaties die MySQL zeer flexibel maakt. - Zeer snel. - Gemakkelijke syntax. - Goede management tool (phpmyadmin). - Compatibel met meerdere besturingssystemen Nadelen - MySQL kan nog wat verfijnd worden. - Er kan nog wat gewerkt worden aan de faciliteiten van MySQL. - MySQL ondersteunt geen heel grote database. - Transacties worden niet efficiënt afgehandeld. - Ondersteunt geen foreign keys Microsoft SQL Server Microsoft SQL Server is ook een databasemanagementsysteem dat ontwikkeld is door Microsoft. Hiervoor wordt ook SQL gebruikt (dit is dan ook de meest gebruikte databasetaal). Microsoft SQL Server wordt voornamelijk gebruikt door organisaties die gebruik maken van een kleine tot middelgrote database. Microsoft SQL Server is ontwikkeld uit Sybase. Het concurreert in deze markt met producten van grote bedrijven zoals: Oracle, IBM en Sybase Voordelen - Microsoft SQL Server is zeer gemakkelijk om te gebruiken (gemakkelijker dan MySQL). - Dit databasemanagementsysteem biedt meer functies aan dan MySQL. - Microsoft SQL Server werkt samen met.net frameworks. - Data kan gerepareerd worden nadat bijvoorbeeld de stroom uitvalt. - Het is mogelijk om een volledige database te repareren. - Goede beveiliging Nadelen - Zeer duur (onbetaalbaar voor kleine bedrijven).

31 31 - Microsoft SQL Server is enkel compatibel met Windows Oracle Database Ook Oracle Database is een databasemanagementsysteem. Oracle Database was de eerste database die gebruik maakt van SQL. Een Oracle Database biedt ondersteuning aan een groot aantal besturingssystemen. Oracle heeft een eigen ERP-lijn (Enterprise Resource Planning) opgebouwd. De naam van deze ERP-lijn is Oracle E-Business Suite. Met deze software is het mogelijk om de ondersteunende processen in organisaties te beheren Voordelen - Het is mogelijk om zeer grote databanken aan te maken. - Deze databanken zijn zeer goed beveiligd. - Oracle database is altijd online. - Oracle database werkt zeer snel Nadelen - Zeer duur. - Ingewikkeld om het te onderhouden SQLite SQLite is ook een databasemanagementsysteem. Ook SQLite maakt gebruik van SQL. Bij SQLite is er geen serverinstallatie nodig. SQLite is ontwikkeld door D. Richard Hipp, Dan Kennedy and Joe Mistachkin Voordelen - Geen serverinstallatie nodig. - Het volledige relationeel model wordt opgeslagen in 1 bestand. - SQLite is compatibel met de meest gangbare besturingssystemen. - Geen MySQL database op de server nodig, het gebruikt eigen opslaggeheugen. - Het is gemakkelijk om de database op te slagen. - SQLite kan gebruikt worden met programma s die geschreven zijn in C of PHP of andere programmeertalen Nadelen - SQLite is traag. - Bij SQLite is het mogelijk dat een database maximaal 2GB kan zijn. - Het is niet mogelijk om de database aan te passen met meerdere gebruikers tegelijkertijd.

32 Een keuze maken Nu dat we de voor- en nadelen hebben besproken van de meest gebruikte databasemanagementsystemen kunnen we nu de weighted ranking method toepassen. Door gebruik te maken van de weighted ranking method is het mogelijk om het beste databasemanagementsysteem eruit te halen. We vergelijken de databasemanagementsystemen op volgende criteria en bijhorende punten: - Kostprijs van het product: 10 punten - Onderhoud: 5 punten - Beveiliging: 5 punten - Grote van de database: 5 punten - Gebruiksvriendelijkheid: 5 punten - Compatibiliteit: 5 punten Microsoft Access Microsoft SQL Server Oracle Database SQLite Criteria Gewicht MySQL Kostprijs van het product 10 70% 100% 0% 0% 30% Onderhoud 5 70% 80% 80% 0% 60% Beveiliging 5 60% 60% 100% 100% 60% Grote van de database 5 40% 60% 100% 100% 40% Gebruiksvriendelijkheid 5 80% 80% 80% 50% 80% Compatibiliteit 5 20% 100% 20% 100% 100% Totaal 35 20, , Weighted Ranking Method - Verklaring Criteria Kostprijs van het product Onderhoud Beveiliging Grootte van de database Gebruiksvriendelijkheid Compatibiliteit Microsoft Access MySQL De kostprijs van Access is niet zo groot vergeleken met andere Gratis Zeer duur Zeer duur Vrij gemakkelijk te Gemakkelijk te Gemakkelijk te Zeer moeilijk te onderhouden onderhouden onderhouden onderhouden Voldoende Voldoende Zeer goed Zeer goed beveiligd beveiligd beveiligd beveiligd Ondersteunt geen Mogelijk om een Mogelijk om een heel grote grote database te grote database te Maximum 2GB databases gebruiken gebruiken Zeer gebruiksvriendelijk Compatibel met Microsoft Zeer gebruiksvriendelijk Compatibel met alles Microsoft SQL Server Oracle Database SQLite Zeer gebruiksvriendelijk Compatibel met Microsoft Niet zo gebruiksvriendelijk Compatibel met alles De kostprijs is iets groter als die van Microsoft Access De onderhoud in SQLite valt mee Voldoende beveiligd Maximum 2GB Zeer gebruiksvriendelijk Compatibel met alles

33 Conclusie Door de verschillende databasemanagementsystemen met elkaar te vergelijken hebben we uiteindelijk een keuze kunnen maken. Volgens ons is MySQL het beste databasemanagementsysteem voor dit project. MySQL werkt nauw samen met PHP wat een groot voordeel is aangezien PHP als beste uit de programmeertalen kwam. MySQL maakt gebruik van PHPMyAdmin. Dit databasemanagementsysteem hebben we gekozen door gebruik te maken van de Weighted Ranking methode. MySQL had een score van 29/35 waardoor deze als 1 ste eruit kwam. Het databasemanagementsysteem dat op de 2 de plaats eindigde was Microsoft Access met 20,5/35. Wij raden dus aan om MySQL als databasemanagementsysteem te gebruiken.

34 34 8 SUB TOOLS STATISTIEKEN GENEREREN 8.1 Google Charts Google Charts is een webtool die developers in staat stelt om statistieken te genereren en deze te integreren in de webpagina. Website: Google Charts libraries zijn toegankelijk voor volgende platformen: - Java (Google Chart API wrapper & charts4j) - C#.NET (nqchart) - Ruby (gchart) - PHP (gchartphp) - Python (google-chartwrapper) - Perl (Google::Chart) Voordelen - Gratis - Veel keuze in grafiektypes - Mogelijkheid om kaarten en QR codes te genereren Nadelen - Google gelimiteerde API requests ( per dag) Voorbeelden

Analyse Programmeertalen

Analyse Programmeertalen Analyse Programmeertalen De keuze van een programmeertaal mag niet onderschat worden. Het is dankzij deze taal dat de gebruiker interactie heeft met het complete systeem. Het is dus vanzelfsprekend dat

Nadere informatie

Eindrapport Nahnisim 2013-2014. Sim Jacobs Han Mermans Niels Mangelschots Niels Maes. 3 e Jaar Toegepaste Informatica Thomas More Geel

Eindrapport Nahnisim 2013-2014. Sim Jacobs Han Mermans Niels Mangelschots Niels Maes. 3 e Jaar Toegepaste Informatica Thomas More Geel 1 Eindrapport Nahnisim 2013-2014 Sim Jacobs Han Mermans Niels Mangelschots Niels Maes 3 e Jaar Toegepaste Informatica Thomas More Geel 2 VOORWOORD Deze analyse is gemaakt in het kader van het vak Businessproject

Nadere informatie

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous 2006-2007 Inhoudsopgave 1 2 1.1 Programmeertaal PHP5..................... 2 1.2 MySQL database......................... 3 1.3 Adobe Flash...........................

Nadere informatie

FASERING BUSINESSPROJECT

FASERING BUSINESSPROJECT FASERING BUSINESSPROJECT In eerste instantie hebben we de opdracht opgedeeld in verschillende fasen. (zie bijlage Product Breakdown Structure en Product Flow Diagram). Fase 1: Analyse van de eisen Eisen

Nadere informatie

De voordelen van Drupal

De voordelen van Drupal Drupal is een open source Content Management System (CMS). Daarnaast kun je Drupal zien als een framework, dit betekent dat je modules (oftewel mini-applicaties) kunt implementeren in je installatie van

Nadere informatie

Technisch Ontwerp W e b s i t e W O S I

Technisch Ontwerp W e b s i t e W O S I Technisch Ontwerp W e b s i t e W O S I WOSI Ruud Jungbacker en Michael de Vries - Technisch ontwerp Website Document historie Versie(s) Versie Datum Status Omschrijving / wijzigingen 0.1 20 nov 2008 Concept

Nadere informatie

XAMPP Web Development omgeving opzetten onder Windows.

XAMPP Web Development omgeving opzetten onder Windows. XAMPP Web Development omgeving opzetten onder Windows. Inhoudsopgave 1. Lees dit eerst... 2 2. Inleiding... 2 1 Xampp downloaden... 2 2 Installatie Xampp 1.7.4 op externe harddisk... 3 3 XAMPP herconfiguren...

Nadere informatie

Tinus Plotseling 29-12-2002. MySQL

Tinus Plotseling 29-12-2002. MySQL Tinus Plotseling 29-12-2002 MySQL Inhoudsopgave Inleiding... 3 MySQL Geschiedenis... 3 MySQL Toepassingen... 3 MySQL Voordelen... 4 MySQL Nadelen... 4 MySQL bij ASCI... 4 PostgreSQL... 5 ORACLE... 6 MS

Nadere informatie

Webdesign voor ondernemers

Webdesign voor ondernemers e-boek Webdesign voor ondernemers Veelgestelde vragen over het laten maken van een website Bart van den Bosch Inhoud 1. Zelf doen of uitbesteden? 4 2. Webdesigners 7 3. Wat is Wordpress 10 4. Maken van

Nadere informatie

Quickstart handleiding

Quickstart handleiding Inleiding Allereerst hartelijk bedankt voor het aanschaffen van. U heeft met deze aankoop een goede keuze gemaakt voor een zeer professionele E-mail marketing tool. In deze quickstart handleiding zullen

Nadere informatie

ProjectHeatmap. Onderzoeksrapport v0.5 11-03-11 Dennis Wagenaar

ProjectHeatmap. Onderzoeksrapport v0.5 11-03-11 Dennis Wagenaar ProjectHeatmap Onderzoeksrapport v0.5 11-03-11 Dennis Wagenaar 1 Inhoudsopgave Inleiding...3 Gheat...4 Info...4 Voordelen...4 Nadelen...4 Google Fusion Tables...5 Info...5 Voordelen...5 Nadelen...5 OLHeatmap...6

Nadere informatie

Thinking of development

Thinking of development Thinking of development Databases Arjan Scherpenisse HKU / Miraclethings Agenda voor vandaag Opdracht tussenstand State diagram / Observer pattern Bret Victor Databases 2/42 Opdracht tussenstand Slides

Nadere informatie

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB Connect Social Business Plan van Aanpak voor mijn stage bij ConnectSB Joey Kaan September 28, 2014 Inhoudsopgave 1 Achtergronden 1 2 Probleemstelling & Doelstelling 2 2.1 Leren Professioneel Functioneren..................

Nadere informatie

Zicht - Content Management Systeem een algemene beschrijving

Zicht - Content Management Systeem een algemene beschrijving Zicht - Content Management Systeem een algemene beschrijving Versie april/2008 Zicht nieuwe media ontwerpers 2008 1 Inleiding Een Content Management Systeem (CMS) is een webapplicatie waarmee je zonder

Nadere informatie

Documentatie. InstantModules Q42. Versie 1.1

Documentatie. InstantModules Q42. Versie 1.1 Documentatie InstantModules Q42 Versie 1.1 Inhoudsopgave Inhoudsopgave... 2 Voor gebruikers... 3 InstantComment... 3 InstantTagging... 5 Voor webmasters... 9 InstantComment... 9 InstantTagging... 11 Voor

Nadere informatie

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB Connect Social Business Plan van Aanpak voor mijn stage bij ConnectSB Joey Kaan September 21, 2014 Inhoudsopgave 1 Achtergronden 4 2 Probleemstelling & Doelstelling 5 2.1 Leren Professioneel Functioneren..................

Nadere informatie

Koppeling met een database

Koppeling met een database PHP en MySQL Koppeling met een database 11.1 Inleiding In PHP is het eenvoudig om een koppeling te maken met een database. Een database kan diverse gegevens bewaren die met PHP aangeroepen en/of bewerkt

Nadere informatie

Xampp Web Development omgeving opzetten onder Windows.

Xampp Web Development omgeving opzetten onder Windows. Xampp Web Development omgeving opzetten onder Windows. Inhoudsopgave 1. Lees dit eerst... 2 2. Inleiding... 2 3. Installatie Xampp... 3 1.1 Installatie Xampp Launcher... 7 1.2 Controle geïnstalleerde bestanden...

Nadere informatie

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat

Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Powerpoint presentatie College 5 Gilbert van Lierop & Farshad Salamat Wat is een database? Een verzameling van georganiseerde data Een database bestaat uit applicaties, SQL en het DBMS Watis eendbms? EenDBMS

Nadere informatie

En hoe gaan ze dit allemaal terugvinden?

En hoe gaan ze dit allemaal terugvinden? En hoe gaan ze dit allemaal terugvinden? Taak 1.2.10 Thomas Muller Paul van der Linden MT1A Tutor: van Griensven Docent: van den Biggelaar Gemaakt door Thomas Muller en Paul van der Linden Pagina 1 van

Nadere informatie

Prijslijst 2015. Algemeen. Reparaties. Installaties. Voorrijkosten binnen gemeente Bedum: 5,- Voorrijkosten buiten gemeente Bedum: 20,-

Prijslijst 2015. Algemeen. Reparaties. Installaties. Voorrijkosten binnen gemeente Bedum: 5,- Voorrijkosten buiten gemeente Bedum: 20,- Prijslijst 2015 Algemeen Voorrijkosten binnen gemeente Bedum: 5,- Voorrijkosten buiten gemeente Bedum: 20,- Advisering: 10,- per uur. Reparaties Onderzoekskosten: 10,- Reparatiekosten: 10,- Installaties

Nadere informatie

Databases - Inleiding

Databases - Inleiding Databases Databases - Inleiding Een database is een verzameling van een aantal gegevens over een bepaald onderwerp: een ledenbestand van een vereniging, een forum, login gegevens. In een database worden

Nadere informatie

Inhoudsopgave Disclaimer... 3 Voorwoord... 4 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op

Inhoudsopgave Disclaimer... 3 Voorwoord... 4 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op 1 Inhoudsopgave Disclaimer... 3 Voorwoord... 4 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP.... 8 Joomla installeren op XAMPP... 15 Handige links... 16 2 Disclaimer Bij de samenstelling

Nadere informatie

Handleiding CMS. Auteur: J. Bijl Coldfusion Consultant

Handleiding CMS. Auteur: J. Bijl Coldfusion Consultant Handleiding CMS Auteur: J. Bijl Coldfusion Consultant Inhoudsopgave 1.0 Inleiding 3 2.0 Introductie CMS en websites 4 3.0 Inloggen in beheer 5 4.0 Dashboard 6 4.1 Bezoekers totalen 6 4.2 Bezoekers 7 4.3

Nadere informatie

Technische nota AbiFire5 Rapporten maken via ODBC

Technische nota AbiFire5 Rapporten maken via ODBC Technische nota AbiFire5 Rapporten maken via ODBC Laatste revisie: 29 juli 2009 Inhoudsopgave Inleiding... 2 1 Installatie ODBC driver... 2 2 Systeeminstellingen in AbiFire5... 3 2.1 Aanmaken extern profiel...

Nadere informatie

LES 1: AAN DE SLAG MET WORDPRESS. Lesoverzicht: Aan de slag Wat is WordPress CMS Front-end Back-end Samenvatting. Tijd: 5 minuten

LES 1: AAN DE SLAG MET WORDPRESS. Lesoverzicht: Aan de slag Wat is WordPress CMS Front-end Back-end Samenvatting. Tijd: 5 minuten LES 1: AAN DE SLAG MET WORDPRESS Lesoverzicht: Aan de slag Wat is WordPress CMS Front-end Back-end Samenvatting Tijd: 5 minuten Doel: Aan het einde van deze les weet je wat WordPress is en kun je benoemen

Nadere informatie

Programmeren met databanken volgens het lagenmodel in C#

Programmeren met databanken volgens het lagenmodel in C# Programmeren met databanken volgens het lagenmodel in C# met Visual Studio en MySQL HA-2267-02 Informaticabeheer Bert Cauwenberg en Lieven Pauwels Werkgroep Handel 2016 Guimardstraat 1, 1040 Brussel Guimardstraat

Nadere informatie

Project plan. Erwin Hannaart Sander Tegelaar 61849 62407

Project plan. Erwin Hannaart Sander Tegelaar 61849 62407 Project plan Erwin Hannaart Sander Tegelaar 61849 62407 I4C2 I4C1 1 Inhoudsopgave Doel en doelgroep van het project... 3 Beschrijving van het project... 4 Benodigde materialen... 5 Te verwachten resultaten,

Nadere informatie

In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze. programmeertaal? En hoe is het ontstaan? Ook leer je welke editors

In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze. programmeertaal? En hoe is het ontstaan? Ook leer je welke editors 1. Over PHP 1.1 Inleiding In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze programmeertaal? En hoe is het ontstaan? Ook leer je welke editors je kunt gebruiken om PHP-scripts te maken en hoe je

Nadere informatie

SURFconext Cookbook. Het koppelen van Alfresco aan SURFconext. Versie: 1.0. Datum: 8 december 2013. 030-2 305 305 admin@surfnet.nl www.surfnet.

SURFconext Cookbook. Het koppelen van Alfresco aan SURFconext. Versie: 1.0. Datum: 8 december 2013. 030-2 305 305 admin@surfnet.nl www.surfnet. SURFconext Cookbook Het koppelen van Alfresco aan SURFconext Auteur(s): Frank Niesten Versie: 1.0 Datum: 8 december 2013 Radboudkwartier 273 3511 CK Utrecht Postbus 19035 3501 DA Utrecht 030-2 305 305

Nadere informatie

HANDLEIDING. Emjee ICT diensten Ticketsysteem

HANDLEIDING. Emjee ICT diensten Ticketsysteem HANDLEIDING Emjee ICT diensten Ticketsysteem Inhoud Snel aan de slag... 3 Wachtwoord opvragen... 3 Inloggen... 4 Ticket aanmaken... 4 Schermopbouw... 4 Inleiding... 5 Ticket maken of bellen?... 5 Inloggen...

Nadere informatie

Handleiding Website Laatste update: april 2014

Handleiding Website Laatste update: april 2014 Laatste update: april 2014 1. Google Search Tijdens de ontwikkeling van uw website werd er veel aandacht besteed aan optimalisatie voor zoekmachines zoals Google. Dit onder andere door de broncode technisch

Nadere informatie

Leerjaar 1/2 ICT-Academie. Niveau 4. Applicatie ontwikkeling

Leerjaar 1/2 ICT-Academie. Niveau 4. Applicatie ontwikkeling Databases SQL Leerjaar 1/2 ICT-Academie Niveau 4 Applicatie ontwikkeling Auteur: R. Meijerink Datum: Januari 2013 0. Inleiding Databases / SQL In deze lessen wordt je geleerd databases te bouwen in SQL-code.

Nadere informatie

Verdien model. Affiliate marketing

Verdien model. Affiliate marketing Verdien model Er zijn verschillende manieren om geld te verdienen met je site. Als je slim bent gebruik je alle manieren zo kan je op zo veel mogelijk manieren geld uit je site halen. Al deze manieren

Nadere informatie

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht Deze vakinhoudelijke uitwerking is ontwikkeld door het Redactieteam van de Schooleamenbank vmbo voor dit

Nadere informatie

Inhoud Inhoud. Over dit boek 7. 1 Eclipse IDE (Integrated Development Environment) 9. 2 Functionele specificatie 13

Inhoud Inhoud. Over dit boek 7. 1 Eclipse IDE (Integrated Development Environment) 9. 2 Functionele specificatie 13 5 Inhoud Inhoud Over dit boek 7 1 Eclipse IDE (Integrated Development Environment) 9 2 Functionele specificatie 13 3 Implementatie grafische gebruikersinterface 31 4 De klassen en methoden 57 5 Technische

Nadere informatie

Plan van aanpak 2006. Door: Jeroen Corsius en Mitchell Diels. GameShop

Plan van aanpak 2006. Door: Jeroen Corsius en Mitchell Diels. GameShop Plan van aanpak 2006 Door: Jeroen Corsius en Mitchell Diels GameShop 1. Inhoudsopgave 1. Inhoudsopgave blz. 2. Achtergronden 3. Projectopdracht 4. Projectactiviteiten 5. Projectgrenzen en Randvoorwaarden

Nadere informatie

Plan van Aanpak Jeugddienst Turnhout

Plan van Aanpak Jeugddienst Turnhout 2013-2014 Plan van Aanpak Jeugddienst Turnhout Nahnisim Sim Jacobs Han Mermans Niels Mangelschots Niels Maes 3 e Jaar Toegepaste Informatica Thomas More Geel 1 Inhoudstabel 1 Aanleiding en achtergrond

Nadere informatie

Programmeren met databanken volgens het lagenmodel in C#

Programmeren met databanken volgens het lagenmodel in C# Programmeren met databanken volgens het lagenmodel in C# met Visual Studio en MySQL HA-2267-04 Informaticabeheer Bert Cauwenberg en Lieven Pauwels Werkgroep Handel 2017 Guimardstraat 1, 1040 Brussel Guimardstraat

Nadere informatie

Fuel. Handleiding voor installatie en gebruik

Fuel. Handleiding voor installatie en gebruik Fuel Handleiding voor installatie en gebruik Inhoudsopgave 1. Installatie 2. Gebruik - Windows - Linux / Apple / andere systemen - Een nieuw voertuig aanmaken - Uitgaven 3. Onderhoud - Waarschuwingen -

Nadere informatie

icafe Een digitaal bestelsysteem voor de horeca Joeri Verdeyen Stefaan De Spiegeleer Naim Ben Tanfous

icafe Een digitaal bestelsysteem voor de horeca Joeri Verdeyen Stefaan De Spiegeleer Naim Ben Tanfous icafe Een digitaal bestelsysteem voor de horeca Joeri Verdeyen Stefaan De Spiegeleer Naim Ben Tanfous 2006-2007 Voorwoord 1 Inhoudsopgave 2 Hoofdstuk 1 Inleiding 3 Hoofdstuk 2 icafe 2.1 Het idee 2.2 Mogelijkheden

Nadere informatie

Waarom WordPress? Wat is WordPress? Bloggen en website Uniek design is mogelijk Makkelijk zelf te beheren

Waarom WordPress? Wat is WordPress? Bloggen en website Uniek design is mogelijk Makkelijk zelf te beheren Waarom WordPress? Wordpress is een bijzonder gebruiksvriendelijk systeem, zowel voor de gebruiker als de webbouwer. Iedereen kan er redelijk snel mee leren werken. Het zelf beheren van pagina s, nieuws,

Nadere informatie

Test Joomla op je PC 1

Test Joomla op je PC 1 1 Disclaimer Bij de samenstelling van dit ebook is de grootst mogelijke zorg besteed aan de juistheid en correctheid van de informatie die in dit ebook wordt verstrekt. De auteur van dit ebook kan op geen

Nadere informatie

Over PHP. PHP en MySQL. 1.1 Inleiding. In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze

Over PHP. PHP en MySQL. 1.1 Inleiding. In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze Over PHP 1.1 Inleiding In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze programmeertaal? En hoe is het ontstaan? Ook leer je welke editors je kunt gebruiken om PHP-scripts te maken en hoe je eenvoudig

Nadere informatie

Handleiding Websitebeheer

Handleiding Websitebeheer Handleiding Websitebeheer Event Media Websites Copyright 2005, Event Media 1. Inleiding... 3 2. CMS-systeem... 3 2.1 Inloggen... 3 2.2 Basis-menu... 3 2.3 Bestaande pagina s aanpassen...3 2.4 Nieuwe pagina

Nadere informatie

Uitgebreid voorstel Masterproef Informatica

Uitgebreid voorstel Masterproef Informatica HoGent Uitgebreid voorstel Masterproef Informatica Titel van het project: Optimalisatie & ontwikkeling van een gegevenstransfertool voor Business Intelligence-gebruikers Datum : 01/11/2012 Naam student

Nadere informatie

Handleiding. Social Media Management Software

Handleiding. Social Media Management Software Handleiding Social Media Management Software Wat is het en waarom gebruiken? 3 Hoe aanloggen? 4 Hoe een sociaal netwerk profiel toevoegen? 5 Hoe berichten toevoegen en klaarzetten om uit te voeren? 7 Hoe

Nadere informatie

Handleiding voor het gebruik van de community website van OBS t Padland

Handleiding voor het gebruik van de community website van OBS t Padland Handleiding voor het gebruik van de community website van OBS t Padland Versie: 1.1 Datum: 18 juli 2013 Geschreven door: ict@padland.nl 2013 OBS t Padland. Pagina 1 Inhoud Inleiding... 3 Padland Startpagina...

Nadere informatie

Met deze module heeft u de mogelijkheid om gemakkelijk, snel en efficiënt uw documenten als naslag in Unit 4 Multivers te koppelen.

Met deze module heeft u de mogelijkheid om gemakkelijk, snel en efficiënt uw documenten als naslag in Unit 4 Multivers te koppelen. Handleiding Office+ Introductie Met de module Office+ gaat een lang gekoesterde wens voor vele gebruikers van Unit 4 Multivers in vervulling: eenvoudig koppelen van documenten in relatiebeheer of documentmanagement

Nadere informatie

Inhoudsopgave. versie 0.8

Inhoudsopgave. versie 0.8 JOOMLA! INSTALLATIE HANDLEIDING versie 0.8 Inhoudsopgave Stappenplan...3 Inrichten database...4 Configuratiecentrum cpanel...4 Aanmaken van een database gebruiker...5 Aanmaken van een database...6 Gebruiker

Nadere informatie

Inhoudsopgave... 1 Disclaimer... 3 Voorwoord... 3 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op

Inhoudsopgave... 1 Disclaimer... 3 Voorwoord... 3 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op 1 Inhoudsopgave... 1 Disclaimer... 3 Voorwoord... 3 Inleiding... 5 Het downloaden van XAMPP... 7 Het installeren van XAMPP... 8 Joomla installeren op XAMPP... 14 Handige links... 15 2 Disclaimer Bij de

Nadere informatie

Naam project Lost And Found Animals Lokaal gehost Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50%

Naam project Lost And Found Animals Lokaal gehost Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50% Naam project Lost And Found Animals Url Lokaal gehost Groepsleden Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50% 1. Beveiliging in de toepassing Naam gebruiker Wachtwoord

Nadere informatie

10 FACEBOOK TIPS VOOR BEDRIJVEN

10 FACEBOOK TIPS VOOR BEDRIJVEN 10 FACEBOOK TIPS VOOR BEDRIJVEN Introductie Social media wordt steeds vaker door bedrijven gebruikt om beter contact met hun klanten te krijgen en uiteindelijk meer inkomsten te realiseren. Facebook is

Nadere informatie

Handleiding Leerplatform EVA 3IMSA http://dev.lerendoejezelf.be/dev_eva_drupal/

Handleiding Leerplatform EVA 3IMSA http://dev.lerendoejezelf.be/dev_eva_drupal/ Handleiding Leerplatform EVA 3IMSA http://dev.lerendoejezelf.be/dev_eva_drupal/ Inhoudsopgave 1 Voorwoord... 3 2 Een account registreren en beheren... 4 3 Oefen je kennis... 8 4 Portfolio... 10 5 Overzichten

Nadere informatie

Search Engine Optimalisation Rapport mrcreezy.be

Search Engine Optimalisation Rapport mrcreezy.be 1 SEO Rapport www.mrcreezy.be Search Engine Optimalisation Rapport mrcreezy.be Geschreven door Unicmedia 2 SEO Rapport www.mrcreezy.be Inhoudsopgave Inleiding Hoofdstuk 1: Huidige ranking & indexatie (Google)

Nadere informatie

Werken in de Cloud. Prijzen.xls. Geschikt voor. Werken in de cloud

Werken in de Cloud. Prijzen.xls. Geschikt voor. Werken in de cloud Pag. 1 Downloads.xls Facturatie.xls Voorraad.xls Prijzen.xls Prijzen.xls Werknemers.xls Klantgegevens.xls Prijzen.xls Voorraad.xls xls Werknemers.xls Voorraad.xls Werknemers.xls Downloads.xls Werknemers.xls

Nadere informatie

Social media checklist

Social media checklist Social media checklist In 15 minuten klaar om klanten te benaderen Sociale media audit? Elk bedrijf weet wel dat ze iets met sociale media moeten doen en hebben daarom ook (toen ze wat tijd over hadden)

Nadere informatie

Handleiding voor Zotero versie 2.0

Handleiding voor Zotero versie 2.0 Handleiding voor Zotero versie 2.0 Michiel Wolda De handleiding voor Zetero is geschreven voor de lezers van het boek Deskresearch: Informatie selecteren, beoordelen en verwerken: tweede editie (Van Veen

Nadere informatie

WordPress Website. Bouw zelf je WordPress Website. www.supersnelonline.nl Maarten Hendrix. Maarten Hendrix

WordPress Website. Bouw zelf je WordPress Website. www.supersnelonline.nl Maarten Hendrix. Maarten Hendrix WordPress Website Bouw zelf je WordPress Website Maarten Hendrix Maarten Hendrix 2 Inhoudsopgave WordPress inleiding... 5 Wat is WordPress?... 5 Wat is het verschil tussen WordPress.org en WordPress.com?...

Nadere informatie

Handleiding voor het installeren van VBA scripts in Outlook

Handleiding voor het installeren van VBA scripts in Outlook Handleiding voor het installeren van VBA scripts in Outlook Brondocument E:\OutLook\InstallerenVBAScriptOutlook.odt Versiebeheer Versie Datum Uitleg 1.0v 21-03-12 1e versie na draaien prototype klant 1.1v

Nadere informatie

Kijk eerst in Computer (Mijn Computer) van je werkplek. Welke stationsletters zie je op de PC?

Kijk eerst in Computer (Mijn Computer) van je werkplek. Welke stationsletters zie je op de PC? Korte omschrijving van dit practicum We zullen spelenderwijze ervaren wat enkele van de virtualisatietechnieken inhouden. We gaan aan de slag met een freeware applicatie voor het aanbieden van een gevirtualiseerde

Nadere informatie

Software Test Plan. Yannick Verschueren

Software Test Plan. Yannick Verschueren Software Test Plan Yannick Verschueren November 2014 Document geschiedenis Versie Datum Auteur/co-auteur Beschrijving 1 November 2014 Yannick Verschueren Eerste versie 1 Inhoudstafel 1 Introductie 3 1.1

Nadere informatie

Handleiding Mijn Kerk

Handleiding Mijn Kerk Handleiding Mijn Kerk 1 www.deinteractievekerk.nl Algemeen Uw kerk gaat de Interactieve Kerk gebruiken. In deze handleiding willen we u op een eenvoudige manier uitleggen hoe de Interactieve Kerk precies

Nadere informatie

Inhoud! Taak 1.3.6 Joomla en zo Door Paul van der Linden. Taak 1.3.6 Joomla en zo

Inhoud! Taak 1.3.6 Joomla en zo Door Paul van der Linden. Taak 1.3.6 Joomla en zo Inhoud! Taak 1.3.6 Joomla en zo Inhoud!... 1 Voorwoord... 2 Joomla 1.5...3 Website...4 Menu s...5 Artikelen...6 Componenten...7 Extensies...8 Tools...9 Conclusie... 10 Bronvermelding... 11 1 Voorwoord

Nadere informatie

Installatie van WerkMeester

Installatie van WerkMeester Installatie van WerkMeester WerkMeester is een WIN32 database-applicatie op basis van een enkele executable, met een aantal werkbestanden en een MySQL database. De software is niet ontwikkeld voor gebruik

Nadere informatie

Zelftest Informatica-terminologie

Zelftest Informatica-terminologie Zelftest Informatica-terminologie Document: n0947test.fm 01/07/2015 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTIE Deze test is een zelf-test, waarmee u

Nadere informatie

Handleiding Reseller Controle Paneel

Handleiding Reseller Controle Paneel Handleiding Reseller Controle Paneel Inloggen Om in te loggen in het Controle Paneel kunt u de gebruikersnaam en wachtwoord gebruiken welke u van ons heeft ontvangen. Nieuw is dat u ook met uw social media

Nadere informatie

Peelland ICT Online Back-up

Peelland ICT Online Back-up Peelland ICT Online Back-up Peelland ICT biedt volledig in eigen beheer online back-up aan. Hiermee voorzien wij onze klanten van de laatste nieuwe back-up mogelijkheden en technieken. Risico s conventionele

Nadere informatie

Connect Social Business

Connect Social Business Connect Social Business Joey Kaan September 2014 Inhoudsopgave 1 Achtergronden 4 2 Probleemstelling & Doelstelling 5 2.1 Leren Professioneel Functioneren.................. 5 2.2 Facebook API leren door

Nadere informatie

Beschrijving functioneel en technisch design van de website

Beschrijving functioneel en technisch design van de website Bespreking Punten: Beschrijving functioneel en technisch design van de website Nr. Punt 1 Student 2 Bedrijf 3 Algemene lay out 4 Technologieën 5 Webruimte en datatrafiek 1. Student Registratie Bij de registratie

Nadere informatie

Handleiding Webhosting Online Linux

Handleiding Webhosting Online Linux Handleiding Webhosting Online Linux April 2015 2015 Copyright KPN Zakelijke Markt Alle rechten voorbehouden. Zonder voorafgaande schriftelijke toestemming van KPN Zakelijke Markt mag niets uit dit document

Nadere informatie

Wij de werkzaamheden u het resultaat!

Wij de werkzaamheden u het resultaat! Entersite Design Wij de werkzaamheden u het resultaat! Entersite Design Bloemenlaan 21 2292 DA Wateringen Tel: 0174-220365 Emailadres: info@entersite.nl Internet: www.entersite.nl Inleiding Vele bedrijven

Nadere informatie

Website plaatsen op het Parallels-platform van InterNLnet / Tele2.

Website plaatsen op het Parallels-platform van InterNLnet / Tele2. Website plaatsen op het Parallels-platform van InterNLnet / Tele2. Website plaatsen op het Parallels-platform van InterNLnet/Tele2 Pagina 1 Index 1. Inleiding 2. Keuze platform en hostingpakket. a. Platform

Nadere informatie

VERENIGINGSWIJZER.NL FINAL DOCUMENT

VERENIGINGSWIJZER.NL FINAL DOCUMENT Vrije Universiteit Amsterdam Faculteit der Exacte Wetenschappen Project Multimedia Peter van Ulden Studentnr. 1494759 VERENIGINGSWIJZER.NL FINAL DOCUMENT INHOUDSOPGAVE 1 Inleiding...3 2 Aanpak & Techniek...4

Nadere informatie

Handleiding enquetemaken.be

Handleiding enquetemaken.be Hoofdstuk : Starten met je eigen enquête - Registreren - Enquete Maken - Instellingen Hoofdstuk 2 : Opstellen van de vragenlijst - Vragen maken - Vraagtypes - Vragenlijst beheren - Vertakkingen invoeren

Nadere informatie

Handleiding Videoplatform AmersfoortBreed. www.amersfoortbreedtv.nl

Handleiding Videoplatform AmersfoortBreed. www.amersfoortbreedtv.nl Handleiding Videoplatform AmersfoortBreed www.amersfoortbreedtv.nl Inhoud 1. Algemene instructie p. 2 Video bekijken 2. Zoeken op het videoplatform p. 3 3. Video delen p. 4 4. Reacties bekijken / plaatsen

Nadere informatie

Een database gebruiken

Een database gebruiken Een database gebruiken In een vorige handleiding heb ik laten zien hoe je met Scratch soortgelijke gegevens kunt opslaan in een lijst om deze op een later moment weer op te halen. Als voorbeeld las ik

Nadere informatie

Inventus Software. Antum Secured Mail / Message System. Gebruikershandleiding

Inventus Software. Antum Secured Mail / Message System. Gebruikershandleiding Inventus Software Antum Secured Mail / Message System Gebruikershandleiding 1 Hoe begin ik? 3 2 Wat is er zoal aanwezig in het hoofdprogramma? 3 3 Hoe decoder ik e-mails of tekstberichten? 4 3.1 Decoderen

Nadere informatie

WordPress in het Kort

WordPress in het Kort WordPress in het Kort Een website maken met Wordpress. In minder dan één uur online! Inclusief installatie van een thema en plugins Alle rechten 2013, Rudy Brinkman, BrinkhostDotCom, http://www.brinkhost.nl

Nadere informatie

Organisatie. Gestart in 2009 Open Source Webdevelopment Grafische achtergrond Servicegericht

Organisatie. Gestart in 2009 Open Source Webdevelopment Grafische achtergrond Servicegericht Even voorstellen Organisatie Gestart in 2009 Open Source Webdevelopment Grafische achtergrond Servicegericht Ons team Philip Vergunst Oprichter en webdeveloper Nathan Vergunst Back-end developer Cor van

Nadere informatie

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat: Training Trainingscode Duur Gepubliceerd Taal Type Leermethode Kosten SF2015V8 4 dagen 02/02/2015 Nederlands & Engels Developer, basis Invidueel & klassikaal Op aanvraag Deze training richt zich op het

Nadere informatie

PHP-OPDRACHT SITE BOUWEN

PHP-OPDRACHT SITE BOUWEN PHP-OPDRACHT SITE BOUWEN PERIODE 4 LEERJAAR 1 Opleiding: Duur: Applicatieontwikkelaar 1 onderwijsperiode (4-8 weken) Voorkennis: Basiscursus PHP 5.4 Victor Peters (978 90 125 8499 9) Basiscursus XHTML,

Nadere informatie

LIVE PERFORMANCE. Bijlage Onderzoek Social Media. Sander van de Rijt PTTM22

LIVE PERFORMANCE. Bijlage Onderzoek Social Media. Sander van de Rijt PTTM22 LIVE PERFORMANCE Bijlage Onderzoek Social Media Sander van de Rijt PTTM22 Inhoudsopgave Social Media onderzoek Heesakkers & Daniels bestrating 3 Wat is social media? 3 Voor- en nadelen social media 3 Voordelen

Nadere informatie

Cursus Programmeren en Dataverwerking.

Cursus Programmeren en Dataverwerking. Cursus Programmeren en Dataverwerking http://hay.github.io/codecourse Vanavond (18.00-21.30) Introductierondje Algemene introductie (60-90m) Iets over bits en bytes Iets over programmeurs en programmeertalen

Nadere informatie

SQL SERVER 2008. Werking van Database Snapshots

SQL SERVER 2008. Werking van Database Snapshots KATHOLIEKE HOGESCHOOL KEMPEN GEEL SQL SERVER 2008 Werking van Database Snapshots ELINE STEYVERS BRAM DE SMEDT JOEY LEMMENS WOORD VOORAF Werking van Database Shapshots is bedoeld om mensen wegwijs te maken

Nadere informatie

MA!N Rapportages en Analyses

MA!N Rapportages en Analyses MA!N Rapportages en Analyses Auteur Versie CE-iT 1.2 Inhoud 1 Inleiding... 3 2 Microsoft Excel Pivot analyses... 4 2.1 Verbinding met database... 4 2.2 Data analyseren... 5 2.3 Analyses verversen... 6

Nadere informatie

De Kleine WordPress Handleiding

De Kleine WordPress Handleiding Introductie Dit is geen uitgebreide handleiding om een WordPress website of blog mee te bouwen. Het is ook geen overzicht van alle aspecten die een WordPress website zo bijzonder maken en geen verhandeling

Nadere informatie

Succesvol campagne voeren

Succesvol campagne voeren Succesvol campagne voeren Spread the word, spread the feeling! Campagne voeren: íedereen kan het! In deze toolkit vind je tips voor het campagne voeren. Dit is gegarandeerd het leukste onderdeel van jouw

Nadere informatie

Content Management Systeem Specifieke modules van het Steenstra CMS 2011

Content Management Systeem Specifieke modules van het Steenstra CMS 2011 Content Management Systeem Specifieke modules van het Steenstra CMS 2011 2. Overzicht en specificering van additionele modules Naast de basis implementatie is het Steenstra CMS systeem uit te breiden met

Nadere informatie

Kleine cursus PHP5. Auteur: Raymond Moesker

Kleine cursus PHP5. Auteur: Raymond Moesker Kleine cursus PHP5 Auteur: Raymond Moesker Kleine cursus PHP PHP is platform en CPU onafhankelijk, open source, snel, heeft een grote userbase, het is object georiënteerd, het wordt omarmd door grote bedrijven

Nadere informatie

Werking van de Office Connector, en het oplossen van fouten.

Werking van de Office Connector, en het oplossen van fouten. Werking van de Office Connector, en het oplossen van fouten. De Office Connector zorgt ervoor dat de Microsoft Officeomgeving gebruikt kan worden als ontwerp en genereeromgeving voor documenten waarbij

Nadere informatie

Cursus Analyse voor Web Applicaties 1. Webdesign / Web Programmeren Analyse voor web applicaties SDM methode + Basis UML

Cursus Analyse voor Web Applicaties 1. Webdesign / Web Programmeren Analyse voor web applicaties SDM methode + Basis UML Cursus Analyse voor Web Applicaties 1 Organisatie Opleiding Module Onderwerp Syntra AB Webdesign / Web Programmeren Analyse voor web applicaties SDM methode + Basis UML Analyse op basis van SDM en UML

Nadere informatie

Drupal lokale installatie op Windows 7.

Drupal lokale installatie op Windows 7. Drupal lokale installatie op Windows 7. Door Paul Driedijk april/mei 2015 Onderstaande uitleg is bedoeld om Drupal uit te proberen op je eigen computer. Wil je Drupal later installeren op een webserver

Nadere informatie

Online Marketing. Door: Annika Woud ONLINE MARKETING

Online Marketing. Door: Annika Woud ONLINE MARKETING Online Marketing Door: Annika Woud 1 Inhoudsopgaven 1 Wat is online marketing? 2 Hoe pas je online marketing toe op een website? Hoe pas je het toe? SEO Domeinnaam HTML Google Analytics Advertenties op

Nadere informatie

Plan van aanpak Toogle

Plan van aanpak Toogle Plan van aanpak Toogle Gemaakt door, Kevin Donkers Paul v.d. Linden Paul Eijsermans en Geert Tapperwijn 1 Inhoudsopgave 1 Inhoudsopgave...2 2 Inleiding...3 3 Projectopdracht...4 4 Projectactiviteiten...5

Nadere informatie

Technologie en Interactie 3.2: software architectuur

Technologie en Interactie 3.2: software architectuur Technologie en Interactie 3.2: software architectuur Manual IAM-TDI-V2-Technologie en Interactie. Jaar 0809 blok 2 Oktober 2008 Fons van Kesteren 1/8 Inhoud Technologie en Interactie 3.2: software architectuur...

Nadere informatie