Uitgebreid voorstel Masterproef Informatica. Titel van het project : Ontwikkeling van remote controlled Alert & Task Agent



Vergelijkbare documenten
Uitgebreid voorstel Masterproef Informatica

Uitgebreid voorstel Masterproef Informatica. Titel van het project: Rolnummerherkenning van op een kraan

Ontwikkeling van een Remote Controlled Alert & Task Agent

Installatiehandleiding Cane Webservices.nl Integratie

Invantive 2012 Release 1 (build 44)

Installatiehandleiding Business Assistent

Installatiehandleiding Business Assistent

Workflows voor SharePoint met forms en data K2 VOOR SHAREPOINT

MA!N Rapportages en Analyses

Waarom automatiseren?

XAMPP Web Development omgeving opzetten onder Windows.

ECTS fiche. Module info. Evaluatie. Gespreide evaluatie OPLEIDING. Handelswetenschappen en bedrijfskunde HBO Informatica

Software Test Plan. Yannick Verschueren

Handleiding Job voor gebruikers

Pinakes Integrator Client

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

Versturen van vanuit een Delphi VCL toepassing

HANDLEIDING TOOLS4EVER ISUPPORT ONLINE WEBOMGEVING

Na bestudering van dit hoofdstuk, moet je tot het volgende in staat zijn:

Katholieke Hogeschool Kempen Campus Geel Departement Handelswetenschappen en Bedrijfskunde 3de jaar Toegepaste Informatica

Howto Subversion. 1. Subversion structuur en uitleg

Uitgebreid voorstel Masterproef Informatica

Sparse columns in SQL server 2008

Software Test Plan. Yannick Verschueren

Installatie SQL: Server 2008R2

Project plan. Erwin Hannaart Sander Tegelaar

Met een LightSwitch applicatie een OData service uit de Windows Azure Marketplace consumeren

Toelichting bij onze werkwijze

Curriculum Vitae. Ing. R. van de Roer (Rogier) Geboortedatum: 10 oktober Informatica / Informatiekunde, Den Haag

Invantive 2012 Release 1 (build 44)

Technische nota AbiFire Rapporten maken via ODBC

Installatie van sqlserver

Boutronic. MSSQL Express server voor Log functie. >> Installatie handleiding << 2 april 2012, versie 1.0d

ORBIS SOFTWARE TASKCENTRE INTEGREERT

Maximo Tips and Tricks

1 Labo 4 H 8 Jobs, Alerts en Operators H 9 Monitoring en Troubleshooting

Installatie SQL Server 2008R2

Toolselectie checklist

HANDLEIDING. Emjee ICT diensten Ticketsysteem

Nieuwe aanpassingen SQL V 7_4_0 & V 7_4_2

Xampp Web Development omgeving opzetten onder Windows.

Monitoring. SolidBE B.V. Maarten Schoutenstraat SV Waddinxveen

INSTALLATIEPROCEDURE EN SYSTEEMEISEN Netwerkversie per oktober 2011

Taxis Pitane SQL beheerder. Censys BV - Eindhoven

MEMO. De database server zit op piekmomenten aan een heel hoog CPU gebruik:

Handleiding Finaciële Module

Archipol 6 voor gebruikers

Car-Pass versie 7_1_0

Beschrijving functioneel en technisch design van de website

Elektronisch factureren

1750,00 excl. BTW. analytisch denkvermogen, empathie, assertief, communicatief, aanleg voor formalisme,...

Toelichting bij onze werkwijze

FULL HOUSE INSTALLATIEPROCEDURE EN SYSTEEMEISEN Netwerkversie per oktober 2010

Release notes RELEASENOTES: VENDORLINK JANUARI Gepubliceerd: 29 januari 2017 Release is gepland op: 27 januari 2017.

Functionele beschrijving: scannen naar Exact Globe.

Projectplan. Elektronica-ICT Artesis. Auteur: Coopman Tom Interne Promotor: Peeters Tom Externe Promotor: Delepierre Bruno, Adforce

Zelftest Informatica-terminologie

UBC op Microsoft Windows 64-bits

Technische implementatie De infrastructuur rondom Transit kent de volgende rollen:

Perrit Perrit Hosted SharePoint Foundation 2010 Het Online Business Platform Hosted Business Applicatons

EPLAN Software & Service. 12 februari 2016 We starten om 14:00 uur

React en React Native voor websites en apps

INLEIDING... 1 AFSPRAKEN... 2 INHOUDSOPGAVE...

TiC Narrow Casting Pull structuur uitleg en settings

Assignment 3 Arjan Dekker ( )

Technische nota AbiFire5 Rapporten maken via ODBC

IFECTIVE KNOWLEDGE FRAMEWORK

AUTOMATISERING. Act! WerkbonApp. De koppeling tussen het CRM systeem Act! en de Werkbon applicatie WerkbonApp.

RIAXION DOSSIER HANDLEIDING

Inhoud: Inleiding tot Taak Omschrijving van vacatures 2 Matrix van benodigde 5 Bronvermeldingen 7

Inhoud. Wat is Power BI? Voorbeelden gemaakt met Power BI Beginnen met Power BI Werkruimte uitleg... 7

Any data from any source available at any time as information on your favorite mobile device

1 Inleiding. 3 Handmatig... invoeren zaken basis 4 Verwerken... zaken 5 Afhandelen... van zaken. 7 Uitgebreidere... zaak opties

Les 10 : Aanmaken van een database (deel2).

Functionele beschrijving: scannen naar UNIT4 DocumentManager

Cerussa FIN Pre-requirements

d-basics Creditline, nieuw bestandsformaat Deutsche Bank

Uitgebreid voorstel Masterproef Informatica

5/5 Red Carpet. 5/5.1 Inleiding

INSTALLATIE EXCHANGE CONNECTOR


icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

Technische keuzes Management Informatie Systeem MeanderGroep

FederPro uw CRM software

Dynamic Software nv Ring Noorderwijk

Transcriptie:

HoGent Uitgebreid voorstel Masterproef Informatica Titel van het project : Ontwikkeling van remote controlled Alert & Task Agent Datum: Naam student: Glenn Jacob Interne promotor: Wim Van den Breen In samenwerking met: Bedrijf / IBBT / UGENT / Hogeschool Gent Algemene informatie voor extern bedrijf: Naam van het bedrijf: ICORDA Adres: Brugsevaart 32 9030 Mariakerke (Gent) Is dit de 1 e masterproef in het bedrijf in samenwerking met onze opleiding? Ja/Nee Is er in het bedrijf inhoudelijke en technische begeleiding mogelijk? Ja/Nee Kan de student in het tweede semester (februari-mei) 3 dagen per week in het bedrijf/onderzoekscentrum aanwezig zijn om te werken aan de masterproef? Ja/Nee Begeleiding : Externe promoters andere begeleiders : Joris Van Maldeghem, Sander Wollaert Bespreking door de werkgroep (niet invullen bij indienen van een voorstel) Beslissing: Minimale uitbreidingen: goedgekeurd - herwerken tegen / Opmerkingen: Advies van collega s: 1

Bestaande situatie en probleemstelling: Algemeen: ICORDA is een bedrijf dat zich specialiseert in het beheren van hard- en software en het realiseren van ICT-projecten bij andere bedrijven. Deze masterproef zal handelen over het eerste, nl. het beheer van de hardware en de software. Elke klant van ICORDA heeft een server die de ICORDA Agent (IA) software draait. Dit serverprogramma haalt alle mogelijke gegevens op over de hardware en de software bij die klant. Zoals hiervoor vermeld, heeft elke klant een IA draaien die alle nodige gegevens ophaalt. Deze gegevens worden door de medewerkers van ICORDA geanalyseerd. Op basis van hun analyse kunnen zij beslissen of een bepaalde waarde van een bepaalde categorie verontrustend is of niet. Wanneer zo'n situatie zich voordoet, zal een medewerker van ICORDA zelf proberen om het probleem op te lossen. Als dit niet mogelijk is, informeert de medewerker de klant over het probleem. Een voorbeeld: het zou kunnen dat een server bij de klant te weinig schijfruimte heeft om goed te kunnen functioneren. Wanneer een ICORDA-medewerker dit probleem ontdekt, dan zal die medewerker, mits toestemming van het bedrijf, dit proberen oplossen. Naargelang de wens van de klant kan de ICORDA-medewerker beslissen om het probleem te verhelpen, of de klant kan zelf het probleem oplossen. De klant kan dan zelf beslissen hoe ze het probleem verder zullen aanpakken. Opstelling: Bij de klant staat de server, voorzien van de IA-software, die de gegevens ophaalt. Deze gegevens worden dan naar de databank van ICORDA gestuurd. De gegevens worden binnengehaald door het programma Dashboard. Het programma Dashboard toont alle opgehaalde gegevens op een overzichtelijke manier aan de medewerker van ICORDA. Het is mogelijk om de databank vanuit Dashboard aan te vullen met extra gegevens. Het kan zijn dat de situatie bij de klant uitzonderlijk is waardoor er extra aandacht vereist is. Daarbij kunnen aanpassingen aan de databank nodig zijn. Een ICORDA-medewerker analyseert de data die hij/zij ontvangt en wanneer hij/zij klaar is, kan het Remote Maintenance Report (RMR) worden aangemaakt. Het RMR bevat alle informatie over wat er de afgelopen maand met de software en de hardware van die klant is gebeurd. Dit rapport wordt maandelijks opgesteld en wordt naar de klant gestuurd. Probleemstelling: In de huidige situatie moet een medewerker van ICORDA de problemen zelf ontdekken. Er is geen systeem aanwezig om aan te geven dat er een probleem is bij een bepaalde klant. Daarom moet de informatie die afkomstig is van de ICORDA Agent manueel gecontroleerd worden. De problemen handelen meestal over de apparatuur van de klant. Doordat alles manueel moet worden gecontroleerd, wordt het probleem meestal te laat ontdekt. Er is dus een vorm van automatisering nodig om de problemen sneller te ontdekken. Met deze automatisering kunnen de ICORDA-medewerkers het probleem sneller oplossen. De module moet problemen snel kunnen opsporen en dit laten weten aan een van de medewerkers van ICORDA. In eerste instantie zal dit via een mail gemeld worden. Doelstelling van het project: In de huidige situatie wordt er niets gedaan met de informatie die uit de databank wordt opgehaald. Het is de bedoeling dit te veranderen. Er moet bij de huidige opstelling een Remote Controlled Alert & Task Agent bijkomen. Deze moet ervoor zorgen dat wanneer data wordt opgehaald ze onmiddellijk aan een analyse wordt onderworpen. Op basis van de analyse kunnen dan bepaalde problemen vastgesteld worden en op basis van de wens van de klant kan een waarschuwingsmail worden verstuurd naar een van de medewerkers van ICORDA of kan een andere actie ondernomen worden. De waarschuwingsmail is de minimumvereiste van het systeem. 2

In dit systeem is het de taak van de medewerkers van ICORDA om de taken naar de wens van de klant te kunnen instellen. Het moet gemakkelijk zijn dit voor elke klant te kunnen opvragen en te kunnen veranderen indien nodig. Ook de alarmen kunnen per klant verschillend zijn. Het kan zijn dat voor de ene klant het netwerkverkeer van de servers belangrijk is en voor de andere de opslagcapaciteit van hun servers. De koppeling tussen een alarm en een taak moet dynamisch kunnen worden ingesteld. Een alarm moet met verschillende taken kunnen geassocieerd worden, en een specifieke taak moet met verschillende alarmen geassocieerd kunnen worden. Het is dus belangrijk om de taken en de alarmen intern in het programma goed te structureren. Er zullen verschillende alarmtypes zijn en verschillende soorten taken. Alarmen kunnen ook een prioriteit hebben. Deze duidt aan hoe belangrijk het alarm voor de klant is en hoe snel het moet worden opgelost. Wanneer moet een alarm geactiveerd worden? In de meeste gevallen wordt een alarm geactiveerd wanneer een drempelwaarde voor een bepaalde categorie overschreden werd. Het zou ook kunnen dat een combinatie van waarden van bepaalde categorieën verontrustend is. Dan moet men deze natuurlijk samen controleren. Als laatste zou het ook kunnen dat er een waarschuwing nodig is om aan te geven dat er iets niet meer correct werkt of is uitgevallen (bv. een server die is uitgevallen). Gedetailleerde omschrijving van de opdracht en problemen: Functionele analyse van alerts & tasks: Aan de hand van de gegevens die in de databank zitten, moet bepaald worden welke alarmen of alerts zinvol zijn. Het is de bedoeling dat we een alarm kunnen opstellen dat volledig aan de noden van de klant voldoet. Wanneer de alarmen zijn bepaald, moet er ook gezocht worden naar zinvolle acties of tasks die hierop kunnen volgen. Zoals reeds vermeld is de standaardactie een mail versturen naar een ICORDA-medewerker. Ook in dit geval moet een taak dynamisch kunnen ingesteld worden. Technische analyse en definitie van alerts & tasks: In deze analyse zullen de mogelijkheden van alerts en tasks aan bod komen. Er zal bepaald worden wat er nodig is om de alarmen en de taken in te vullen. Aan de hand van de functionele analyse kan bepaald worden wat er mogelijk is en wat niet. Ook hier moeten we rekening houden dat een taak en een alarm op maat van de klant moet kunnen opgesteld worden. De ideale oplossing zou zijn dat een medewerker van ICORDA zo weinig mogelijk moet tussenkomen bij het analyseren van de data. Hiermee wordt bedoeld dat voor elk probleem een alarm kan afgaan en een gepaste reactie kan volgen om dit probleem op te lossen. Design van Remote Controlled Alert & Task Agent (RCATA) module: Aan de hand van de technische analyse zullen we bepalen hoe we een alarm en een taak gaan implementeren in de nieuwe module. Er zal moeten bepaald worden hoe de module zal samengesteld zijn. De nieuwe module zal een deel zijn van een grotere module die al bestaat. Er zal dus ook moeten beslist worden hoe we de nieuwe module in de bestaande module integreren. Dit moet natuurlijk op een manier gebeuren dat de bestaande module niet of zo weinig mogelijk moet aangepast worden. Opstellen van het statement of work: Dit is het basisdocument voor de verdere ontwikkeling van de RCATA-module. Aan de hand van het design en de analyses wordt er bepaald wat, waar en wanneer de verschillende delen van het nieuwe systeem zullen worden geïmplementeerd. Dit is belangrijk voor een goede opbouw van de module tijdens de development fase. Als dit document goed is opgesteld, zal het ook eenvoudiger zijn om de verschillende delen van de module te testen. Development van de RCATA-module: In de fase van de ontwikkeling zal de module geïmplementeerd worden. Hiervoor wordt er gebruikgemaakt van het document dat in de vorige fase werd opgesteld. Er zal gebruikgemaakt worden van Visual Studio 2010 met de bestaande componenten (o.a. ICORDA library en DevExpress) van ICORDA zelf. Hier zullen waarschijnlijk nog problemen optreden waar niet aan gedacht werd. Dan kan het nodig zijn om het design van de module of de analyses te herzien om dit probleem op te lossen. De module 3

zal voor het grootste deel achter de schermen worden geïmplementeerd en een klein deel zal bestaan uit het aanpassen van de workflow van het programma Dashboard. Integratie van het project in de workflow: Wanneer de module volledig is afgewerkt en getest is, kan ze worden toegevoegd aan het reeds bestaande systeem. Het is dus de bedoeling dat alles wat is aangepast aan het testsysteem nu naar het systeem verhuist waarmee de ICORDA-medewerkers werken. Het integreren zal een semi-automatische workflow zijn waarbij het mogelijk is om updates op een vlotte en gestandaardiseerde manier te voorzien. Hiervoor zal worden gebruikgemaakt van FinalBuilder en Updater. Technologieën die aan bod komen: De programmeertaal zal C# zijn met de.net library. Het volledige systeem van ICORDA is in C# geprogrammeerd dus is dit de logische keuze. Language Integrated Query (LINQ) zal ook gebruikt worden. Dit is een techniek die standaard in C# aanwezig is voor het snel ophalen van objecten uit een collectie van objecten. Het kan ook gebruikt worden om gemakkelijk data op te halen die afkomstig is uit de databank. Microsoft SQL is de technologie die we zullen gebruiken voor het aanspreken van de databank. Deze technologie zal gebruikt worden voor het opslaan en ophalen van data. ADO.NET in combinatie met web services zal gebruikt worden voor de communicatie met de databank. ADO.NET bepaalt wat er moet worden opgehaald uit de databank aan de hand van SQL-statements. Met de web service Windows Communication Framework (WCF) zal de databankserver kunnen aangesproken worden. De combinatie van deze twee technologieën wordt ook OData genoemd. Voor de implementatie van de volledige module zal Visual Studio 2010 gebruikt worden in combinatie met DevExpress. Visual Studio is het programma waarin de software zal geïmplementeerd worden. DevExpress is een soort van bibliotheek van geavanceerde componenten, die kunnen gebruikt worden voor het maken van een GUI. Team Foundation Server (TFS): TFS wordt gebruikt om code op een centrale locatie te bewaren. Het wordt gebruikt om de code van verschillende programmeurs samen te voegen. Wanneer men de code wil aanpassen moet dat stuk worden opgehaald van de server en lokaal worden aangepast. Als men ermee klaar is moet het terug naar de server geüpload worden zodat de meest recente versie beschikbaar is. FinalBuilder Build server zal gebruikt worden voor het builden van het hele project. Wanneer iemand iets aanpast aan een bepaald deel van de software, gaat hij/zij dit niet lokaal compileren/builden, maar hij/zij gaat dit naar de FinalBuilder Build server sturen om daar te laten builden. Op deze manier heeft iedereen de meest recente versie van de software. Elke build van de software krijgt een versienummer, zodat men gemakkelijk kan weten in welke versie bepaalde aanpassingen werden aangebracht. De FinalBuilder Build server zorgt dus voor het ter beschikking stellen van de laatste werkende versie van het programma. Powershell scripting zal gebruikt worden in combinatie met Windows Management Instrumentation (WMI). Powershell zal de scripting engine zijn om met de WMI service aan te spreken. Andere technologieën die kunnen gebruikt worden in combinatie met Powershell zullen niet aan bod komen. - Powershell wordt meestal gebruikt in een gewone opdrachtprompt. Het voorziet een aantal commando s die bepaalde taken uitvoeren. Je kan deze commando s combineren met elkaar zodat ze meer geavanceerdere taken kunnen uitvoeren. De commando s kunnen ook gegroepeerd worden in een script. Als het bestand uitvoerbaar is worden alle commando s sequentieel uitgevoerd. Meestal is dit om een taak die veel manuele stappen bevat automatisch uit te voeren. - WMI wordt gebruikt voor het beheer van windows machines. Zowel software als hardware, van de lokale machine of machines op afstand, kunnen hiermee op elk moment 4

worden gecontroleerd. Door scripts te gebruiken, kan men de taken die men met WMI manueel moet uitvoeren, automatiseren. Mogelijke uitbreidingen en opties: Extra taken: Een eerste uitbreiding voor het systeem is het definiëren van taken die meer doen dan enkel een mail sturen. Het zou kunnen dat een aantal problemen automatisch zouden kunnen opgelost worden. Dan zou het mogelijk zijn om hiervoor een gepaste taak te definiëren. Als de klant dit zou willen, kan zo n probleem sneller worden opgelost. Het zou ook kunnen dat een taak extra dingen laat controleren om meer te weten over het probleem. Als het probleem dan niet automatisch zou kunnen opgelost worden, zal er reeds extra informatie ter beschikking zijn voor de verantwoordelijke die het probleem zal moeten oplossen. Website met lijst van problemen per klant: Op dit moment krijgen de ICORDA-medewerkers e-mails die te maken hebben met softwareproblemen. Deze mails worden direct vanuit een programma, waar een probleem zich voordoet, verstuurd. In deze lijst van mails kunnen een aantal mails informatie over hetzelfde probleem bevatten. Dit is niet overzichtelijk en is dus niet handig voor de ICORDA-medewerker. Als daar nog eens de mails bijkomen die verstuurd worden bij het ontdekken van een probleem op basis van de analyse van de informatie van de IA, dan is de lijst nog uitgebreider en dus nog onoverzichtelijker. Een website zou de ideale oplossing zijn om dit probleem te verhelpen. Op de website komt dan een lijst van problemen per klant. Als het probleem meerdere keren in de lijst voorkomt, kan ervoor gezorgd worden dat het toch maar één keer in de lijst staat. De website kan dan ook dienen om bij een probleem aan te duiden of het reeds opgelost werd of niet. Een ICORDA-medewerker kan ook de problemen laten filteren. Stel dat medewerker A zich enkel wil ontfermen over de problemen bij bedrijf A en dat medewerker B zich enkel wil ontfermen over bedrijf B, dan is dit perfect mogelijk wanneer beide medewerkers een gepaste filter instellen. Vernieuwende aspecten: Een aantal technieken die in C#.NET gebruikt worden. Het meest vernieuwende zal hier LINQ zijn. LINQ is een andere manier voor het opvragen van objecten die sterk op SQL lijkt. DevExpress is volledig nieuw. Deze technologie wordt gebruikt om de GUI te maken en heeft een aantal voordelen. Zo hebben de GUI-componenten een aantal ingebouwde functies die standaard bij DevExpress aanwezig zijn (bv. tabel exporteren naar Excel). Het bevat componenten voor websites en desktopapplicaties. Microsoft SQL is interessant omdat het gemakkelijk in combinatie met Visual Studio te gebruiken is. Het is mogelijk alle tabellen aan te maken en op te vullen vanuit Visual Studio zonder dat je hiervoor de SQL-syntax moet kennen. Bij deze manier van werken kan men snel controleren of alles correct in de databank is opgeslagen. TFS en FinalBuilder zijn technologieën die het gemakkelijker maken om in team aan bepaalde stukken code te werken en ze te compileren in het volledige programma. Deze technologieën zullen veel gebruikt worden aangezien iedereen binnen ICORDA aan de software van ICORDA kan sleutelen. Powershell zal gebruikt worden voor het automatiseren van een aantal taken. Wanneer er een taak veel manuele handelingen bevat, moet dit verholpen worden met een script. Op die manier zal het aantal manuele handelingen beperkt worden. Powershell zal gebruikt worden in combinatie met WMI. 5