• No results found

4.4 Utv¨ ardering och datainsamling

5.1.1 Krav f¨ or framtida utveckling

• Kunna plotta resultatet av en s¨okfr˚aga grafiskt alternativt exportera data s˚a att det g˚ar att plotta med ett externt program.

5.2

Implementation

Inneh˚allet i loggfilerna samt gr¨anssnittet och funktionaliteten f¨or respektive flik beskrivs nedan.

Anv¨andaren beh¨over ladda upp de olika loggfilerna separat. Tre knappar med funktioner har implementerats f¨or att hantera respektive loggfil (se figur 6.1).

5.2.1

ButtonEvents

I ButtonEvents-loggen lagras alla knappinteraktioner. Data fr˚an Button- Eventstabellen i databasen h¨amtas och representeras i gr¨anssnittet i re- spektive kolumn. I dessa kolumner kan en anv¨andare markera de element som skall unders¨okas och sedan klicka p˚a en knapp f¨or att generera en SQL- query vars resultat presenteras i en tabell i den nedre delen av gr¨anssnittet. En funktion f¨or att unders¨oka aktivitet i ButtonEvent-loggen implemente- rades, f¨or att en anv¨andare ska kunna ange ett antal aktiviteter per angiven

Resultat 19

Figur 5.1: GUI f¨or att ladda loggfil. ButtonEventlog ¨ar laddad

tidsenhet och filtrera s¨okresultatet utifr˚an aktivitetsfiltret. D¨armed kan en anv¨andare sj¨alv best¨amma vad som ¨ar ”mycket aktivitet” i olika scenarier. Det g˚ar ¨aven att ange en start- och en sluttid och se vilka aktiviteter som finns d¨ar, utifr˚an vilka val som definierats tidigare.

Figur 5.2: Funktioner i GUI f¨or filtrering av data ur ButtonEvent

5.2.2

ContinuousLog

I ContinuousLog lagras kontinuerlig data, som flygh¨ojd och hastighet. I gr¨anssnittet g˚ar det att ange intervall f¨or respektive data, anges ingenting

20 5.2. Implementation

Figur 5.3: Exempel p˚a en av verktyget genererad SQL-query

visas samtliga poster. Det g˚ar ¨aven att ange ett tidsintervall f¨or att filtrera resultatet.

Figur 5.4: Funktioner i GUI f¨or filtrering av data ur ContinuousLog

5.2.3

LayoutEvent

LayoutEvent-loggen lagrar vad som visas p˚a de olika delarna av sk¨armarna. Gr¨anssnittet ¨ar uppbyggt som tre sk¨armar med en ¨ovre och en nedre del d¨ar all data fr˚an loggfilen visas. Anv¨andaren kan markera vilka sk¨armar denne ¨ar intresserad av att se aktivitet p˚a och generera en tabell som visar detta. ¨Aven h¨ar g˚ar det att ange ett tidsintervall f¨or att filtrera resultatet.

Resultat 21

Figur 5.5: Funktioner i GUI f¨or filtrering av data ur LayoutEvent

5.3

Utv¨ardering

Under testet som utf¨ordes i simulator uppt¨acktes flera misstag som antas bero p˚a h¨og kognitiv belastning. Det var sv˚art att h˚alla h¨ojden under 500 fot under multitasking. D¨arf¨or kan man s¨oka i programmet efter alla tillf¨al- len d¨ar h¨ojden ¨an den godk¨anda h¨ojden och unders¨oka vilka interaktioner som gjordes under dessa tidpunkter, vilka eventuellt kan antas ha en bi- dragande faktor till att h¨ojdkravet inte h¨olls. Vid en s˚adan s¨okning visas flera tillf¨allen d¨ar h¨ojden ¨ar h¨ogre ¨an 500 fot (se figur 5.6), utifr˚an dessa tidsst¨amplar kan antingen mer s¨okning g¨oras f¨or att se vilka sk¨armar som visades vid tillf¨allena eller se vilka interaktioner som gjordes med gr¨anssnit- tet, alternativt kan dessa tidpunkter anv¨andas f¨or att enklare g˚a igenom videomaterial. Om vi vet att h¨ojdkravet beh¨ovde h˚allas mellan klockan 15:09 och 15:17 kan en s¨okning g¨oras, d¨ar resultatet i tabellen ¨ar samtliga loggade tidpunkter mellan 15:09 och 15:17 d¨ar h¨ojden ¨overstiger 500 fot.

22 5.3. Utv¨ardering

Figur 5.6: Tidpunkter d¨ar Bar Alt (h¨ojd) > 500 mellan tidpunkterna 15:09 och 15:17

Resultat 23

24 5.3. Utv¨ardering

Kapitel 6

Diskussion

Det h¨ar avsnittet best˚ar av resultatdiskussion, d¨ar resultatet diskuteras och kopplas till fr˚agest¨allningar, samt en metoddiskussion d¨ar metodvalet diskuteras.

6.1

Resultatdiskussion

Det h¨ar arbetet har resulterat i ett verktyg som skall anv¨andas som kom- plement till anv¨andbarhetsutv¨ardering. Fr˚agest¨allningarna var:

• Hur kan ett verktyg implementeras f¨or att underl¨atta tolkning av registrerad data?

• Hur kan ett verktyg, genom att unders¨oka data, anv¨andas som kom- plement till konventionell anv¨andbarhetstestning?

• Hur n˚as systemets krav p˚a funktionalitet utifr˚an projektets syfte? • Hur kan man omvandla informationen fr˚an en loggfil till ett format

26 6.1. Resultatdiskussion

D˚a loggfilerna f¨or nuvarande ¨ar tre till antalet, och kan komma att ut¨okas med fler typer av loggfiler, gjordes valet att implementera en flik f¨or varje typ av loggfil i gr¨anssnittet. Funktionaliteten f¨or att ladda och lagra da- ta fr˚an filen i databas ¨ar konsekvent f¨or alla loggfiler. D¨armed beh¨over en utvecklare endast skapa en ny flik f¨or en ny loggfil och utg˚a fr˚an kodstruk- turen n¨ar den nya filen skall l¨asas in och lagras i databasen. D˚a programmet skall kunna hantera ok¨anda v¨arden s˚a skapades en funktion som l¨aser varje kolumn och l¨agger in den str¨ang som finns d¨ar i databasen. D¨armed kan flera typer av exempelvis knappar registreras i loggfilen och programmet kan hantera det. D˚a informationen ¨ar av olika typer i respektive loggfiler beh¨ovde ett unikt gr¨anssnitt tas fram f¨or varje typ av loggfil, vilket ocks˚a motiverar valet av implementationen av flikar.

Verktyget ¨ar t¨ankt att anv¨andas f¨or att unders¨oka data i efterhand som komplement till den anv¨andbarhetsutv¨ardering som idag utf¨ors. Eftersom ett test i en simulator kan ta l˚ang tid och inneh˚alla m˚anga olika aktiviteter kan loggfilerna bli stora, vilket g¨or att det ¨ar tids¨odande att manuellt g˚a igenom dessa f¨or att finna intressanta punkter. D˚a det finns flera separata filer ¨ar det osmidigt att manuellt korrelera funnen data i en fil med data i en annan, speciellt om flera punkter skall unders¨okas samtidigt.

En anv¨andare kan exempelvis anv¨anda verktyget f¨or att se vilka sk¨armar och knappar som anv¨andes under ett test. P˚a det s¨attet g˚ar det att f˚a reda p˚a om det finns tillf¨allen d˚a vissa knappar eller sk¨armar aldrig anv¨ands eller hur ofta vissa knappar eller sk¨armar anv¨ands. Det kan vara sv˚art f¨or en anv¨andare att efter ett simulatortest sj¨alv svara p˚a hur m˚anga g˚anger denne tryckte p˚a en viss knapp eller bytte bild p˚a en sk¨arm och d¨arf¨or ¨ar detta verktyg bra f¨or att ta reda p˚a svaret p˚a fr˚agor som denna.

Om aktiviteter som missas p˚a grund av h¨og kognitiv belastning skall un- ders¨okas kan man se p˚a en tidpunkt f¨or en varning, och sedan s¨oka efter samtliga eller relevanta knapptryckningar inom en viss tid efter att h¨an- delsen intr¨affat och se om det st¨ammer ¨overens med den f¨orv¨antade serien av interaktioner. Eftersom knapptryckningarna visas kronologiskt i en lista blir det enkelt att se i vilken ordning och med vilket tidsspann knapp- tryckningar g¨ors. (se figur 5.6 och 5.7). D˚a det f¨or nuvarande inte loggas h¨andelser i GUI, f¨orutom vilka sk¨armar som visas, ¨ar det sv˚art att unders¨o-

Diskussion 27

ka relevanta reaktionstider (exempelvis d˚a en varning visas tills varningen ¨

ar ˚atg¨ardad). N˚agot som framkom under utv¨arderingstestet var att an- v¨andaren inte uppt¨ackte att br¨ansletanken var tom. Detta skulle kunna analyseras med verktyget genom att s¨oka efter den tidpunkten och se vilka interaktioner som gjordes, om det kan ha varit en bidragande faktor till att varningen missades.

6.2

Metoddiskussion

Valet att anv¨anda SQLite som databashanterare medf¨orde en integrerad databasmotor som l¨aser och skriver till filer p˚a h˚arddisken. M˚anga andra databashanterare ¨ar klient/serverbaserade och f¨ors¨oker implementera ett delat lagringsutrymme. N¨ar det g¨aller detta verktyg s˚a ¨ar inte data separe- rat fr˚an applikationen ¨over ett n¨atverk, d¨arf¨or beh¨ovs inte en databashante- rare som ¨ar klient/serverbaserad. En anv¨andare skall inte heller beh¨ova vara uppkopplad mot internet vilket ocks˚a motiverar valet av SQLite. SQLite har en annan f¨ordel i att det ¨ar gratis att anv¨anda samt g˚ar att integrera i flera olika programmeringsspr˚ak. I C# g¨ors detta enkelt genom att ladda ned och inkludera ett bibliotek. Databasen som skapas med SQLite be- st˚ar av en enda fil som kan mailas eller flyttas med ett USB-minne. Andra f¨ordelar med att v¨alja SQLite ¨ar bland annat att filformatet p˚a databasen g˚ar att flytta mellan 32-bit och 64-bit operativsystem (SQLite, 2015) vilket g¨or det smidigt att kopiera programmet till olika datorer utan att ett nytt bibliotek beh¨over inkluderas. Det finns vissa begr¨ansningar med SQLite, till exempel att den inte hanterar lika avancerade queries som andra da- tabashanterare. Detta har inte varit n˚agot problem i det h¨ar arbetet men kan komma att bli det d˚a queries beh¨over vara mer avancerade.

N¨ar det g¨aller anv¨andningen av Scrummetodik i ett enmansprojekt s˚a var det optimalt ha en sprintl¨angd p˚a en vecka. En sprintl¨angd skall vara maxi- malt en m˚anad l˚ang (Schwaber and Sutherland, 2011). Sprintl¨angden sattes till en vecka p˚a grund av projektets korta tidsram, detta f¨or att kontinu- erligt tr¨affa produkt¨agaren tillr¨ackligt m˚anga g˚anger under implementa- tionsprocessen. Att ta fram funktionella krav utifr˚an user stories samt att

28 6.3. Vidareutveckling

sortera dem i en produktbacklogg fungerade bra f¨or att f˚a en struktur p˚a projektet. Andra programmeringsspr˚ak, som Java eller C++ hade f¨ormod- ligen g˚att att anv¨anda i implementationen med goda resultat. SQLite, som fungerade v¨aldigt bra f¨or programmets syfte, g˚ar som n¨amnt att integrera i ett flertal olika spr˚ak.

6.3

Vidareutveckling

Ett s¨att att utveckla programmet vidare ¨ar att implementera en ytterligare flik d¨ar alla resultat fr˚an de genererade queries produceras i en tabell. Detta kan g¨oras med en SQL-join som anv¨ands f¨or att kombinera rader fr˚an flera tabeller, utifr˚an ett gemensamt f¨alt, som i detta fall ¨ar tidsst¨ampel som finns i samtliga tabeller. Detta g¨ors f¨or att analysera loggfilerna tillsammans och d¨armed g¨ora det enklare att se h¨andelser i de olika loggarna vid samma tidpunkt, utan att beh¨ova byta mellan olika flikar.

D˚a programmet kan ut¨okas till att hantera fler olika loggvariabler och filer s˚a finns det stora m¨ojligheter att g¨ora mer avancerade analyser av kognitiv belastning. Om algoritmer tas fram f¨or olika m˚att av mental belastning kan dessa funktioner implementeras och anv¨andas p˚a de data som registrerats i en simulering. Ytterligare funktionalitet f¨or att kunna avg¨ora det fysiska avst˚andet mellan olika knappar i buttonEvent-loggen kan g¨ora det m¨oj- ligt att vikta arbetsbelastning p˚a olika s¨att beroende p˚a var knappar ¨ar placerade i cockpit. Wickens multiple resource model (Wickens, 1984) kan anv¨andas n¨ar fler typer av loggdata finns, d˚a kan datan delas upp i visuellt, auditivt och manuellt och d¨armed ge ¨annu b¨attre analyser.

N¨ar det g¨aller gr¨anssnittet s˚a finns det f¨orb¨attringar som kan g¨oras d˚a fokus inte legat p˚a att ta fram det perfekta gr¨anssnittet f¨or syftet. Det skulle exempelvis beh¨ovas input fr˚an anv¨andartester, som t¨anka h¨ogt-metoden eller SUS-m¨atning. Att g¨ora dessa tester skulle ge en bild av hur anv¨andbart verktyget ¨ar f¨or anv¨andare och f¨orb¨attringar kan d˚a g¨oras utifr˚an resultatet.

Kapitel 7

Slutsats

Syftet med detta arbete var: F¨or att inte beh¨ova leta upp intressanta h¨an- delser i registrerad data manuellt ska ett verktyg designas och implemen- teras d¨ar en anv¨andare kan ange en fr˚agest¨allning och f˚a resultatet presen- terat.

Ett verktyg har tagits fram som kan sortera och filtrera data utifr˚an en anv¨andares preferenser. Verktyget har ¨oppnat upp f¨or nya m¨ojligheter att anv¨anda registrerad data fr˚an loggfiler i anv¨andbarhetsutv¨ardering. Det blir speciellt anv¨andbart d˚a filerna blir st¨orre och inneh˚aller mer data d˚a det minskar den kognitiva belastningen hos den som skall utv¨ardera de registrerade data som finns. En anv¨andare kan ange en fr˚agest¨allning genom att v¨alja ut och filtrera de intressanta elementen i gr¨anssnittet. Programmet genererar en SQL-query utifr˚an anv¨andarens val och presenterar resultatet i en tabell. Som programmet ser ut i detta f¨orsta stadie s˚a ¨ar en m¨ojlig till¨ampning att anv¨anda det f¨or att finna intressanta punkter att granska n¨armare i videomaterial. D˚a fler typer av data registreras i loggfiler kan programmet ut¨okas f¨or utf¨orligare analyser.

Litteraturf¨orteckning

Barnard, Y. F., Sandberg, J. a. C., and van Someren, M. W. (1994). THE THINK ALOUD METHOD A practical guide to modelling cognitive pro- cesses. Academic Press, London.

Beck, K., Beedle, M., van Bennekum, A., Cockburn, A., Cunningham, W., Grenning, M. F. J., Highsmith, J., Hunt, A., Jeffries, R., Kern, J., Martin, B. M. R. C., Mellor, S., Schwaber, K., Sutherland, J., and Dave, T. (2001). Manifesto for Agile Software Development.

Beedle, M., Devos, M., Sharon, Y., Schwaber, K., and Sutherland, J. (1999). SCRUM : An extension pattern language for hyperproductive software development. Pattern Languages of Program Design, 4:1–18.

Benthem, K. D. V., Herdman, C. M., Tolton, R. G., and Lefevre, J.-a. (2015). Prospective Memory Failures in Aviation : Effects of Cue Sa- lience, Workload, and Individual Differences. Aerospace Medicine and Human Performance, 86(4):366–373.

Brooke, J. (1996). SUS-A quick and dirty usability scale. Usability evalu- ation in industry.

Dalcher, D. and Brodie, L. (2007). Successful IT Projects. Middlesex Uni- versity Press, London.

DB-Engines (2015). DB-Engines Ranking - popularity ranking of relational DBMS.

Endsley, M. R. (1988). Design and Evaluation for Situation Awareness En- hancement. Proceedings of the Human Factors and Ergonomics Society Annual Meeting, 32(2):97–101.

ISO (1993). ISO 9241-11: Guidelines for specifying and measuring usability. Jander, H., Borgvall, J., and Castor, M. (2011). Brain Budget Evaluation of Human Machine Interaction in System Development for High Risk and Task Critical Environments Information Systems. (September). Kahneman, D. (1973). Attention and effort. Prentice-Hall, Englewood

Cliffs, New Jersey.

Pruitt, J. (2011). Personal Scrum | John Pruitt on WordPress.com. http://blog.jgpruitt.com/2011/04/10/personal-scrum/.

Schwaber, K. and Sutherland, J. (2011). The scrum guide. Scrum. org, October, 2(July):17.

SQLite (2015). About SQLite. https://www.sqlite.org/about.html.

Sweller, J. (1988). Cognitive load during problem solving: Effects on lear- ning. Cognitive Science, 12(2):257–285.

Wickens, C. D. (1984). Processing resources in attention, dual task perfor- mance, and workload assessment. Academic Press, New York.

Wickens, C. D. (2008). Multiple resources and mental workload. Human factors, 50(3):449–455.

Wickens, C. D., Hollands, J. G., Banbury, S., and Parasuraman, R. (2013). Engineering Psychology and Human Performance. Pearson, New Jersey, 4th edition.

Copyright

Svenska

Detta dokument h˚alls tillg¨angligt p˚a Internet - eller dess framtida ers¨attare - under 25 ˚ar fr˚an publiceringsdatum under f¨oruts¨attning att inga extraordin¨ara omst¨andigheter uppst˚ar. Tillg˚ang till dokumentet inneb¨ar tillst˚and f¨or var och en att l¨asa, ladda ner, skriva ut enstaka kopior f¨or enskilt bruk och att anv¨anda det of¨or¨andrat f¨or ickekommersiell forskning och f¨or undervisning. ¨Overf¨oring av upphovsr¨atten vid en senare tidpunkt kan inte upph¨ava detta tillst˚and. All annan anv¨andning av dokumentet kr¨aver upphovsmannens medgivande. F¨or att garantera ¨aktheten, s¨akerheten och tillg¨angligheten finns det l¨osningar av teknisk och administrativ art.

Upphovsmannens ideella r¨att innefattar r¨att att bli n¨amnd som upphovsman i den omfattning som god sed kr¨aver vid anv¨andning av dokumentet p˚a ovan beskrivna s¨att samt skydd mot att dokumentet ¨andras eller presenteras i s˚adan form eller i s˚adant sammanhang som ¨ar kr¨ankande f¨or upphovsmannens litter¨ara eller konstn¨arliga anseende eller egenart.

F¨or ytterligare information om Link¨oping University Electronic Press se f¨orlagets hemsida http://www.ep.liu.se/

English

The publishers will keep this document online on the Internet - or its possible replacement - for a period of 25 years from the date of publication barring exceptional circumstances. The online availability of the document implies a permanent permission for anyone to read, to download, to print out single copies for your own use and to use it unchanged for any non-commercial research and educational purpose. Subsequent transfers of copyright cannot revoke this permission. All other uses of the document are conditional on the consent of the copyright owner. The publisher has taken technical and administrative measures to assure authenticity, security and accessibility.

According to intellectual property law the author has the right to be mentioned when his/her work is accessed as described above and to be protected against infringement.

For additional information about the Link¨oping University Electronic Press and its proce- dures for publication and for assurance of document integrity, please refer to its WWW home page: http://www.ep.liu.se/

c

Caroline Karlsson Link¨oping, 15 juni 2015

Related documents