ID2216 Utveckling av mobila tillämpningar 7,5 hp

Developing Mobile Applications

Nivå: Avancerad

Kursen är en introduktionskurs för att skapa mobila applikationer och mobila tjänster. Studenterna kommer att lära sig effektiva metoder och arbetssätt för hur man skapar platformsspecifika mobila applicationer, Android, och plattformsoberoende (webb) mobila applikationer, samt tekniker för att utveckla webb-baserade mobila tjänster.

  • Utbildningsnivå

    Avancerad nivå
  • Huvudområde

    Informations- och kommunikationsteknik
    Informationsteknik
  • Betygsskala

    A, B, C, D, E, FX, F

Kurstillfällen/kursomgångar

HT18 för programstuderande

VT19 för programstuderande

Lärandemål

Kursen är en introduktionskurs i tekniker för att skapa mobila applikationer och tjänster. Kursen ger teoretiska kunskaper och praktiska färdigheter i teknikområdet för tjänsteutveckling för mobila och handhållna enheter.

Efter avslutad kurs ska studenten kunna:

  • förstå hur man analyserar grundläggande användarkrav på utveckling av mobila applikationer och mobila tjänster
  • utveckla enkla mobila webb-appar baserade på Javascript, HTML5 och CSS
  • utveckla mobila appar baserade på Android
  • utveckla och driftsätta grundläggande mobila webbtjänster
  • förstå hur man skapa webb-innehåll för mobila applikationer och mobila tjänster med hjälp av Mashup
  • förstå de mobila ekosystemen av tjänsteleverantörer, telefontillverkar och mobiloperatören.

I syfte att:

  • kunna jämföra teknik som används i applikationsutveckling
  • kunna använda mobila tjänster för säkerhet, betalning, och positionering
  • ha förmåga att beskriva hur ett mobilnät fungerar
  • ha förmåga att förklara begränsningar med mobilnät och terminal
  • kunna identifiera och förklara de kritiska frågorna i kravanalys för mobila applikationer och tjänster
  • kunna välja lämpliga tekniska lösningar för att utveckla mobila applikationer och tjänster
  • kunna implementera mobila applikationer med hjälp av lämpliga verktyg.

Kursens huvudsakliga innehåll

Syftet med kursen är att ge allmän kunskap om hur man skapar applikationer för mobila enheter som till exempel smarta telefoner. Kursen tar upp följande delar:

  • den mobila ekosystemet
  • mobil Kontext och användning
  • mobil Informationsarkitektur
  • utveckla mobila applikationer med Android
  • mobila Web applikationer
  • mashups för mobila tjänster
  • aktuella forskningsområden
  • affärsmodeller och försäljning och distribution av mobile applikationer.

Kursen behandlar teknik som HTML5, CSS, Android, Javascript och SQL för att utveckla mobila applikationer och tjänster.

Vi kommer främst att bygga och testa applikationer för smarta telefoner, men våra applikationer kan även köras med inga eller små förändringar på mer kraftfulla enheter som skrivplattor, digitala TV-apparater, kameror, industridatorer och information-system för bilar.

Kursen behandlar tre huvudsakliga svårigheter vid skapandet av mobila applikationer: (i) integrera och effektivisera externa tjänster för nya mobila applikationer och nya användarupplevelse, (ii) att hantera olika egenskaper mellan olika enheter, och (iii) att förstå hur användarnas krav och nya affärsmodeller skapar framgång mobilprogram och tjänster.

Kursen kommer att besökas av gästföreläsningar från industrin. Kursen har också en bransch mentor som hjälper eleverna med att förstå hur utvecklingen av mobila applikationer sker i industrin.

Kursupplägg

Föreläsningar, laborationer och seminarier. Hälften av kursen består av föreläsningar och laborationer. Vissa områden studeras individuellt för studenter som vill ha en högre betyg. Den andra halvan består av ett projekt med seminarier. Kursen är laboratorie-och programmering intensiv.

Behörighet

För fristående studerande gäller följande behörighetskrav:

  • Grundläggande högskolebehörighet, dvs avslutad gymnasieutbildning inkl svenska och engelska el motsv och
  • Kandidatexamen/180 hp (120 gamla poäng) i informationsteknik, informationssystem, datateknik eller data- och systemvetenskap.

Rekommenderade förkunskaper

Grundläggande kunskaper i Java-programmering.

Vissa grundläggande SQL kunskaper, för allmän orientering, men inte nödvändigt att följa kursen.

Rekommenderad kurs är till exempel ID1006 "Java-programmering", 7,5 hp. 

Litteratur

  • Mobile Design and Development: Practical Concepts and Techniques for Creating Mobile Sites and Web Apps, Brian Fling. Upplaga: 1 Förlag: O'Reilly Media Ar: 2009. ISBN: 0596155441. 
  • Reto Meier, Professional Android, 4th Edition, Wiley, ISBN: 978-1-118-94952-8.

Examination

  • ANN1 - Hemprojekt, 3,0, betygsskala: A, B, C, D, E, FX, F
  • TEN1 - Tentamen, 4,5, betygsskala: A, B, C, D, E, FX, F

Det slutgiltiga betyget baseras på den skriftliga tentamen och de praktiska uppgifterna.

Inlämningsuppgiften utförs i grupper om 1-3 studenter. Studenten skall kunna redogöra för sin lösning och motivera de olika val som gjorts vid lösningen. Om man jobbat i grupp om 2 eller 3 studenter skall ALLA i gruppen kunna redogöra för VARJE del av uppgiften. Det är alltså INTE tillåtet att ”dela upp” uppgiften och göra varsin del utan samtliga gruppmedlemmar skall kunna redogöra för samtliga delar av lösningen.

I projektuppgiften implementerar projektgruppen en egendefinierad mobil tjänst utifrån särskilda teknik och dokumentationskrav.

Tentamen består av ett antal uppgifter som dels testar de kursmål som ej testats av inlämningsuppgifterna och dels testar fördjupade kunskaper om ett urval av kursmålen (det kan vara olika på olika tentor). För att bli godkänd på tentan (betyg E eller bättre) måste studenten dels få sammanlagt minst 50% rätt på hela tentan.

Studenter som fått betyget Fx på tentamen kommer att få möjlighet att komplettera sitt resultat med en extra inlämningsuppgift och därmed få betyget E. Kursansvarig informerar de studenter som är aktuella för komplettering i samband med att resultatet från tentamen publiceras. Studenten har därefter tre veckor på sig att göra kompletteringen.

Krav för slutbetyg

Examinationen består av en skriftlig tentamen och praktiska uppgifter. För att godkänd på kursen ska båda examinationsmomenten vara godkända. Uppgifter skall vara gjorda och presenteras när de schemaläggs.

Ges av

EECS/Kommunikationssystem

Kontaktperson

Konrad Tollmar, konrad@kth.se, 08-790 4303

Examinator

Konrad Tollmar <konrad@kth.se>

Övrig information

Kursen utvärderas och utvecklas i enlighet med KTH:s policy för Kursanalys (se KTH-Handbok 2, Flik 14.1)

Versionsinformation

Kursplan gäller från och med VT2013.
Examinationsinformation gäller från och med VT2019.