Hopp over navigasjon

Hva er utvikling av mobilapper?

Utforsk prosessene og programvaren som brukes til å utvikle mobilapper

Bygge programvare for mobile enheter

Definisjonen av utvikling av mobilapper kan være bred – noe som omfatter alle prosessene som er involvert i oppretting og utgivelse av en mobilapp – eller spesifikk, med henvisning til koding og distribusjon av appen. Denne artikkelen dekker begge definisjonene av utvikling av mobilapper og fokuserer spesielt på å definere mobilapputvikling for personer som tar beslutninger rundt eller er ansvarlige for hvordan selve programvaren bygges.

For å definere utvikling av mobilapper, bør vi begynne med å definere mobil, som i dette tilfellet refererer til bærbare elektroniske enheter som smarttelefoner, nettbrett, bærbare datamaskiner, smartklokker, e-lesere og håndholdte spillkonsoller. Med applikasjon mener vi ikke bare programvaren som er hjemmehørende i disse enhetene, men også de vanlige operativsystemene, plattformene og språkene som disse enhetene støtter. Som du vil lære, er det mange forskjellige måter å tilnærme seg utvikling av mobilapper og mange avgjørelser å ta.

Utviklingsprosessen for mobilappen

Prosessen for å utvikle og utgi mobilapper blir ofte forstått i en rekke trinn eller faser. Disse fasene av utviklingsprosessen for mobilapper involverer mange forskjellige personer og fagområder i en organisasjon, slik som forretningsvirksomhet, markedsføring, design og utvikling. Fasene i utviklingsprosessen for mobilapper er:

  • Strategi
  • Planlegging
  • Design
  • Utvikling
  • Testing
  • Utgivelse

Hvor lang tid tar det å lage en mobilapp?

Organisasjoner bruker alt fra tre måneder til ni måneder – eller lengre der det er nødvendig – til å utvikle mobilapper. Omfanget og funksjonene i en app påvirker alle tidslinjen for utviklingsprosessen for mobilappen.

Strategi

Utviklingsprosessen for mobilapper begynner med å forstå hvorfor en mobilapp kan være en god løsning på et problem eller en tilnærming til en mulighet – og deretter bestemme hva du skal bygge og hvordan. I strategifasen vil organisasjoner etablere appens mål og målinger av suksess, analysere markedet og konkurranse, undersøke kundenes behov og avgjøre hvilke brukere og brukstilfeller appen skal betjene. I strategifasen kan organisasjoner også begynne å utforske hvilke plattformer for mobilapputvikling som fungerer best med målene og kravene. Det er i denne fasen at organisasjoner også begynner å vurdere markedsføringen rundt apputgivelsen.

Planlegging

I planleggingsfasen blir organisasjoner enige om fire viktige detaljer om utviklingsprosessen for mobilapper: teamene, verktøyene, teknologiene og tidslinjene. Nå har de en idé om hvilken type mobilapp de trenger å bygge, hvem som skal bygge appen, og hvilke plattformer de skal bruke. I løpet av denne fasen vil organisasjoner utforme et produktveikart – bestemme hvilke funksjoner som skal bygges og i hvilken rekkefølge og før når – sette inn milepæler, og designe en prosjektplan som lar dem bli ferdig før den tiltenkte utgivelsesdatoen. Det er viktig å vite hvilke ressurser og ekspertise som er tilgjengelige, sammen med å forstå hvordan du implementerer teknologien som er valgt for prosessen, for å fastslå denne datoen og oppnå utgivelsen.

Utforming

Utseendet og funksjonene til mobilappen begynner å ta form i utformingsfasen. I denne fasen av utviklingsprosessen for mobilapper vil teamene kartlegge brukeropplevelsen og opprette brukergrensesnittene og tilstandene til appen i ulike områder. De kan begynne med mockups med lav gjengivelse for å gi konseptutprøving eller samle tilbakemeldinger fra kunder på et tidlig stadium. Utviklere og teknikere kan bidra til å opprette prototyper eller rådgivning om UX- og UI-beslutninger i denne fasen – for å holde team oppmerksomme på kravene og de tekniske spesifikasjonene til plattformene som organisasjonen har valgt å bruke. På denne måten utformer organisasjoner en app som virkelig kan bygges når de går over til skjermer med full gjengivelse.

Utvikling

Ordutviklingen i denne konteksten refererer noen ganger til den fullstendige livssyklusen for programvareutvikling involvert i å opprette og utgi en mobilapp. Men utvikling betyr imidlertid denne fasen for programvareutvikling av mobilapputvikling. Vi definerer denne fasen mer fullstendig senere i artikkelen. Foreløpig er denne fasen best beskrevet som trinnet der teamene etablerer den tekniske arkitekturen og den statiske stacken, inkludert front- og serverdelen og API-ene – angir utviklingsmilepæler, bestemmer utviklingslivssyklusen for appen og koder appen.

Testing

Testing er en avgjørende fase i utviklingsprosessen for mobilprogrammer. Uten testing kan ikke organisasjoner være sikre på at appen deres vil være sikker, fungere slik brukerne trenger og forventer at den skal, og fungere der de distribuerer den. I løpet av denne fasen tilbyr team kvalitetssikring og oppretter testtilfeller for å vurdere brukervennligheten, ytelsen, stabiliteten og sikkerheten til appen på alle enhetene appen er ment å kjøre på. Organisasjoner vil ofte stressteste appen for å sikre at programmets arkitektur kan skaleres for å møte plutselig stor etterspørsel.

Utgave

Den siste fasen i utviklingsprosessen for en mobilapp er utgivelse. Når appen er distribuert, gir organisasjonen støtte til kunder som bruker den, og kontinuerlig overvåking og vedlikehold for å sikre at appen er tilgjengelig og fungerer som den skal. Markedsføringskampanjer og -bevegelser for å oppmuntre til innføring av appen er ofte i samsvar med denne fasen. Hvis organisasjonen bestemmer seg for å gjøre forbedringer eller endringer i appen som går utover omfanget av endringer utviklingslivssyklusen er utstyrt for å håndtere, kan de velge å starte utviklingsprosessen for mobilapper på nytt.

Programvareutvikling i utviklingsprosessen for mobilapper

Denne første oppgaven i utviklingsfasen er å etablere teknisk arkitektur for mobilapplikasjonen. Ofte forvekslet med teknisk stack – som omfatter front-, serverdelen og API-er – teknisk arkitektur er reglene og mønstrene som styrer utviklingen av mobilapplikasjonen.

Teknisk arkitektur

Den tekniske arkitekturen er ofte inspirert av i tre lag:

Presentasjonslag

Dette er laget av appen som kunden ser og samhandler med. Presentasjonslaget inkluderer brukergrensesnittet og alle elementene i appen som utgjør brukeropplevelsen.

Forretningslag

Logikken som styrer arbeidsflyter, datautveksling og operasjoner, ligger i forretningslaget. Kjerneaspekter av mobilappen, for eksempel sikkerhet, hurtigbufring, logging og unntakshåndtering, håndteres i dette laget.

Datalag

Datalaget oppfyller kravene til selve programmet, og leverer dataverktøy, datatilgangskomponenter og hjelpere eller tjenesteagenter. Det er også laget som validerer og vedlikeholder data og støtter datatransaksjoner.

Teknologistack

På samme måte består teknologistacken også av tre deler som nevnt. Disse delene representerer imidlertid bestemte valg som brukes til å bygge og støtte appen i stedet for retningslinjer for opprettingen.

Frontdelen

I samsvar med presentasjonslaget, avhenger verktøyene og språkene som brukes til å kode frontdelen av mobilappen i stor grad av enhetene appen skal distribueres til. Det finnes mange alternativer, og de fleste mobile enheter har bestemte språk som er native for dem.

Serverdel

Serverdelen er en del av appen som inkluderer databasen og andre lignende objekter som ligger på en server, og som støtter funksjonene i mobilappen. Team er mindre opptatt av enhetene når det gjelder å velge mobile serverdelteknologier og kan ofte finne forhåndsbygde serverdel-løsninger.

API

Appen kommuniserer mellom serverdelen og frontdelen gjennom API-en, som også gjør at appen kan integrere og samhandle med andre apper og tjenester.

Men før team kan velge sin tekniske stack – eller til og med etablere sin tekniske arkitektur – må de først bestemme hva slags mobilapp de bygger.

Typer mobilapper

Når det gjelder å bygge apper for mobile enheter, har organisasjoner flere ulike typer mobilapper å velge mellom. I dette tilfellet refererer typen mobilapp ikke til hva appen tillater at brukerne gjør, men hvordan appen bygges.

Native apper

Apper som er spesifikke for en bestemt enhet eller plattform, for eksempel Android eller iOS, kalles native apper. Disse appene kjører direkte på operativsystemet på enheten, bruker språkene og rammeverkene plattformen tilbyr, og distribueres gjennom butikken eller markedsplassen som er spesifikke for operativsystemet. Native apper har vanligvis full tilgang til alle funksjonene og maskinvaren til enhetene de kjører på.

Apper på tvers av plattformer

Team kan kode i appen i språkene og rammeverkene de velger, og deretter kompilere koden for hvert operativsystem appen er ment å kjøre på ved hjelp av plattformer som Xamarin. Apper på tvers av plattformer, som disse kalles, gjør det mulig for team å kjøre på mange forskjellige enheter og bruke en stor del av koden på nytt, selv om brobygging av koden krever mer arbeid enn utvikling for bare én plattform.

Progressive webprogram

Slik som nettprogrammer kjører progressive webprogrammer i mobilnettlesere og bygges vanligvis ved hjelp av JavaScript, CSS og HTML5. Det som gjør webprogrammer progressive er deres evne til å levere push-varslinger, bedre berøringsbevegelser og maskinvareinteraksjon ved hjelp av avanserte nettleserfunksjoner. Det finnes ingen SDK-er som kan bidra til å bygge progressive nettapper, men de kan distribueres uten å gå gjennom en markedsplass.

Hybride apper

Hybridapper er en blanding mellom native apper og progressive nettapper, og er i bunn og grunn native kodede beholdere som kjører webprogrammer. Denne kombinasjonen gir appen mer tilgang til funksjonene og maskinvaren til enhetene og kjører på flere typer enheter – samtidig som du beholder én enkelt kodebase. Hybridapper oppnår vanligvis ikke ytelsen som andre typer mobilapper gjør.

Hvilken type mobilapp skal bygges

Typen mobilapp en organisasjon velger å bygge, har store implikasjoner for hvilke verktøy, plattformer, rammeverk, språk som er tilgjengelige for teamene, distribusjonen av appen, antallet kodebaser som skal vedlikeholdes, hvilke enheter appen skal kjøres på, og til og med hva appen kan gjøre.

Når du bestemmer hvilken type mobilapp som skal bygges, er det nyttig å vurdere hvem brukerne skal være, og hva de trenger fra appen. Hvis de for eksempel hovedsakelig bruker én enhetstype eller ett operativsystem, kan en plattformavhengig app være best. Apper som ikke er avhengige av maskinvaresensorer eller GPS, kan være godt egnet som progressive webprogram eller hybridapper, men kanskje ikke hvis brukerne mangler en god nettverkstilkobling. Hvis brukerne er medlemmer av bedriften eller organisasjonen, bør du vurdere en annen mobilstrategi. Og det hele handler om ekspertisen du har tilgjengelig i organisasjonen eller gjennom en partner.

Dette diagrammet beskriver flere forskjeller og likheter mellom ulike typer mobilapper for å hjelpe deg med å vurdere hvilken type du bør bygge.

Sammenligning av forskjellige typer mobilapper

Ikke tilgjengelig Native apper Apper på tvers av plattformer Progressive webprogram Hybride apper
Antall kodebaser Én per plattform Én, men kompilert for hver plattform Én total Én for appen, en annen for beholderen
Språk og rammeverk Bare native Teamets valg Bare nett Nett og native
Tilgang til SDK-er og API-er Ja Ja Nei Begrenset
Ytelse Høyest Høy Lavest Lav
Tilgang til enhetsmaskinvare Fullført Meste Svært lite Noen
Svartid for brukerinndata God God Verste Dårlig
Interaktivitet Høy Høy Lavest Lav
Ressursbruk for enhet Høy Høy Lav Medium
Krever tilkobling Nei Nei Ja Ja
Kostnad for å bygge og vedlikeholde Høyest Høy Lavest Lavere
Hvor appen er lagret Enhet Enhet Server Enhet og server
Distribuert gjennom Marketplace Marketplace Nettleser Marketplace
Krever ekstern godkjenning Ja Ja Nei Ja

Plattformer og programvare for mobilapputvikling

Når du har bestemt deg for hvilken type mobilapp du skal bygge – eller kanskje mens du vurderer hvilken type – vil du vurdere utviklingsplattformer for mobilapplikasjoner. Dette er plattformene du vil bruke til å bygge, teste, feilsøke, administrere og i noen tilfeller til og med distribuere mobilapper gjennom hele livssyklusen. De fleste programvarer for apputvikling inkluderer front-end-verktøy for å bygge grensesnittet, serverdelverktøy for å håndtere data, API-verktøy, testverktøy og verktøy for samarbeid og kodeanalyse.

De fleste plattformer for mobilapper har som mål å tilby alt en utvikler trenger for å bygge en mobilapp. Dette gjør det mulig for utviklere å unngå problemer med å flytte mellom ulike deler av mobilutviklingsprogramvare – og håndtere problemer som oppstår mellom dem, for eksempel kodeintegritet, inkompatibilitet og tap av data. Utviklingsplattformer for mobilapper reduserer også kostnadene, tiden, ressursene og ekspertisen som kreves for at en organisasjon skal kunne opprette en mobilapp. Mens noen få organisasjoner velger å bygge sine egne plattformer, velger mange flere ett av de mange apputviklingsalternativene som er tilgjengelige.

De beste alternativene for mobilapputvikling for en organisasjon varierer basert på hvilke typer mobilapper de har tenkt å opprette, hvilke språk de kan kode i og hvilke enheter de vil betjene. Noen alternativer for mobilapputvikling omfatter:

  • Verktøy på tvers av plattformer som Xamarin- som tillater utviklere å bygge Android- og iOS-apper ved hjelp av .NET og C#.
  • Visual Studio Tools for Xamarin, som bruker én delt kodebase for Android-, iOS- og Windows-mobilapper.
  • Verktøy med lite kode eller uten kode, for eksempel Power Apps. Lite kode er en enkel måte å bygge profesjonelle apper på uten teknisk opplæring eller ekspertise. Mer informasjon.

Utviklingsressurser for mobilapp

Utforsk Azure for mobilutviklere dokumenter

Finn informasjonen du trenger for å utvikle mobilapper på Azure. Lær om push-varslinger, godkjenning, analyse og SDK-er.

Se dokumentasjon

Prøv å opprette en mobilapp nå

Konfigurer en kontinuerlig integrasjons- og leveringspipeline for Android-apper. Koble til et hvilket som helst Git-repo, og få teamet i gang på få minutter.

Kom i gang

Vanlige spørsmål om utvikling av mobilapp

  • Definisjonen av utvikling av mobilapper kan være bred – noe som omfatter alle prosessene som er involvert i oppretting og utgivelse av en mobilapp – eller spesifikk, med henvisning til koding og distribusjon av appen.

    Mer informasjon

  • Fasene i utviklingsprosessen for mobilapper er strategi, planlegging, design, utvikling, testing og utgivelse.

    Mer informasjon

  • Når du bestemmer hvilken type mobilapp som skal bygges, er det nyttig å vurdere hvem brukerne skal være og hva de trenger fra appen.

    Mer informasjon

  • De beste alternativene for mobilapputvikling for en organisasjon varierer basert på hvilke typer mobilapper de har tenkt å opprette, hvilke språk de kan kode i og hvilke enheter de vil betjene.

    Mer informasjon

  • Organisasjoner bruker alt fra tre måneder til ni måneder – eller lengre der det er nødvendig – til å utvikle mobilapper.

    Mer informasjon

Kan vi hjelpe deg?