好色先生TV

Tekniska ?mnen

Vad ?r Performance Engineering?

Illustration av IT-artiklar med fokus p? en gl?dlampa

?versikt

Prestandateknik ?r proaktiv, kontinuerlig och helt?ckande testning och ?vervakning av applikationsprestanda. Det m?jligg?r ett s?ml?st samarbete mellan team, verktyg och processer genom kontinuerliga ?terkopplingsloopar. H?r ?r det inte bara testare som ansvarar f?r kvalitetss?kringen, utan ?ven utvecklare, prestandatekniker, produkt?gare och aff?rsanalytiker.

Genom att utnyttja r?tt dimensionerade verktyg som omfattar b?de utvecklare och prestandatekniker m?jligg?r prestandateknik prestandatestning med skift till v?nster och ?vervakning av applikationsprestanda med skift till h?ger. Det ?r sv?rt att f?rst? hur mycket prestandateknik skiljer sig fr?n traditionell prestandatestning om man inte f?rst?r vad klassisk prestandatestning ?r.

Prestandateknik

Vad ?r skillnaden mellan Performance Testing och Performance Engineering?

Klassisk prestandatestning ?r i sj?lva verket en delm?ngd av prestandateknik. Det inneb?r vanligtvis att man k?r en enda omg?ng belastningstest som en del av kvalitetss?kringscykeln (QA) efter utvecklingen. Prestandatestning inneb?r att man kontrollerar hastighet, tillf?rlitlighet, skalbarhet, stabilitet, svarstid och resursanv?ndning f?r en applikation under den f?rv?ntade arbetsbelastningen. Innan vi g?r in p? skillnaderna mellan prestandateknik och prestandatestning ska vi f?rst ta en titt p? prestandatestning i sig och varf?r det inte l?ngre ?r h?llbart.

  • F?r det f?rsta betraktas testningen isolerat och behandlas som en eftertanke som bara b?rjar i slutet av funktionstestningen.
  • F?r det andra leder stupr?rsarbete till stora kommunikationsbrister mellan olika projektgrupper och f?rhindrar det samarbete som kr?vs f?r att leverera en produkt av h?g kvalitet.
  • F?r det tredje har organisationen redan lagt ner mycket tid, kraft och pengar p? design, utveckling och marknadsf?ring av applikationen n?r prestandatestningen v?l s?tter ig?ng.
  • F?r det fj?rde behandlas prestandatestning ofta som en eftertanke och ing?r inte i de "klara" kriterier som f?reg?r lanseringen. S? i det h?r l?get beh?ver verksamheten appen i produktion omg?ende och f?rv?ntar sig inga f?rseningar. I det h?r sammanhanget kommer QA:s feedback f?r sent f?r att kunna ?tg?rdas helt f?re lanseringen. Det ?r oundvikligt att ett stort antal prestandaproblem i on?dan skulle hamna i produktionsmilj?n bara f?r att lanseringen skulle h?lla tidsplanen. Att ?tg?rda en defekt i produktionen ?r mycket dyrare och mer st?rande ?n att g?ra det tidigt i utvecklingen.
  • F?r det femte kan traditionell prestandatestning ha varit perfekt f?r vattenfallsmodellen men ?r inte p? sin plats i dagens v?rld. DevOps minskar felfrekvensen f?r nya releaser genom att f?rkorta tiden mellan det att en f?r?ndring l?ggs in i systemet och det att f?r?ndringen tas i produktion. Kontinuerlig integration och kontinuerlig leverans (CI/CD) s?kerst?ller att programvaran alltid ?r i ett releasebart tillst?nd under hela sin livscykel. DevOps fokuserar ocks? p? att anpassa organisationen f?r att st?dja end-to-end-samarbete mellan intressenter, funktioner och verktyg. F?r att m?ta DevOps krav p? snabba leveranser beh?ver mjukvaruutvecklingen en mer utvecklad metod f?r prestandatestning. Det nya tillv?gag?ngss?ttet ?r software performance engineering.

L?t oss nu f?rdjupa oss i de viktigaste skillnaderna mellan prestandateknik och prestandatestning.

  • F?r det f?rsta ?r prestandatestning en kvalitetskontroll av applikationens belastningshantering och respons. Den fastst?ller hur v?l systemet klarar en produktionsbelastning och f?rutser de problem som kan uppst? under tunga belastningsf?rh?llanden. Prestandateknik syftar till att designa applikationen fr?n b?rjan med prestandam?tt i ?tanke och underl?tta uppt?ckten av problem tidigt i utvecklingen.
  • F?r det andra ?r prestandatestning en QA-process som vanligtvis ?ger rum n?r en omg?ng av programvaruutvecklingen ?r klar. Prestandateknik ?r en kontinuerlig process som ?r inb?ddad i alla faser av programvarans utvecklingscykel - fr?n design, till utveckling och till slutanv?ndarens upplevelse.
  • F?r det tredje utf?rs prestandatester av QA-teamet medan prestandateknik involverar RND och QA.

Koncept f?r prestandateknik

Med hj?lp av f?ljande koncept levererar DevOps och Performance Engineering konsekventa resultat f?r produktionsprestanda, vilket g?r det m?jligt f?r kunderna att distribuera applikationer effektivt med st?rre tillf?rsikt och att lansera h?gpresterande, stabil programvara som uppfyller anv?ndarnas f?rv?ntningar.

Optimering fr?n b?rjan till slut

Prestandateknik ger systemoptimering fr?n b?rjan till slut genom en kontinuerlig test- och ?vervakningsprocess. Detta inneb?r att prestanda- och belastningstestning flyttas till utvecklingsprocessen. Detta till skillnad fr?n traditionell prestandatestning d?r testningen sker efter att funktionstestningen har stabiliserats och koden har sl?ppts.

N?r koden har sl?ppts f?ljer prestandatekniken upp appen i produktion genom att anv?nda APM-verktyg (Application Performance Monitoring).

Tv?rfunktionellt team av intressenter f?r prestationer

Prestandateknik m?jligg?r samarbete mellan projektintressenter - fr?n aff?rsanalytiker till utvecklare. F?r att uppr?tth?lla h?ga prestandaniv?er som f?rb?ttrar kundupplevelsen, h?lla j?mna steg med aff?rstakten och hantera end-to-end-prestanda kr?vs att alla, inte bara QA/Performance Engineers, f?rvaltar produktprestandan. S? h?r g?r du.

Testcenter f?r spetskompetens

Testing Center of Excellence (CoE) fungerar som en p?litlig testr?dgivare och f?rvaltare av b?sta praxis. CoE st?der olika aff?rsenheter, olika testmetoder (t.ex. DevOps och Agile) och har flexibiliteten att rekommendera prestandatestning och testverktyg efter behov. F?r att bygga b?ttre testmodeller och f?rb?ttra testkvaliteten fungerar CoE som en enda punkt f?r konsolidering och ?teranv?ndning av testdata som har genererats och samlats in p? flera aff?rsenheter ?ver tid.

Ingenj?r f?r prestanda

Prestandaingenj?ren ger en helhetssyn p? all kod under utveckling f?r att s?kerst?lla att kriterierna f?r prestandatestning ?r helt?ckande, omfattar den st?rre bilden och tar h?nsyn till alla distinkta delar av koden under utveckling. Prestandaingenj?ren ?r den prim?ra anv?ndaren av verktyg f?r prestandatestning och har en h?g grad av expertis inom skriptning, utformning, k?rning och analys av testresultat. Prestandaingenj?ren deltar i den tidiga utvecklingsfasen d?r han eller hon kan tillhandah?lla prestandam?tv?rden och scenarier som kr?vs f?r att koden ska anses vara redo f?r release. Tidig involvering inneb?r att prestandateknikern kan s?kerst?lla att l?sningen uppfyller de prestandaf?rv?ntningar som st?lldes upp i b?rjan av utvecklingen. De bekr?ftar ocks? att arkitekturen och designen ?r konsekvent under hela utvecklingen.

Programvaruutvecklare

Utvecklare ?r experter p? kodning men ofta d?liga p? b?de funktions- och prestandatestning. De arbetar i sin integrerade utvecklingsmilj? (IDE) och tenderar att anv?nda sina favoritverktyg med liten ben?genhet att l?ra sig nya. Performance engineering flyttar prestandatestning fr?n v?nster till h?ger, vilket inneb?r att det hamnar inom mjukvaruutvecklarens ansvarsomr?de. Med hj?lp av prestandateknikern kan programutvecklaren k?ra prestandatester medan han eller hon skriver kod. Utvecklaren sl?pper inte sin kod innan den klarar kriterierna f?r prestandatestning.

DevTester

Utvecklaren finns inte i klassisk prestandatestning eftersom det finns tydliga skillnader mellan programvaruutvecklare och prestandatekniker. Med prestandateknik framtr?der devtestern som en intressent som kopplar samman prestandateknik- och utvecklarteam. De ?verbryggar klyftan genom att ha gedigna kodnings- och testkunskaper, ?ven om de inte riktigt n?r upp till samma kompetensniv? som utvecklaren och prestandateknikern. De kan k?ra tester snabbt och har mycket st?rre flexibilitet ?n utvecklarna n?r det g?ller att anv?nda olika verktyg efter behov.

Aff?rsanalytiker och applikationsingenj?rer

Genom att flytta testningen f?r prestandatekniken med sig aff?rsanalytiker och applikationsingenj?rer. Detta garanterar att kraven p? aff?rs- och applikationsprestanda, som definierar kvaliteten p? anv?ndarupplevelsen, inf?rlivas i prestandakriterierna. Dessa tv? roller ?vervakar appen i produktion f?r att s?kerst?lla att applikationsprestandan alltid ?r i toppklass.


Hitta r?tt partner f?r prestandateknik

Performance Engineering h?ller p? att f?r?ndra s?v?l mjukvaruutvecklingen som arbetsbeskrivningarna f?r alla som arbetar med den. Och med ett st?rre antal roller inblandade ?r behovet av verktyg och teknik f?r att effektivisera processen st?rre ?n n?gonsin tidigare. Prestandateknik kr?ver end-to-end-integration och samarbete fr?n h?ger till v?nster och v?nster till h?ger tillsammans med insikter och analyser i realtid. Traditionella leverant?rer av prestandatestning ?r inte tillr?ckligt rustade f?r att hantera denna v?g av kaotiska f?r?ndringar. 好色先生TV har dock den bepr?vade erfarenheten och de tekniska l?sningarna f?r att omvandla testkaos till teknisk ordning.

好色先生TV Performance Engineerings ?ppna arkitektur st?der testning av alla typer av protokoll och applikationer i alla utvecklingsmilj?er. Det g?r det m?jligt f?r intressenter, fr?n utvecklare till aff?rsanalytiker, att anv?nda m?nga olika verktyg fr?n leverant?rer och ?ppen k?llkod f?r att m?jligg?ra fullst?ndig CI/CD-integration i stor skala. 好色先生TV verktygsintegrationer ger m?jlighet att snabbt eliminera v?ntetiden f?r utveckling och testning som saktar ner applikationsleveransen. Integrationerna g?r det m?jligt att snabbt skapa realistiska simuleringar av API:er, n?tverksf?rh?llanden och virtuella tj?nster. 好色先生TV l?sningar f?r prestandateknik bygger p? befintlig lokal infrastruktur eller molninfrastruktur och fr?mjar ?teranv?ndning av tillg?ngar f?r att dra nytta av befintliga investeringar. Detta bidrar till att snabbt skala upp f?r att m?ta kraven p? prestandatestning av flera applikationer i hela f?retaget.

Traditionell prestandatestning b?rjade inte f?rr?n funktionstestningen var klar och man b?rjade inte identifiera defekter och grundorsaker f?rr?n i slutet av prestandatestningen. 好色先生TV Performance Engineering inneb?r kontinuerlig m?tning och analys av defekter fr?n b?rjan till slut f?r att hitta grundorsaken i realtid, till och med innan prestandatestet ?r klart. Prestandakriterier ing?r i definitionen av och kraven p? "klar". 好色先生TV Realtidsanalys hj?lper prestandateknikern att snabbt ge feedback till utvecklaren s? att fels?kning kan inledas tidigt i utvecklingsprocessen. Syntetisk ?vervakning och ?vervakning av verkliga anv?ndare i produktionen ger insikter i prestandaproblem som har undg?tt testning och som m?ste ?tg?rdas i n?sta version. Capture och analys av slutanv?ndarnas ?sikter ur ett prestandaperspektiv ger mer specifik feedback till utvecklarna s? att de kan optimera applikationen f?r b?ttre prestanda.

Hur kan vi hj?lpa till?

Fotnoter