Request for information (RFI) Integrasjonsplattform Trondheim kommune Trondheim kommune har initiert et prosjekt for å etablere en ny integrasjonsplattform TIP (Trondheim kommune Integrasjons Plattform). Prosjektet omfatter etablering av infrastruktur, miljø og drift for enklere å integrere applikasjoner i Trondheim kommune. Integrasjonsplattformen skal støtte utvikling, test, QA, produksjon og drift av integrasjon mellom applikasjoner i tråd med Trondheim kommune sin arkitektur og sikkerhetsprinsipper. Som en del av dette arbeidet ønsker vi gjennom denne RFI å identifisere aktuell faglig-, utvikling- og driftskompetanse knyttet til den infrastruktur, miljø og/eller driftstjenester som Trondheim kommune bør implementere. Vi ønsker å lære mer om hva som finnes i markedet og de trender som er rundt integrasjonsplattformer, slik at vi kan bli i stand til å etablere en god og fremtidsrettet integrasjonsplattform. Vi er interessert i få tilbakemeldinger om tilgjengelig kompetanse og erfaringer som understøtter Trondheim kommune sine behov for integrasjonsplattform (se nærmere beskrivelse senere i dokumentet). Vi understreker at vi på dette tidspunktet ikke ønsker å begrense noen muligheter eller løsninger som går ut over de oppgitte områder som omtales i dette dokumentet. Dette betyr at det er fritt opp til leverandøren å informere om og beskrive muligheter som leverandøren mener kan være interessant, utover det som er skissert i dette dokumentet. For å sikre hensynet til likebehandling, gjennomsiktighet og forutsigbarhet i prosessen, lyses denne RFI ut på Doffin som en veiledende kunngjøring. Besvarelser på denne RFI vil ikke forplikte hverken leverandør eller Trondheim kommune i forhold til en eventuell senere anskaffelse. Bakgrunn for undersøkelsen Integrasjon mellom systemer kan defineres på ulike nivåer (organisatorisk, prosess, data, osv.). I TIP, definerer vi integrasjon mellom to applikasjoner som «å ta meldinger konstant, raskt og sikkert til passende mål, i riktig format og struktur, ved bruk av passende protokoll på en håndterlig måte». Figur 1. Integrasjon mellom to applikasjoner (inspirert av Hohpe og Woolf EIP) Noen eksempler på integrasjoner som ønskes utviklet: side 1
Eksempel på integrasjonsskisse for et henvendelsessystem Plattform funksjoner Som integrasjonsplattform skal TIP inneholde løsninger i form av produkter eller prosesser. For eksempel, discovery kan bli oppfylt ved et produkt (f.eks. Apache Zookeeper eller Eureka), eller kan bare være en prosess som applikasjonsutviklere skal følge for å lage statistisk adresse av en annen applikasjon uten å bruke en dynamisk discovery produkt. Vi kaller samling av produkter infrastruktur og samling av prosesser miljø. Beslutningen om å implementere en løsning som et produkt eller en prosess (eller begge) er opp til designere og utviklere av TIP. Figur 2 viser overordnet perspektiv av TIP. side 2
Figur 2. TIP perspektiv Figur 2 er bare en logisk skisse, ikke fysisk. Det betyr at plattformen ikke trenger å være en sentral programvare på en sentral server som alle applikasjoner vil koble seg til. Deployment arkitekturen vil bestemme antallet og plasseringen av ulike instanser av hver løsning av plattformen. Hver funksjon er beskrevet nedenfor. Register (eller Tjenestekatalog) er et sentralt oppbevaringssted som brukes til å publisere applikasjoners plassering og applikasjonsgrensesnitt definisjoner, slik at forbrukerne kan se og konsumere tjenester som applikasjoner tilbyr. Det inkluderer nettverk lokasjoner av applikasjon instanser, versjon av tjenester, og definisjoner av operasjoner som tjenester tilbyr. Denne informasjonen kan legges automatisk på registeret når tjenester er deployert, eller ved hjelp av en manuell prosess. Discovery, kommer ofte sammen med registering, er en mekanisme for å se registeret og lære av plasseringen og funksjonalitet av tjenester. Denne kan implementeres på dynamisk eller statisk måte. Ruting er virksomhetens meldingsmønster og betyr å konsumere meldinger fra en singel forbruker applikasjon og omdirigere dem til riktig mål applikasjon, basert på bestemte beslutningskriterier. En meldingsruting motor, som er ansvarlig for meldingsruting, er bare opptatt med å omdirigere meldinger og endrer ikke innholdet i meldingen. Hvis det ikke er noe beslutningskriterie, er det ikke behov for ruting. Meldingskø (eller meldings megler) gir en asynkron kommunikasjonsprotokoll slik at kilde- og mål applikasjoner ikke trenger å samhandle på samme tid - meldinger blir holdt i køen til mottakeren henter dem. Transformering (Oversettelse): Ulike interne og eksterne applikasjoner bruker ulike kommunikasjonsprotokoller, data formater eller data strukturer. Transformering (eller oversettelse / adapter) brukes for å konvertere disse forskjellene. Nye applikasjoner i Trondheim kommune er implementert på REST over HTTP(S). Men noen gamle applikasjoner trenger å transformere sine data protokoll til REST/HTTP. Overvåkning er prosessen for å observere trafikken mellom ulike applikasjoner, monitorering og rapportering av applikasjoners tilgjengelighet. side 3
Sikkerhet er et kvalitetskrav, men er beskrevet som en løsning her. Trondheim kommune har sikkerhets løsninger (f.eks. AD) som kan gjenbrukes på integrasjonsplattformen. Hvis dagens løsninger ikke dekkes alle behov for integrasjonen, skal nye produkter legges til plattformen. Arkitekturprinsipper Trondheim kommune skal følge nasjonale arkitekturprinsipper: tjenesteorientering, interoperabilitet, tilgjengelighet, sikkerhet, åpenhet, fleksibilitet og skalerbarhet. I tillegg til de nasjonale arkitekturprinsippene har Trondheim kommune følgende overordnede arkitekturprinsipper: Brukeren i sentrum Informasjon som sentral ressurs Størst mulig verdi for virksomheten som helhet Helhetlig livssyklus Følger standarder Benytter anerkjent og velprøvd teknologi Hva vi ønsker besvart i forhold til integrasjonsplattformen En integrasjonsplattform kan realiseres på mange ulike måter. Plattformen skal inneholde infrastruktur (produkter) og miljø (prosesser) som oppfyller Register/Discovery, Ruting, Meldingskø, Transformering og Overvåkning av meldinger mellom interne og eksterne applikasjoner og støtter Sikkerhet, Ytelse og Pålitelighet. Målet/visjon er å oppfylle nevnte behov med bruk av beste praksis og moderne løsninger (helst open-source), og samtidig å unngå unødvendige investeringer av produkter som er utenfor kommunens behov (YAGNI prinsipp: You aren't gonna need it). Merk at ikke alle behovene trenger å tilfredsstilles for å svare på denne RFI en, da vi kan se for oss flere realiseringsmodeller. Vi ønsker via denne forespørselen å avdekke hvilken kompetanse, gjennomføringsmodeller og driftsmodeller dere som leverandør kan være aktuelle å bistå TK med i implementering av en integrasjonsplattform. Som svar på denne RFI ønskes følgende områder besvart: Hvilke kompetanse leverandøren har knyttet til ulike funksjoner av integrasjonsplattformen (infrastruktur, miljø, utvikling og drift) Hvilke strategier/råd leverandøren mener det er viktig at TK hensyn til Hvilke verktøy leverandøren har erfaring med Hvilke erfaringer leverandøren har fra tilsvarende organisasjoner/kunder som Trondheim kommune Hvilke leveransemodeller leverandøren kan tilby Hvilke tjenester leverandøren kan tilby for drift av integrasjonsplattformen Hvordan forespørselen ønskes besvart Vi ønsker en skriftlig tilbakemelding på denne forespørselen, hvor det går tydelig frem hvilken kompetanse leverandøren har innen integrasjonsplattformer, infrastruktur, miljø og drift. Det er side 4
særlig interessant å høre hvilke erfaringer og kompetanse som leverandøren kan tilby i forhold til integrasjon mot andre løsninger, som for eksempel erfaring fra andre kunder, gjerne innen offentlig sektor. Leverandørene står fritt til å velge hvordan en slik skriftlig tilbakemelding bygges opp. Det er ikke noe krav til at samtlige spørsmål i dokumentet besvares, men leverandørene oppfordres til å besvare så utfyllende som mulig på samtlige spørsmål. Det er opp til leverandøren selv å velge struktur og detaljeringsnivå på besvarelsen. Skriftlig besvarelse på denne RFI en skal være sendt senest mandag 21. desember kl. 12. Besvarelsen sendes elektronisk til IT-tjenesten.Postmottak@trondheim.kommune.no og merkes «Integrasjonsplattform TK». Spørsmål knyttet til denne RFI kan rettes til Trond Georg Trondsen på trond-georg.trondsen@trondheim.kommune.no Videre prosess Denne RFI er en del av et forløp, der vi vurderer hvilken infrastruktur og miljø man bør anskaffe knyttet til en integrasjonsplattform for Trondheim kommune. I tillegg vurderes det driftstjenester knyttet til integrasjonsplattformen. side 5