Hopp til innholdet
BigTree108

Tjenester for modernisering av eldre programvare

Modernisering av eldre programvare for systemer som fortsatt driver virksomheten, men bremser den: overtakelse av kode andre team har skrevet, oppgradering til gjeldende versjoner og trinnvis erstatning av gamle moduler, uten en omskriving i én omgang. Ni systemer har kommet til oss fra andre team så langt, det eldste skrevet i 2008.

Slik moderniserer vi et eldre system

  • Først en skrivebeskyttet gjennomgang

    Koden, avhengighetene, utrullingen og dataene lest fra ende til ende før noen endrer en linje, med en skriftlig liste over risikoer i rekkefølge etter betydning for produksjonen.

  • Tester rundt det som finnes

    Karakteriseringstester som fastholder hva systemet gjør i dag, med særegenheter inkludert, slik at hver senere endring kontrolleres mot reell oppførsel og ikke hukommelsen.

  • Oppgradering av rammeverk og kjøretidsmiljø

    .NET Framework til gjeldende .NET, Java 8 til en gjeldende LTS, PHP 5 til PHP 8, Python 2 til 3 og AngularJS til Angular, ett steg om gangen, hvert steg utgitt for seg.

  • Erstatning etter strangler fig-mønsteret

    Nye moduler bygget ved siden av det gamle systemet bak et rutingslag, som tar over én funksjon om gangen til den gamle koden kan slås av, uten én enkelt dag da alt endres.

  • Modernisering av databasen

    Forretningslogikk flyttet ut av lagrede prosedyrer og inn i testet kode, skjemaendringer gjort om til versjonerte migreringer, og data på databaseversjoner uten støtte flyttet med en avstemmingsrapport.

  • Sikkerhetsgjeld nedbetalt

    Avhengigheter uten støtte erstattet, kjente sårbarheter rettet, hemmeligheter flyttet ut av konfigurasjonsfiler og inn i et hvelv, og skanning av avhengigheter i pipelinen slik at gjelden ikke kommer tilbake.

Lei inn utviklere for eldre systemer

  • Dedikerte utviklere for eldre systemer

    Utviklere for eldre systemer som blir en del av teamet deres på heltid, jobber i verktøyene og prosessen deres, og rapporterer til lederen deres. Dere intervjuer dem, og vi tar oss av den ukrainske kontrakten, lønn, fakturering og fravær.

  • Prosjekter innen Modernisering

    En avgrenset del av modernisering med et omfang, en fast plan og en navngitt leder hos oss som eier resultatet og rapporterer fremdrift i kanalene deres.

  • Løpende modernisering

    Modernisering som en løpende tjeneste: de samme menneskene hver måned, en backlog dere prioriterer, og timer dere kan se i portalen vår og på fakturaen.

Siden om dedikert team forklarer hvordan spesialister blir med i teamet deres, og siden om outsourcing dekker prosjektleveranse, overtakelser og hvordan vi priser.

Hvem som jobber med modernisering for dere

  • Teknisk leder

    Eier gjennomgangen, risikolisten og rekkefølgen på arbeidet

  • .NET-, Java- og PHP-utviklere

    Oppgraderinger og refaktorering i systemets eget språk

  • Sky- og DevOps-ingeniører

    Pipelines, infrastruktur som kode og flyttingen bort fra gamle servere

  • QA-ingeniører

    Karakteriserings- og regresjonstester

Moderniser i steg, ikke i én omskriving

En full omskriving stopper leveransene i måneder og mister som regel oppførsel ingen skrev ned. Vi moderniserer i steg i stedet: hvert så lite at det kan utgis, testet mot hva systemet gjorde før, og valgt ut fra risikoen eller kostnaden det fjerner, slik at virksomheten fortsetter å gå på systemet mens det endres.

En overtakelse starter med en skrivebeskyttet gjennomgang og en skriftlig liste over risikoer før noen retting. Av og til viser den listen at en modul bør skrives om, og da sier vi det, med begrunnelsene skriftlig og omskrivingen planlagt bak de samme testene.

Andre løsninger vi leverer

Oversikt: Løsninger

Spørsmål om modernisering av eldre systemer

Bør vi skrive om eller modernisere?

Som regel modernisere. En omskriving gir mening for en modul hvis oppførsel er godt forstått og hvis kode blokkerer hver endring. For resten gir trinnvise oppgraderinger og erstatning etter strangler fig-mønsteret verdi raskere og beholder kunnskapen som ligger i den gamle koden. Gjennomgangen gir dere den beslutningen per modul, skriftlig.

De opprinnelige utviklerne våre har sluttet. Kan dere likevel overta systemet?

Ja. Vi jobber ut fra koden, databasen, utrullingen og menneskene som fortsatt bruker systemet, og den skriftlige risikolisten forteller dere hva vi fant før dere bestemmer hva som skal endres.

Fortsetter det gamle systemet å kjøre mens det moderniseres?

Ja. Rettinger og sikkerhetsoppdateringer fortsetter på det levende systemet hele veien, og hvert moderniseringssteg utgis for seg, så det er aldri en periode da virksomheten venter på den nye versjonen.

Hvor raskt kan utviklere for eldre systemer starte?

Når rett moderniseringsutvikler er tilgjengelig, avhenger starten bare av intervjuet deres, NDA-en og IP-overdragelsen. Ellers gjennomfører vi et søk, som vanligvis gir kandidatprofiler innen to til tre uker, og ingen starter før dere har sagt ja.

Hvordan leier vi inn utviklere for eldre systemer gjennom BigTree108?

Fortell oss om arbeidet, erfaringsnivået og timene dere trenger. Vi foreslår én eller to personer med profilene deres, dere intervjuer dem slik dere ville intervjuet en egen ansatt, og dere signerer én avtale med BIG TREE 108 LLC og får én faktura i måneden.

Hvem eier arbeidet de leverer?

Det gjør dere. Hver spesialist har en signert kontrakt med BigTree108 som overdrar alt arbeidsresultat til selskapet, og avtalen vår med dere overdrar det videre til dere. Kode, design og dokumenter leveres inn i deres egne repositorier og verktøy, og oppbevares ikke der bare vi kan endre dem.

Kjører dere et system ingen vil røre?

Send kodelageret eller en beskrivelse av systemet. Dere får svar innen én virkedag: en plan for gjennomgangen og de første stegene etter den.