Modernisering av appar: 5 processdrivna steg

Discover how to deliver better software and systems in rapidly scaling environments. Join our Community

Många företag tar sig an modernisering av applikationer genom tekniska uppdateringar, men denna strategi kan snabbt bli föråldrad. Fokusera på att modernisera utvecklings- och driftsättningsprocesserna för långsiktig innovation, skalbarhet och konkurrensfördelar.

app modernization featured image

Om du ber IT-proffs beskriva sina verksamheters strategier för applikationsmodernisering kommer du sannolikt att få höra svar som kretsar kring teknik.

De kanske berättar hur de migrerar lokala applikationer till molnet, flyttar applikationer som redan finns i molnet till nya typer av molntjänster eller omstrukturerar sina applikationer så att de körs som mikrotjänster.

Med andra ord tänker många på teknisk förändring när de tänker på applikationsmodernisering.

Jag vill hävda att detta är fel angreppssätt för applikationsmodernisering. I stället för att modernisera teknik behöver verksamheter egentligen modernisera sina processer för applikationsutveckling och distribution.

Låt mig förklara genom att diskutera varför organisationer bör sträva efter ett processorienterat angreppssätt för applikationsmodernisering, tillsammans med konkreta råd om hur processer för applikationsleverans kan moderniseras.

Applikationsmodernisering: En aldrig sinande historia

Ett teknikcentrerat angreppssätt för applikationsmodernisering räcker helt enkelt inte, eftersom tekniken ständigt förändras. De tekniska innovationer som gör din applikation "modern" i dag kan få den att se ut som en äldre applikation om ett, tre eller tio år.

När applikationsmodernisering exempelvis blev ett modeord för ungefär ett decennium sedan stod molntekniker som infrastruktur som tjänst (IaaS) i centrum för många strategier för applikationsmodernisering. Då var IaaS mycket betydelsefullt för många organisationer som tidigare hade driftat arbetsbelastningar lokalt. För dem var möjligheten att köra applikationer på infrastruktur som hanteras av någon annan och bara betala för de resurser som arbetsbelastningarna förbrukar revolutionerande.

I dag känns IaaS förstås mycket mindre revolutionerande. Det är fortfarande värdefullt, men har blivit så vanligt att det inte längre står i centrum för samtalet om applikationsmodernisering. I stället talar man i dag ofta om nyare typer av teknik och tekniska koncept, som containrar och serverlösa funktioner.

Det innebär att om din strategi för applikationsmodernisering fokuserar på att uppdatera applikationerna för att dra nytta av den senaste och bästa tekniken (vad det än råkar vara när du startar initiativet), kommer applikationen förr eller senare att sluta vara innovativ. Den kommer inte heller att vara särskilt bra på att ge verksamheten den största konkurrensfördelen. I många fall kommer du dessutom inte att dra nytta av de senaste säkerhetsskydden, som är avgörande för att ligga steget före nya hot.

Ett bättre angreppssätt för applikationsmodernisering är att fokusera på att modernisera processerna. Trots omfattande förändringar inom teknik för applikationsdistribution under det senaste eller de senaste två årtiondena har de utvecklingsprocesser som bäst främjar programvaruinnovation och effektivitet – exempelvis de sammanhängande koncepten och metoderna agilt arbetssätt, kontinuerlig integration och kontinuerlig leverans (CI/CD) samt DevOps – förblivit mer eller mindre desamma.

Därför bör varje verksamhets verkliga fokus vara att modernisera processerna för applikationsleverans för att dra nytta av de mest innovativa metoderna. När processerna är moderna följer förmågan att utnyttja modern teknik och snabbt uppdatera applikationer för att dra nytta av ny teknik naturligt.

Så förbättrar du processen för applikationsmodernisering

Utmaningen för många verksamheter är förstås att faktiskt modernisera processen för programvaruleverans på sätt som gör förändringar snabbare, enklare och säkrare. Vilka specifika processer bör de ändra, och hur kan de övervinna de hinder som de sannolikt kommer att stöta på längs vägen?

För att besvara de frågorna går vi igenom några taktiker för processmodernisering som kan förändra hur verksamheter arbetar med programvara, oavsett vilken teknik de använder.

Get Free Access
Get regular tech leadership wisdom for delivering better software and systems.
Get Free Access

Have an account? Log In

1. Hitta problematiska processer genom värdeflödesanalys

Det första steget i processmodernisering är att avgöra vilka processer som har störst behov av förändring. För att få den insikten behövs en värdeflödesanalys. Värdeflödesanalys ger insikt i de uppgifter som utförs inom programvaruleveransen och hur lång tid varje uppgift tar – ungefär på samma sätt som en genomgång av en budget hjälper team att fokusera på sätt att förbättra det ekonomiska resultatet genom att först ta itu med de största budgetposterna.

När du genomför en värdeflödesanalys av programvaruleveransen får du reda på vilka delar av applikationsutvecklingsprocessen som tar längst tid eller kräver störst manuell insats, samt vilka delar av infrastrukturhanteringen som är mest felbenägna.

Även om nästan alla dina processer sannolikt kan förbättras i någon utsträckning hjälper värdeflödesanalysen dig att fokusera på de processer som lämpar sig bäst för förbättring. Den hjälper dig också att identifiera onödiga uppgifter eller steg som du kan ta bort för att göra distributionsprocessen enklare, snabbare och mindre riskfylld.

2. Mät programvaruleveransen

Att analysera metoder för programvaruleverans är mest effektivt när du systematiskt och kvantitativt följer upp dina processer. Du kan göra detta med hjälp av ramverk som Googles DORA-mätvärden, som mäter effektiviteten i befintliga processer för programvaruutveckling och distribution.

Ett mätvärdesbaserat tillvägagångssätt gör det möjligt att följa upp resultaten av programvaruleveransen på ett exakt sätt. Det innebär också att företag kan bedöma exakt hur stora förbättringar (eller avsaknaden av sådana) de uppnår efter förändringar i sina processer för programvaruleverans.

3. Förklara krig mot manuella processer

Om din organisation liknar de flesta andra kommer din värdeflödesanalys att identifiera ett stort antal processer som dina team fortfarande utför manuellt. Att automatisera dessa där det är möjligt bör vara en prioritet. Automatisering sparar tid, minskar risken för fel och möjliggör säkrare driftsättningar.

I de flesta fall är manuella processer motsatsen till modernisering av appar av två anledningar. Den ena är att de gör arbetet långsammare och skapar ineffektivitet. Den andra är att manuella operationer tenderar att öka risken för fel, eftersom det finns en risk att en människa förbiser något viktigt eller gör ett misstag när en konfiguration tillämpas, vilket kan öppna dörren för ett intrång.

4. Refaktorera hanteringsprocesser och rutiner

På samma sätt som du kan refaktorera en monolitisk applikation genom att omdefiniera dess arkitektur kan du omdefiniera dina hanteringsprocesser och rutiner – till exempel ditt arbetssätt för applikationsutveckling och systemadministration.

I många fall kräver en ökning av hastigheten för applikationsdriftsättningar samt implementering av kontinuerlig driftsättning och leverans att processerna för hantering av programvaruändringar skrivs om, eftersom äldre metoder, som de som förknippas med vattenfallsmodellen, inte skalar. De kan inte hålla jämna steg med takten i kontinuerliga leveransflöden där ny kod skickas till produktion flera gånger i veckan eller ibland ännu oftare.

Processer som är långsamma och manuella bör ersättas med automatiserade processer i så stor utsträckning som möjligt. Programvarutester kan till exempel automatiseras för att spara tid och förbättra kvaliteten (eftersom manuella godkännanden alltför ofta bara godkänns slentrianmässigt, vilket innebär att de gör testprocessen långsammare utan att tillföra något värde). Dessutom kan processer som är alltför komplexa eventuellt delas upp i mindre och enklare rutiner.

5. Förändra ditt sätt att tänka kring processer

Förutom att modifiera själva processerna bör modernisering av appar också innebära att organisationer förändrar sitt sätt att tänka kring processer i allmänhet. Med detta menar jag att utvecklare, IT-administratörer och chefer ska uppmuntras att använda automatisering som standard när processer implementeras.

Detta kan verka onödigt eftersom många IT-yrkesverksamma i dag talar om vikten av automatisering. När det faktiskt gäller att implementera processer tenderar de ändå att föredra manuella metoder, eftersom de är snabbare och enklare att implementera inledningsvis. För att möjliggöra långsiktiga framgångar med modernisering av appar behöver du få dina team att ta till sig automatisering som ett sätt att spara tid och arbete samt minska riskerna på lång sikt, även om det kräver mer arbete i början.

More Articles

Att övervinna utmaningar med modernisering av appar

När företag genomför de processförändringar jag just har beskrivit stöter de ofta på problem som följande:

  • Motstånd mot förändring: Om manuella eller ineffektiva processer har funnits i årtionden och verksamheten har fortsatt att fungera kan vissa ifrågasätta värdet av att förändra saker.
  • Brist på resurser: Att göra om processer kräver tid och arbete. IT-avdelningar som redan har för mycket att göra kan vara tveksamma till att avsätta resurser för processförändringar.
  • Brist på ledarskap: Utan chefer eller ledare som vägleder moderniseringen av processerna kan initiativ tappa fart.

Dessa utmaningar är till viss del oundvikliga. Men de går också att lösa. En del av lösningen är att börja i liten skala; i stället för att göra om alla processer över en natt kan du välja ut några få och sedan skala upp därifrån. Det är också en god praxis att börja med endast ett eller två team.

När du har bestämt var du ska börja bör du se till att mäta programvaruleveransen med hjälp av mätvärden, genomföra en värdeflödesanalys för att avgöra var du kan förbättra och sedan genomföra förändringarna. När du har förbättrat de första teamens effektivitet kan medlemmar i dessa team gå vidare och hjälpa andra att införa liknande processer och tankesätt.

Företag bör också utse ledare som övervakar moderniseringsinitiativ och delegera ansvaret för vissa delar av processen till personal med erforderlig kompetens. Ett annat alternativ är att lägga ut detta arbete på ett företag för utveckling av mobilappar eller ett företag för utveckling av iPad-appar.

Ett modernt tillvägagångssätt för modernisering av appar

I slutändan beror framgången för alla projekt för appmodernisering inte bara på vilka tekniker du väljer att implementera, utan också på hur du implementerar dem. Så länge företag inte moderniserar processerna för att bygga och uppdatera programvara kommer de alltid att ligga efter utvecklingen.

Med effektiva, tillförlitliga och säkra processer på plats kan organisationer däremot modernisera sina appar genom att dra nytta av de senaste tekniska innovationerna när nya tekniska möjligheter uppstår.

Prenumerera på The CTO Clubs nyhetsbrev för fler tips, knep och verktyg för appmodernisering.

Scott Wheeler
Scott Wheeler is Cloud Practice Lead at Asperitas. He helps organizations successfully implement the most complex and demanding cloud solutions.
Follow the author:

You may also like