Useimmat puolustusohjelmistohankinnat panostavat merkittävästi hankintavaiheeseen — tekniseen arviointiin, lähteen valintaan ja sopimuksen myöntämiseen — ja pitävät ylläpitosopimusta toissijaisena paperityönä. Tämä on takaperin. Hankintapäätös määrittää, mitä ostat. Ylläpitosopimus määrittää, voitko käyttää sitä viiden vuoden kuluttua, onko sinulla oikeudellista turvaa, kun toimittaja lopettaa tuen, ja selviytyykö ohjelmasi toimittajan maksukyvyttömyydestä menettämättä operatiivista kykyä.

Vuonna 2026 hankittu puolustusohjelmistojärjestelmä on todennäköisesti edelleen käytössä vuonna 2036 tai 2040. Ohjelmiston kirjoittanut toimittaja on saattanut tulla ostetuksi, siirtynyt eri markkinoille tai lopettanut toimintansa kokonaan. Ohjelmistoon on kertynyt CVE-haavoittuvuuksia. Sen käyttöjärjestelmä on käynyt läpi useita elinkaaren päättymisjaksoja. Ohjelmiston rakentanut insinööritiimi on vaihtunut. Mikään tästä ei ole poikkeuksellista — se on yksinkertaisesti sitä, mitä tapahtuu 15 vuoden ohjelmaelinkaarella. Hyvin rakennettu puolustusohjelmiston ylläpitosopimus on mekanismi, joka pitää operatiivisen kyvyn ehjänä kaiken tämän läpi.

Miksi ylläpitosopimukset epäonnistuvat puolustusohjelmissa

Kaupalliset ohjelmiston ylläpitosopimukset on suunniteltu lyhytikäisille SaaS-tuotteille, joissa toimittaja hallitsee ympäristöä ja asiakas voi vaihtaa palveluntarjoajaa viikkojen kuluessa. Puolustusohjelmat jakavat lähes mitään näistä ominaisuuksista. Järjestelmät ovat luokiteltuja tai toimivat ilmarakotuissa ympäristöissä, joihin kolmannen osapuolen ylläpitotoimittajat eivät voi yksinkertaisesti päästä tuotantoinstanssiin. Korvausaikataulut mitataan vuosissa, ei viikoissa. Ohjelmistoa on saatettu muokata niin laajasti, että se muistuttaa enää vähän toimittajan kaupallista tuotetta.

Tuloksena on, että tavalliset kaupalliset ylläpitosopimukset epäonnistuvat puolustusohjelmissa ennakoitavilla tavoilla. Ne eivät määrittele vakavuusluokkia, jotka vastaavat operatiivista todellisuutta. Ne eivät käsittele kolmansien osapuolten riippuvuuksien haavoittuvuuksien tietoturvakorjausaikatauluja. Ne eivät vaadi toimittajaa ylläpitämään vanhempia versioita ohjelman päivitystestauksen aikana. Ne eivät sisällä lähdekoodiescrow-säännöksiä, jotka sallisivat ohjelman jatkumisen, jos toimittaja katoaa. Ja ne sisältävät irtisanomissäännöksiä, jotka tekevät siirtymisen korvaavaan järjestelmään käytännössä mahdottomaksi.

Näiden epäonnistumismuotojen ymmärtäminen ennen sopimuksen luonnostelua on lähtökohta oikeiden ehtojen saavuttamiseksi.

SLA-rakenne: vakavuusluokat ja vasteikkunat

Yleisin puhe puolustusohjelmiston ylläpitosopimusten puute on yksittäinen, eriyttämätön tukitaso, jossa on epämääräinen vasteaikasitoumus. Järjestelmä, joka tarjoaa tilannetietoisuutta käyttöönotetulle yksikölle, tarvitsee perustavanlaatuisesti erilaisen vasteaitousitumuksen, kun se menee täysin offline-tilaan, kuin silloin, kun raportin vientitoiminto tuottaa väärän päivämäärän. Molempien käsitteleminen samalla prioriteettitasolla joko ylimaksaa triviaaleista ongelmista tai alisuojaa todellisia operatiivisia vikoja vastaan.

Hyvin rakennettu puolustusohjelmiston SLA määrittelee vähintään kolme vakavuustasoa.

P1 — kriittinen

P1 koskee tilanteita, joissa järjestelmä on täysin poissa käytöstä, tietojen eheys on vaarassa tai tietoturvahaavoittuvuutta hyödynnetään aktiivisesti. Sopimuksen tulisi määritellä alkuvaste — eli pätevä insinööri on osallistunut ja kuitannut ongelman — yhden tai kahden tunnin kuluessa. Korjaus tai dokumentoitu kiertotapa tulisi toimittaa neljästä kahdeksaan tunnin kuluessa. P1-SLA:iden on käytävä 24/7-pohjalta ilman poikkeuksia viikonloppuihin, juhlapyhiin tai aikavyöhyke-eroihin. Sopimuksessa tulisi nimetä eskalointikontaktit — ei pelkästään tukijonoa — ja määritellä, että P1-eskalointi ohittaa vakiovastaanottoprosessit.

P2 — merkittävä

P2 koskee tilanteita, joissa merkittävä toimintakyky on heikentynyt, mutta järjestelmä on osittain toiminnassa ja kiertotapa on olemassa. Alkuvaste neljän tunnin kuluessa, ratkaisu 24–48 tunnin kuluessa. P2-SLA:iden tulisi myös käydä jatkuvasti, ei vain virka-aikana, koska heikentynyt operatiivinen kyky kumuloituu nopeasti käyttöönotetussa ympäristössä.

P3 — vähäinen

P3 kattaa viat, joilla on vähäinen operatiivinen vaikutus — virheellinen näyttötulos, ei-kriittiset raporttivirheet, kosmetiset ongelmat. Kuittaus yhden työpäivän kuluessa, ratkaisu sisällytetty seuraavaan suunniteltuun ylläpitojulkaisuun. P3 on ainoa luokka, jossa virka-aikojen mittaaminen on asianmukaista.

Vasteikkunoiden lisäksi sopimuksessa tulisi määritellä korjaustiedostojen toimitusaikataulut erillään yleisistä vikojen korjauksista. Korjaustahti tulisi määritellä suunniteltujen ylläpitojulkaisujen väliseksi enimmäisväliksi — 90 päivää on yleinen vertailuarvo puolustusjärjestelmille — ja säännös kriittisten tietoturvahaavoittuvuuksien hätäkorjaustiedostoille aikataulun ulkopuolella.

Lähdekoodiescrow: jatkuvuuden suojaaminen toimittajariskiä vastaan

Lähdekoodiescrow on yksittäinen eniten hyödyntämätön lauseke puolustusohjelmistosopimuksissa. Se on myös se, jonka puuttuminen luo akuuteimmat seuraukset. Kun puolustusohjelmiston toimittaja ostetaan kilpailijalle, joka lopettaa tuotteen, tai yksinkertaisesti kaatuu yrityksenä, ohjelma ilman escrow-säännöksiä menettää kyvyn rakentaa, muokata tai itsenäisesti ylläpitää omaa ohjelmistoaan. Luokitellussa ympäristössä, jossa seuraavalla toimittajalla ei ole pääsyä toimittajan alkuperäiseen kehitysympäristöön, tämä ei ole palautettavissa oleva tilanne ilman vuosien uudelleenh ankintaponnistusta.

Escrow-järjestely edellyttää, että toimittaja tallettaa ohjelmiston lähdekoodin, build-skriptit, testisarjat, kolmannen osapuolen riippuvuusluettelot ja ympäristömäärittelyt riippumattomalle, akkreditoidulle escrow-säilytyspalvelulle. Talletus pidetään säilyttäjän hallinnassa ja vapautetaan hankintaorganisaatiolle vain, kun määritellyt laukaisuehdot täyttyvät.

Escrow-laukaisuehtojen määrittely

Laukaisuehtojen on oltava riittävän tarkkoja, jotta ne ovat objektiivisesti todennettavissa. Vakiolaukaisuehdot sisältävät: toimittajan maksukyvyttömyyden tai konkurssin; toimittajan ostamisen kilpailijalle, joka lopettaa tuotteen; toimittajan kirjallisen ilmoituksen tuotteen elinkaaren päättymisestä; ja minkä tahansa jatkuvan 12 kuukauden jakson, jonka aikana toimittaja ei toimita ylläpitojulkaisuja. Epämääräiset ehdot — "toimittaja lopettaa tuotteen tukemisen" — johtavat kiistoihin, kun juuri niin tapahtuu. Ehtojen on oltava sellaisia, että ne voidaan aktivoida ilman toimittajan suostumusta.

Escrow-käytettävyyden varmentaminen

Escrow-talletus, joka ei tuota toimivaa buildia, on arvoton. Sopimuksen on edellytettävä vuosittaista escrow-varmennusta: riippumaton build-testi, jossa tallennettujen materiaalien avulla toistetaan ohjelmisto puhtaassa ympäristössä. Hankintaorganisaatio tai nimetty kolmas osapuoli tarkastaa tuloksen. Toimittajia, jotka eivät läpäise escrow-varmennusta vuosittain, tulisi pitää ylläpitosopimuksen rikkomuksessa. Escrow ei ole säilytyspalvelu — se on jatkuvuusmekanismi, ja se toimii vain, jos talletus on todistettavasti rakennettavissa.

Tietoturvakorjausvelvoitteet ja CVE-vaste

Useimpien kaupallisten ohjelmiston ylläpitosopimusten tietoturvakorjausvaatimukset on kirjoitettu yritystietotekniikkaympäristöille, joissa päivitykset voidaan testata ja ottaa käyttöön viikoittain. Puolustusohjelmat eivät voi tehdä tätä. Tietoturvakorjaustiedoston testaaminen luokitellussa ympäristössä ennen käyttöönottoa voi kestää neljästä kuuteen viikkoa. Käyttöönotto hajautetussa, ilmarakotussa verkossa vie lisää aikaa. Ylläpitosopimuksen on otettava huomioon tämä epäsymmetria.

Lähtökohta on sitoa korjaustiedostojen toimitusvelvoitteet CVSS-vakavuuspisteisiin. Realistinen lähtötaso puolustusohjelmiston ylläpidolle: CVSS 9,0–10,0 (kriittinen) edellyttää toimittajan ilmoitusta 24 tunnin kuluessa julkisesta tiedottamisesta ja korjaustiedostoa tai dokumentoitua lieventämistä 72 tunnin kuluessa. CVSS 7,0–8,9 (korkea) edellyttää korjaustiedostoa 14 päivän kuluessa. CVSS 4,0–6,9 (keskitaso) sallii enintään 45 päivää. CVSS alle 4,0 sisällytetään seuraavaan suunniteltuun ylläpitojulkaisuun.

Yhtä tärkeä on vaatimus ennakoivasta zero-day-ilmoituksesta. Jos toimittaja saa tietää ohjelmistossa olevasta hyödynnetystä haavoittuvuudesta ennen sen julkistamista — oman tapausvasteen, asiakasraportin tai minkä tahansa muun kanavan kautta — ylläpitosopimuksen tulisi velvoittaa heidät ilmoittamaan hankintaorganisaation nimetylle turvallisuuskontaktille 24 tunnin kuluessa. Tämä on epästandardi lauseke, jota toimittajat vastustavat. Siitä ei pidä luopua neuvotteluissa.

Sopimuksen tulisi myös edellyttää toimittajaa ylläpitämään ajantasaista ohjelmiston komponenttiluetteloa (SBOM) — täydellinen inventaario tuotteeseen sisältyvistä kolmansien osapuolten kirjastoista, viitekehyksistä ja riippuvuuksista. CVE:t kolmansien osapuolten riippuvuuksissa muodostavat suurimman osan hyödynnettävistä haavoittuvuuksista useimmissa puolustusohjelmistojärjestelmissä. Ilman SBOM:ia hankintaorganisaatio ei voi itsenäisesti seurata toimittajan altistumista tai varmistaa, että korjausvelvoitteita noudatetaan. SBOM:n päivittäminen jokaisen ylläpitojulkaisun yhteydessä on kohtuullista ja teknisesti suoraviivaista kenelle tahansa toimittajalle, jolla on nykyaikainen build-putkilinja.

Irtisanomis- ja siirtymäsäännökset

Siirtymäsäännökset ovat lausekkeita, jotka määrittävät, onko järjestyksenmukainen siirtyminen korvaavaan järjestelmään mahdollista. Ne ovat myös niiden joukossa, jotka poistetaan useimmin sopimusneuvottelujen aikana, koska toimittajalla ei ole intressiä helpottaa omaa korvaamistaan. Hankintatiimit, jotka hyväksyvät niukat irtisanomissäännökset, maksavat tästä vuosia myöhemmin, kun siirtymiskustannukset paisuvat ja ohjelmat ovat vangin asemassa suhteessa nykyisen toimittajan yhteistyöhön.

Täydellinen irtisanomis- ja siirtymisviitekehys käsittelee neljää aluetta.

Tietojen siirrettävyys. Kaikki järjestelmän tuottamat toiminnalliset tiedot — jäljityshistoriat, tehtävälokit, konfigurointitilat, johdetut tiedustelutuotteet — on voitava viedä dokumentoiduissa, avoimen standardin muodoissa määritetyn ikkunan sisällä sopimuksen päättymisen jälkeen, yleensä 30–90 päivää. Sopimuksen tulisi määritellä formaatit nimenomaisesti: jos CSV ja JSON ovat hyväksyttäviä, kirjoita ne sopimukseen. "Vakioformaatit" ei ole riittävän tarkka ollakseen täytäntöönpanokelpoinen.

Siirtymistuki. Toimittajan on tarjottava aktiivista teknistä tukea integraatiolle tai siirtymiselle korvaavaan järjestelmään määritetyn päällekkäisjakson ajan — kuusi tai kaksitoista kuukautta on vakioalue monimutkaisille puolustusohjelmistoille. Tähän sisältyy teknisten kysymysten vastaaminen korvaavan toimittajan puolesta, API-dokumentaation toimittaminen, joka ei ehkä ole julkisessa tuotedokumentaatiossa, ja tiedonsiirtovalidoinnin avustaminen.

Osaamisen siirto. Toimittajan on toimitettava päivitetty tekninen dokumentaatio — arkkitehtuurikaaviot, käyttöönotto-ohjeet, konfigurointiohjeet — ja tarjottava vähintään määritelty tuntimäärä teknistä koulutusta seuraavalle toimittajalle tai sisäiselle tiimille. "Dokumentaatio" on määriteltävä: mitkä asiakirjat, millä versiolla, missä muodossa. Osaamisen siirron toimitukset tulisi luetella sopimuksen rivinä, joilla on hyväksymiskriteerit, ei kuvailla yleisluonteisesti.

Lisenssin jatkuvuus. Kaikkien toiminnallisten tietojen, johdettujen analyyttisten tuotteiden, koulutettujen mallipainojen, jos tekoälykomponentteja on olemassa, ja konfigurointiartefaktien lisenssien on säilyttävä sopimuksen päätyttyä. Tämä on erityisen tärkeää järjestelmille, jotka kerryttävät operatiivista arvoa ajan myötä — seurantafuusiojärjestelmä, jonka fuusiomallit on koulutettu operatiivisella datalla, edustaa merkittävää investointia, joka kuuluu hankintaorganisaatiolle, ei toimittajalle.

Suoritustakuut ja saatavuus-SLA:t

Missiokriittisen puolustusohjelmiston saatavuus-SLA:t edellyttävät huomattavasti enemmän tarkkuutta kuin yksinkertainen käyttöaikaprosentti. 99,9 %:n saatavuussitoumus kuulostaa vahvalta, mutta sallii lähes yhdeksän tuntia käyttökatkoa vuodessa — joka yhteen tapahtumaan keskittyneenä väärällä hetkellä voi aiheuttaa vakavia operatiivisia seurauksia. Tärkeämpää on, että saatavuuslauseke ilman määriteltyä mittausmenetelmää on käytännössä täytäntöönpanokelvottomaksi.

Mittausmenetelmän on määriteltävä, mikä muodostaa käyttökatkoksen, miten sitä seurataan ja miten se varmennetaan. "Käyttökatko" tulisi määritellä palveluvaikutuksen perusteella — lasketaanko järjestelmä, joka on heikentynyt 30 prosenttiin normaalista läpäisykyvystä, "saatavilla olevaksi"? — ei järjestelmän tilan perusteella. Mittauksen tulisi olla jatkuvaa ja automatisoitua, ei toimittajan raportoimaa. Sopimuksessa tulisi määritellä, kenellä on pääsy saatavuusmittareihin ja miten raportoitujen lukujen kiistat ratkaistaan.

Sanktiolausekkeiden on luotava todellinen taloudellinen kannustin SLA-tavoitteiden saavuttamiseksi. Palveluhyvitykset 5–15 % kuukausittaisesta sopimusarvosta per saatavuus-SLA-rikkomuksen prosenttipiste ovat kohtuullinen alue. Seuraamusrakenteen tulisi eskaloitua toistuvista rikkomuksista peräkkäisinä jaksoina — toimittajalla, joka jatkuvasti jää hieman vajaaksi maksaen samalla hyvityksiä, on vähemmän kannustinta investoida luotettavuuteen kuin toimittajalla, joka kohtaa eskaloituvia taloudellisia seurauksia.

Sopimuksen tulisi myös vaatia kirjallinen korjaussuunnitelma viiden työpäivän kuluessa kaikista P1 SLA -rikkomuksista. Suunnitelman on dokumentoitava perussyy, toteutettu korjaava toimenpite ja ehkäisevät toimenpiteet, joita otetaan käyttöön toistumisen välttämiseksi. Korjaussuunnitelmat palvelevat kahta tarkoitusta: ne luovat kirjanpidon ohjelman valvonnalle ja antavat hankintaorganisaatiolle varhaisen varoituksen systeemisistä luotettavuusongelmista ennen niiden kumuloitumista.

Ilmarakotuissa tai heikentyneen yhteyden ympäristöissä toimiville järjestelmille saatavuus-SLA-viitekehys tarvitsee erillisen heikentyneen tilan määrittelyn. Mikä on järjestelmän odotettu käyttäytyminen, kun yhteys keskuspalveluihin ei ole käytettävissä? Mikä on pisin autonominen käyttöjakso? Nämä eivät ole vakiokysymyksiä saatavuus-SLA:lle — ne edellyttävät puolustuskohtaista liitettä ylläpitosopimukseen, joka määrittelee operatiiviset rajat realistisissa kenttäolosuhteissa.

Lisätietoja toimittajien arvioinnista ennen sopimuksen myöntämistä — mukaan lukien tuen kapasiteetin ja pitkäaikaisen elinkelpoisuuden arvioiminen ennen ylläpitosopimuksen allekirjoittamista — löytyy oppaastamme puolustusohjelmiston toimittaja-arvioinnista. Laajempaa hankintaelinkaarta varten, mukaan lukien ylläpitosäännösten sijoittuminen koko sopimusrakenteeseen, puolustushankinnan RFP:stä sopimukseen -opas kattaa koko prosessin.

EOL-ilmoitusajat ja versiontukiikkunat

Puolustusohjelmat eivät voi absorboida 90 päivän ilmoitusaikaa tuotteen elinkaaren päättymiselle. Hankintasykli korvaavan järjestelmän tunnistamiseksi, arvioimiseksi ja sopimiseksi kestää 12–24 kuukautta useimmissa puolustusympäristöissä. Ylläpitosopimus, joka sallii toimittajan lopettaa tuen 90 päivän ilmoituksella, jättää ohjelman mahdollisesti ilman tukea lähes kahden vuoden ajan. Missiokriittisen puolustusohjelmiston elinkelpoisin vähimmäis-EOL-ilmoitusaika on 24 kuukautta — riittävästi aikaa kilpailullisen korvaushankinnon suorittamiseen.

Versiontukiikkunat ovat siihen liittyvä ja usein laiminlyöty asia. Puolustusohjelmat eivät usein voi päivittää toimittajan haluamalla aikataululla. Sääntelyuudelleenakkreditointi, integraatiotestaus luokitelluissa ympäristöissä ja uuden version validointiin tarvittava insinöörityö voivat lykätä päivitysaikatauluja 12–18 kuukautta toimittajan GA-julkaisun jälkeen. Ylläpitosopimuksen on määriteltävä, kuinka monta aiempaa pääversiota toimittaja tukee samanaikaisesti ja kuinka kauan uuden pääversion julkaisemisen jälkeen. Kaksi aiempaa pääversiota ylläpidettynä 24 kuukautta julkaisun jälkeen on puolustettava lähtötaso monimutkaisille puolustusohjelmistoille.

Corvus Intelligencen lähestymistapa pitkäaikaiseen tukeen

Corvus Intelligence suunnittelee puolustusohjelmistotuotteensa pitkän aikavälin tuki ensiluokkaisena vaatimuksena — ei jälkiajatuksena. Ylläpitosopimuksemme on rakennettu strukturoitujen vakavuusluokkien, SBOM-tuetun tietoturvakorjauksen, sopimusperusteisen lähdekoodiescrow:n ja siirtymäsäännösten varaan, jotka asettavat hankintaorganisaation jatkuvuuden toimittajan lukituksen edelle.

Tutustu Corvus Intelligenceen →