Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Scalable platform for health service integrations
KTH, School of Technology and Health (STH), Data- och elektroteknik.
KTH, School of Technology and Health (STH), Data- och elektroteknik.
2013 (English)Independent thesis Basic level (university diploma), 10 credits / 15 HE creditsStudent thesisAlternative title
Skalbart system för integration med hälsotjänster (Swedish)
Abstract [en]

This thesis was performed at the company ShapeUp Club located in Stockholm, Sweden. ShapeUp Club offers a digital calorie counter service for the web, iOS and Android with data synchronization across the platforms.

ShapeUp Club wants to provide their users with the option to synchronize data between ShapeUp Club and external health services. The objective for this thesis has been to develop an extension to ShapeUp Clubs current backend platform where new external health services can be plugged-in quickly and scalable. External partner APIs will be examined and implemented in the system to validate the functionality of the system. The amount of code needed to plug-in a service should be as minimal as possible for a developer to quickly add another service. To allow for scalability the platform also needs to adapt logic for how often users should be allowed to poll for data from their connected services, to minimize the database load for all parts.

To handle these demands, an extension to ShapeUp Club’s current backend solution was built using the Django framework for Python. By providing a generic base class that new services inherit from, the amount of code necessary for implementing a new service is reduced to methods for API- requests, authorization and serialization of data. To reduce the number of redundant poll requests, users are placed into groups. Each group is a cluster of users with similar frequency of updates. Django’s cache framework is used to handle the concurrency of the sync tasks, which locks a user from syncing the same partner in parallel. 

Abstract [sv]

Detta examensarbete har utförts hos företaget ShapeUp Club i Stockholm. ShapeUp Club erbjuder en digital kaloriräknare för webben, iOS och Android med synkronisering av data mellan dessa plattformar. ShapeUp Club vill kunna erbjuda sina kunder möjligheten att synkronisera data mellan ShapeUp Club och andra externa hälsotjänster.

Målet med detta projekt har varit att implementera en ny tjänst till ShapeUp Clubs nuvarande backend-lösning där externa hälsotjänster snabbt och skalbart kan implementeras. Externa hälso-API:er har utvärderats och implementerats i samband med utvecklingen av den nya backendtjänsten, för att validera dess funktionalitet. Mängden kod som behövs för att implementera en hälsotjänst bör vara så minimal som möjligt för att utvecklare snabbt ska kunna lägga till ytterligare tjänster. För att systemet ska vara skalbart måste logik finnas för hur ofta användare ska tillåtas att fråga efter data mot de tjänster de har valt att synkronisera mot. För att tillfredställa dessa behov har en utökning av ShapeUp Clubs nuvarande backend-lösning byggts med ramverket Django för Python. Genom att ha en större, generisk klass som nya implementeringar ärver från så har mängden nödvändig kod för varje hälsotjänst-implementering minskats till metoder för API-anrop, autentisering och serialisering av data. För att minska antalet “onödiga” poll-anrop så placerar vi användare i olika grupper beroende på om deras poll-anrop frekvent återvänder utan någon ny information. De olika grupperna bestämmer sedan hur länge användarna måste vänta innan de tillåts göra nya poll-anrop. 

Place, publisher, year, edition, pages
2013. , 36 p.
Series
Trita-STH, 2013:32
Keyword [en]
scalable, api, health, integrations, shapeup club
Keyword [sv]
skalbarhet, api, hälsa, integrationer, shapeup club
National Category
Computer Engineering
Identifiers
URN: urn:nbn:se:kth:diva-123584OAI: oai:DiVA.org:kth-123584DiVA: diva2:628033
External cooperation
ShapeUp Club
Subject / course
Computer Technology, Program- and System Development
Educational program
Bachelor of Science in Engineering - Computer Engineering
Uppsok
Technology
Supervisors
Examiners
Available from: 2013-06-27 Created: 2013-06-13 Last updated: 2013-06-27Bibliographically approved

Open Access in DiVA

Scalable partner integrations(629 kB)758 downloads
File information
File name FULLTEXT01.pdfFile size 629 kBChecksum SHA-512
cc69cfca6faff94fca5e9e4db6d2cd867e93dca229d1daadbc78452ed6038bd566a10ca1351960b7cfbaa2049df7c406a3e5d79904c938ede979fc471ebad387
Type fulltextMimetype application/pdf

By organisation
Data- och elektroteknik
Computer Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 758 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 251 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf