Pillar-sivu

Ohjelmistokehitys tekoälyllä

Todistettu prosessi ohjelmistokehityksen automatisointiin tekoälyagenttien tiimin kanssa — vaatimusten analyysistä koodaukseen ja monikerroksiseen testaukseen (unit, integraatio, E2E, security, performance) aina tuotantokäyttöönottoon täydellisellä audit-jäljellä.

Toiminnassamme on erikoistuneiden tekoälyagenttien tiimi, joka osallistuu jokaiseen ohjelmistokehityksen vaiheeseen — vaatimusten analyysistä arkkitehtuurisuunnitteluun, koodaukseen ja monikerroksiseen testaukseen aina code review'hun, dokumentaatioon ja käyttöönottoon täydellisellä audit-jäljellä.

Näin rakennamme omat ESKOM AI -tuotteemme — HybridCrew-moniagenttialustan, Compliance-auditointijärjestelmän, KRS+CRBR-mikropalvelun sekä useita integraatioita. Sovellamme samaa prosessia asiakasprojekteissa: sekä uusien mikropalveluiden rakentamisessa että legacy-järjestelmien modernisoinnissa.

Tämä artikkeli kuvaa, miten se toimii käytännössä: mitkä tehtävät agentit ottavat hoitaakseen, mitkä jäävät ihmisille, mitä testejä ajamme ja miksi tämä prosessi on toistettavissa erilaisissa projekteissa.

Miksi automatisoida ohjelmistokehitystä?

Klassinen ohjelmistokehityssykli (analyysi → koodi → testit → review → deploy) vie tyypillisesti 2-4 viikkoa keskikokoisen ominaisuuden osalta kypsässä tiimissä. Suurin osa tästä ajasta menee toistuviin tehtäviin: boilerplate-koodin kirjoittamiseen, yksikkötestien generointiin, muutosten arvioimiseen, dokumentaation päivittämiseen, tietokantamigraatioiden luomiseen. Kaikki ne soveltuvat automatisointiin.

Prosessimme tavoite on yksinkertainen: kaksi tai kolme ihmistä tekoälyagenttien kanssa tuottaa saman arvon kuin 8-10 hengen tiimi — ilman uupumusta, korkeammalla laadulla (enemmän testejä, parempi code review, kattava dokumentaatio) ja lyhyemmällä time-to-marketilla.

Tämä ei ole „tekoäly korvaa ohjelmistokehittäjät". Tämä on „tekoälyä käyttävät kehittäjät korvaavat ne, jotka eivät käytä tekoälyä". Kokeneet insinöörit pysyvät välttämättöminä — he suunnittelevat arkkitehtuurin, tekevät strategiset päätökset, arvioivat monimutkaiset muutokset. Tekoälyagentit ottavat rutiinin.

Kuusivaiheinen prosessi

Putki vaatimuksista tuotantoon. Jokaisen vaiheen toteuttavat erikoistuneet tekoälyagentit, ja ihmiset valvovat ja hyväksyvät keskeiset päätökset.

1

Vaatimusten analyysi ja arkkitehtuuri

Tekoälyagentit analysoivat liiketoimintadokumentaatiota, asiakaskeskusteluja (transkriptioista) ja olemassa olevaa koodia. Ne ehdottavat mikropalveluarkkitehtuuria, tietokantaskeemaa, endpoint-listaa ja käyttöoikeusmallia. Ihminen (CTO/arkkitehti) arvioi ja hyväksyy ehdotuksen ennen koodauksen aloittamista.

2

Koodin kirjoittaminen (TDD)

Ensin testit, sitten toteutus. Backend-agentti kirjoittaa API:t FastAPI/Express-tekniikoilla, frontend-agentti React-komponentit. Jokainen muutos on erillinen pull request siistillä commit-viestillä. Koodausstandardit (Black, ESLint, Prettier) varmistetaan automaattisesti.

3

Monikerroksinen testaus

Unit (pytest, Jest), integraatio (testcontainers oikealla PostgreSQL:llä), E2E (Playwright), UI snapshot, security (OWASP, gitleaks, bandit), performance (k6/locust), accessibility (axe). Jokainen PR ajaa koko putken — epäonnistunut testi estää mergen.

4

Tekoälyn tekemä code review

SecurityReviewer-agentti skannaa OWASP Top 10 -ongelmia, QualityReviewer-agentti tarkistaa luettavuuden ja kuviot, ArchitectureReviewer-agentti varmistaa yhdenmukaisuuden muun järjestelmän kanssa. Reunatapaukset eskaloidaan ihmisille.

5

Dokumentaatio ja CHANGELOG

Jokainen logiikkamuutos = versionkorotus + merkintä CHANGELOG.md-tiedostoon Keep a Changelog -muodossa. API-dokumentaatio (OpenAPI/Swagger) luodaan automaattisesti. CLAUDE.md päivitetään jokaisen istunnon jälkeen uusilla opetuksilla.

6

Käyttöönotto Change Requestin kanssa

Käyttöönotto kulkee aina Gitin kautta (EI KOSKAAN suora scp). Ensin testiympäristö Playwright-verifikaatiolla, sitten tuotanto CR-hyväksynnän jälkeen. Deploy-skripti sisältää rollback-suunnitelman (<5 min) ja health checkit.

Mitä yritys saa?

Tuhansia automatisoituja testejä

Jokaisella tuotantoprojektilla on muutamasta tuhannesta jopa kymmeniin tuhansiin testeihin — unit, integraatio, E2E, security, performance. Regressiot havaitaan CI:ssä ennen kuin ne saavuttavat käyttäjiä.

Täydellinen audit-jälki

Jokainen muutos koodissa, tietokannassa tai konfiguraatiossa tallennetaan: Git, audit-loki tietokannassa, CHANGELOG, Change Request. Täyttää ISO 27001-, EU AI Act- ja GDPR-vaatimukset.

Tiimin skaalautuvuus

Kaksi tai kolme ihmistä tekoälyagenttien kanssa tuottaa saman arvon kuin 8-10 hengen tiimi. Ilman uupumusta, korkeammalla laadulla ja lyhyemmillä aikatauluilla.

Eskalaatio vahvempiin malleihin

LLM-reititys valitsee oikean mallin jokaiselle tehtävälle: pienet muutokset — paikallinen Ollama (nollakustannus), monimutkainen arkkitehtuuri — Claude Opus. Kustannusten ja laadun optimointi yhdessä.

Toistettavuus ja standardit

Jokainen projekti noudattaa samoja standardeja: feature branch workflow, squash merge, Conventional Commits, CHANGELOG, EU AI Act, GDPR. Uusi kehittäjä ymmärtää rakenteen ensimmäisenä päivänä.

Turvallisuus oletusarvoisesti

Gitleaks pre-commitissä + CI:ssä, salaisuudet HashiCorp Vaultissa, yksityiset repositoriot, Keycloak SSO, Tailscale VPN sisäisille palveluille. Ei kompromisseja nopeudesta.

Monikerroksinen testaus — laadun perusta

Jokainen muutos tuotantokoodissa käy läpi täydellisen testiputken. Ei poikkeuksia — jopa kirjoitusvirheen korjaaminen kommentissa käynnistää CI:n, koska testiputki on pakotettu Git hookilla, ei kehittäjän poliittisella päätöksellä.

  • Yksikkötestit (unit): pytest, Jest, vitest. Kattavat yksittäisiä funktioita ja luokkia. >80 % kattavuus kriittisellä koodilla.
  • Integraatiotestit: testcontainers oikeilla PostgreSQL-, Redis- ja Vault-instansseilla. Mockit vain ulkoisille kolmannen osapuolen API:lle.
  • End-to-end-testit (E2E): Playwright Firefoxissa (oletus), Chromessa (valinnainen). Simuloivat täydellisiä käyttäjäpolkuja: kirjautuminen → toiminto → varmistus.
  • UI-testit (snapshot, accessibility): Playwright + axe-core. WCAG 2.0 AA perusteena, Lighthouse 100/100/100/100 tavoitteena.
  • Turvallisuustestit: OWASP Top 10 (semgrep, bandit, eslint-plugin-security), gitleaks (salaisuuksien skannaus pre-commitissä ja CI:ssä), trivy (Docker-imagejen skannaus).
  • Suorituskykytestit: k6 tai locust kuormatesteille, p95/p99-vasteaikojen tarkistus kuormituksen alla.
  • Regressiotestit: täysi sviitti ajetaan ennen jokaista tuotantokäyttöönottoa. Jokainen raportoitu bugi muunnetaan regressiotestiksi.
  • Smoke-testit: minimaalinen 5-10 testin setti, joka ajetaan tuotantokäyttöönoton jälkeen (lähtikö sovellus ylipäätään käyntiin).
  • Hyväksymistestit: liiketoimintatestit (Cucumber/Gherkin), jotka vahvistavat vaatimuksen täyttymisen.

Epäonnistunut testi = estetty merge. Ei poikkeuksia. Jos testi on „flaky" (epävakaa), diagnostinen agentti analysoi juurisyyn ja korjaa testin tai koodin, mutta ei koskaan poista testiä ilman ihmisen päätöstä.

Tyypilliset käyttötapaukset

Kuviot, joita sovellamme useimmin. Jokainen tulee oman agenttisetin, työkalujen ja sapluunoiden kanssa. Time-to-value mitataan viikoissa, ei kuukausissa.

Legacy-järjestelmän modernisointi

  • Vanha monoliittinen sovellus (PHP/.NET, ei testejä, vaikea ylläpitää)
  • Agentit hajottavat monoliitin mikropalveluiksi (inkrementaalisesti, ilman katkoa)
  • Generoivat karakterisointitestit (nykyisen käyttäytymisen kaappaus) ennen refaktorointia
  • Tietomigraatio täydellisellä audit-jäljellä ja rollback-suunnitelmalla

Uusi enterprise-mikropalvelu

  • Spesifikaatio syötteenä (Jira-tiketti, PRD, palaverin transkripti)
  • Arkkitehtuuri → koodi → testit → review → deploy 2-3 viikossa
  • Integraatio olemassa olevaan SSO:hon (Keycloak), audit-lokiin, monitorointiin
  • Täysi EU AI Act- ja GDPR-yhteensopivuus ensimmäisestä päivästä alkaen

Järjestelmäintegrointi

  • ERP-, CRM-, KRS-, Microsoft Graph-, IBM-, Cisco- ja ulkoisten kumppaneiden yhdistäminen
  • Agentit kirjoittavat adapterit, mappaukset, retry/backoff-logiikan, idempotenttisuuden
  • Integraatiotestit oikeilla endpointeilla (sandbox API:t)
  • Monitorointi (Prometheus + Grafana) ja hälytykset (Sentry) kytketään automaattisesti

Multi-tenant-alustat

  • Moniasiakkainen SaaS täydellisellä tietojen eristyksellä (per-tenant schema tai row-level security)
  • Automatisoitu asiakkaan onboarding (Keycloak-provisioning, tietokanta, roolit)
  • Laskutus SSO Billing SDK:n pohjalta (token-käytön seuranta, fail-open)
  • Compliance: GDPR, ISO 27001, EU AI Act audit-valmis

Vertailu: klassinen tiimi vs. tekoälyvetoinen prosessi

AspektiKlassinen tiimi (8-10 henkilöä)Tiimi tekoälyagenteilla (2-3 henkilöä)
Time-to-market (keskimääräinen ominaisuus)2-4 viikkoa3-7 päivää
Testikattavuus40-60 % (jos tiimillä on aikaa)>80 % oletuksena (testit luodaan koodin rinnalla)
Code review1 henkilö, keskimäärin 30-60 min3 agenttia (security, quality, architecture) + ihminen monimutkaisissa muutoksissa
DokumentaatioUsein epätäydellinen, „myöhemmin lisätty"Generoidaan koodin rinnalla (OpenAPI, README, CHANGELOG)
Audit-jälkiGit-historiaGit + audit-loki tietokannassa + CHANGELOG + Change Request
SkaalautuminenLineaarinen (enemmän ihmisiä = korkeammat viestintäkustannukset)Ei-lineaarinen (enemmän agentteja = sama määrä valvovia ihmisiä)
Compliance (EU AI Act, GDPR, ISO 27001)Usein ulkoinen audit jälkikäteenSisäänrakennettu prosessiin ensimmäisestä päivästä alkaen

Usein kysytyt kysymykset

Mikä on automatisoitu ohjelmistokehitys tekoälyllä?
Se on prosessi, jossa erikoistuneet tekoälyagentit osallistuvat jokaiseen ohjelmistokehityksen vaiheeseen: vaatimusten analyysistä arkkitehtuurisuunnitteluun, koodaukseen, automatisoituihin testeihin (unit, integraatio, E2E, security, performance, regression), aina code review'hun ja tuotantokäyttöönottoon. Ihmiset valvovat edelleen prosessia ja tekevät keskeiset päätökset, mutta rutiinitehtävät (koodin kirjoittaminen, testien generointi, refaktorointi, dokumentaatio) suorittavat tekoälyagentit sovittujen laatustandardien mukaisesti.
Miten tämä eroaa klassisesta Copilot-ohjelmoinnista?
Copilot on automaattitäydennystä — se auttaa kirjoittamaan yksittäisiä koodirivejä. Ohjelmistokehitys tekoälyllä on täyttä orkestrointia: yksi agentti suunnittelee arkkitehtuurin, toinen kirjoittaa koodin, kolmas testit, neljäs tekee code review'n, viides käyttöönottaa. Jokaisella on oma erikoistumisensa, episodimuistinsa (oppii aiemmista projekteista), työkalunsa ja kontekstinsa. Tulos: huomattavasti suurempi automaatiotason skaalaus kuin yksittäisellä Copilotilla, samalla säilyttäen enterprise-tason standardit (testit, security, audit-jälki).
Mitä testityyppejä tämä prosessi ajaa?
Kaikki testit, joita kypsät kehitystiimit käyttävät: yksikkö-, integraatio-, end-to-end (E2E)-, UI- (Playwright), turvallisuus- (OWASP Top 10, gitleaks), suorituskyky- (load), regressio-, smoke- ja hyväksymistestit. Testit kirjoitetaan ennen koodia tai sen rinnalla (TDD), ja jokaisen muutoksen on läpäistävä koko putki.
Käyttöönottaako tekoäly koodin tuotantoon itsenäisesti?
Ei — ei automaattisesti. Tuotantokäyttöönotot edellyttävät hyväksyttyä Change Requestia (CR) ja ihmisen päätöstä. Tekoälyagentit valmistelevat muutosdokumentaation, ajavat regressiotestit, generoivat deploy-skriptit rollback-suunnitelmineen, mutta lopullinen tuotantokäyttöönotto edellyttää operaattorin hyväksyntää. Tämä sääntö on tarkoituksellinen — se minimoi odottamattomien seurausten riskin ja säilyttää täydellisen audit-jäljen.
Toimiiko tämä prosessi enterprise-projekteissa?
Kyllä. Käytämme sitä omissa tuotteissamme, mukaan lukien HybridCrew-moniagenttialusta, konsultointialusta SSO:lla, PostgreSQL-pohjaiset mikropalvelut, integraatiot ulkoisiin järjestelmiin (KRS, MS Graph, IBM, Keycloak). Jokaisella projektilla on oma CI/CD-putki, dev/test/prod-ympäristöt, monitorointi ja audit-loki. Prosessi skaalautuu yksittäisestä mikropalvelusta monikonttinen alustaan.
Kuinka kauan kestää ottaa tämä prosessi käyttöön yrityksessämme?
Riippuu kontekstista. Pienelle tiimille (1-3 kehittäjää) integraatio olemassa olevaan repositorioon ja CI/CD-putkeen vie tyypillisesti 2-4 viikkoa: auditointi, agenttien konfigurointi, yhteensovittaminen koodausstandardien kanssa, koulutus. Isommille organisaatioille pilottiprojektit (yksi tiimi, yksi mikropalvelu) kestävät 6-8 viikkoa, minkä jälkeen seuraa asteittainen laajentaminen muihin tiimeihin.
Entä lähdekoodin turvallisuus?
Asiakkaan repositoriot eivät koskaan päädy ulkoisiin palveluihin ilman nimenomaista suostumusta. Oletuksena koko prosessi (tekoälyagentit, LLM-mallit, vektoritietokanta, audit-loki) toimii asiakkaan infrastruktuurissa tai ESKOM AI:n yksityisessä pilvessä täydellisellä eristyksellä. Salaisuuksia hallitaan HashiCorp Vaultin kautta, koodi skannataan gitleaksilla ennen jokaista commitia, ja kaikki repositoriot ovat oletuksena yksityisiä.
Korvaatteko kehitystiimimme?
Ei. Kokeneet kehittäjät ovat välttämättömiä — he suunnittelevat arkkitehtuurin, tekevät päätökset, arvioivat monimutkaiset muutokset, ratkaisevat poikkeustapaukset. Tekoälyagentit ottavat hoitaakseen toistuvat, automaatioon soveltuvat tehtävät: boilerplate-koodin kirjoittaminen, testien generointi, dokumentaatio, refaktorointi, ensiarvioinnin tekeminen code review'ssä. Tavoite: kaksi tai kolme ihmistä tekoälyn kanssa tuottaa saman arvon kuin 8-10 hengen tiimi — ilman uupumusta, korkeammalla laadulla ja täydellisellä audit-jäljellä.
Mitä ohjelmistokehitys tekoälyllä maksaa?
Hinnoittelu on aina projektikohtaista ja riippuu mittakaavasta, laskutusmallista (alustatilaus vs. dedikoitu projekti), tarvittavista integraatioista sekä siitä, ajavatko agentit paikallisia LLM-malleja (Ollama asiakkaan GPU:lla — alemmat operatiiviset kustannukset) vai pilvessä (Anthropic, OpenAI — korkeampi joustavuus). Piloteissa pyrimme saavuttamaan sijoitetun pääoman tuoton ensimmäisen vuosineljänneksen aikana täydestä käyttöönotosta.
Mitkä ovat tyypilliset merkit siitä, että yritys on valmis tähän prosessiin?
Parhaat tulokset saavat tiimit, joilla on jo: versionhallinnassa oleva repositorio (Git), määritellyt koodausstandardit, perustason CI/CD-putki, selkeästi dokumentoidut vaatimukset (Jira/Linear/oma) ja code review -kulttuuri. Yhdenkin puuttuminen ei estä käyttöönottoa — aloitamme silloin auditoinnista ja perustusten rakentamisesta. Vähiten kypsiä ovat organisaatiot, joilta puuttuu versionhallinta tai joilla on tuotantokoodia, jota kukaan ei testaa.

Valmis pilottiin?

Aloitamme olemassa olevan prosessin auditoinnista ja pilotista valitulla mikropalvelulla. Ensimmäiset tulokset näkyvissä 2-4 viikossa. Ei pitkäaikaisia sopimuksia vaadita.