facebook tracking

Exjobb – Internet of things, streaming media, mobilitet, appar, webb, …

Här presenterar vi några exjobb på Attentec under senare tid.

Aktuella exjobbsförslag

A Study on Performance and Architectural Characteristics of an Internet of Things Gateway

 Natanael Log, 2018

Attentec-exjobb-datateknik-Natanael.jpg

Mitt exjobb handlade om internet of things gateways; ett middleware-system som kopplar samman fysiska sensorer och enheter med applikationer på internet. Det finns ett intresse både i akademin och i industrin att förstå karaktäristiken hos olika gateway-arkitekturer och när jag la fram mitt förslag att jobba med detta hos Attentec var de idel öra och ville hjälpa mig.

Jag utgick från biblioteket libuv - ett öppet bibliotek skrivet i C med fokus på asynkron I/O. libuv är en av huvudkomponenterna till den populära Javascript-motorn NodeJS som är känd för sin skalbarhet och snabbhet, trots att den bara arbetar enkeltrådat. Min hypotes var att IoT-gateways byggda med libuv skulle prestera minst lika bra som multitrådade gateways och förhoppningsvis ge ett incitament till utvecklare som vill använda så lite trådar som möjligt att använda libuv.

De första veckorna satt jag mycket i Google Scholar och LiU:s databas för att hitta relevanta studier att lära mig från. Jag byggde upp ett teoretiskt ramverk som jag hela tiden utgick från både när jag senare utvecklade kod och skrev rapport för att motivera mina val. Från Attentec fick jag en handledare som jag regelbundet bollade tankar med och som kom med goda råd. Tillsammans satte vi upp en modell av mitt kommande system jag skulle utveckla. Syftet med systemet var att mäta hur mycket data och hur många IoT-enheter en gateway kunde ta hand om beroende på om den var enkeltrådad, multitrådad, synkron eller asynkron.

Ungefär i mitten av exjobbet började jag utveckla systemet och det tog några veckor. Parallellt skrev jag ner mina erfarenheter i min rapport. När systemet var färdigt började jag mäta och sammanställa data för analys. Det visade sig att libuv hanterar mycket data och många enheter väldigt bra, minst lika bra som ett multitrådat alternativ. Det visade sig också att libuv även har stöd för multitrådning och att lägga ut CPU-tunga beräkningar på flera trådar ökar prestandan ännu mer hos libuv.

Evaluating Clojure Spec

Christian Luckey, 2017

Målet med exjobbet var att utvärdera Clojure Spec på ett vetenskapligt rigoröst vis genom prestandamätningar och genom kvalitativ undersökning. En specifikation implementerades för en verklig datamängd med fyra olika metoder och prestanda, kodstorlek och övriga fördelar jämfördes.

Resultatet går att sammanfatta som att Spec skiner givet komplexa datastrukturer, både i expressivitet och  valideringsprestanda, men har samtidigt ett API mer komplext än något av alternativen. I de fall där man vill uttrycka reguljära  datastrukturer och generativ testning önskas kommer tiden investerad i att lära sig biblioteket att löna sig. I enklare fall kan ett assertions-bibliotek likt Truss istället rekommenderas.

Man kan nog sammanfatta det som att det alltid var lätt att vakna upp på morgonen och cykla till kontoret. Varken kunskap eller godhjärtad hjälpsamhet finns det någon brist på här på Attentec. Kompetent handledning både om processen och det specifika ämnesområdet höll mig på rätt spår och inom tidsramen genom hela exjobbet. Det gick som på räls trots att arbetet i sig inte var problemfritt.

Visualisation of data from IoT systems – A case study of a prototyping tool for data visualisations

Jonathan Anderson, 2017jonathan.jpg

Attentec har sett en ökad efterfrågan på tjänster som är kopplade till internet of things, IoT. I denna studie undersöks därför om det finns ett verktyg som kan användas för att bygga snabba visualiseringsprototyper för data från IoT-system för att användas som ett verktyg i det dagliga arbetet.

Studien började med en inledande fas med två delar. Den första delen var att få bättre kunskaper om Attentecs behov och härleda kraven för verktyget och den andra delen var en jämförelse mellan prototypverktyg för att hjälpa till med utveckling av datavisualiseringar.  Apache Zeppelin valdes som det mest lämpade verktyget som matchade kriterier definierade tillsammans med Attentec. Efter den inledande fasen genomfördes en förstudie med intervjuer för att samla empiriska data om hur visualiseringar och IoT-projekt tidigare genomförts hos Attentec. Detta ledde till slutsatsen att geospatialdata och NoSQL-databaser var vanliga för IoT-projekt. En teknisk utredning utfördes på Apache Zeppelin för att besvara om det fanns några begränsningar i att använda verktyget för egenskaper som är gemensamma i IoT-systemet. Denna undersökning ledde till slutsatsen att det inte fanns något stöd för att visa mätdata på en karta.

I den första implementeringsfasen implementerades stöd för geospatialdata genom att skapa ett visualiseringsplugin som plottade data på en karta. Implementeringsfasen följdes av en utvärderingsfas där fem deltagare utförde uppgifter med Apache Zeppelin för att utvärdera verktygets uppfattade användbarhet. Utvärderingen utfördes med hjälp av en systemanvändningsskala, SUS, och ett summerat användbarhetsindex, SUM, samt intervjuer med deltagarna för att hitta var förbättringar kunde göras.

Från utvärderingen upptäcktes tre huvudområden med problem i användbarheten, import och redigering av data, mer funktionalitet till det tidigare implementerade visualiseringspluginet för geospatialdata och textredigeraren. De två första valdes för den andra iterationen där ett formulär för att generera koden för att importera data utvecklades liksom förbättringar i den geospatiala visualiserings-pluginet. En andra utvärdering utfördes efter förändringarna med liknande uppgifter som i den första för att se huruvida användbarheten förbättrades mellan de två utvärderingarna. Resultaten av det summerade användbarhetsindexet förbättrades på alla uppgifter och systemanvändningsskalan visade ingen signifikant förändring. I intervjuer med deltagarna svarade alla att den upplevda användbarheten hade förbättrats mellan de två utvärderingarna vilket tyder på viss förbättring.

Det är trevlig sammanhållning på kontoret och kul att få vara med på alla aktiviteter på företaget vilket gör att man känner sig som en i gänget”, säger Jonathan. ”Jag har fått bra stöttning när det behövts i arbetet. Alla är hjälpsamma och många har frågat om hur det går med arbetet och det har varit lätt att få hjälp med att hitta lämpliga personer att prata med när det behövts i studien".

Kodmått som indikation på brister i underhållbarhet

Jonas Modling, 2017

Jonas Modling studerade Kodmått som indikation på brister i underhållbarhet” hos mjukvara. Jonas mål var att ta reda på om man kan använda kodmått som indikator på vad som bör refaktoreras när man som konsult kliver in i ett projekt med kvalitetsproblem. Slutsatsen är att de mått som ger väldigt höga värden på vissa klasser eller metoder ofta indikerar objekt som är involverade i större problem i kodbasen. I Jonas fallstudie indikerade dock måtten sällan objekt av ”rätt anledning”, alltså av den anledning som anges i litteraturen. Därför bör man inte använda kodmåttens värde som direkt indikation på objekt som ska refaktoreras, utan snarare välja att titta närmare på de objekt som indikerats och göra en professionell bedömning.

Effects on performance and usability for cross-platform application development using React Native

Tomas Vidhall och Niclas Hansson, 2016

Exjobbet utvärderade React Native, ett ramverk framtaget av Facebook för samtidig utveckling av appar för mobiltelefoner på olika plattformar som Android och iOS. Appar utvecklades både direkt på respektive plattform och med React Native och versionerna jämfördes avseende prestanda, användbarhet, utseende och känsla. Användarstudier visar att versionen framtagen med React Native ger samma användarupplevelse utan större påverkan på prestanda. För den utvecklade applikationen kunde omkring 75% av React Native-koden användas för båda plattformarna, och det var enkelt att komplettera med plattformsspecifik kod.

Clicking using the eyes, a machine learning approach

Albin Stenström, 2015

I detta exjobb utvärderades hur ögonspårningsteknik tillsammans med maskininlärning kan användas för att generera en interaktionsmodell för musklick med hjälp av ögonen. En studie med 10 försökspersoner genomfördes och maskininlärning applicerades. Olika modeller togs fram varav en visade sig ge korrekt interaktion i 80% av fallen.

Ansök exjobb här
Teamtailor

Karriärsida från Teamtailor