Software Engineering Groep 4

Vergelijkbare documenten
Software Requirements Specification

Software Requirements Specification

Software Design Document

Software Design Document

SenBox Handleiding. Versie: juli

Software Design Document

In deze handleiding wordt de werking van het extranet beschreven

IMAP-handleiding Bookinto

Software Requirements Specification

Secure File Sync - Quick Start Guide

Software Engineering Groep 4

PersoneelsSysteem. Handleiding

MOTUS- APP: De gebruikersgids

Handleiding HBO GO V.2

Gebruik Self-service applicatie

Starthandleiding voor administrator

Technische nota AbiFire Rapporten maken via ODBC

How To Do Gebruikersbeheer mbconnect24 V2

Eindgebruikershandleiding Jira

Handleiding Express-omgeving esight Versie 2013.x. Handleiding Express-omgeving esight Datum: December 2013 Parkstad Energiediensten B.V.

Handleiding VBus. 1. Ga naar

Ga met uw telefoon naar de onderstaande link om de Xmeye app te downloaden of zoek in de app store naar Xmeye.

Basis handleiding CMS

Praktische handleiding Aanmaak van een account

Menu Door op de menuknop te klikken kunt u het hoofdmenu sluiten of openen. De menuknop is het icoon met drie streepjes vlak onder elkaar.

Handleiding voor beheerders

Medewerker handleiding. PersoneelsSysteem - HorecaSysteem - ZorgSysteem

Handleiding GRAS. (Gebruikers registratie activiteiten systeem) Digitale tool voor het aanmelden van kinderen voor het naschoolse aanbod op school

Technische nota AbiFire5 Rapporten maken via ODBC

Software Requirements Specification. Roux Reinert 18 mei 2011

Handleiding GRAS. (Gebruikers registratie activiteiten systeem) Digitale tool voor het aanmelden van kinderen voor het naschoolse aanbod op school

Eindgebruikershandleiding Jira

Net2 Anywhere - Installatie

Handleiding Demo account inloggen op NDC-IT Cloud Infrastructuur

Software Design Document

Handleiding. Mei Versie 1.1. Handleiding NCDR Pacemaker & ICD Registratie - Mei 2015, versie 1.1.

HANDLEIDING WEB SHOP

1.1 Het downloaden van de applicatie Om de ehealth applicatie te downloaden zoekt u in ofwel de Google Play Store of de App Store naar ehealth.

BCCA - Kwaliteitskader "Ventilatie" - Handleiding web applicatie

Taxis Pitane Link. (gebruikershandleiding) Censys BV - Eindhoven

HANDLEIDING EXTERNE TOEGANG CURAMARE

Gebruikers handleiding Brugge Printshop webshop

Configuratiehandleiding AHD 3.0 AHDVR( )A

Gebruikershandleiding

Info Tracs Backend. Info Tracs v Handleiding v1.1

BRICONweb voor de club

Handleiding Pawpeds Deel 1

Inhoudsopgave. Inhoud

Handleiding webshop

Installatiehandleiding TiC Narrow Casting Manager

Handleiding Beweegkuur Informatie Systeem Leefstijladviseur

Gebruikshandleiding Vastgoedscanner

Software Engineering Groep 4

Handleiding Webapplicatie Robin

Technisch ontwerp ScheidsMarkt

Algemeen. Beschrijving LA5 Systeembeheer. Administratieve applicaties voor tankstation en oliehandel. versie 5.2

Het twee of meer planningssysteem ziet er als volgt uit wanneer de gebruiker is ingelogged.

Uitleg MijnKPN Grootzakelijk Aanmaken van accounts

Systeemontwikkeling, Hoofdstuk 3, Tabellen en formulieren

Kluwer Office CRM. Advanced.

Nadat u bent ingelogd kunt u in het hoofdmenu kiezen voor 4 opties:

Beheer van databanken

Handleiding voor het instellen van de Wi-Fi op een Omnik omvormer en het aanmaken van een account op OmnikPortal. Wi-Fi instellen op de omvormer:

Handleiding inloggen op

Software Test Documentation

Systeemontwikkeling, Hoofdstuk 4, Tabellen maken in MS Access 2010

Handleiding RS Form! 1.0.4

G11: Gebruikershandleiding Automatische Bezoekfiche G80008-G03297-K054-A1-Z016. Damien Schatteman - AWV

Gebruikershandleiding Search Vastgoed Portfolio

DIPLA Opdrachten app

TimeManager Handleiding

Uitzend Software Diensten B.V. UBplus Online. Handleiding voor uitzendbureaus, detachering en payroll bedrijven

Software Test Plan. Yannick Verschueren

Mobile Self Service Android DeBlessurePraktijk

1.1 Selecteren van Locatie en scherm

Handleiding Ritty-App

CVO Crescendo. Klik op inloggen, jet kmt terecht in de module inloggen Schakel nu om van het tabblad inloggen naar het tabblad Nieuw account aanmaken

Gebruikershandleiding MobiDM

Instructie Beheren Cases

HTA Software - Klachten Registratie Manager Gebruikershandleiding

Cornerstone OnDemand: Inloggen

Inhoudsopgave Welkom bij VHV Kompas 2 Hoe werkt VHV Kompas? 2 Uw accounts 4 Uw VHV Kompas account beheren 5

Transcriptie:

Software Engineering Groep 4 Software Design Description Jeroen Nyckees (Design Manager) Jan-Pieter Hubrecht (Project Manager) 3 e Bachelor Computerwetenschappen se4-1112@wilma.vub.ac.be 11 december 2011 1

Tabel 1: Document geschiedenis v2.0 10/12/11 Jeroen Nyckees Opmerkingen Aangepast v1.0 13/11/11 Jan-Pieter Hubrecht Eindcontrole v0.1 12/11/11 Jeroen Nyckees Kladversie 2

Inhoudsopgave Inhoudsopgave 1 Inleiding 5 2 Architectuur 6 2.1 Multi-tier architectuur................................ 6 2.1.1 Two-tier architectuur............................ 6 3 Decompositie 7 3.1 conceptuele definitie van het systeem........................ 7 3.2 codedesign....................................... 8 4 Database 9 4.1 Entity Relationship Model.............................. 9 5 User Interface 10 5.1 Gebruikers....................................... 10 5.2 Weergave van bezienswaardigheden en wandelingen................ 11 5.3 Bezoek afleggen.................................... 12 5.4 Databank....................................... 12 3

Referenties Referenties [1] http://developer.android.com/guide/topics/fundamentals/activities.html. [2] http://en.wikipedia.org/wiki/multitier architecture. [3] http://wilma.vub.ac.be/ se4 1112/, 2011. [4] IEEE. Software design descriptions - ieee std 1016tm. IEEE Computer Society, 2009. 4

1 Inleiding 1 Inleiding Dit project is in opdracht van Professor Van Der Straeten ter examinatie van de cursus Software Engineering aan de Vrije Universiteit Brussel. De bedoeling is om een Android applicatie te bouwen die functioneert als een interactieve toeristische gids in een bepaalde stad. De gebruiker moet in staat zijn om de nabijgelegen bezienswaardigheden op een vlotte manier te kunnen zoeken en na het lezen van de informatie, eventueel te bezoeken. Door het uitdelen van scores leert de applicatie wandelingen samen te stellen die overeenstemmen met de voorkeuren van de gebruiker. Een gedetailleerd overzicht van de vereisten is terug te vinden in het SRS. 5

2 Architectuur 2 Architectuur De architectuur van de software is het hoogste niveau van design. Op dit niveau wordt beschreven hoe de organisatie van het gehele systeem in zijn werk gaat. Dit niveau abstraheert van de componenten van de software en de onderlinge relaties en kenmerken van componenten. 2.1 Multi-tier architectuur De multi-tier architectuur is een client-server architectuur waarin presentatie, application processing en data-management logisch onafhankelijke processen zijn. Multi-tier architectuur voorziet een model die toelaat om flexibele en herbruikbare applicaties te ontwikkelen. Door het opsplitsen van de applicatie in lagen, moet enkel een specifieke laag aangepast of toegevoegd worden in plaats van de volledige applicatie te herschrijven. 2.1.1 Two-tier architectuur Als conceptuele architectuur voor de stadsgids werd voor werd dus voor een two-tier architectuur gekozen. Dit is een architectuur die uit 2 lagen bestaat. Deze lagen zijn: 1. client-tier (op mobile device) 2. data-tier (op wilma) De client-tier bevat de presentatie en de application logic en de data-tier verzorgt de data access. User Client Tier Data Tier Wilma Figuur 1: 2-tier model 6

3 Decompositie 3 Decompositie 3.1 conceptuele definitie van het systeem Hieronder volgt het UML klassendiagram als conceptuele definitie van het systeem. PointOfIntrestLog Comment Rating Profile Language Age Constraint ID Comment HasDone Comment Rating has PointOfnterest position city 1 «Includes» 1..* Walk Length Time located at located at is instance of ID Type Adress City Country Figuur 2: UML Klassendiagram Profile : Een profiel bevat voor een gebruiker zijn taal, leeftijd, beperkingen, interesses en naam. Constraint : Een beperking bevat een unieke identifier en een korte beschrijving. Walk : Een wandeling bevat een aantal POI s, de totale lengte van de wandeling, de duur van de wandeling, de eventuele beperkingen en interesses. Deze beperking en interesses matchen met diegene die een profiel heeft. POI : Een POI is een bezienswaardigheid in een stad met een bepaald type. Verder heeft een POI een adres, openingsuren, een naam, een beschrijving en een foto. Een POI houdt net zoals een wandeling ook de eventuele beperkingen en interesses bij. 7

3 Decompositie Type : De Type klasse wordt gebruikt om het type van een POI aan te duiden. Op die manier kan een Type (vb. McDonalds) in de gedaante van POI s meerdere keren voor komen in een stad. Adress : Een Adress bevat een straatnaam, coordinaten, nummer en stad. 3.2 codedesign De applicatie werd opgedeeld in verschillende activities. Hieronder volgt een activity diagram voor het prototype in de eerste iteratie. start end LogInAct ivity Register Register Activity LoggedIn Logout LogIn HomeAct ivity GPS GPSActi vity Figuur 3: Activities Bij het opstarten van de applicatie komt men terecht in de LoginActivity terechts. Wanneer de gebruiker tijdens een vorige sessie Remember Md aangevinkt heeft dan komt hij direct in de HomeActivity. Anders komt de gebruiker door zijn naam en wachtwoord in te geven in de HomeActivity. Wanneer de gebruiker nog geen profiel had aangemaakt kan hij dat doen door Register aan te klikken. Wanneer hij zijn naam en wachtwoord heeft ingegeven komt hij ook terecht in HomeActivity. De HomeActivity is het centrale punt van de applicatie, van hieruit wordt doorgedispatcht naar andere activities naargelang wat de gebruiker wil gaan doen. Zo kan men vanuit de HomeActivity naar de GPSActivity. In de GPSActivity staat de logic voor het weergeven van de kaart en het uitstippelen van de weg op die kaart. Uitloggen zorgt ervoor dat men vanuit de HomeActivity terug in de LoginActivity komt. 8

4 Database 4 Database Uiteraard is het niet de bedoeling de volledige database van de applicatie op de Android bij te houden. Daarom zal er met een cache systeem gewerkt worden waarbij een instantie van de database op het Android device wordt bijgehouden. Naargelang de gebruiker meer informatie opvraagt zal via internetconnectie de databank op het Android Device meer opgevuld raken. 4.1 Entity Relationship Model Het database model werd ontwikkeld zodat ondersteuning van meerdere talen mogelijk is. Een user heeft een user een voorkeurstaal die bij het inloggen wordt opgehaald. Wanneer een user een nieuwe gsm heeft dan beschikt hij niet lokaal meer over zijn account waardoor deze informatie verloren gaat. Voor elke entiteit die in verschillende talen moet worden weergegeven werd een aparte entiteit voorzien waarin we de verschillende vertalingen opslaan. Wanneer bijvoorbeeld een beschrijving van een POI gevraagd wordt dan gaat die naargelang de ingestelde taal waarin de applicatie gebruikt wordt weergegeven worden in de correcte taal. Figuur 4: ERM 9

5 User Interface 5 User Interface In deze sectie wordt de user interface besproken. activities. Er werden mockups gemaakt voor alle 5.1 Gebruikers Bij het opstarten van de applicatie wordt de mogelijkheid geboden om met een bestaand profiel in te loggen of om een nieuw profiel aan te maken. Figuur 5: Inloggen Een nieuw profiel registreren zal aan de gebruiker naar een nieuwe activity leiden waarin hij zijn naam, wachtwoord, taal en leeftijd kan opgeven. Indien de gebruiker dit wenst kan hij door op next te klikken in een volgende activity zijn interesses en beperkingen kunnen aangeven. Later is het steeds mogelijk het profiel van de gebruiker aan te passen. Figuur 6: Registreren van een nieuw profiel 10

5 User Interface Figuur 7: Interesses en Beperkingen 5.2 Weergave van bezienswaardigheden en wandelingen Eens de gebruiker een profiel aangemaakt heeft krijgt hij de keuze om afzonderlijk bezienswaardigheden te bekijken, een bestaande wandeling te nemen of vrij rond te wandelen (zie 5.3). Figuur 8: Home Wanneer hij ervoor kiest om een bestaande wandeling af te leggen dan wordt die wandeling afgebeeld. De weergave van een wandeling bestaat uit een aanduiding van de bezienswaardigheden die in de wandeling vervat zitten op een kaart. Wanneer een bezienswaardigheid geselecteerd wordt, dan wordt de beschikbare informatie over deze bezienswaardigheid aan de gebruiker getoond. Deze informatie bestaat uit afbeeldingen en een tekstuele beschrijving. Indien de gebruiker dit wenst kan hij ook commentaar van andere gebruikers gaan opvragen alsook zelf commentaar geven op de bezienswaardigheden. Verder wordt ook de lengte en 11

5 User Interface duur van de wandeling weergegeven. Indien de gebruiker kiest om bezienswaardigheden afzonderlijk te gaan bekijken worden alle bezienswaardigheden in een lijst weergegeven. Het is mogelijk om in deze lijst te gaan zoeken en filteren op eigenschappen zoals nabijheid, openingsuren, etc. Het selecteren en inspecteren van een een bezienswaardigheid gebeurt op dezelfde manier als wanneer deze vanuit een bestaande wandeling gekozen wordt. Tenslotte kan de gebruiker er voor kiezen zelf een wandeling aan te maken. Hij doet dit door uit de bovenstaande lijst bezienswaardigheden te selecteren. De applicatie berekent dan een weg die gebruiker van de ene bezienswaardigheid naar de andere leidt. 5.3 Bezoek afleggen Eenmaal de gebruiker zijn wandeling gekozen heeft kan hij kiezen om zijn wandeling te starten. De gebruiker wordt dan door pijlen aangeduid op de kaart geleid naar het eerste punt. Wanneer de gebruiker aankomt bij de bezienswaardigheid klikt hij op het aangeduidde punt op de kaart. De beschrijving wordt dan aan de gebruiker getoond. Figuur 9: Bezoek afleggen Een vrije rondwandeling houdt in dat op elk moment aan de gebruiker een lijst getoond wordt van bezienswaardigheden gesorteerd op de afstand van de bezienswaardigheid tot de gebruiker. Ook in deze lijst kan men zoeken/filteren. 5.4 Databank Via een eenvoudige webinterface (Ruby On Rails) is het mogelijk om de data te bekijken, aan te passen of toe te voegen aan de bestaande databank. 12