JKODEZ_
// legacy → modern, osa kerrallaan

Vanha ohjelma pyörii vielä. Kukaan ei uskalla koskea siihen.

Selvitän, mitä räätälöity ohjelmasi oikeasti tekee, saan sen käyntiin uudessa ympäristössä ja siirrän sen uudelle alustalle vaihe kerrallaan. Ilman dokumentaatiota, ilman katkoja.

Soita 040 721 3761 Miten työ etenee →
frmKuorma · Access / VBALoadForm.cs · WinForms + SQL Server
Private Sub btnSave_Click()
  If IsNull(Me.Paino) Then
    Exit Sub
  End If
  DoCmd.RunSQL "INSERT INTO" _
    & " Kuormat (Auto, Paino)" _
    & " VALUES (..)"
  Me.Requery
End Sub
async Task SaveAsync(Load l)
{
  Validate(l);
  await db.Loads.AddAsync(l);
  await db.SaveChangesAsync();
  await grid.RefreshAsync();
}
✓ kanta SQL Serveriin✓ lomakkeet WinFormsiin△ raportit jäivät Accessiin

Tunnistatko tilanteen?

3 tyypillistä lähtökohtaa
01

Ohjelma toimii vain yhdellä vanhalla koneella

Tarjouslaskenta tai laskutuksen apuohjelma pyörii nurkan Windows 7 -koneella. Kukaan ei tiedä, käynnistyykö se päivityksen jälkeen.

02

Tekijää ei enää tavoita

Ohjelman teki yksi henkilö, joka on nyt muualla tai eläkkeellä. Lähdekoodi voi olla tallessa, mutta kehitystyökaluja ei saa mistään.

03

Useita vanhoja ohjelmia, ei kokonaiskuvaa

Kymmenkunta räätälöityä työkalua estää palvelinuudistuksen tai ERP-vaihdon. Mitkä säilytetään, mitkä korvataan, mitkä lopetetaan?

Miten tämä eroaa tavallisesta ohjelmistoprojektista

01

Sinun ei tarvitse määritellä mitään etukäteen

Näytät, miten työ tehdään. Minä kaivan säännöt esiin koodista, tietokannasta ja käynnissä olevasta ohjelmasta ja tuon ne sinulle tarkistettavaksi.

02

Näet toimivan tuloksen ennen kuin sitoudut isompaan

Ensin kiinteähintainen selvitys, sitten yksi työnkulku uudella alustalla rinnakkain vanhan kanssa. Vasta sen jälkeen päätetään jatkosta ja hinnasta.

03

Uusi laskee samat tulokset kuin vanha, ja se tarkistetaan

Ajan saman aineiston molempiin ja vertaan tulokset. Erot näet ennen käyttöönottoa, et sen jälkeen.

04

Kaikki jää sinulle joka vaiheessa

Tuotan koodia, en papereita: lähdekoodi on sinun joka vaiheessa. Voit lopettaa minkä tahansa vaiheen jälkeen tai jatkaa jonkun muun kanssa.

Miten työ etenee

VAIHE 0 · 1–2 h · 0 €

Alkukeskustelu

Kerrot, mitä ohjelma tekee ja mikä huolestuttaa. Kerron, kannattaako edetä ja mitä selvitys maksaa.

VAIHE 1 · kiinteä hinta

Käynnistysselvitys

Ohjelma käyntiin hallitussa ympäristössä, riippuvuudet kartalle, säännöt esiin ja sinulle vahvistettaviksi. Ei raporttipinoa.

VAIHE 2 · koe

Yksi työnkulku uudelle alustalle

Tärkein työnkulku rinnakkain vanhan kanssa samalla aineistolla. Näet vertailun ennen seuraavaa päätöstä.

VAIHE 3–4 · osa kerrallaan

Loput ja luovutus

Jokainen kokonaisuus omalla hinnallaan ja hyväksynnällään. Lopuksi toimiva ohjelma, lähdekoodi ja paluusuunnitelma. Uutta ohjelmaa voi sen jälkeen kehittää eteenpäin normaalisti.

Lopputulos ei aina ole uusi ohjelma. Joskus järkevintä on jatkaa vanhan käyttöikää viisi vuotta tai korvata se valmisohjelmalla. Suosittelen halvinta turvallista vaihtoehtoa. Kun ohjelma on siirretty uudelle alustalle, sen kehittäminen jatkuu tavallisena ohjelmistotyönä: uusia ominaisuuksia, integraatioita ja käyttöliittymän parannuksia voi tehdä siinä missä mihin tahansa nykyaikaiseen ohjelmaan.

Millaisia ohjelmia otan työn alle

Sellaisia, joiden kehitysympäristö on kadonnut, dokumentaatio puuttuu tai tekniikan nimeäkään ei tiedetä.

DelphiVisual Basic 6AccessExcel / VBA.NET FrameworkWinFormsWeb FormsJava SwingC++ BuilderClipperFoxProParadoxClassic ASPPHP 5Lotus NotesSQL-proseduurit

Jos tekniikkasi ei ole listalla, kysy silti.

UUSI TOTEUTUS
Esimerkiksi .NET + React
tai muu tilanteeseen sopiva tekniikka

Valitsen tekniikan, joka on laajasti osattua ja pitkään tuettua, jotta työtä voi jatkaa kuka tahansa. Esimerkiksi .NET ja React, tietokantana SQL Server tai PostgreSQL. Jos sinulla on oma toive tai talossa on jo jokin tekniikka, mennään sillä. Vanha data säilyy.

ESIMERKKI · asiakastyö

Access-sovellus kuormakirjaukseen ja laskutukseen: kanta ja lomakkeet uusiksi, raportit säilyivät

20
lomaketta toteutettiin uudelleen WinFormsilla samaan työnkulkuun kuin ennen.
30
raporttia jäi Accessiin ja lukee nyt suoraan SQL Serveriä. Niitä ei tarvinnut tehdä uusiksi.
1 milj.+
kuormakirjausriviä siirrettiin SQL Serveriin. Vasteajat pysyivät tiukkojen vaatimusten sisällä.

Access-sovellus, jolla kirjattiin kuormat ja hoidettiin laskutus, ja jonka päällä oli kolmisenkymmentä raporttia. Dataa oli kertynyt paljon, ja Access-kanta oli tullut kokonsa ja käyttäjämääränsä puolesta rajoilleen. Kirjauksilla oli tiukat vasteaikavaatimukset, joten vaihtoehtoja ei ollut montaa.

Tietokanta muunnettiin SQL Serverille ja lomakkeet toteutettiin uudelleen WinFormsilla. Raportit jätettiin Accessiin ja ohjattiin lukemaan uutta kantaa, koska ne toimivat hyvin eikä niiden uusiminen olisi tuonut asiakkaalle mitään. Tämä on se osittainen siirto, josta puhun: uusitaan se, mikä on rikki tai rajoittaa, ja säilytetään se, mikä toimii.

Hyvä tietää ennen kuin annat ohjelmasi käsiini

Tekoäly tekee ison osan työstä, ei päätöksiä

Käytän tekoälyä koodin lukemiseen, toteutukseen ja tarkistuksiin. Oikeellisuuden mittari on silti vanhan ohjelman todellinen tulos ja sinun vahvistuksesi.

Missä koodisi ja datasi käsitellään

Sovitaan kirjallisesti ennen aloitusta. Tuotantodataa en lähetä malleille; testaus tehdään anonymisoidulla aineistolla. Suljettu käsittely onnistuu myös.

Jos yhden hengen toimittaja ei ole käytettävissä

Lähdekoodi luovutetaan joka vaiheen päätteeksi. Valitut tekniikat pyritään pitämään yleisinä, joten ohjelmaa voi jatkokehittää kuka tahansa niiden osaaja.

TOINEN PALVELU · vibe-koodattu → tuotantoon

Tekoälyllä tehty sovellus tuotantokuntoon

Sovellus on tehty Lovablella, Boltilla, Cursorilla tai ChatGPT:n avulla ja on jo käytössä, mutta tietoturva, data ja ylläpito huolestuttavat. Katselmoin sen kiinteällä hinnalla ja korjaan vaarallisimmat asiat ensin, ilman että tehtyä heitetään pois.

  • →salaiset avaimet pois selaimesta
  • →jokainen käyttäjä näkee vain omat tietonsa
  • →varmuuskopiot ja virheiden seuranta
  • →erillinen kehitysympäristö ja hallittu julkaisu

Muut palvelut

Web-sovellukset.NET, React, Node.js, TypeScript, Java, REST-rajapinnat.
TyöpöytäsovelluksetWinForms, WPF, WinUI, Tauri.
MobiilisovelluksetAndroid ja React Native.
TietokannatSQL Server, PostgreSQL, Oracle, MySQL. Suunnittelu, optimointi, migraatiot.
ArkkitehtuurisuunnitteluUuden järjestelmän tai integraation rakenne ennen toteutusta.
KoodikatselmoinnitRiippumaton arvio myös tekoälyllä tuotetusta koodista ennen tuotantoa.

Kuka tekee

Jussi Koistinen. Ohjelmistoja yli 20 vuotta, Delphistä ja VB:stä .NETiin, Reactiin, Node.js:ään ja mobiiliin, sekä isoja tietokantoja Oraclesta SQL Serveriin ja PostgreSQL:ään. Ison osan urasta olen käyttänyt muiden tekemien järjestelmien ymmärtämiseen ja uusimiseen. Jkodez Innovations Oy on yhden hengen yritys Kuopion seudulta, töitä koko Suomeen.

Soita, niin katsotaan tilanne.

Riittää, että kerrot, mitä ohjelmalla tehdään ja mikä huolestuttaa. Lähdekoodia ei tarvita vielä.

040 721 3761info@jkodez.com