1 1 In
het
WOORD VOORAF kader
van
de
specialisatiestage
van
het
derde
jaar
Multimedia
&
Communicatietechnologie werd dit dossier samengesteld. Het moet de stagebegeleider, coach en juryleden een overzicht geven van de technische uitwerking van de stage die ik heb genoten, alsook een technisch naslagwerk zijn voor het stagebedrijf om een eventuele voorzetting van dit project te realiseren.
In dit voorwoord wil ik graag de docenten bedanken voor hun tips en bijsturingen met betrekking tot dit project. In het bijzonder bedank ik Dhr. Seghers Marc voor zijn ondersteuning gedurende de volledige stage. Dankzij zijn bedrijf heb ik mij kunnen specialiseren
in
verschillende
vakgebieden
zoals
netwerken,
webtechnologie
&
programmeren. Hierbij wens ik ook mijn coach Dhr. Roobrouck Dieter te bedanken voor de nodige opvolgingen van de stage, met name de verslaggeving.
Een laatste dankbetuiging gaat uit naar mijn vrienden en familie die me gedurende de volledige stageperiode gesteund hebben en ook bij het ontwerp van dit document hun steentje hebben bijgedragen.
1
2 2
INHOUDSOPGAVE
1
WOORD VOORAF ............................................................................ 1
2
INHOUDSOPGAVE .......................................................................... 3
3
LIJST MET AFKORTINGEN .............................................................. 5
4
INLEIDING ..................................................................................... 7
5
PROJECTSAMENVATTING ............................................................. 11
6
PROJECTFICHE............................................................................. 13
7
PLANNING.................................................................................... 15
7.1 7.2
Oorspronkelijke planning ................................................................ 15 Oorspronkelijk vs. werkelijk ............................................................ 16
8
CHECKLIST .................................................................................. 19
8.1 8.2
Globaal a.d.h.v. projectfiche ........................................................... 19 Gedetailleerde checklist.................................................................. 19
9
NETWERKIMPLEMENTATIE.......................................................... 21
9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8
Globaal overzicht........................................................................... Overzicht site 1 ............................................................................. Administratie ruimte ...................................................................... Reservatie bureau ......................................................................... Cafetaria ...................................................................................... Kiosk ruimte ................................................................................. Server ruimte ............................................................................... Server..........................................................................................
10 10.1 10.2 10.3 10.4 10.5 10.6 10.7
21 23 25 27 28 28 29 35
R E S E R V A T I E S Y S T E E M & W E B S I T E ................................. 41 Database...................................................................................... Architectuur globaal ....................................................................... Architectuur Coldfusion .................................................................. Architectuur Adobe Flex 2.0 ............................................................ Architectuur Easy Reservation Manager ............................................ Website & reservatiesysteem .......................................................... Administratiepaneel .......................................................................
42 45 47 49 50 53 65
11
BESLUIT ....................................................................................... 71
12
PERSOONLIJKE CONCLUSIE ......................................................... 75 3
13
LIJST MET AFBEELDINGEN ........................................................... 77
14
BRONVERMELDINGEN .................................................................. 79
15
BIJLAGEN..................................................................................... 83
4
3 3
LIJST MET AFKORTINGEN
ADSL
Asymmetric Digital Subscriber Line
CD
Compact Disc
CPU
Central Processing Unit
DHCP
Dynamic Host Configuration Protocol
DNS
Domain Name System
FTP
File Transfer Protocol
HDD
Hard Disk
IP
Internet Protocol
LAN
Local Area Network
MAC
Media Access Control
RAM
Random Access Memory
USB
Universal Serial Bus
IT
Informatie Technologie
SPAM
Sending People Annoying Mail / Stupid Pointless Annoying Messages
VPN
Virtual Private Network
ISP
Internet Service Provider
VGA
Video Graphics Array
DVR
Digital Video Recorder
LCD
Liquid Crystal Display
ISDN
Integrated Services Digital network
TV
Televisie
PC
Personal Computer
LAN
Local Area Network
WAN
Wide Area Network
MP3
MPEG-1 Audio Layer 3
UTP
Unshielded Twisted Pair
UPS
Uninterruptible Power Supply
RAM
Random Access Memory
SCSI
Small Computer System Interface
5
RAID
Redundant Array of Inexpensive disks
IIS
Internet Information Services
SBS
Small Business Server
WSUS
Windows Service Update Server
PPTP
Point-to-Point Tunneling Protocol
POP
Post Office Protocol
AMF
Action Message Format
PABX
Private Automatic Branch eXchange (telefooncentrale)
KMO
Kleine- en Middelgrote Ondernemingen
RIA
Rich Internet Application
VTV
Vlaamse Tennis Vereniging
MD5
Message Digest Algorithm 5
6
4 4
INLEIDING
Dankzij mijn opleiding Multimedia en Communicatietechnologie aan de Hogeschool WestVlaanderen te Kortrijk heb ik zeer veel theoretische en praktische kennis kunnen opnemen. Toch kan men tijdens een schoolopleiding niet ingaan op alle aspecten van een bepaalde materie behandelen en ze kan hier allerminst zeer diep op in gaan. Het vormt eerder een basis die in veel gevallen een eerste stap is naar een groter, meer omvangrijker project. Hiervoor is de specialisatiestage tijdens het laatste jaar van de opleiding een uitstekende manier om de aangeleerde technieken en opgenomen kennis in praktijk om te zetten in een ‘echt’ bedrijf. Tevens omvat zo’n stage niet enkel een technische uitwerking van een opgelegd project, het leert de stagestudent ook om te gaan met medewerkers, oversten, technici, bedrijfsleiders, gebruikers, … Het werken in teamverband is onvermijdbaar en is minstens even belangrijk als het geleverde werk. Tenniscenter Waasland als stagebedrijf was hierin dan ook een evidente keuze, doordat het een toffe en frisse bedrijfscultuur heeft dat qua technische inhoud zeer omvangrijk, interessant en leerrijk was.
Tenniscenter Waasland is een sportclub die als voornaamste sport het tennis promoot, maar ook andere sporten kunnen hier worden beoefend zoals squash, spinning, en badminton. Het bedrijf is ruim 1 hectare groot en omvat 6 buitenpleinen, 3 binnenpleinen, 5 squashzalen en een spinningruimte. In het hoofdgebouw bevindt zich een grote cafetaria (200 pers.), 4 sanitaire ruimten, een tribune,
2 bureauruimten en
een industriële keuken. De sportclub telt meer dan 1000 leden verspreidt over het volledige jaar en is daarmee één van de grotere sportclubs uit het Waasland. Door de groei van het bedrijf is men sinds enkele jaren bezig met de modernisering van de club, en ook het IT beleid ontsnapt niet aan deze vernieuwingen.
Zoals dit bij vele KMO het geval is waren er bij aanvang van de stage heel wat structurele problemen met de informatica. Toch bleek er meer aan de hand te zijn, want de zaakvoerders zagen door de hoge bomen het bos niet meer en zagen informatica eerder als tandpijn dan als een praktisch werkinstrument.
De club bezit over verschillende informaticatoestellen voor diverse toepassingen die spijtig genoeg niet optimaal werden benut. Apparatuur dat nauwelijks met elkaar samen werkte, een gebrek aan IT organisatie en de gedecentraliseerde werking van de
7
systemen maakte het voor de medewerkers een onhaalbare kaart om correct te kunnen functioneren. Het geïnvesteerde geld in die toestellen werd hierdoor dan ook nauwelijks terug verdiend waarmee de TCO een echt dieptepunt kende.
Naar aanleiding van deze infrastructuurproblemen werd dan ook een plan uitgetekend die de huidige problematiek diende op te lossen. Zulke problemen kunnen echter niet op een paar weken worden opgelost omdat men zeer sterk afhankelijk was van de informatica. Daarom werd besloten het project te faseren om een overzicht te behouden in de werken.
In de eerste fase werd de basis van het informatica netwerk behandeld: de uitbouw van een modern netwerk waarop moderne IT systemen zouden ondergebracht worden. Er werd zorgvuldig nagedacht over de indeling van het netwerk, en er werd rekening gehouden met eventuele uitbreidingen naar andere bedrijvensites in de nabije omtrek. Het netwerk heeft als bedoeling een gecentraliseerde werking van alle systemen te bekomen dat gebruiksvriendelijk, uitbreidbaar en onderhoudbaar is. Een aantal eisen werden gesteld tijdens de loop van de stage waarmee zeker rekening diende te worden gehouden:
Oplossing voor e-mail verkeer naar meer dan 500 klanten Oplossing voor de toename van SPAM verkeer Optimalisering huidige hardware Verlening levensduur van kritische apparaten Centralisering database structuur voor bestaande software Integratie thuisnetwerk in het bedrijfsnetwerk Voorbereiding telefooncentrale Inventarisering computerpark Optimalisering IT uitgaven
Niet enkel een netwerkinfrastructuur kan zorgen voor een betere flow van alle bedrijfsprocessen. Zo werd het toenmalige reservatieproces van terreinen manueel uitgevoerd.
Hierdoor
ging
al
te
vaak
belangrijke
informatie
verloren
zoals
contactgegevens en betalingsinformatie . Een dergelijk manueel reservatiesysteem kan het best worden geïnformatiseerd. Dit biedt Tenniscenter Waasland niet enkel de mogelijkheid om een veel groter publiek aan te spreken, het kan ook een sterke vereenvoudiging betekenen voor de tornooi- en spelleiding die minder energie moeten stoppen in de verdeling van terreinen.
8
De zaakvoerder was zich geheel bewust van deze voordelen en had hier reeds over nagedacht. Bij de afweging tussen de aankoop van een dergelijk programma op de markt of een eigen ontwerp hiervan bleek al snel dat het programma in eigen huis ontwerpen heel wat voordelen kon bieden. Bestaande programma’s kunnen moeilijk inspelen op de specifieke prijzenpolitiek van een sportclub waarbij verschillende prijzen op verschillende uren aan verschillende type leden worden gevraagd. Bestaande programma’s bleken ook nog eens duur te zijn, zonder enige grafische ondersteuning of gebruiksvriendelijkheid voor de klant. Het ontwerp van dit programma leidde tot een 2e fase in het informatiseringproces van de sportclub.
De modernisering van het informaticabeleid verplichtte uiteindelijk ook de uitbouw van een nieuw visitekaartje voor de club: de bedrijfswebsite. De huidige website liet de wensen over van de hedendaagse verwachtingen van de gebruiker en bevatte oude gegevens wat leidde tot een beperkt bezoekersaantal op de website. Daarom werd een tactiek uitgedokterd waarmee de club meer leden naar zijn website kan lokken.
Door het reservatieprogramma te integreren in de website was de gebruiker verplicht te surfen naar de bedrijfswebsite van Tenniscenter Waasland om een terrein te reserveren. Door op deze pagina voldoende up-to-date informatie weer te geven, kan het bezoekersaantal drastisch worden verhoogd. Één van die up-to-date informatie is de weergave van een kalender met de eerstkomende activiteiten. Op die manier is de gebruiker steeds op de hoogte van wat er reilt en zeilt in de club, ook als men er niet is. Een RSS feed met tennisinformatie moet de leden dan weer op de hoogte stellen van het laatste tennisnieuws. Ook een aanbiedingenpagina of sponsorsectie bied de sportclub voordelen aan om extra inkomsten te genereren.
In de volgende hoofdstukken laat ik u graag meer weten over de technische uitwerking van dit geheel systeem.
9
5 5
PROJECTSAMENVATTING
11
6 6
PROJECTFICHE
13
14
7 7
PLANNING
7.1 Oorspronkelijke planning Start
Einde
Beschrijving
12/03/07
16/03/07
Kennismaking bedrijf en medewerkers Inventarisering materiaal Aankopen benodigd materiaal Contacten leggen met ISP’s + keuze maken Start aanleg netwerk bureauruimte(kabelgoten)
19/03/07
23/03/07
Verdere aanleg netwerk bureauruimte (netwerkkabels, schakelmateriaal) Complete assemblage serverrack (telefonie + netwerk + kassa + versterkers + muziek)
26/03/07
28/03/07
Desktops installeren en configureren Microsoft Windows Small Business Server installeren en configureren Microsoft Exchange server configureren SPAM policy verbeteren
09/04/07
13/04/07
Opleiding Adobe Flex 2 Contacten leggen telefonie
16/04/07
20/04/07
Start ontwikkeling reservatiesysteem via Dataservices Database ontwikkelen
23/04/07
27/04/07
Algemene lay-out Inloggen Inschrijven
30/04/07
04/05/07
Reservatie tennispleinen
07/05/07
11/05/07
Reservatie tennispleinen Reservatie squash
14/05/07
18/05/07
Reservatie squash Reservatie spinning
21/05/07
25/05/07
Onderlinge integratie van systeem Bijkomende pagina’s Testfase + aanpassingen
28/05/07
01/06/07
Ontwikkeling website Index- , informatie- , contact- , reservatiepagina
04/06/07
08/06/07
Afwerking website Integratie huisstijl Testfase
11/06/07
15/06/07
Complete testfase
15
7.2 Oorspronkelijk vs. werkelijk Oorspronkelijk
Werkelijk
Kennismaking bedrijf en medewerkers
Kennismaking bedrijf en medewerkers
Inventarisering materiaal
Inventarisering materiaal
Aankopen benodigd materiaal
Aankopen benodigd materiaal
Contacten leggen met ISP’s
Contacten leggen met ISP’s
Aanleg netwerk
Aanleg netwerk
Aanleg netwerk
Aanleg netwerk
Assemblage serverrack
Assemblage serverrack Desktops installeren en configureren Installatie Printservers Installatie software Bewakingsbeelden over IP Digitaal reclamebord
Desktops installeren en configureren
Desktops installeren en configureren
Microsoft Windows SBS
Microsoft Windows SBS
Microsoft Exchange server
Microsoft Exchange server
Spam Policy verbeteren
Spam Policy verbeteren Afwerking serverrack Installatie KIOSK
Opleiding Adobe Flex
Opleiding Adobe Flex
Contacten leggen telefonie
Contacten leggen telefonie Oude problemen oplossen Microsoft Windows SBS Microsoft Exchange server Spam Policy verbeteren Noodvoeding
Ontwikkeling reservatiesysteem
Ontwikkeling reservatiesysteem
Database
Database ontwikkelen Opleiding Adobe Flex
16
Algemene lay-out
Algemene lay-out
Inloggen
Inloggen
Inschrijven
Inschrijven Database Dekstops verder configureren Oude PC’s herassembleren
Reservatie tennispleinen
Reservatie tennispleinen Inloggen Inschrijven Controle componenten MD5 encrypter
Reservatie tennispleinen
Reservatie tennispleinen
Reservatie squash
Reservatie squash Algemene lay-out Integratie website & reservatiesysteem
Reservatie squash
Reservatie squash
Reservatie spinning
Reservatie spinning Algemene lay-out via template Email listing voor nieuwsbrief
Onderlinge integratie systeem Bijkomende pagina’s
Onderlinge integratie systeem Bijkomende pagina’s Wijzigingen bestaande componenten Reservatiesysteem advanced
Ontwikkeling website
Ontwikkeling website
Index- , informatie-, contact-, reservatiepagina
Index- , informatie-, contact-, reservatiepagina Administratiepaneel
Afwerking website
Afwerking website
Integratie huisstijl
Integratie huisstijl
Testfase
Testfase Administratiepaneel
Complete testfase
Complete testfase
17
8 8
CHECKLIST
8.1 Globaal a.d.h.v. projectfiche Complete netwerkinfrastructuur SPAM oplossing Reservatiesysteem Website
8.2 Gedetailleerde checklist Netwerkinfrastructuur Fysische netwerkinfrastructuur (bekabeling, netwerkaansluitingen, …) Passende Internet Service Provider (ISP) Aankoop server & netwerkmateriaal Verlenging levensduur apparatuur in cafetaria Voorbereiding telefooncentrale Installatie & configuratie noodvoeding (UPS) Centralisatie telecom apparatuur Windows Small Business Server VPN verbinding (thuis werken) Geïntegreerde oplossing voor e-mail Vermindering hoeveelheid SPAM Centralisatie desktopapplicaties Centralisatie gegevensopslag Back-up voorzieningen Oplossing voor oud reserveringsysteem Online bekijken van beveiligingscamera’s Eigen hosting website Beveiligingsmaatregelen Back-up internetlijn Documentatie netwerkinfrastructuur Digitaal reclamebord
19
Reservatiesysteem & website Reservatiesysteem gebruiker Reservatiesysteem beheerder Grafische ondersteuning uurrooster Grafische overgangen Dynamische website Database voor gegevensopslag van o.a. ledeninformatie Ondersteuning van e-mail bevestigingen Geïntegreerde controle op familieleden Speciale aandacht voor invoer van gebruikers RSS feeds voor tennisinformatie Kalender systeem Real-time visualisatie Profiel wijzigen Mijn abonnementen Printen reservatie Geavanceerd administratiepaneel met beheer van Sporttakken Speltypes Terreinen Reservaties Leden Printen ledenlijsten Sluitingsperiodes Betalingsmogelijkheden Validatie leden Adres etikketten afdrukken Prijzen en abonnementen Interclub reservatie Activiteiten E-mail Website / informatieteksten Kalender Distributiegroepen
20
9 9
NETWERKIMPLEMENTATIE
9.1 Globaal overzicht Tenniscenter Waasland heef 2 bedrijflocaties: het hoofdgebouw waar de cafetaria, bureauruimten, sanitaire ruimten en squashzalen zijn gehuisvest en daarnaast een bedrijvencomplex in de Walburgstraat verderop in de stad. Deze laatste locatie bestaat uit 3 panden: de thuislocatie van de eigenaar en 2 panden waarin zich bureaus bevinden. Bij deze bureau’s horen een 20-tal computers die niet tot het onderhoud van Tenniscenter Waasland behoren, maar wel fysisch in het netwerk staan.
Figuur 1 – Globaal netwerk
De fysische verbinding wordt bekomen door een constante Virtual Private Network verbinding tussen de 2 sites. Deze VPN verbinding heeft volgende functies:
Het computernetwerk met elkaar verbinden Het telefonienetwerk met elkaar verbinden
21
Figuur 2 - Globaal netwerk
In
de
volgende
paragrafen
worden
de
verschillende
netwerk
toestellen besproken. Van elk toestel bevind zich in bijlage een technische fiche over dat toestel, alsook eventuele toegangscodes en IP
adressen.
Ook
de
verantwoordelijke
voor
technische
ondersteuning is hierop vermeld. De informatie die volgt in de volgende paragrafen is een aanvulling op deze technische fiches die meer duidelijkheid geeft over de praktische functionaliteit.
22
9.2 Overzicht site 1 De hoofdlocatie van de sportclub, gebouwencomplex A, bestaat uit verschillende informatica toestellen met elk hun specifieke toepassingen die verspreidt staan over verschillende afdelingen:
Reservatie ruimte Kiosk ruimte Administratie ruimte Cafetaria Serverruimte Spinningruimte
Figuur 3 geeft een overzicht van de fysische verbindingen van de verschillende afdelingen. Het hart van het netwerk bevindt zich in het serverlokaal, dat in het volgende hoofdstuk verder wordt besproken. Figuur 4 toont aan welke verschillende toestellen aanwezig zijn, en op welke afdeling ze zich bevinden.
Figuur 3 - Fysische verbindingen netwerk
23
Figuur 4 – Schematische voorstelling IT toestellen
Een uitgebreider schema van alle verschillende apparatuur die aanwezig is op het bedrijf, van ISP tot computer, bevindt zich in bijlage. Deze bijlagen zijn eveneens aanwezig in de serverkast om bij eventuele infrastructuurwerken een detailleert schema bij de hand te hebben.
24
9.3 Administratie ruimte Deze ruimte bevind zich op het gelijkvloers en is de belangrijkste afdeling wat betreft administratie. De bureau van de zaakvoerder behoudt zich in deze ruimte. Er is ook een 2e computer aanwezig met als bedoeling andere medewerkers een computer aan te bieden.
In deze ruimte werden tevens elektriciteitswerken verricht door het aanbrengen van kabelgoten die voldoende netwerk- en stopcontact aansluitingen voorzien. In deze kabelgoten bevinden zich ook reservekabels die verbonden zijn met de serverkast. Het gaat hier om 2 COAX kabels, een VGA kabel en een reserve netwerkkabel voor eventuele uitbreidingen.
De COAX kabels kunnen gebruikt worden voor enerzijds een extra scherm voor de bewakingsbeelden, en anderzijds voor een bijkomend tv toestel. Een extra scherm voor de bewakingsbeelden kan ook worden bekomen dankzij een VGA aansluiting. De huidige Digital Video Recorder beschikt echter niet over de mogelijkheden om zowel een analoog als digitaal scherm aan te sturen.
9.3.1 Administratie PC De administratie pc is een zeer uitgebreide computer met diverse software toepassingen op geïnstalleerd. Het is de uitvalsbasis van de sportclub op IT gebied en omvat allerlei client-server programma’s die het beheer van het netwerk mogelijk maken. Zo is de boekhoud- en betalingssoftware hierop geïnstalleerd, maar ook Photoshop, Illustrator en andere bedrijfspecifieke toepassingen zijn aanwezig.
9.3.2 Entertainment computer Dit computersysteem is speciaal ontwikkeld voor zaken die niet tot de bedrijfscontext behoren, in eerste plaats als entertainment en multimedia computer. Op die manier wordt de administratie PC niet belast met bijkomende software zoals iTunes, video bewerkingsprogramma’s e.d.
25
9.3.3 Kiosk computer De kiosk computer stuurt het digitaal LCD scherm aan in de inkomhal van de sportclub. Het informeert de leden omtrent nieuwe acties of de start van een nieuw seizoen. Het wordt aangestuurd door een laptop. De PowerPoint die permanent wordt vertoond bevind zich lokaal op de computer omdat de laptop niet over de mogelijkheid beschikt om op het intranet te surfen.
9.3.4 Kleuren laser printer Kleurenlaserprinter die wordt gebruikt voor hoogwaardige afdrukken. Minder belangrijke documenten worden op de zw/w laser printer afgedrukt die zich in de reservatieruimte bevind. Deze printer werkt volgens een speciale techniek (sponsen), wat tot mooie afdrukken leidt, maar de opstarttijd echter tot 20 min. brengt. Hier moet rekening mee gehouden worden ingeval van tijdelijke uitschakeling van het apparaat.
9.3.5 Fax apparaat Regulier faxapparaat dat is aangesloten op de tweede ISDN lijn van Belgacom.
26
9.4 Reservatie bureau Op de eerste verdieping, in de cafetaria, bevindt zich vervolgens een tornooitafel waarop medewerkers gedurende een tornooi alle uitslagen, verdeling van terreinen e.d. bijhouden.
9.4.1 Reservatie computer Het oorspronkelijke toestel (IBM Pentium 2) werd vervangen door een nieuw systeem zodat het overweg kan met de nieuwste software en hardware. Een grafische uitbreidingskaart voorziet de aansturing van een projector in de cafetaria. Dit is zeer handig om eventuele puntenuitslagen op het groot scherm weer te geven.
9.4.2 Switch Bij gebrek aan netwerkaansluitingen werd geopteerd om een switch te installeren, beter dan nieuwe netwerkkabels te plaatsen. Zowel printserver als de reservatiepc zijn hierop aangesloten. Bij uitgebreide tornooien wordt een 3e uitgang gebruikt door externe medewerkers voor internettoegang.
9.4.3 Laser printer zw/w Voor het afdrukken van spelerslijsten, tornooiregelingen, …
9.4.4 Printserver Zorgt voor de verbinding tussen printer en netwerk. Printserver heeft 2 parallelle poorten en is configureerbaar via webbrowser. De laser printer is aangesloten op de parallelle poort 1.
27
9.5 Cafetaria De cafetaria beschikt over een computergestuurd muziek- en kassa systeem. Deze apparatuur stond oorspronkelijk in de cafetaria. De apparatuur kwam er echter erbarmelijk voor kast.
Daarom
door de luchtverontreiniging en extreme temperaturen in de houten is
zoveel
mogelijk
vermogensapparatuur
(computerkasten,
audio
versterkers, …) uit deze kast gehaald en naar de serverkast verplaatst. Hierdoor wordt de levensduur van die apparatuur sterk verlengd. De eigenlijke sturing zelf (schermen, toetsenborden, magneetkaart lezer, …) staat echter nog steeds in de cafetaria zelf.
De camerabewaking werd oorspronkelijk ook bediend in deze kast, maar ook dit toestel is verplaatst naar de serverkast. Hiervoor werden ook de toekomende COAX kabels verlengd alsook de luidsprekerkabels van de cafetaria.
Verder is ook Belgacom TV geïntegreerd in de cafetaria om voornamelijk sporten te projecteren op groot scherm. Er is een verbinding tussen de decoder & de projector voorzien. Het geluid van de TV is aangesloten op het mengpaneel waardoor het afspeelbaar is op de luidsprekers van de cafetaria.
9.6 Kiosk ruimte De kiosk is in principe gewoon een PC waarop leden een terrein kunnen reserveren indien ze dit nog niet thuis gedaan hebben of men thuis geen internetverbinding voorhanden heeft. De computer is dermate beveiligd dat er in principe geen wijzigingen aan het besturingsysteem kunnen worden verricht. Een specifiek softwarepakket, Internet Kiosk Pro werd hiervoor aangekocht en geïnstalleerd zodoende maximale beveiliging te waarborgen. Sinds de installatie van dit pakket blijkt het aantal pogingen tot inbraak in het besturingsysteem door gebruikers nihil te zijn.
28
9.7 Server ruimte De serverruimte is de plaats waar alle informatica bedrading toekomt. Niet enkel UTP kabels of voedingskabels bereiken deze ruimte. Diverse beeld-, audio- en datakabels komen toe in deze ruimte. Een gedocumenteerde handleiding bij deze ruimte zal zeker van pas komen bij eventuele uitbreidingen of wijzigingen aan het systeem.
Omdat het over zeer veel toestellen gaat die centraal dienden te worden gestockeerd (server, ups, netwerkapparatuur, dekstop computers, audio versterkers, …) leek het zeer nuttig op een professionele serverkast te installeren. Dit kan als een overkill lijken voor een sportclub, maar al snel bleek dat er zelfs te weinig plaats is voor alle toestellen te plaatsen.
Onderstaande figuur illustreert de opbouw van de serverrack:
Patch paneel 1 Patch paneel 2 Router 1 Switch 1 Switch 2
Scherm
Server 1
Kassa 1
DVR 1
Audio versterker 1
Audio versterker 2
Noodvoeding 1 (hoofdmodule)
Noodvoeding 2 (uitbreidingsmodule)
Tabel 1 - Serverrack
29
De aangekochte serverrack is van het merk Rittal en is 42 units hoog, wat overeenkomt met ongeveer 2 meter. De verschillende apparatuur die zich in deze rack bevindt wordt in de volgende paragrafen verder toegelicht.
9.7.1 Patch panelen Op de patchpanelen komen alle netwerkaansluitingen toe van de volledige site. Er zijn 3 patchpanelen aanwezig met elk hun afgebakende doeleinden. Paneel 1 is voorbehouden voor het telefoniegedeelte, terwijl patchpanelen 2 & 3 dienst doen als aanknopingspunt voor de netwerkaansluitingen. De bijlage bevat een overzicht van de verdeling van deze patchpanelen. Ze werden onderverdeeld in verschillende groepen en kleuren om snel en eenvoudig de correcte aansluitingen te vinden bij eventuele storingen, uitbreidingen of wijzigingen aan de installatie.
7
8
9
10
11
12
13
14
15
16
2 INT 1
ISP 2 INT 2
BUREEL 1
BUREEL 2
BUREEL 3
BUREEL 4
BUREEL 5
BUREEL 6
BAR 1 (TV)
BAR 2
17
18
19
SPINNING SPINNING PRINTER 1 2 1
20
21
PRINTER 2
PRINTER 3
________________________INTERNAL LAN ________________________________________________________________________________________________
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
SERVER
SERVER 4
WINKEL 1
WINKEL 2
SQUASH 1
SQUASH 2
KIOSK 1
KIOSK 2
KASSA 1
UPS 1
MUZIEK 1
DVR 1
KVM 1
USB KVM 1
ANDERE 1
________________________________________________________________________________________________________________________________ LAN A LAN E
LAN B LAN F
LAN C LAN G
LAN D LAN H
WAN A
WAN B
Figuur 5 - Patchschema
Zowel interne als externe netwerkaansluitingen komen hierop toe, wat betekent dat toestellen in de rack zelf ook via de patchpanelen zijn verbonden.
9.7.2 Switches Vanuit de patchpanelen wordt vervolgens gepatched naar de unmanaged switches van Linksys. Door de grote omvang aan netwerkaansluitingen zijn 2 switches geïnstalleerd. Dit blijkt geen overkill te zijn doordat meer dan de helft van de aansluitingen effectief wordt gebruikt. Er is dus ruimte voorzien voor latere uitbreidingen.
30
9.7.3 Router De switches zijn vervolgens verbonden met de Linksys router. Deze VPN router staat in voor de verbinding van het LAN met het internet. De router staat tevens in verbinding met de 2e site via VPN. De router beschikt over 2 WAN poorten wat het gebruik van autobalancing met zich meebrengt. Hierdoor kunnen de 2 aanwezige ISP providers Belgacom VDSL & Telenet Office Access tegelijk gebruikt worden wat snelheidswinst met zich meebrengt.
De configuratiebestanden van dit toestel bevinden zich op de DATA-
9.7.4
schijf van de server.
31
9.7.5 Kassa PC De kassa computer die oorspronkelijk in de cafetaria stond is verplaatst naar de serverrack. Het betreft hier gewoon een normaal PC systeem met een uitbreidingskaart voor 2 extra seriële kabels. Het toestel is geleverd door de firma die ook het kassa programma heeft geïnstalleerd. In principe mogen er op deze computer geen wijzigingen
EXTENDED PARALLEL
worden aangebracht. Deze computer maakt deel uit van het domein.
Figuur 6 - Kassa & Muziek configuratie
9.7.6 Muziek PC De muziek pc is een mini computer die zich oorspronkelijk in de cafetaria bevond. Het toestel is verplaatst naar de serverrack om de levensduur ervan te vergroten. Het systeem maakt geen deel uit van het netwerk doordat het is geïnstalleerd met Windows Xp Home door de firma Encore Media Tools. De vraag die werd gesteld door de zaakvoerder was om de muziek pc ook beschikbaar te maken voor de spinningruimte. Na een controle bleek dat er weinig keuze was om dit te realiseren. 32
Men kon enerzijds kiezen om een nieuw systeem aan te komen, maar voor de tijd dat het 2e toestel zou worden gebruikt zou dit teveel kosten. Daarom is een minder voor de handliggende oplossing gebruikt.
Door uitbreidingskaarten te installeren in de computer, en vervolgens een beeldscherm + muis in de spinningruimte en cafetaria te plaatsen kan men vanaf 2 plaatsen de computer bedienen. Probleem dat zich hierbij stelde was de te grote afstand tussen serverruimte en spinningruimte. Om alle beeld en audio kabels over te brengen naar de spinningruimte zou zo’n investering van 500 euro gepaard gaan (kabelgoten, bekabeling, …). Een VGA to LAN adapter bood hierbij soelaas: het beeld en geluid werd per UTP kabel overgebracht naar de spinningruimte. UTP bekabeling was reeds voorzien in deze ruimte bij voorgaande werken. Voor de muis werd een 2e UTP kabel gebruikt die rechtstreeks is verbonden met de USB poort (USB over UTP).
De VGA to LAN converter mag niet op het conventionele netwerk worden aangesloten. Tussen verzend –en ontvangsstation moet een rechtstreekse
kabel
geïnstalleerd
zijn
zonder
tussenkomst
van
eventuele switches! De USB kabel is rechtstreeks aangesloten op een tweede UTP kabel (4 van de 8 draadjes worden gebruikt), dus ook hier moet een rechtstreekse verbinding zijn!
9.7.7 DVR Ter beveiliging van het hoofdgebouw en de bijhorende parkings zijn 3 buiten- en 1 binnencamera geplaatst. Alle beelden komen toe op de Digital Video Recorder en worden opgeslagen op een interne HDD. De DVR kan ongeveer 4 dagen beelden opnemen volgens de huidige instellingen. Tijdens stilstaande fases, waarbij geen bewegingen worden gedetecteerd, zal de DVR opnemen in lagere kwaliteit. Bij eventuele bewegingen wordt het beeld op volle kwaliteit opgenomen. Nadien kan men per beweging of intern alarm de beelden opvragen.
De beelden zijn overigens volledig raadpleegbaar vanaf elke computer die beschikt over een internet aansluiting en het bijhorende programma.
De configuratiebestanden en installatiebestanden van dit toestel bevinden zich op de DATA-schijf van de server.
33
9.7.8 Noodvoeding UPS systeem dat bestaat uit een hoofdmodule met de feitelijke logica en een aantal batterijen, en vervolgens een uitbreidingsmodule met enkel batterijen. Het schema in bijlage geeft de fysische verbinden weer van deze schakeling. De UPS is verbonden met de server via een seriële verbinding om de server uit te schakelen indien de capaciteit van de noodvoeding te laag is. Dit gebeurt d.m.v. een programma op de server die de UPS continue monitored. Bij een storing, voedinguitval of andere speciale gebeurtenis wordt een e-mail verzonden naar de domeingroep “Hoofdgebruikers” met de melding dat er een probleem is vastgesteld met het voedingcircuit.
Figuur 7 - Noodvoedingschema
De configuratiebestanden en installatiebestanden van dit toestel bevinden zich op de DATA-schijf van de server.
Hoewel
het
UPS
software
programma
voorziet
dat
de
server
automatisch opnieuw kan worden opgestart bij een voorafgaande uitschakeling, werkt dit systeem niet op deze server. Het BIOS laat dit niet toe.
34
9.8 Server De geïnstalleerde server is van het merk Compaq en is tweedehands aangekocht. Het beschikt over 2 Pentium 3 processoren van 1Ghz, en werd uitgebreid naar 1,5GB intern RAM geheugen.
De bijlage bevat een gedetailleerd rapport omtrent de hardware
configuratie van de Compaq Proliant 2500 Series Server
9.8.1 Schijfgebruik De server werd geconfigureerd met 3 SCSI harde schijven van telkens 18,4 GB. Ze zijn aangesloten op een externe RAID controller en zijn geschakeld in een RAID-5 configuratie. De feitelijke opslagcapaciteit is hierdoor 36,8GB. Het systeem kan in de toekomst worden uitgebreid met 2 extra SCSI schijven van 18,4 GB waardoor de totale opslagcapaciteit hoger wordt. De schijfruimte werd verdeeld over 2 partities.
Totaal:
Huidig verbruik:
Verbruik na 1 jaar:
Verbruik na 3 jaar:
Figuur 8 - Schijfgebruik server
35
9.8.2 Besturingsysteem Het besturingsysteem werd geïnstalleerd op de kleinste partitie van de HDD. De gekozen server editie is Windows Small Business Server 2003 R2 dat tal van verschillende serverfuncties biedt.
9.8.3 Fileserver Voor het delen van bestanden over de verschillende computers is de fileserver ingeschakeld. De bestanden hiervan bevinden zich op de Dataschijf (grootste partitie). Ze zijn beveiligd volgens NTFS rechten en Active Directory instellingen.
9.8.4 Webserver De website van de sportclub wordt in eigen beheer gehost via IIS van Microsoft. De verschillende gehoste websites zijn:
Intranet: http://intranet.dejasmijn.be Externe werkplek: http://remote.dejasmijn.be WSUS: http://server01:8530/WSUSAdmin Sharepoint: http://sharepoint.dejasmijn.be Webmail: http://mail.dejasmijn.be Oude website: http://www.tcdejasmijn.be Publieke website: http://www.dejasmijn.be
De oude en publieke website worden opgeslagen op de Dataschijf van de HDD voor meer veiligheid (zie back-up). De overige websites zijn ingebouwd in Windows SBS en wijzigen niet frequent van inhoud waardoor back-up minder belangrijk is. Ze bevinden zich op de boot schijf.
36
9.8.5 Windows Server Update Service WSUS staat in voor de verdeling van de Windows Updates van alle aangesloten domeincomputers en de server zelf. De updates worden automatisch op de clients gedownload in de nacht en geïnstalleerd. Dit levert een centraal beheer van de updates die toegankelijk is vanaf het internet.
http://server01:8530/WSUSAdmin/
9.8.6 FTP server Via een FTP programma of Windows Explorer kan er verbinding gemaakt worden met de server.
ftp://ftp.dejasmijn.be/ (passive FTP)
9.8.7 Back-up De server wordt geback-upt via tapes. Hieronder het schema: BACKUP dataschijf
Type
Tape
Maandag
*03u00*
*FULL*
*Nieuw*
Dinsdag
03u00
INCR
Vorige
Woensdag
03u00
INCR
Vorige
Donderdag
03u00
INCR
Vorige
Vrijdag
03u00
INCR
Vorige
Zaterdag
03u00
INCR
Vorige
Zondag
03u30
INCR
Vorige
Tabel 2 - Back-up schema server
Wekelijks moet de back-up tape worden vervangen door een nieuwe. De maximale opslagtermijn is 10 weken. (10+1 tapes aanwezig) zie bijlage
37
9.8.8 DHCP server De verdeling van IP adressen is een verantwoordelijkheid van de DHCP server. De verdeling ervan is onderverdeeld in verschillende groepen om snel en eenvoudig een bepaald toestel te benaderen en identificeren:
Naam
Type
Eerste IP adres
Laatste IP adres
Niet beschikbaar
Statisch
192.168.1.1
192.168.1.1
Printers
Dynamisch
192.168.1.2
192.168.1.49
Extern netwerken
Statisch
192.168.1.50
192.168.1.149
Printers
Statisch
192.168.1.150
192.168.1.159
DVR’s
Statisch
192.168.1.160
192.168.1.169
UPS
Statisch
192.168.1.170
192.168.1.179
Telefonie
Statisch
192.168.1.180
192.168.1.189
Andere
Statisch
192.168.1.190
192.168.1.199
Servers
Statisch
192.168.1.200
192.168.1.209
Niet gereserveerd
Statisch
192.168.1.210
192.168.1.219
Niet gereserveerd
Statisch
192.168.1.220
192.168.1.229
Niet gereserveerd
Statisch
192.168.1.230
192.168.1.239
Niet gereserveerd
Statisch
192.168.1.240
192.168.1.249
Niet beschikbaar
Statisch
192.168.1.250
192.168.1.255 Tabel 3 - DHCP verdeling
9.8.9 DNS server Automatisch geconfigureerd door Windows SBS.
9.8.10
Routering & RAS
Beheer van de VPN verbindingen rechtstreeks naar de server. De server kan maximaal 127 PPTP VPN verbindingen ontvangen.
Verbinding wordt hoofdzakelijk gemaakt via een Windows besturingsysteem. Van zodra de computer is ingelogd op het systeem, maakt hij deel uit van het netwerk en kan vervolgens aan alle gegevens zoals hij/zij dat zou doen vanaf de site zelf.
38
9.8.11
Beveiliging
Beveiliging van de server gebeurt op 3 niveau’s:
Firewall (Mc Afee & router firewall) Anti-virus (Mc Afee) Anti-spyware (Windows Defender)
Verder wordt de e-mail server van exchange beveiligd met een SPAM filter. De instellingen van deze SPAM filter zijn toegankelijk via dit adres:
http://localhost:2404/ (SPAMfighter)
9.8.12
Database server
Voor het reservatiesysteem is Microsoft SQL Server 2003 Express geïnstalleerd waarvoor geen licenties vereist zijn. De gegevens worden opgeslagen op de dataschijf van de server.
Beheerbaar via SQL Server Management Studio in de Program Files.
Als tweede database op de server staat mySQL, dat fungeert als database voor het reservatieprogramma Elit (zomerseizoen). Dit programma is aangekocht, en daarom ook niet omzetbaar naar de Microsoft SQL Server 2003 Express.
9.8.13
UPS
De noodvoeding is aangesloten op de server via een seriële kabel. De LAN-aansluiting van de UPS is niet bruikbaar. De monitoring van de UPS gebeurt via
een software
programma van MGE UPS.
39
9.8.14
Microsoft Exchange Server
E-mail server voor het ontvangen en verzenden van e-mails. Deze server heeft 1 administratieve groep (= maximum) waarin alle mailboxen worden opgeslagen. Nieuwe e-mail inboxen worden aangemaakt vanuit Active Directory door de eigenschappen van de gebruiker op te vragen. In het tabblad Exchange kan de gebruiker een e-mail account verkrijgen.
De configuratie ziet er als volgt uit: Bestemmeling
Lid van
[email protected]
Joke
Hoofdgebruikers
[email protected]
Joke
Hoofdgebruikers
[email protected]
Joke
Hoofdgebruikers
[email protected]
Marc
Hoofdgebruikers
[email protected]
Marc
Hoofdgebruikers
[email protected]
Hoofdgebruikers
Domein
[email protected]
Hoofdgebruikers
Domein
[email protected]
Nickolas
Administrators
[email protected]
Nickolas
Administrators
[email protected]
Nickolas
Administrators
[email protected]
Joris
Domeingebruikers
[email protected]
Maarten
Domeingebruikers
Tabel 4 - Microsoft Exchange Server instellingen
E-mails worden niet via het POP protocol vanaf een andere server gedownload. Alle e-mails die verzonden wordt naar een domein van @dejasmijn.be worden rechtstreeks afgeleverd op de Exchange Server! De MX records bij provider PriorWeb werden hiervoor aangepast.
Het uitschakelen van de server voor onderhoud heeft als onmiddellijk gevolg dat e-mails niet meer toekomen!
40
12 10
RESERVATIESYSTEEM & WEBSITE
Bij bedrijven en KMO’s is de communicatie met het cliënteel van uitzonderlijk belang. Één van die aspecten is het bijhouden van contactgegevens zodat men de klanten kan informeren per brief of e-mail. Bij aanvang van de stage bleek echter dat er een totaal gebrek aan consistente data was op vlak van contactgegevens. De sportclub had heel wat informatie van zijn leden, maar die waren verspreidt over diverse
computers
en
toepassingen,
waardoor meer dan 50% van de gegevens fouten bevatten, en nog eens 15% tot 30% duplicaten waren. Bij een grote mailing of briefwisseling vergde het de medewerkers heel wat energie om een juiste adressenlijst te ontwerpen. Vele leden werden hierdoor niet bereikt door een gebrek aan (juiste) informatie. Naar aanleiding van deze problematiek werd besloten om een centrale database te ontwikkelen die dienst kan doen als centrale databank voor alle leden. In het achterhoofd dat er ook een reservatiesysteem en website diende te worden ontwikkeld werd besloten om de reservering te integreren met het ledenbestand.
Gebruiksvriendelijkheid stond centraal in het reservatieprogramma, maar ook de aanpasbaarheid door de zaakvoerder speelde een grote rol tijdens de ontwikkeling van het programma. Om deze redenen werd besloten het reserveringsysteem te ontwikkelen in Adobe Flex 2.0 en om te vormen tot een Rich Internet Application (RIA). Adobe Flex, een softwareprogramma dat in eerste instantie is bedoeld om RIA’s in te ontwikkelen, was hierin dan ook een evidente keuze. De keuze voor Adobe Flex 2.0 heeft ook een persoonlijke motivatie: enerzijds is het een product dat voldoet aan alle vereisten om een functionele website te ontwikkelen met de nodige WOW-factor , maar anderzijds biedt het mij als stagestudent de mogelijkheid om een geheel nieuw product aan te leren, van begin tot einde, in een vrij groot productieproces. Later bleek dat ook Coldfusion,
een
programma
dat
nauw
samenwerkt
met
Adobe,
moest
worden
aangeleerd.
41
10.1
Database
Doordat Windows Small Business Server 2003 R2 aanwezig is op de server, is gekozen voor de database van Microsoft SQL Server 2005 Express. Dit is een gratis versie die ook voor commerciële doeleinden mag gebruikt worden.
De database is toegankelijk via Start > Alle programma’s > Microsoft SQL Server 2005 > SQL Server Management Studio. Het wachtwoord is terug te vinden in de datasheets die zich in het serverlokaal bevinden.
Een aantal tabellen vereisen verdere uitleg die in de volgende paragrafen worden verduidelijkt.
Figuur 9 - Database schema
42
10.1.1
Sporttakken & speltypes
Een sportclub brengt verschillende sporten tesamen. Een eenvoudige tabel houdt daarom de sporttakken bij. Bijzonder is echter dat per sport er verschillende speltypes beschikbaar zijn. Denk maar aan een losse tennisverhuring, of een tornooi. Om dit te kunnen realiseren zijn er 2 tabellen die deze data bijhouden. Vervolgens kan een speltype gelinkt worden aan een sporttak d.m.v. een tussentabel. Op die manier kan een speltype ook worden hergebruikt en kunnen meerdere sporten, verschillende speltypes bevatten.
10.1.2
Reservaties
Voor elke reservatie wordt een record bijgehouden. Omdat een reservatie meerdere pleinen kan omvatten werd een tussentabel gecreëerd (Reservatie – Plein) die meerdere pleinen toelaat per reservatie.
Een reservatie wordt aanzien als een terrein of sessie reservatie, maar ook als een activiteit. Indien de reservatie meerdere dagen bestrijkt, worden hiervoor meerdere reservatie records ingegeven.
Een reservatie behoort verder toe aan een bepaalde sporttak met een bepaald speltype. Hiervoor wordt de tussentabel sporttak – speltype gelinkt met een reservatie.
10.1.3
Abonnement
Leden kunnen verschillende abonnementen aanvragen, naar gelang de instellingen van de administrator. Eerst maakt men een abonnement aan (bv. Zomerseizoen), waarvan de naam en geldigheidsdatums worden bijgehouden tesamen met rekeninginformatie. Abonnementen kunnen echter verschillende prijzen bevatten (afhankelijk van de instellingen). Men maakt hiervoor eerst enkele prijzen aan, en koppelt die daarna via een tussentabel met een abonnement.
Vervolgens kan een abonnement met een bepaalde prijs (uit de tabel prijs – abonnement) gelinkt worden met een lid. Omdat een lid meerdere abonnementen kan hebben, is ook hiervoor een tussentabel ontworpen (lid – abonnement).
43
10.1.4
Plein
De sportclub bevat verschillende pleinen, die elk behoren tot een bepaalde categorie van sport. Zo zijn in de huidige opstelling de buitenpleinen gelinkt aan tennis outoor.
10.1.5
Lid
De leden staan centraal in de database en bevatten belangrijke informatie. Een lid heeft een bepaald adres dat wordt bijgehouden in een aparte tabel. Familieleden die op hetzelfde
adres
wonen
kunnen
hierdoor
het
adres
‘delen’
waardoor
slechts
1
briefwisseling per adres wordt verzonden.
Een lid wordt ingesteld met een zeker beveiligingsniveau waarmee men bepaalde rechten kan ontzeggen op de website.
De tabel categorie wordt voorbehouden voor verdere informatie en is momenteel niet in gebruik.
Om een efficiënt e-mail beleid te voeren kunnen de leden toegewezen worden aan groepen waardoor men sneller e-mail’s kan versturen. Deze groepen kunnen ook voor andere uitbreidingen worden gebruikt om bijvoorbeeld een ledenlijst af te drukken van een bepaalde groep.
44
10.2
Architectuur globaal
Indien men naar de toekomst toe het systeem wenst uit te breiden, te verfijnen of te wijzigen dient men de architectuur van de servers te begrijpen. Het betreft hier niet een gewone webserver met een aantal statische pagina’s. De keuze om Adobe Flex 2.0 te gebruiken als presentatielaag in het project heeft invloed op sommige andere componenten. Figuur 10 geeft een vereenvoudigde schematische voorstelling van de
SERVER SIDE
CLIENT SIDE
opstelling die momenteel actief is bij Tenniscenter Waasland.
Figuur 10 - Architectuur globaal
45
Adobe Flex 2.0 wordt ontwikkeld in de IDE van Adobe Flex 2.0, maar wordt weergegeven voor de gebruikers in een browser. De browser dient hiervoor echter ondersteuning te bieden aan Adobe Flash Player 9. Volgens recente metingen heeft 97% van de internet gebruikers de Adobe Flash Player 9 geïnstalleerd.
Wanneer de gebruiker surft naar de bedrijfswebsite van Tenniscenter Waasland (http://www.dejasmijn.be) worden de normale http requesten uitgevoerd naar de webserver om de webpagina in te laden. De webpagina bevat vervolgens een link met de SWF file dat door Adobe Flash Player kan worden weergegeven. In een omgeving waarbij geen externe data wordt ingeladen, zou dit het enige proces.
In een omgeving zoals Tenniscenter Waasland worden er echter verschillende gegevens gehaald uit de database. De website bevat bijvoorbeeld een inlogpagina waarna gebruikers terreinen kunnen reserveren. Om het wachtwoord van de gebruiker te controleren, dient een aanvraag te worden verstuurd naar de database. Dit gebeurt niet volgens het gebruikelijke http protocol, maar via Flash Remoting. Flash Remoting maakt gebruik van Action Messaging Format (AMF) , wat een open protocol is om binair gegevens te versturen. Hierdoor moet men geen pagina’s vernieuwen of opnieuw inladen.
Om dit te bereiken is een 2e applicatieserver nodig die deze aanvragen behandeld. De applicatieserver is in dit geval Macromedia Coldfusion MX7 die ook op de webserver van microsoft draait. De applicatieserver zorgt voor de verbinding met de database via ODBC adapters.
46
10.3
Architectuur Coldfusion
Coldfusion is in deze opstelling geschakeld als application server die een doorvoer moet regelen tussen flash en de database. Om dit te bereiken moet men zogenaamde “CFCfiles” aanmaken. Het zijn bestanden die in een gewonen texteditor kunnen ontworpen worden (of via Macromedia Dreamweaver) en waarin speciale scriptingtaal wordt gebruikt. In deze bestanden declareert men verschillende functies die aanspreekbaar zijn vanuit Adobe Flex (of andere programma’s). Men kan in deze functies programmeren zoals de meeste programmeertalen (zoals IF – THEN – ELSE), maar die zijn in dit geval niet nodig. Coldfusion fungeert als back-end en regelt enkel de doorvoer voor SQL statements.
Figuur 11 - Architectuur Coldfusion
In de functies van de CFC files kan daarom een speciaal argument gebruikt worden waardoor men SQL code kan programmeren.
select * from dbo.tblAbonnement
Men kan dit proces automatiseren door een plugin te downloaden vanaf de website van Adobe. Deze staat toe om de CFC’s automatisch te genereren met de juiste datatypes. We noemen dit een gateway. Dit is vooral handig bij het opslaan, het verwijderen of
47
updaten van een bepaald item. Het ophalen van query’s kan in veel gevallen sneller gaan via de manuele manier zoals hierboven is aangegeven.
Bij dit genereren van cfc’s wordt ook een helper klasse aangemaakt die de verfijnde verwerking doet van de gateway cfc. Tevens kan men ook automatisch een actionscript klasse laten ontwerpen van elke databasetabel:
package datas { [RemoteClass(alias="Prijs")] [Bindable] public class Prijs { public public public public
var var var var
ID:Number = 0; Naam:Number = 0; SportTakSpelTypeID:Number = 0; Prijs:Number = 0;
public function Prijs() { } public static function build(obj:Object):Prijs{ var prijs:Prijs = new Prijs(); prijs.ID = prijs.Naam prijs.Prijs prijs.SportTakSpelTypeID
obj.ID = obj.Naam = obj.Prijs = obj.SportTakSpelTypeID
} } }
48
10.4
Architectuur Adobe Flex 2.0
Het reserveringsysteem is ontworpen in Adobe Flex 2.0. Het ondersteund een heel arsenaal aan componenten dankzij het Flex Framework, en wordt geprogrammeerd via Actionscript 3. Vooraleer men kan verder werken aan dit programma, is het belangrijk de opbouw van Flex te begrijpen.
Flex SDK (free)
Flex Builder 2
MXML & Actionscript 3.0
Visual Layout
Flex Framework and Class Libary
Code hinting
Command-line compiler & debugger
Debugging
Skinning & styling Flash Charting Extensible Charting Components
Flex Data Services Message Service
Data Management Service
RPC Services
Figuur 12 - Architectuur Adobe Flex 2.0
Doordat de Flex SDK gratis is, kan je kosteloos programma’s ontwerpen. Flex Builder 2 daarentegen is te verkrijgen tegen betaling en is de IDE waarin je Flex applicaties ontwikkeld. Men kan echter ook flex applicaties maken via je favoriete editor d.m.v. een command-line compiler.
Flex Charting is een optionele module voor de weergave van grafieken e.d. Flex Data Services zorgt voor real-time visualisatie van data, maar dit wordt tegen zeer hoge prijzen verkocht (afhankelijk van de gebruikte server).
49
10.5
Architectuur Easy Reservation Manager
Easy Reservation Manager beschrijft het project dat voor Tenniscenter Waasland werd ontwikkeld. De bronbestanden bevinden zich in de #DATA# map van server01.
Onderstaande afbeelding laat de mappenstructuur zien van het project:
Figuur 13 - Architectuur ERM
10.5.1
AS
Zelfgemaakte
klassen
in
Actionscript
3.0
die
bepaalde
herhalende
handelingen
vereenvoudigen. Bijvoorbeeld omvormen van datum & tijd naar een bepaald formaat
10.5.2
bin
Uitvoerbestanden die worden gegenereerd door Adobe Flex 2.0
10.5.3
cfc
Alle bestanden gerelateerd aan Coldfusion, met uitzondering van gateways en data files.
50
10.5.4
datas
Actionscript klasses die ontworpen zijn via de wizard. Ze vertegenwoordigen elke tabel uit de database volgens actionscript code.
10.5.5
Events
Custom events om data door te geven bij een bepaalde handeling. (achterhaald door andere methodes in de toekomst)
10.5.6
Gateways
Coldfusion bestanden die de verbinding maken naar de database. Ook de helperklasses zijn hierin ondergebracht.
10.5.7
Itemrenderers
Itemrenderers worden gebruikt in een datagrid om data te wijzigen. De standaard componenten om data te wijzigen in een datagrid zijn niet toereikend, daarom zijn er zelfgemaakte componenten ontwikkeld.
10.5.8
Items
Componenten die veel gebruikt worden en waarvan een aangepaste versie van vereist is. Bijvoorbeeld het datefield waarbij alle maanden & dagen in het Nederlands zijn vertaald. Om dit bij elk component te doen, zou de code onleesbaar worden.
10.5.9
Validators
Zelf ontwikkelde componenten die data valideren. Bijvoorbeeld het controleren van een String of postcode via Reguliere Expressies.
10.5.10 Pages Het reservatiesysteem voor standaard gebruikers bestaat hoofdzakelijk uit 4 grote secties (pagina’s) : Homepage, Info, Contact, Reservatie
51
Elke pagina bevat echter 100den verschillende componenten die verwerkt zijn in die pagina. Die componenten zijn terug te vinden onder de map “Views”. Deze componenten maken op hun beurt gebruik van itemrenderes, validators, events, gateways, items, …
Home
Left side
Navigation
Main Application 1
Main Application 2
Index.mxml
Administratie.mxml
Reservation
Registration
Administration
Info
...
Body
Users
...
Areas
Reservations
E-mail
Validator
Figuur 14 - Architectuur ERM
52
10.6
Website & reservatiesysteem
10.6.1
Homepage
Wanneer
men
surft
naar
http://www.dejasmijn.be,
wordt
onderstaande
pagina
weergegeven. Bovenaan bevind zich de gebruikelijke hoofdnavigatie, de zijbalk bevat extra informatie en/of subnavigatie en de middenblok bevat de hoofdinformatie.
Figuur 15 - Screenshot homepage
Deze pagina bevat verschillende componenten:
RSS Feed omtrent tennisnieuws Inlogsysteem voor het reservatiesysteem Aanbiedingen sectie voor promoties Kalender sectie die de eerstkomende events weergeeft Welkomtekst Quick links voor het snel navigeren naar een bepaalde pagina.
53
10.6.2
Info pagina
Zonder dat een persoon is ingelogd, kan hij de gebruikelijke informatie pagina’s bekijken. Deze pagina’s zijn allen dynamisch aanpasbaar in het administratiepaneel. Het aantal pagina’s kan uitgebreid worden. Dit is het meest statische gedeelte van de website omdat het enkel informatie bevat.
10.6.3
Registratie pagina
De registratiepagina is onmiddellijk toegankelijk vanaf de homepage. Het stelt de gebruiker in staat om zijn contactgegevens op te geven via een registratieformulier. Deze gegevens worden met uiterste zorg gecontroleerd via reguliere expressies omdat men in het verleden heel wat problemen had met foutieve gegevens. De gebruiker wordt onmiddellijk op de hoogte gesteld van een eventuele foute invoer.
Figuur 16 – Foutmeldingen
Wanneer men de postcode invoert, wordt automatisch de juiste gemeente gezocht en aangeklikt. Indien men een e-mail adres opgeeft dat reeds in gebruik is, of een gebruikersnaam, dan wordt de gebruiker daar vroegtijdig van op de hoogte gesteld.
54
Figuur 17 - Controle gebruikersnaam & email
Indien de gebruiker zich registreert met een adres dat reeds bestaat, zal het systeem vragen of hij/zij wenst door te gaan.
Figuur 18 - Controle adresgegevens
Wanneer de gebruiker akkoord gaat met de algemene voorwaarden en op de knop “registreer” klikt, wordt de gebruiker opgeslagen in de database. Het wachtwoord wordt opgeslagen volgens de MD5 hash zodat men het wachtwoord niet kan achterhalen, zelfs niet vanuit de database.
De gebruiker krijgt op het scherm een bevestiging van zijn/haar registratie, met de instructies die hij moet volgen om het proces te voltooien.
55
Figuur 19 - Bevestiging registratie
De gebruiker ontvangt een e-mail met de activatiecode van zijn/haar registratie. Dit is een extra veiligheidsmaatregel om er zeker van te zijn dat het e-mail adres op het moment van registratie bestaat en in gebruik is.
Figuur 20 - Activering profiel
56
Figuur 21 - Activering profiel
Wanneer de gebruiker op de link klikt, krijgt hij een bevestiging van zijn activering. Indien de link een fout bevat, wordt gebruiker hiervan op de hoogte gesteld.
10.6.4
Inloggen
Wanneer het profiel van de gebruiker is gecontroleerd door op de activatielink te klikken, kan hij/zij inloggen op de interactieve website. Men kan inloggen vanaf de homepage.
Bij een eventuele foute invoer (bv. wachtwoord verkeerd) wordt de gebruiker op de hoogte gesteld via een foutmelding.
Figuur 22 - Inloggen
57
Indien de gebruiker zijn wachtwoord kwijt is, of de activatielink niet ontvangen heeft, kan hij/zij die opnieuw aanvragen via “Wachtwoord vergeten”.
Indien de gebruiker een correcte gebruikersnaam en wachtwoord opgeeft, wordt de top navigatie uitgebreid met een extra knop “Online reservatie”. Men wordt tevens automatisch omgeleid naar de 1e stap van het reservatieproces om snel een terrein te kunnen reserveren. De registratieknop is echter verwijderd indien men is ingelogd.
Aan de linkerzijde is het inlog component verwijderd en vervangen door een subnavigatie.
10.6.5
Online reservatie
Figuur 23 - Online reservatie
Het standaard reservatieproces omvat 7 stappen:
Keuze sporttak
58
Keuze speltype Keuze terrein & tijdstip Keuze medespelers Keuze betalingswijze Samenvatting Bevestiging
De gebruiker wordt via een wizard systeem doorheen het reservatieproces begeleid. Men kan een stap terug keren door op één van de afgewerkte processen te klikken. Afgewerkte processen worden aangeduid met een groen vinkje, de huidige stap met een pijl en de onafgewerkte stappen met een kruisje.
Figuur 24 - Wizard reservatie
Van zodra men een sport heeft gekozen, wordt gevraagd naar het speltype dat men wenst te spelen. Bij tennis zijn dit bijvoorbeeld enkelspel & dubbelspel, maar ook andere mogelijkheden zijn instelbaar vanuit het administratiepaneel.
Indien men doorgaat en een speltype kiest, wordt het uurrooster weergegeven van alle terreinen die tot deze sporttak behoren. Dit systeem bevat geavanceerde technieken om zoveel mogelijk winst te halen uit de te reserveren terreinen:
Volgens het oude reservatiesysteem van de VTV, wat momenteel voor de zomer wordt gebruikt, is het mogelijk om per uur of anderhalf uur te spelen, afhankelijk van het aantal spelers. Indien iemand anderhalf uur speelt kan de volgende speler echter kiezen wanneer hij/zij begint: aansluitend, of op het uur.
Door dit systeem gaat kostbare tijd verloren, soms wel 4 uur per dag wat tot inkomstenverlies leidt. Daarom werd het systeem dermate geprogrammeerd dat het het aantal onbeschikbare tijdslots tot een minimum gereduceerd.
Dit gebeurt dankzij een
automatisch geïntegreerd controlesysteem dat het uurschema dynamisch aanpast, afhankelijk van de keuze van speltype.
59
Figuur 25 - Uurschema
Indien een reservatie anderhalf uur duurt, wordt de grootte van die cel ook dynamisch vergroot.
Een ander systeem dat werd ingebouwd is de sluitingperiodes van de terreinen. Via het administratiepaneel kan de beheerder instellen van wanneer tot wanneer een plein al dan niet beschikbaar is. Het uurschema houdt hiermee rekening door de cellen aan te passen naar niet reserveerbare cellen.
Indien men een terrein reserveert op een bepaald uur , wordt dit weergegeven volgens een vooraf ingestelde kleur (afhankelijk van welk speltype) en de aanduiding over welk speltype het gaat. Indien men over een reservatie beweegt met de muis, wordt met een ballontip weergegeven welke spelers dit terrein hebben gereserveerd.
Bovenaan de pagina kan men de datum wijzigen waarop men wenst te reserveren. De beheerder kan instellen hoeveel dagen op voorhand men kan reserveren.
60
Figuur 26 - Beperking reservatie
Wanneer men een keuze maakt op welk uur men wenst te spelen, klikt men op de overeenkomstige cel. De gebruiker wordt omgeleidt naar een nieuwe pagina waarin hij/zij
facultatief
de
medespelers
kan
opgeven.
Deze
medespelers
hoeven
niet
noodzakelijk reeds in de database opgeslagen zijn. Indien men deze gegevens opgeeft, wordt een e-mail verzonden naar de medespelers met de bevestiging van de reservatie. Op die manier zijn ook zij op de hoogte van de reservatie.
Vervolgens kiest men een gepaste betalingswijze. Dit is bedoeld voor eventuele uitbreidingen in de toekomst naar VISA of andere betalingsystemen.
In de voorlaatste pagina krijgt men een overzicht van de reservatie. Klik je op bevestigen, wordt de reservatie opnieuw gecontroleerd, en vervolgens opgeslagen in de database. De spelers ontvangen een e-mail met de reservatie, en ook op het scherm wordt een bevestiging weergegeven dat de reservatie voltooid is.
61
Figuur 27 - Reservatie bevestiging
Men kan vervolgens de reservatie uitprinten vanaf de website. Indien men op sluiten drukt, wordt men teruggeleidt naar de homepage van de website en kan men opnieuw een reservatie uitvoeren.
De gebruiker is ook in staat om zijn huidige abonnementen en reservaties te bekijken en te wijzigen.
Figuur 28 - Abonnementen
62
10.6.6
Abonnementen & inschrijvingsformulieren
De beheerder heeft de mogelijkheid om inschrijvingsformulieren toe te voegen aan een sport. Deze inschrijvingsformulieren zijn echter op maat gemaakt, maar kunnen desgewenst in of uitgeschakeld worden per sporttak.
Figuur 29 - Voorbeeld inschrijving
Inschrijvingsformulieren
zijn
eigenlijk
abonnementen
waarmee
de
gebruiker
zich
inschrijft voor een langere periode.
De gebruik merkt ze gewoon op tussen de andere speltypes, maar wordt in het geval van een inschrijving omgeleidt naar de inschrijvingspagina i.p.v. naar het uurschema.
Figuur 30 - Abonnementen & inschrijvingformulieren
De inschrijvingsformulieren gebruiken dezelfde foutcontroles als andere formulieren. Elk formulier
heeft
echter
zijn
specifieke
instellingen
die
afhankelijk
zijn
van
de
prijzenpolitiek in een sportclub.
63
Figuur 31 - Voorbeeld prijzen
De prijzen kunnen dynamisch aangepast worden in het administratiepaneel, maar het toevoegen of verwijderen van prijzen behoort niet tot de mogelijkheden omdat bepaalde inschrijvingsformulieren niet meer correct zouden functioneren. Tussenkomst van de website beheerder is noodzakelijk in dit stadium.
64
10.7
Administratiepaneel
Het administratiepaneel is toegankelijk via gebruikersnaam en wachtwoord via een afzonderlijke website: http://www.dejasmijn.be/admin. Enkel gebruikers met voldoende rechten krijgen toegang tot dit gedeelte.
Figuur 32 – Administratiepaneel
Na inloggen wordt een pagina getoond met de meest gebruikte taken zodat ze snel toegankelijk zijn. De navigatie van dit administratiepaneel bevindt zich aan de linkerzijde en is onderverdeeld in verschillende onderdelen zoals reservaties, email, ledenbeheer, …
Onder elk onderdeel bevinden zich één of meerdere taken die toebehoren tot dit onderdeel. Elk onderdeel bestaat hoofdzakelijk uit 2 pagina’s:
Overzicht van de gegevens (standaard) Invoer van nieuwe gegevens 65
In de overzichtpagina is de beheerder in staat om alle gegevens die zich in de database bevinden omtrent dat onderwerp te bekijken, wijzigen of verwijderen. Dit gebeurt rechtstreeks in de datagrids.
Het toevoegen van nieuwe data gebeurt via een popup scherm, dat toegankelijk is door de knop “Nieuw” bovenaan elke pagina.
10.7.1
Algemeen beheer
10.7.1.1
SPELTYPES
Zoals eerder vernoemd kan de beheerder speltypes toevoegen om nadien deze te linken aan een sporttak. Men voegt een nieuwe record toe door op de knop “Nieuw toevoegen” te klikken, waarna een nieuw scherm opent. Hierin kan de naam worden opgegeven, alsook of het gaat om een dubbelspel (cfr. Tennis) en/of activiteit (latere uitbreidingen).
10.7.1.2
BEVEILIGINGSGROEPEN
Men kan nieuwe beveiligingsgroepen toevoegen aan de website zoals stageleraars of andere medewerkers. De rechten die een bepaalde beveiligingsgroep krijgt zijn echter nog niet verwerkt, waardoor deze toepassing voorlopig geen invloed heeft op de website.
Leden
die
ingesteld
zijn
als
gebruiker
kunnen
evenwel
niet
inloggen
in
het
administratiepaneel. De weergave van een sporttak of speltype kan ook worden gelimiteerd d.m.v. deze groepen.
10.7.1.3
SPORTTAKKEN
Beheer van sporttakken.
10.7.1.4
SPELTYPES PER SPORTTAK
Toewijzing van een speltype aan één of meerdere sporttakken. Men kan een beschrijving, icoon of beveiligingsniveau opgeven. Tevens kan het worden ingesteld op actief of niet actief, en of het gaat om een inschrijving of niet. De kleur kan ook aangepast worden, wat invloed heeft op het uurschema.
66
10.7.1.5
ALGEMENE SLUITINGSPERIODE
Indien de club voor enkele dagen sluit kan dit worden ingesteld. Op de homepage wordt hiervan bericht gegeven, alsook een blokkering van eventuele reservaties op die datums.
10.7.1.6
BETALINGSMOGELIJKHEDEN
Voor de betaling van reservaties kunnen verschillende betalingsmogelijkheden worden weergegeven.
10.7.2
Beheer leden
10.7.2.1
LEDENBEHEER
Deze weergave is een uitzondering op de andere pagina’s. Om een lid te wijzigen dient men te dubbelklikken in het datagrid. Dit vormt een verbeterde controle op de invoervelden. Men kan bepaalde instellingen wijzigen die de gebruiker niet kan wijzigen zoals het e-mail adres, de activatie van het profiel of lid en de screening.
Figuur 33 - Bewerkmodus leden
67
10.7.2.2
NIEUWE LEDEN VALIDEREN
Deze weergave is speciaal ontwikkeld om nieuwe leden te detecteren. Vervolgens kan de beheerder dit lid bijvoorbeeld toewijzen aan een bepaalde groep (zie later) en nadien instellen als “gescreend”. 10.7.2.3
ADRESETIKETTEN AFDRUKKEN
Mogelijkheid tot adresetiketten afdrukken op basis van groepsleden of de gehele database.
10.7.3
Reservatie beheer
In dit menu worden alle sporttakken dynamisch uitgelezen. Men krijgt bij elke sporttak een overzicht van het uurrooster waardoor de beheerder een terrein kan reserveren.
10.7.3.1
ACTIVITEITEN
Speciale form om grote activiteiten toe te voegen. Men kan over een bepaalde periode een activiteit reserveren, op verschillende vooraf ingestelde dagen en terrein, volgens een bepaald recursief patroon.
Figuur 34 - Activiteit toevoegen
68
10.7.3.2
INTERCLUBS
Speciale form om interclubs toe te voegen over meerdere terreinen met verschillende start en einduren, op 1 dag.
10.7.4
Terrein beheer
10.7.4.1
TERREINEN
Beheer van alle terreinen. Per terrein moet men instellen bij welke sport het plein behoort.
10.7.5
E-mail
10.7.5.1
VERSTUUR E-MAIL
Form bedoeld voor het versturen van e-mails naar verschillende personen uit de database. Men kan ook e-mails versturen naar distributiegroepen door op “Aan”, “CC” of “BCC” te klikken. E-mail wordt in 1 keer verzonden
10.7.5.2
VERSTUUR NIEUWSBRIEF
Speciaal bedoeld voor e-mails die naar veel personen wordt verstuurd. Elke e-mail wordt apart verzonden om de SPAM filters te ontwijken.
10.7.5.3
DISTRIBUTIELIJSTEN
Beheer van distributielijsten die gebruikt kunnen worden voor het verzenden van e-mails.
10.7.6
Website
10.7.6.1
INFORMATIETEKSTEN WIJZIGEN
Hierin staan alle informatie teksten die op de website worden weergegeven waarvan nodig werd geacht dat ze dynamisch aanpasbaar moeten zijn.
69
10.7.6.2
KALENDER BEHEREN
Beheer van kalender die op de homepage wordt weergegeven.
70
11 11
BESLUIT
Bij aanvang van deze stage bleek al snel dat er heel wat structurele problemen waren met betrekking tot de informatica van de sportclub. Het was duidelijk dat er snel actie moest worden ondernomen om deze problemen van de baan te vegen. Heel wat maatregelen zijn hiervoor getroffen gedurende de stage om de informatica-infrastructuur om
te
buigen
van
een
zorgkind
naar
een
praktisch
en
gebruiksvriendelijk
werkinstrument.
Zo werd in een eerste fase het fysische netwerk aangelegd. Hoewel de gebruiker met het fysische netwerk weinig in aanraking komt, moet deze basis ten allen tijde operationeel zijn
om
alle
IT
systemen
correct
te
laten
functioneren.
Zo
werd
het
aantal
netwerkaansluitingen aanzienlijk verhoogd van 4 naar meer dan 38 aansluitingen. Dit biedt meer flexibiliteit aan de gebruikers toe, mede doordat ook een draadloos netwerk werd geïntegreerd. Ook andere problemen, zoals het toenemende SPAM verkeer van de laatste decennia zijn structureel aangepakt dankzij een E-mail server in eigen beheer met bijhorende SPAM filter. In vergelijking met de periode voor de stage is het aantal SPAM met 57% gedaald, wat een enorme tijdswinst kan betekenen voor het personeel. De gebruikers worden ook niet meer gelimiteerd door postvakgroottes of verzendlimieten van providers doordat e-mails automatisch worden afgeleverd op de server en niet via het POP protocol.
Op desktop vlak is
dan weer een volledige inventaris opgemaakt om vervolgens een
gerichte optimalisatie van deze toestellen te verrichten. Hierdoor zijn sommige systemen herleidt tot 1 super computer, in andere gevallen zijn nieuwe uitbreidingscomponenten aangekocht om de levensduur van die toestellen te verlengen. De verlenging van de levensduur is ook bekomen door bepaalde kritische apparatuur onder te brengen in een veilige ruimte. Een UPS systeem dat bij stroomuitval alle informatica toestellen veilig doet uitschakelen behoort ook tot de beveiliging van het informaticanetwerk. Al deze maatregelen hebben uiteindelijk geleidt tot snellere en veiligere computers.
Ook minder relevante toestellen zoals een DVR zijn dankzij deze nieuwe systemen opgenomen in het netwerk waardoor de zaakvoerder van thuis uit de camerabeelden kan bekijken, terugspoelen of opnemen. Het is maar één van de zoveel zaken die vroeger reeds aanwezig waren, maar nooit werden gebruikt of geïnstalleerd door onwetendheid.
71
Dankzij de voorbereiding van het digitaal telefonienetwerk zal de verwerking van zo’n systeem naar de toekomst toe kinderspel zijn. Alle mogelijke voorzieningen werden getroffen zoals een centralisatie van de telecomapparatuur en telefoonaansluitingen. Ook voorzieningen zijn getroffen in de serverkast waar plaats is voor een 19” PABX.
Vele van deze maatregelen hebben de IT uitgaven dusdanig geoptimaliseerd door efficiënt
gebruik
te
maken
van
de
informaticatoestellen.
Toch
betekend
een
optimalisering niet noodzakelijk een daling van de IT uitgaven, maar eerder op een verantwoorde wijze geld en tijd spenderen aan informatica. Het is uiteraard de bedoeling deze kosten terug te verdienen door meer inkomsten te genereren uit de tijdswinst die een dergelijk netwerk oplevert.
En niet enkel op hardwarevlak werden vernieuwingen uitgevoerd. Software speelt een even grote rol in de vernieuwing van een netwerk.
Om een basis te bekomen voor
toekomstige client-server applicaties werd Windows Small Business Server geïnstalleerd op de server. Windows SBS herbergt een heel resem aan serverfunctionaliteiten zoals de hosting van een eigen webserver, werken op afstand, delen van bestanden, hosting van een eigen database en het centraal beheren van alle desktops en servers. Ook dit betekend een optimalisatie van de IT uitgaven. In het verleden werd namelijk gebruik gemaakt van diverse externe firma’s die de hosting van e-mail en database op zich namen. Verder kunnen gebruikers vanop afstand verbinding maken met hun desktop, of hun e-mails controleren via internet, overal ter wereld. Allemaal features die zeer handig zullen zijn voor Tenniscenter Waasland.
Een andere verbetering is dan weer dat de database die wordt gebruikt voor het zomerseizoen toegankelijk werd gemaakt in het netwerk zodat een client-server toepassing werd bekomen. In het verleden had elke PC een lokale database, wat leidde tot inconsistente data en enorm tijdsverlies. Wat was gewijzigd op de ene computer moest manueel overgeplaatst worden naar de andere computers. Door een eenvoudige ingreep werd een enorme tijdsbesparing bekomen. Het zijn net deze kleine zaken die een grote impact hebben op de werking van de bedrijfsprocessen.
Na afloop van de integratie van het netwerk met de nodige software is er overgegaan tot de aanmaak van een reservatiesysteem voor de verhuring van terreinen. Tenniscenter Waasland
beschikt
nu
over
een
geheel
nieuwe
website
met
geïntegreerd
reservatiesysteem. Dit systeem biedt zeer veel voordelen toe, zowel voor de gebruiker als voor de sportclub zelf. Zo hoeft een lid geen telefonisch contact op te nemen met de
72
sportclub omtrent eventueel vrije tijdslots in het uurschema. Men kan dit controleren vanaf elk computersysteem met internetverbinding via de website. Door minder telefonisch contact wordt er voor de medewerkers meer tijd vrijgemaakt voor andere zaken te regelen. Een ander voordeel is dan weer dat een reservatiesysteem contactgegevens bijhoudt van alle leden. Wanneer de gebruiker een terrein wenst te reserveren, dient hij/zij bepaalde informatie op te geven alvorens men kan overgaan tot reservatie. De leden zorgen dus zelf voor de invoer van deze gegevens, wat leidt tot correctere contactgegevens die de gebruiker bij een eventuele verhuis of verandering van e-mail adres zelf kan wijzigen.
Niet alleen contactgegevens worden bijgehouden in een dergelijk systeem, ook statistieken kunnen opgevraagd worden om bepaalde tendensen waar te nemen of te voorspellen. Zo kan de sportclub inspelen op de vraag van zijn cliënteel. En op het einde van de rit kan men exact berekenen hoeveel inkomsten er gegenereerd zijn per sporttak. Door het reservatiesysteem te integreren in de bedrijfswebsite zal de sportclub ook meer bezoekers aantrekken op de website, waardoor men eventuele sponsors op de webpagina kan aantrekken met extra inkomsten als gevolg.
Een andere aantrekkingspool om de website te bezoeken is een zogehete RSS feeder op de homepage. Het geeft tennisinformatie weer in de vorm van een krantenkop dat dynamisch wordt ingeladen vanaf een sportpagina. Zo wordt de illusie gewekt dat de website up-to-date is. Uiteraard dienen er meer inspanning te worden geleverd om voldoende bezoekers aan te trekken naar de website door up-to-date informatie aan te bieden aan de klant zoals kalenders, aanbiedingen, prijslijsten enzovoorts.
Het is meermaals gebleken dat het reservatiesysteem heel wat voordelen biedt, en een zeer interessant werkinstrument is voor de bedrijfsleiding. Naar de toekomst toe zullen steeds grotere eisen worden gesteld aan dit softwareprogramma, wat zeer zeker mogelijk is dankzij voldoende voorzieningen om het systeem uit te breiden. De omvang van dit project kan dan ook eindeloos zijn, en er kunnen steeds meer zaken worden toegevoegd aan het systeem. Zo blijkt dat niet de technische kennis en uitwerking de beperkende factor was gedurende de opbouw van het programma, maar wel de tijd die men krijgt om al deze functies in te bouwen.
73
12 12
PERSOONLIJKE CONCLUSIE
Het doel van een stage is het verwerven van kennis inzake een bepaald vakdomein, in dit geval multimedia & communicatie technologie. Dit begrip is zeer ruim en heel wat daarvan is aan bod gekomen gedurende deze 14 weken durende stage. De stage bij Tenniscenter
Waasland
bestond
uit
3
grote
peilers:
de
netwerkimplementatie,
reservatiesysteem & website. Gedurende deze stage zijn dan ook heel wat nieuwe zaken aan bod gekomen die gedurende de opleiding niet aan bod konden komen. Taken zoals patchen, e-mail servers configureren, VGA-over-LAN maar ook onderhandelingen met bedrijven …zijn nieuwe ervaringen voor me geweest.
Gelukkig kon ik steeds rekenen op het wereldwijde internet, dat eigenlijk ook een grote dankbetuiging zou moeten krijgen. Tijdens mijn zoektocht naar verschillende nieuwe technologieën en integratietechnieken was de bron van informatie vooral het internet. Uiteraard hielp de uitstekende basisopleiding die ik op de Hogeschool West-Vlaanderen heb genoten heel wat. Ook de stagebegeleider had heel wat positieve inbreng gedurende mijn stage door zijn praktische aanpak. Samen konden we steeds een praktische, doch steeds technisch correcte oplossing vinden. De stage heeft me dan ook heel wat bijgeleerd op sociaal vlak, want zonder overleg en afspraken kon er geen sprake zijn van teamverband.
Tijdens de netwerkimplementatie bleek het project heel wat groter te zijn dan verwacht voor 1 persoon. Een bijsturing in de planning was noodzakelijk om het project te kunnen volbrengen. Door de juiste beslissingen te nemen en bijsturing in de planning is alles opnieuw volgens plan gaan lopen.
Voor het reservatiesysteem had ik de keuze uit verschillende programma’s en scriptingtalen om deze taak te voltooien. Toch koos ik ervoor om een programma te gebruiken
waarvan
ik
weinig
of
geen
achtergrond
had.
In
overleg
met
mijn
stagebegeleider kreeg ik de kans om het programma Adobe Flex 2.0 te gebruiken om het reservatieprogramma te ontwikkelen. Het bood me een unieke kans om een onbekend programma aan te leren. Hoewel dit enig risico inhield, leerde ik vlot de basishandelingen doordat ik cursusmateriaal en boeken had gekocht over Flex 2.0 tijdens mijn reis naar
75
San Francisco. Tijdens de ontwikkeling van het programma bleek al snel dat niet mijn technische capaciteiten de beperking waren, maar wel de hoeveelheid tijd. Er kunnen in principe nog 10-tallen andere features worden toegevoegd aan het systeem die het programma nog waardevoller zouden maken, maar tijdens overleg met de stagebegeleider hebben we gekozen om het systeem zo dynamisch mogelijk te maken, zodat ook andere sportclubs dit programma kunnen gebruiken.
Het aanbieden van een compleet dynamische website heeft uiteraard een weerslag op het te presteren werk, waardoor het niet mogelijk was om op deze beperkte tijd alle gevraagde functionaliteit te integreren. Dit vormt echter geen probleem omdat alle basisfunctionaliteit is toegevoegd aan de website, en eventuele uitbreidingen snel kunnen aangemaakt worden doordat heel wat voorbereidend werk reeds gedaan is.
Als algemene conclusie kan ik zeggen dat ik enorm veel heb bijgeleerd gedurende deze 3 maand durende stageperiode. Niet alleen leerde ik allerlei nieuwe technieken en handelingen zoals een nieuwe programmeertaal, ook op vlak van teamverband leerde ik heel wat bij. Tijdens de opleiding op de hogeschool leerden we dikwijls in teamverband werken, maar in een echt bedrijf, waar een persoon met een leidinggevende functie controle uitoefent op je werk, ligt dit toch net iets anders. Het geeft een andere dimensie aan het werken in teamverband, wat overigens een fijne ervaring was.
Het doet me ook zeer veel plezier dat mijn geleverde werk door honderden en zelfs duizenden mensen in de toekomst gebruikt kan worden. Het is steeds een extra motivatie geweest om het programma zo technisch correct mogelijk te ontwikkelen. En wanneer dit programma in de toekomst zou worden gedistribueerd naar andere sportclubs, dit een nog grotere voldoening zal teweeg brengen.
76
13
13LIJST MET AFBEELDINGEN
Figuur 1 – Globaal netwerk ................................................................................................................... 21 Figuur 2 - Globaal netwerk ................................................................................................................... 22 Figuur 3 - Fysische verbindingen netwerk ............................................................................................... 23 Tabel 1 - Serverrack ............................................................................................................................ 29 Figuur 6 - Kassa & Muziek configuratie ................................................................................................... 32 Figuur 7 - Noodvoedingschema ............................................................................................................. 34 Figuur 8 - Schijfgebruik server .............................................................................................................. 35 Tabel 2 - Back-up schema server........................................................................................................... 37 Tabel 3 - DHCP verdeling...................................................................................................................... 38 Tabel 4 - Microsoft Exchange Server instellingen ..................................................................................... 40 Figuur 9 - Database schema ................................................................................................................. 42 Figuur 10 - Architectuur globaal ............................................................................................................ 45 Figuur 11 - Architectuur Coldfusion ........................................................................................................ 47 Figuur 12 - Architectuur Adobe Flex 2.0.................................................................................................. 49 Figuur 13 - Architectuur ERM ................................................................................................................ 50 Figuur 14 - Architectuur ERM ................................................................................................................ 52 Figuur 15 - Screenshot homepage ......................................................................................................... 53 Figuur 16 – Foutmeldingen ................................................................................................................... 54 Figuur 17 - Controle gebruikersnaam & email.......................................................................................... 55 Figuur 18 - Controle adresgegevens....................................................................................................... 55 Figuur 19 - Bevestiging registratie ......................................................................................................... 56 Figuur 20 - Activering profiel................................................................................................................. 56 Figuur 21 - Activering profiel................................................................................................................. 57 Figuur 22 - Inloggen ............................................................................................................................ 57 Figuur 23 - Online reservatie................................................................................................................. 58 Figuur 24 - Wizard reservatie ................................................................................................................ 59 Figuur 25 - Uurschema......................................................................................................................... 60 Figuur 26 - Beperking reservatie ........................................................................................................... 61 Figuur 27 - Reservatie bevestiging......................................................................................................... 62 Figuur 28 - Abonnementen ................................................................................................................... 62 Figuur 29 - Voorbeeld inschrijving ......................................................................................................... 63 Figuur 30 - Abonnementen & inschrijvingformulieren ............................................................................... 63 Figuur 31 - Voorbeeld prijzen ................................................................................................................ 64
77
14 14
BRONVERMELDINGEN
Adobe Systems Inc. - 30/03/2005 Loading data across domains http://www.adobe.com/go/tn_16520 18/05/2007 Adobe Systems Inc. – 27/06/2006 Using Coldfusion with Flex – Part 1 http://www.adobe.com/devnet/flex/articles/Coldfusionflex_part1.html 18/05/2007 Adobe Systems Inc. – [] Printing Web Pages http://www.adobe.com/devnet/Coldfusion/articles/printing_print.html 18/05/2007 Adobe Systems Inc. – [] Flex 2 General Discussion http://www.adobe.com/cfusion/webforums/forum/messageview.cfm?forumid=60&catid=585&threadid=126948 1&enterthread=y 18/05/2007 Adobe Systems Inc. – [] TechNote: URL Encoding http://www.adobe.com/go/tn_14143 18/05/2007 Adobe Systems Inc. – [] Working with Multiple Languages http://www.adobe.com/support/flash/languages.html 18/05/2007 Adobe Systems Inc. – [] Working with Multiple Languages http://www.adobe.com/support/flash/languages/unicode_in_flmx/ 18/05/2007 Adobe Systems Inc. – [] Livedocs Flex http://livedocs.adobe.com/flex/2 18/05/2007 Adobe Flex 2 – Traning from the source Jeff Tapper, Matthew Boles & James Talbot ISDN 0-321-42316-X Brendan Meutzner Blog – 22/06/2006 ComboBox Renderer/Editor for Flex 2.0 http://www.meutzner.com/blog/index.cfm/2006/6/22/ComoboBox-RendererEditor-for-20 18/05/2007 Userbase – 25/01/2006 VDSL Aethra FS 4104 Modem – Technisch http://www.userbase.be/forum/viewtopic.php?t=9700&highlight=aethra 06/05/2007 KVM Ware – [] NS121UTPA Productspecificaties http://www.kvmware.nl/?id=24&OID=qkym7g5eujzglli1 01/05/2007
79
Driezen Computers – [] Algemene voorwaarden http://www.dcom.be/shop/dcom_algemenevoorwaarden.php 25/04/2007 IconArchive – [] Sport Icons http://www.iconarchive.com/ 27/05/2007 Microsoft Nederland – 24/11/2006 How to programmatically import Outlook items from Access http://support.microsoft.com/kb/290658 30/05/2007 Microsoft MSDN – [] How to: Access Outlook Contacts http://msdn2.microsoft.com/en-us/library/ms269108(VS.80).aspx 30/05/2007 AC&NC – [] Raid Levels http://www.acnc.com/raid.html 01/04/2007 SitePro Central – [] HTML Color Code Combination Chooser http://www.siteprocentral.com/html_color_code.html 10/04/2007 Coldfusion Developer’s Journal – [] Your First Adobe Flex Application with a Coldfusion Backend http://Coldfusion.sys-con.com/read/256076.htm 01/05/2007 Coldfusion Developer’s Journal – [] A Better
http://Coldfusion.sys-con.com/read/42072.htm 01/05/2007 Actionscript.org – [] Homepage http://www.actionscript.org/ 30/05/2007 – 11/01/2007 Actionscript URL Encoding/decoding http://cfsilence.com/blog/client/index.cfm/2007/1/11/ActionScript-URL-EncodingDecoding 30/05/2007 – 11/01/2007 Flex Richt Text Editor Custom Tag http://cfsilence.com/blog/client/index.cfm/2006/10/9/Flex-Rich-Text-Editor-Custom-Tag 30/05/2007 – 12/12/2005 Sending CFMAIL to multiple recipients http://cfsilence.com/blog/client/index.cfm/2006/12/12/Sending-CFMAIL-To-Multiple-Recipients 30/05/2007 Info Goal – [] SQL Advanced http://www.infogoal.com/sql/sql-advanced.htm 30/05/2007 SQL Course – [] SQL Advanced http://sqlcourse2.com/intro2.html 30/05/2007
80
Sybase – [] SQL Advanced http://www.isug.com/Sybase_FAQ/ASE/section6.2.html#6.2.2 30/05/2007 W3C – [] Homepage http://www.w3.org 30/05/2007 Community Flex – 17/06/2006 ComboBox ItemRenderer http://www.cflex.net/showFileDetails.cfm?ObjectID=447&Object=File&ChannelID=1 30/05/2007 Community Flex – 17/06/2006 ComboBox ItemRenderer http://www.cflex.net/showFileDetails.cfm?ObjectID=447&Object=File&ChannelID=1 30/05/2007 Dan Vega – 17/06/2006 Sending mail with CFMail: A problem & A solution http://www.danvega.org/blog/index.cfm?mode=entry&entry=E819368A-D605-523F-20A585DD8A6D4CE8 30/05/2007 Flash Focus – 21/04/2007 Flex 2.0 Dategrid selectie ophalen http://www.flashfocus.nl/forum/archive/index.php/t-30425.html 30/05/2007 Flash Guru – 18/10/2005 Actionscript 3 – New Capabilities http://www.flashguru.co.uk/actionscript-3-new-capabilities/ 30/05/2007 Flash Guru – 05/09/2005 Flash 8 – Color Conversion Utility Class http://www.flashguru.co.uk/flash-8-color-conversion-utility-class/ 30/05/2007 Actionscript.org – [] Flex http://www.actionscript.org/resources/categories/Tutorials/Flex/ 30/05/2007 Flex Blog – 24/08/2006 Large Applications for impatient developers http://flexblog.faratasystems.com/?p=76 30/05/2007
81
15 15
BIJLAGEN
83