• No results found

Beroendet av att ständigt vara uppkopplad och använda andra tjänsters data för att öka den vardagliga bekvämligheten, introducerar ämnet automatisering och involverar bland annat användning av API:er. Avhandlingen syftar till att undersöka hur A Great Thing kan applicera de tankegångar som diskuteras för att locka fler kunder, samt vara en bidragande faktor till utvecklingsmöjligheter för andra utvecklare inom arbetets område. Uppfattningen är att det inte finns tydliga anvisningar kring en webbapplikations automatiserade flöde som använder och sammankopplar andra företags API:er och tjänster. Det finns däremot beskrivningar kring hur en utvecklare kan använda ett specifikt företags API. Det medför ett behov att ta fram en bra vetenskaplig undersökningsmetod för att underlätta för framtida utvecklare.

Som svar på frågeställningen om, hur man kan skapa sammansatta tjänster utifrån flera befintliga API:er och deras olika specifika tjänster i en användarvänlig webbapplikation, besvaras med examensarbetets metodik och resultat, dock påvisar inte detta att metodiken är optimal. Slutsatsen är att det är fullt möjligt att skapa en funktionell webbapplikation med olika sammansatta tjänster utifrån befintliga API:er. Metodiken, vilket inkluderar olika designprinciper, användarbaserade- och expertbaserade tester, har varit en delvis bidragande faktor till att göra användargränssnittet användarvänligt. Med tillgång till mer tid kunde även tekniska tester på sammankopplingen av API:er utföras. Men förhoppningen är att detta arbete kan vara användbart till framtida arbete, med insikter i olika metodik för att testa och undersöka användarvänlighet samt en inblick i ekonomiska aspekter vid distribution av API:er. Examensarbetet utgör således en utvecklingsbar grund för en intressant växande marknad i kombination med att allt fler system kräver användarvänliga användargränssnitt.

Vidare är det av vikt att poängtera att en tydlig generell metod bör definieras vid ett tidigt skede. Ekholms krav för vetenskaplighet [31] har varit en bidragande faktor för att tidigt identifiera projektets ämnesområde samt formulera problemet och fungerar som grund för arbetets fortskridande och framtagning av viktiga dokument. Tillämpning av olika undersökningsmetoder inom MDI för datainsamling såsom enkätundersökning, användartester och expertbaserad evaluering har varit av stor vikt för ett slutgiltigt resultat.

Även presenteras en analys om marknaden gällande distribution av API:er och hur olika affärsmodeller kan spegla lönsamheten.

Examensarbetet innehåller viktiga områden enligt följande:

En analys om hur kommunikationen mot ett API går till samt hur viktiga komponenter disponeras för att möjliggöra att API:ets tjänster kan användas i en webbapplikation.

Djupare analys tas upp för att ge en inblick om parametrarnas betydelse samt användning, och syftar till att underlätta för framtida utvecklare.

● Enkätundersökning och användartester vars syfte är att involvera användare som är tänkt att använda systemet samt att koppla samman principer gällande användarvänlighet.

● En framtagen funktionell prototyp och evaluering där diskussion kretsar kring hur prototypen tillsammans med en evaluering har uppnått en användarvänlig webbapplikation.

● En marknadsundersökning som även sätter in problemet i ett ekonomiskt perspektiv, där diskussion kring affärsmodeller och möjligheten för företag att faktiskt tjäna pengar på distribution av API:er, diskuteras.

Källförteckning

[1] TechTerms, API. [Online] Available: https://techterms.com/definition/api.

[Accessed April 2017]

[2] Patterson M (Sprout Social). What Is an API, and Why Does It Matter?

[Online] Available: http://sproutsocial.com/insights/what-is-an-api/ [Accessed April 2017]

[3] Arxan, API protection: Developers are Embracing APIs - and for Good Reason.

[Online] Available: https://www.arxan.com/technology/api-protection/

[Accessed April 2017]

[4] Zapier. Documentation: General information. [Online] Available:

https://zapier.com/developer/documentation/v2/. [Accessed April 2017]

[5] Nine Nines. REST principles. [Online] Available:

https://ninenines.eu/docs/en/cowboy/2.0/guide/rest_principles/. [Accessed Sep 2017]

[6] Uber Developers. Uber for Business (documentation). [Online] Available:

https://developer.uber.com/. [Accessed May 2017]

[7] OpenWeatherMap. Weather API, API Documentation. [Online] Available:

https://openweathermap.org/api. [Accessed June 2017]

[9] Auth0, Identity Provider Access Tokens. [Online] Available:

https://auth0.com/docs/tokens/idp . [Accessed April 2017]

[13] Nationalencyklopedin (NE), Automatisering. [Online] Available:

http://www.ne.se/uppslagsverk/encyklopedi/lång/automatisering. [Accessed April 2017]

[14] Apple, DeskConnect, Inc. Documentaion: Introduction to workflows.

[17] Google. Extending the Google assistant. Google Developers. [Online]

Available: https://developers.google.com/actions/develop/direct [Accessed April-May 2017]

[18] A. David. Using triggers to simplify automation. 10 August 2015. [Online]

Available: http://www.zaber.com/using-triggers-to-simplify-automation#triggers [Accessed August 2017]

[19] Home Assistant, Automation Trigger[Online] Available: https://home-assistant.io/docs/automation/trigger/. [Accessed April 2017]

[20] Apple Developer, API Reference, UNLocationNotificationTrigger. [Online]

Available:

https://developer.apple.com/reference/usernotifications/unlocationnotificationtri gger. [Accessed April-May 2017]

[21] Microsoft (Developer Network), Message Queuing Triggers. [Online]

Available: https://msdn.microsoft.com/en-us/library/ms703197(v=vs.85).aspx.

[Accessed April-May 2017]

[22] D. Benyon. Designing Interactive Systems: A comprehensive guide to HCI, UX and interaction design (Third edition). Pearson (2014).

[23] D. Norman. The Design of Everyday Things: Revised & Expanded Edition, Plan, Design, and Conduct Effective Tests. Wiley Publishing, Inc., Indianapolis,

Indiana. 2008.[Online] Available:

http://ccftp.scu.edu.cn:8090/Download/efa2417b-08ba-438a-b814-92db3dde0eb6.pdf [Accessed, December 2017]

[26] A.Wulf. Wireframes: A Great Way to Start Development Projects. 2012.

[Online] Available:

[https://www.infoq.com/articles/wireframes-start-development-projects]

[27] J.Nielsen. Nielsen Norman Group, Paper Prototyping: Getting User Data Before You Code. 14 April 2003. [Online] Available:

https://www.nngroup.com/articles/paper-prototyping/

[Accessed December 2017]

[28] John E. Ettlie & Jorg M. Elsenbach. Modified Stage-Gates Regimes in New Product Development. 2007 Product Development & Management Association.

[Online] Available:

http://onlinelibrary.wiley.com.focus.lib.kth.se/doi/10.1111/j.1540-5885.2006.00230.x/epdf [Accessed April-May 2017]

[29] Scott J. Edgett. Idea-to-launch (Gate) Model: An Overview. 2015

Stage-Gate International. [Online] Available:

http://www.stage-gate.net/downloads/wp/wp_10.pdf [Accessed December 2017]

[30] “The official site of Stage-Gate Innovation Consultants”. Online available:

http://www.stage-gate.com/resources_stage-gate_full.php. [Accessed May 2017]

[31] N. Andersson & A. Ekholm. Vetenskaplighet – Utvärdering av tre implementeringsprojekt inom IT Bygg och Fastighet 2002. Lunds Tekniska

Högskola, Lund 2002. [Online] Available:

http://www.lth.se/fileadmin/projekteringsmetodik/research/Other_projects/utvar deringver1.pdf. [Accessed, April-May 2017]

[32] J.Nielsen. Nielsen Norman Group, Thinking Aloud: The #1 Usability Tool.

16 January 2012. [Online] Available:

https://www.nngroup.com/articles/thinking-aloud-the-1-usability-tool/

[Accessed, December 2017]

[33] R. Amadeo. “The Google Assistant SDK will let you run the Assistant on anything”. arsTECHNICA. 27/4-2017. [Online] Available:

https://arstechnica.com/gadgets/2017/04/the-google-assistant-opens-up-to-third-party-hardware-launches-sdk/. [Accessed, April-May 2017].

[34] Google. Google Assistant SDK. [Online] Available:

https://developers.google.com/assistant/sdk/overview [Accessed April-May 2017]

[35] Google LLC (2017). Google Assistant (Version 0.1.174051423) [Mobile Application Software] Available:

https://developers.google.com/actions/downloads/get-started.pdf [Accessed

[41] Apple Inc (2017). HomeKit Accessory Protocol Specification (Non-Commercial Version). [Online] [Accessed November 2017]

[42] P. Blomkvist & A. Hallin. Metod för teknologer: examensarbete enligt 4-fasmodellen. Lund: Studentlitteratur, 2015, upplaga 1:2.

International Conference on Information Systems. Minneapolis, MN, November

30 - December 3, 1988. [Online] Available:

Web. Available from KTH primo portal. [Accessed April-May 2017]

[46] Kungliga Tekniska Högskola. Kth bibliotek sökverktyg. [Online] Available:

https://www.kth.se/kthb [Accessed April-May 2017]

[47] Google. Google Scholar, sökverktyg. [Online] Available:

https://scholar.google.se/ [Accessed April-May 2017]

[48] B. Scott & T. Neil, Designing Web Interfaces: Principles and Patterns for Rich Interactions. 1st Edition. O´Reilly Media Gravenstein Highway North, 2009.

Available:

http://designingwebinterfaces.com/6-tips-for-a-great-flex-ux-part-5 [Accessed April-May 2017]

[49] J.Nielsen. Nielsen Norman Group, Why You Only Need to Test with 5 Users.

January 1995. [Online] Available:

https://www.nngroup.com/articles/how-to-rate-the-severity-of-usability-problems/

Available: https://www.reasonstreet.co/business-model-pay-per-use/.

[Accessed August 2017]

[56] Nordic APIs. 2013-2017 Nordic APIs AB. How to Grow and Profit Using a Freemium API Monetization Model, Posted by Art Anthony, Februari 11, 2016.

[Online] Available: http://nordicapis.com/how-to-grow-and-profit-using-a-freemium-api-monetization-model/. [Accessed July 2017]

[57] Uber Technologies Inc, Uber Developers. Introduction to Affilitate Program.

[Online] Available:

https://developer.uber.com/docs/riders/affiliate-program/introduction. [Accessed May 2017]

[58] OpenWeatherMap, Inc. Current weather and forecast collection. [Online]

Available: http://openweathermap.org/price [Accessed May 2017]

[59] Amazon. Product Advertising API: Developer Guide (API Version 2013-08-01).

[Online] Available:

http://docs.aws.amazon.com/AWSECommerceService/latest/DG/prod-adv-api-dg.pdf#Welcome. [Accessed May 2017]

[60] Investopedia, 2017, LLC. How Skype Makes Money, By: Zaw Thiha Tun, July

9, 2015 — 3:57 PM EDT. [Online] Available:

http://www.investopedia.com/articles/investing/070915/how-skype-makes-money.asp. [Accessed Aug 2017]

[61] Dropbox, Inc. How much does Dropbox cost? [Online] Available:

https://www.dropbox.com/help/billing/cost. [Accessed Aug 2017]

[62] D. Jacobsson, G. Brail, D. Woods. APIs: A Strategy guide. 2012. Published by:O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. [Accessed Aug 2017]

[63] IBM developer Works. Business Models for APIs. Published on April 17, 2014 / Updated on August 15, 2017. [Online] Available:

https://developer.ibm.com/apiconnect/documentation/api-101/business-models-apis/. [Accessed Aug 2017]

[64] Regeringkansliet. Övergripande mål och svenska mål för Europa 2020. [Online]

Available: http://www.regeringen.se/sverige-i-eu/europa-2020-strategin/overgripande-mal-och-sveriges-nationella-mal/ [Accessed May 2017]

[65] Kungliga Ingenjörsvetenskapsakademin och Kungliga Vetenskapsakademin (2014). Energi, möjligheter och dilemman. 4th edition.

Bilagor

Bilaga 1 Kravspecifikation I. Syfte

Kravspecifikationen illustrerar funktioner som utnyttjas i produkten. Kraven som beskrivs i dokumentet består av två olika typer, funktionella krav samt icke funktionella krav.

Funktionella krav är funktioner som skall ingå i systemet. Icke funktionella krav är underliggande funktioner om hur väl ett system utför dessa.

II. Bakgrund

I dagsläget har företaget A Great Thing AB en launcher under utveckling för Android som tillåter sammankoppling av olika tjänster. Det finns en hög efterfrågan att på enhetligt, intuitivt och användarvänligt sätt koppla ihop mängder av applikationer samt IoT enheter, för att tillåta kommunikation samt utbyte av data mellan dessa, och vidare presentera data på olika plattformar (Mobiltelefoner, surfplattor, PC, etc.).

Med den bakgrunden har A Great Thing i åtanke att undersöka om testversionen kan implementeras på andra plattformar. De vill ha en studie om hur det kan appliceras på en webbapplikation i form av en prototyp.

III. Funktionella krav

Undersöka om följande krav är applicerbara i en webbprototyp:

Funktionalitet

o Hantering av flera API:er.

o Utnyttja kalenderhändelser och tid.

o Utnyttja alarmfunktioner.

Användarvänlighet

o Visualisering och grafiskt tilltalande

o Datainsamling av utomstående användare IV. Icke-funktionella krav

Implementering skall vara optimerad

Systemet skall klara av att hantera flera användare samtidigt.

Underhållbarhet

o Prototypen skall vara enkel att underhålla

Related documents