DUDES / OLEMASSA OLEVIEN JÄRJESTELMIEN JATKOKEHITYS

Legacy-modernisointi. Ilman isoa pamausta.

Legacy-modernisointi eli legacy-järjestelmän uudistaminen tarkoittaa meillä vanhan järjestelmän parantamista osa kerrallaan: ensin ymmärretään, sitten suojataan testeillä ja vasta sitten muutetaan. Täysi uudelleenkirjoitus on harvoin oikea ensimmäinen askel.

KENELLE

Tunnistatko itsesi?

↗01

Järjestelmän omistaja

Liiketoiminta pyörii vanhan koodin varassa, mutta jokainen muutos pelottaa.

⌘02

Tiimi, joka peri koodipohjan

Alkuperäiset tekijät ovat lähteneet, dokumentaatio puuttuu eikä testejä ole.

⇄03

Yritys, jonka teknologia vanhenee

Kehys, kieliversio tai infrastruktuuri on tulossa tiensä päähän.

TYYPILLINEN TILANNE

Rewrite kuulostaa helpolta, kunnes sitä yrittää.

Vanha järjestelmä sisältää vuosien liiketoimintasääntöjä, joita ei ole kirjattu mihinkään. Täysi uudelleenkirjoitus joutuu löytämään ne kaikki uudelleen, usein tuotannossa.

Pelkkä paikkailu ei silti riitä, jos jokainen muutos rikkoo jotain. Tarvitaan tapa muuttaa järjestelmää turvallisesti.

MITEN RATKAISEMME

Ymmärrä, suojaa, muuta

01

Koodipohjan kartoitus

Agentit lukevat koodia rinnakkain ja kokoavat kartan: moduulit, riippuvuudet, tietovirrat ja riskialueet. Seniori tarkistaa kartan, koska malli voi ymmärtää vanhan koodin väärin.

02

Testit ennen muutoksia

Nykyinen käyttäytyminen lukitaan testeillä, jotta tiedetään, mikä muuttui ja mikä ei.

03

Asteittainen korvaaminen

Osa kerrallaan uuteen rakenteeseen (ns. strangler fig -malli). Vanha ja uusi voivat toimia rinnakkain, kunnes uusi on todistetusti kunnossa.

04

Rehellinen arvio

Joskus osa kannattaa kirjoittaa uudelleen. Kerromme missä ja miksi, emme yleisenä periaatteena.

MITEN TYÖ ETENEE

Emme aloita alusta vain siksi, että emme aloittaneet sitä.

MITÄ SINULLA ON
  • Idea
  • Lovable
  • Bolt / v0
  • Nykyinen koodi
GITGit-repo
DUDES ✳ MITÄ ME LISÄÄMME
  • ✓ Arkkitehtuuri
  • ✓ Backend
  • ✓ Tietokanta
  • ✓ Tunnistautuminen
  • ✓ Integraatiot
  • ✓ Testaus
  • ✓ Infra
  • ✓ Tietoturva
  • ✓ Seuranta
LIVETuotanto
MITÄ VOIMME RAKENTAA

Mitä modernisointi voi tarkoittaa

  • ↗ Koodipohjan kartoitus ja riskiraportti
  • ↗ Testikattavuus ennen muutoksia
  • ↗ Kehys- ja kieliversioiden päivitykset
  • ↗ Monoliitin osien eriyttäminen
  • ↗ Vanhan käyttöliittymän uudistus
  • ↗ Siirto moderniin infrastruktuuriin ja CI/CD:hen
  • ↗ Dokumentaatio seuraavalle kehittäjälle
LAATU & TIETOTURVA

Generoitu ei ole valmis. Varmistettu on.

AI-mallit tekevät virheitä, niin ihmisetkin. Prosessimme on rakennettu löytämään ne ennen käyttäjiäsi: ihmisen katselmointi, riskiin sopivat testit ja validointi ennen julkaisua.

Mitä ”valmis” tarkoittaa? ↗
DEFINITION OF DONE ↙
✓Nykyinen käyttäytyminen lukitaan testeillä01
✓Pienet, peruttavat muutokset02
✓Tuotannon seuranta muutosten jälkeen03
✓Palautussuunnitelma jokaiselle julkaisulle04
HINNOITTELU & YHTEISTYÖ

Miten päästään alkuun?

Hyvä alku on rajattu kartoitus: selvitämme koodipohjan tilan, suurimmat riskit ja järkevän ensimmäisen askeleen. Se mahtuu usein rajattuun kehityssprinttiin (5 000 € + alv ensimmäinen viikko, kiinteä hinta).

5 000 €+ alv · yksi viikko, kiinteä hinta
Aloita kehityssprintti↗Hinnoittelu & yhteistyömallit ↗
UKK

Hyviä kysymyksiä.

Rewrite vai asteittainen modernisointi?+

Useimmiten asteittainen. Rewrite on perusteltu, kun vanha ratkaisu estää kriittisen muutoksen eikä sitä voi järkevästi suojata testeillä. Päätös tehdään kartoituksen jälkeen, ei ennen.

Miten AI auttaa vanhan koodin kanssa?+

Agentit lukevat paljon koodia nopeasti: jäljittävät riippuvuuksia, kuvaavat käyttäytymistä ja luonnostelevat testejä. Tulokset tarkistetaan, koska malli voi ymmärtää vanhan koodin väärin.

Pitääkö järjestelmä pysäyttää?+

Ei yleensä. Muutokset tehdään pieninä ja julkaistaan hallitusti, ja vanha ja uusi voivat toimia rinnakkain.

LUE LISÄÄ

Lue ennen kuin ostat.

LET’S MAKE IT REAL ↙

Mikä järjestelmä pelottaa eniten?

Kerro järjestelmästä ja siitä, mikä siinä on vaikeaa muuttaa. Aloitetaan kartoituksesta.

Pyydä koodipohjan kartoitus↗