SOFTWARE ARCHITECTUUR YOUR WORLD TRAVEL

Vergelijkbare documenten
En hoe gaan ze dit allemaal terugvinden?

Handleiding CMS VOORKANT

Inloggen. In samenwerking met Stijn Berben.

Handleiding Word Press voor de bewoners Westerkaap 1

Mach3Framework 5.0 / Website

Verslag. Projectteam: 107 Datum: 16 oktober 2008 Project leden: Lennard Fonteijn Harish Marhe Nicoletta Saba Turgay Saruhan Robin Tummers

Gebruikershandleiding. e-kracht is ontwikkeld door:

De Liemers Helpt Partner Handleiding v1.1. De Liemers Helpt. Partner handleiding

Handleiding ADAS bij kwaliteitsvisitatie

Handleiding Module Security (Log in)

Studentenhandleiding. Question Bank. Versie 1.2


Handleiding wordpress

Basis handleiding CMS

Uitnodiging Profiel invullen Tijdlijnen... 6

Handleiding 2designers Content Management Systeem

15 July Betaalopdrachten web applicatie gebruikers handleiding

Les 15 : updaten van gegevens in de database (deel2).

Gebruikershandleiding Taxatieweb. Inhoudsopgave

Gebruikershandleiding Taxatieweb. Inhoudsopgave

Handleiding. Berichten maken in WordPress. juni 2013

Handleiding competitie.nevobo.nl

PhPlist Gebruikers Handleiding

v.1.11 Verenigingenweb Plus Handleiding Website in gebruik nemen

HANDLEIDING. ORANJE FONDS COLLECTE ONLINE

CMS Template Handleiding

Handleiding OnLine voor de Opdrachtgever Versie 3.1

AFO 142 Titel Aanwinsten Geschiedenis

Gebruikershandleiding Website RKVVO

Gebruikershandleiding

Ga naar en log in met de gebruikersnaam en wachtwoord verkregen via mail.

Handleiding Mijn Kerk

HANDLEIDING CMS Versie 2.4 januari 2013

MWeb 4.0. Handleiding Basis Modules Versie 1.0

HRIS Hallmark Retail Internet Services

Gebruikershandleiding

15 July Betaalopdrachten web applicatie beheerders handleiding

Handleiding CMS. Auteur: J. Bijl Coldfusion Consultant

Handleiding WordPress Bakkeveen.nl

Organisaties, locaties, evenementen, deals Wanneer je bent ingelogd in de database, kun je kiezen uit onderstaande thema s.

2. INLOGGEN INLOGGEN'

Producten toevoegen. Inleiding

Mach3Framework 5.0 / Website

Handleiding Wordpress CMS

Handleiding Videoplatform AmersfoortBreed.

Zorgmail handleiding. Inhoud

Werkinstructie mijn.cromvoirtse.nl offertes en orders aanmaken.

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

Handleiding aanpassen van uw bedrijfsprofiel op de website van de Machevo & Bulk Vereniging

1. Pagina s. Verwijder pagina: hiermee kun u een pagina van uw website verwijderen. Bewerk pagina: hiermee kunt u de pagina bewerken.

TUV Nederland QABV [HANDLEIDING TRAININGSPORTAAL] Auteur: Hans van den Elsen, Elsen Software Design and Solutions

In deze handleiding wordt de werking van het extranet beschreven

GEBRUIKERSHANDLEIDING MAAKJETRAINING.NL 1

Technische nota AbiFire5 Rapporten maken via ODBC

Medewerkershandleiding Versie 1.1

Learning Management Systeem (LMS) Bedrijfsopleidingen

Een voorpagina of vaklokaal omzetten in WordPress

1) Inloggen op beheer omgeving a. Aanmelden b. Wachtwoord vergeten 2) Berichten a. All posts

Handleiding korte instructie gebruik LommOnline voor verenigingen. Stap 1. Vooraf:

LinkedIn - hoe meld ik mij aan?

PAGINA BEHEER. Heel belangrijk is dat u niet vergeet op te slaan anders gaan al uw wijzigingen verloren, deze knop vind u bovenin de pagina!!!

HANDLEIDING APPRENTICE (voor leerlingen)

Econosto Webshop 2011 Documentatie

Op de website van de N!X Ruilkring klik je in het menu op Cyclos". Rechts bovenin klik je op de knop aanmelden. Je komt dan in het inlogscherm.

Handleiding Ledenadministratiepakket

Aanvragen Postcode ideal

HRM-Reviews Reviews Handleiding voor PZ

Handleiding toevoegen objecten plexatutrecht.nl

CMS HANDLEIDING

Beheersplan 2010 Gebruikershandleiding

Handleiding THI. Versie Datum aanpassing Naam 1.0 Maart 2017 S. Klijzing

Handleiding Wordpress

Snel van start met Linkedin?

Technische nota AbiFire Rapporten maken via ODBC

Toetsen in Blackboard

Handleiding member, vs. 2.0 Taal: Nederlands FossilBase handleidingen. 1. User 2. Member 3. Group Admin 4.

Info Tracs Backend. Info Tracs v Handleiding v1.1

ABAX RFID - gebruikershandleiding

Algemene handleiding 3BM applicatie. Inhoudsopgave

Ga naar of selecteer in de website van de school- intranet basisonline

Handleiding gebruik photo-gallery

Om in te loggen in het CMS (Content Management Systeem) gaat u naar Hier ziet u het inlogscherm:

TeD Tekst en Design. Basisinformatie voor klein gebruik van het cms Made Simple

Handleiding portal voor invoeren verplichte gegevens voor ANBI s.

Modulehandleiding VivianCMS. Zoeken

Handleiding Procesarchitectuur Herziening

Kloklezen. Veerle Van Vooren

HANDLEIDING ONLINE DOSSIER (CODEX)

Handleiding Resultaatmeetsysteem en Mezzedo

Widget Tip van de dag!

Wordpress Handleiding Woocommerce Extra

Globale kennismaking

Handleiding Vacatures plaatsen MaastrichtDoet.nl

DWO BASISHANDLEIDING. Digitale Wiskunde Omgeving Freudenthal Instituut. VERSIE 26 oktober 2010

Het instroomproces* Medewerkers. Siza entree

Wat kan ik als cultuuraanbieder met?

Handleiding TAPI Driver

Create Your Locksystem

Transcriptie:

SOFTWARE ARCHITECTUUR YOUR WORLD TRAVEL Naam: Charlotte Raadsen Studentnummer: 220680 Klas: V2TDI2 Vak: Software architectuur Docent: Fons van Kesteren Datum: 4 maart 2008 Versie: 4.0

Inhoudsopgave ///////////////RELEVANT VOOR INTERACTION DESIGN//////////////... 3 Werktitel... 3 Omschrijving collectie... 3 Gebruikersgroep... 3 Doel concept... 3 Hoe de gebruikersgroep de collectie gaat ontsluiten... 3 Ordening... 3 Volgorde... 3 Hoe je de collectie betekenis gaat geven (context)... 4 Hoe de collectie wordt opengesteld voor de gebruiker (interactieprincipe)... 4 Look & Feel... 4 //////////RELEVANT VOOR SOFTWARE ARCHITECTUUR//////////... 5 Concept (afbakening domein)... 5 Reflectie... 5 UML (Use Case diagrammen)... 6 Database Model... 7 Queries... 8 Application Programming Interfaces (API))... 9 Functie omschrijvingen... 10 Kwaliteitscriteria... 11 Betrouwbaarheid... 11 Aanpasbaarheid... 11 Onderhoudbaarheid... 11 Schermen... 12

///////////////RELEVANT VOOR INTERACTION DESIGN////////////// Werktitel Your World Travel Omschrijving collectie Zelfgemaakte vakantiefoto s uit landen over de hele wereld. Ondanks dat ze zelf gemaakt zijn, zijn het kwalitatief erg goede foto s. Op de foto s staan geen mensen, maar alleen natuur, dieren, bezienswaardigheden, dorpjes, havens en drukke steden. Het zijn daarom dan ook zorgvuldig gemaakt foto s die allemaal een mooie compositie hebben en boeiend zijn om naar te kijken. Gebruikersgroep Wereldreizigers, die wereldreizen maken en het leuk vinden deze online te delen. Doel concept Mijn doel is om mensen een persoonlijke fotocollectie te laten samenstellen van hun (wereld)reis en anderen hiermee te kunnen inspireren. Geïnteresseerden kunnen zo op een leuke manier foto s verzamelen van hun favoriete bestemming, een leuke collectie samenstellen en deze op een persoonlijke manier invullen. Zo ontstaan er verschillende collecties van verschillende reizen die allemaal een persoonlijke invulling hebben gekregen. Ook kan je een wereldreiziger volgen op zijn wereldreis en zijn/haar verhalen lezen. Hoe de gebruikersgroep de collectie gaat ontsluiten Ordening De ordening van de foto s en verhalen kan op verschillende manieren gedaan worden: - ordenen op land - ordenen op continent - ordenen op datum - ordenen op naam bezienswaardigheid - ordenen op waardering van de foto - ordenen op tags - ordenen op gebruiker Volgorde De volgorde van de foto s wordt bepaald door de route die de gebruiker gaat uitstippelen in zijn wereldreis. Deze is dus per gebruiker verschillend.

Hoe je de collectie betekenis gaat geven (context) De collectie krijgt een betekenis doordat je eigenlijk foto s van andere gebruikers persoonlijk gaat maken. Je gebruikt foto s die andere gebruikers misschien wel met een andere bedoeling gemaakt hebben, of op een andere manier naar gekeken hebben, en je plaatst ze in je eigen persoonlijke verhaal of context. Je maakt ze je eigen. Je krijgt nu verschillende verhalen maar met dezelfde foto s. Dit persoonlijk maken maakt het nu juist zo interessant. Hoe de collectie wordt opengesteld voor de gebruiker (interactieprincipe) De gebruiker kan kiezen uit de bestaande foto s, ze kopiëren naar hun eigen persoonlijke pagina en ze toevoegen aan een eigen collectie, die ze zelf bepalen. Ook kan de gebruiker eigen foto s uploaden, om een collectie aan te vullen en een reisverslag over te schrijven.. Tenslotte kan de gebruiker de foto s ook bewerken om als e-card te verzenden. De interactie zit hem in het maken van een persoonlijke reissite, waarin jij bepaald wat voor collectie je samenstelt en welke foto s je daarvoor gebruikt. Het leuke zal zijn dat er op verschillende manieren reisverslagen worden gemaakt. Er zullen mensen zijn die visueel een reisverslag maken en de foto s gebruiken met als ondersteuning tekst. Anderen schrijven een reisverslag en gebruiken foto s als ondersteuning bij het verhaal. Iedereen kan op zijn/haar eigen manier te werk gaan. Look & Feel De site moet er een beetje multi- continentaal sfeertje krijgen. Een mix van verschillende culturele invloeden. Het moet aantrekkelijk zijn voor het oog en vooral makkelijk zijn in gebruik. Je persoonlijke pagina kan je naar eigen smaak invullen, zodat de gebruiker de foto s en de reisverslagen zo persoonlijk mogelijk kan maken.

//////////RELEVANT VOOR SOFTWARE ARCHITECTUUR////////// Concept (afbakening domein) De doelgroep kan op de site een reis uitstippelen met daarbij foto s van de desbetreffende landen. Bij die foto s kunnen ze hun reisverhalen plaatsen, of juist andersom. Ook kunnen ze foto s van andere gebruikers gebruiken in hun eigen reispagina om hun collectie compleet te maken. Elke foto en elk verslag kan een waardering krijgen om zo mooie volledige reisverslagen te creëren, waar mensen echt wat aan hebben. Als gebruiker en toeschouwer kan je iemand volgen op zijn reis. Om de reis af te maken kan je een foto kiezen waar je een zelfgemaakte e-card van kan maken met voorgemaakte templates. Reflectie Aan de hand van de uitleg van Wesley Dekkers heb ik zelf een database model in elkaar gezet. Hij heeft het mij zelf laten leren door mij fouten t elaten maken en mij daarna te vertellen wat er niet kan en dat mij op te laten lossen. Op deze manier heb ik ook echt het gevoel gehad dat ik het uiteindelijk zelf helemaal onder controle heb. Ik kan zo ook goed leren van mijn fouten. Het is voor mij nu veel duidelijker hoe je een database model maakt en wat de connecties zijn tussen te entiteiten. Als je kijkt naar het database model, dan merkte ik dat ik eigenlijk veel te moeilijk aan het denken was. Waardoor ik een chaos had op me scherm met verbindingen die uiteindelijk helemaal niet klopte. Nu weet ik hoe ik een tabel moet opstellen en hoe de verbindingen moeten lopen. Als je kijkt naar de queries, snap ik nu eindelijk de logica. Een goed database model helpt zeker om queries te maken en te begrijpen. Ik heb het met Wesley stap voor stap doorgenomen en ik snap nu eindelijk de logica. Mijn plan voor de toekomst is om me meer te gaan verdiepen in SQL, ook omdat ik deze nodig ga hebben voor het realiseren van het kernproject. Ik had voor het gesprek met Fons nog nooit gehoord van API s. Na wat voorbeelden gezien te hebben en wat uitleg gevraagd te hebben, ben ik zelf aan de slag gegaan en heb ik gezien dat het inderdaad een makkelijke manier is om de techniek achter de functies te leren begrijpen zonder dat je veel hoeft af te weten van scripttalen. Ik heb mijn best gedaan om het zo goed mogelijk uit te leggen! Na de feedback van Fons of de weergave van het resultaat van een API, heb ik een vriend geraadpleegd. Hij heeft mij nog even duidelijk uitgelegd hoe het ook alweer zat met BOOLEANS, STRINGS en ARRAYS. Veel van geleerd!

UML (Use Case diagrammen) De beheerder heeft de controle over de website en de users van de website. Hij kan als enige content toevoegen, wijzigen EN verwijderen. Ook kan hij de users zelf toevoegen en verwijderen. De gebruiker van de site kan ook een heleboel. Hij kan zich ten eerste vrij aan-en afmelden op de website. Na de aanmelding kan de gebruiker met zijn persoonlijke gegevens inloggen op de website. Hierna kan hij de content bekijken, wijzigen, toevoegen en verwijderen. Ook kan de gebruiker zoeken naar content door middel van de zoekfunctie.

Database Model

Queries Ik heb drie queries gemaakt met betrekking tot mijn database model en deze per querie uitgelegd: Selecteer alle foto s van een specifieke gebuiker SELECT * FROM upload WHERE gebruiker_id = '1' Uitleg: selecteert alle velden uit de tabel upload, waar in de kolom gebruiker_id een 1 staat Selecteer alle verhalen van de datum 24 oktober 2007 SELECT * FROM upload WHERE datum = '2007-10-24' Uitleg: selecteert alle velden uit de tabel upload waar in de kolom datum de datum 24 oktober 2007 staat (database format is yyyy-mm-dd, dus 2007-10-24) Selecteer alle info en alle plaatjes die bij verhaal 1 horen SELECT * FROM upload_per_verhaal LEFT JOIN upload ON upload_per_verhaal.upload_id = upload.upload_id WHERE upload_per_verhaal.verhaal_id ='1' Uitleg : selecteert alle velden uit de tabellen upload_per_verhaal en upload waar in beide tabellen upload_id matcht en in de tabel upload_per_verhaal in de kolom verhaal_id een 1 staat. Ook als er geen matchende rijen zijn in de tabel upload wordt de rij in de tabel upload_per_verhaal weergegeven.

Application Programming Interfaces (API)) Ik heb api s gemaakt van de 3 hoofdfuncties: inloggen, zoeken en uploaden. <?php function login($gebruikersnaam(varchar), $wachtwoord(varchar), $result(boolean)){ // waarde invoer velden ophalen // waarde invoer controleren of er iets is ingevuld // waarde controleren database // waardes controle FOUT melding geven // waardes controle Goed Melding geven & waarde zodat menu veranderd. // Geef true of false terug in de variable $result, zodat dit buiten de authenticatie functie gebruikt kan worden. } Het resultaat van deze functie is dus true of false in de variable $result. function zoeken($zoekwoord(varchar), $resultset(array)){ // waarde invoer zoekmachine ophalen // waarde controleren // wanneer fout melding terug geven // wanneer correct verder // Resultaten zoeken in de database // Resultaten opslaan in een array in de variable $resultset. Deze variable wordt als output variable van de functie zoeken gebruikt. } De resultaten van de functie zoeken kunnen worden uitgelezen uit de array $resultset. Deze array bevat alle zoek uitkomsten en kan dus buiten de functie gebruikt worden. function uploaden ($gebruiker_id(int), $naam(varchar), $plaats(varchar), $land(varchar))$omschrijving(text), $datum(date), $trefwoord_id(char),$result_upload(boolean)){ // gebruiker id opvragen, naam, plaats,omschrijving van het plaatje en plaatje zelf // alle invoer checken of ingevuld. // wanneer fout melding terug // wanneer goed verder // alle gegevens opslaan in database // Plaatje uploaden en eventueel resizen. + thumbnail maken. // melding terug geven. // Uitkomst (succesvol of niet succesvol als boolean opslaan, (true of false) in de variable $result_upload. } Het directe resultaat is dan dat de foto wel of niet is geupload en deze uitkomst ook buiten de functie gebruikt kan worden (variable $result_upload)?>

Functie omschrijvingen Login Inloggen om van de frontend in te loggen naar je persoonlijk aangemaakte pagina. Dit doe je door je gebruikersnaam en wachtwoord in te voeren. Zoeken Zoeken naar verhalen en foto s dmv een trefwoord die je invult. Daarna worden er vanuit de database foto s en verhalen gegenereerd die overeenkomen met je trefwoord. Raten Als gebruiker kan je foto s en verhalen van elkaar raten! De Database slaat dit op en de beste verhalen en foto s komen bovenaan in de zoekresultaten. Uploaden Om de collectie uit te breiden kan je foto s en verhalen uploaden. Iedereen met een profiel kan uploaden. De geuploade informatie wordt opgeslagen in de database en kan door iedere ingelogde persoon opgevraagd worden. Kopiëren Foto s van elkaar kopiëren en in je eigen content plaatsen. De foto wordt opgevraagd uit de database en in je eigen gebruikers profiel geplaatst. Profiel bewerken Je profiel kan je op elk moment wijzigen en aanpassen. De aanpassingen worden opgeslagen in de database. Tags Tags zijn te herkennen aan de blauwe, onderlijnde woorden die fungeren als link naar een paralel lopende zoekterm. Druk je op een tag dan verschijnt het resultatenscherm van de zoekfunctie met alle zoekresultaten die bij de des betreffende tag horen. De tags worden op geslagen in de database en daar ook opgeroepen als men op een tag klikt.

Kwaliteitscriteria Het concept moest ontworpen worden aan de hand van ten minste drie kwaliteitscriteria: Betrouwbaarheid, aanpasbaarheid en onderhoudbaarheid. Van alle drie ga ik uitleggen hoe zij hun werk doen binnen het concept. Betrouwbaarheid Het concept is redelijk betrouwbaar. Dat wil zeggen dat wanneer er 1 of 2 personen dagelijks (afhankelijk van de populariteit van de site) op toezien wat voor foto s en verhalen er worden geplaatst, de site als redelijk betrouwbaar over kan komen. Om het concept te testen zou je het de doelgroep een half jaar lang kunnen laten gebruiken. Dan kan je kijken naar gebruiksvriendelijkheid maar ook naar eventuele systeemfouten. Deze kunnen dan verholpen worden of aangepast worden. Aanpasbaarheid De beheerder van de site kan niet alleen op de site gegevens verwijderen en wijzigen, maar kan ook in de database aanpassingen maken. Door de eenvoudigheid van de site zou het eventueel ook mogelijk zijn om het op je mobieltje te bekijken. Het si dus aanpasbaar voor meerdere media. Onderhoudbaarheid De site is voor de beheerder goed te onderhouden. Ik heb zelf geen code geschreven voor de website, omdat het alleen een visueel concept is. Maar de bedoeling is wel dat mocht de site gescript gaan worden dat de broncode helder moet zijn, zodat eventuele aanpassingen en toevoegingen makkelijk geïmplementeerd kunnen worden en dat versterkt de onderhoudbaarheid en voorkomt grote errors in het systeem.

Schermen

Profielpagina met gekopieerde foto s