R e v i d e r t Løsningsforslag Integrasjon mot EIS / ephorte v2.0 Alexander Rødseth Joakim Hovlandsvåg for Cerebrum/USIT 2014
Overblikk esak har bestilt ny integrasjon fra Cerebrum til ephorte. Den største endringen fra tidligere integrasjon er at EIS skal brukes for kommunikasjon. Vi ønsker ikke å snakke direkte med EIS (datakommunikasjons messig), da den er kompleks og krever mye innsikt i ephorte som UAIT ikke har. I stedet er det ønskelig at Evry utvikler funksjonalitet for å hente relevant informasjon fra ephorte og for å kunne gjøre endringer i ephorte. En løsning for dette er under utvikling av Frank Sandersen i Evry i form av en SOAP service som vi vil kunne bruke. Denne tjenesten har et ryddig API. Cerebrum sitt arbeid vil vere å gi Evry den informasjonen som trengs om personer som skal over til ephorte og deres attributter. Eksisterende automatikk som ligger i Cerebrum for personer, personroller og tilgangskoder vil forsøksvis gjenbrukes, men med noen endringer. Dette forslaget går ut på at: Data «flyter» fra Cerebrum til ephorte (Cerebrum er den autoritative kilden). Evry setter opp en SOAP service hos USIT, der Cerebrum kan koble seg opp, hente ut de ønskede data og oppdatere data i ephorte basert på data i Cerebrum. Følgende type data finnes i Cerebrum og kan sendes over (på det minste): Personer Personroller Tilgangskoder
Oversikt over funksjonalitet i integrasjonen Funksjonaliteten som trengs og vil påvirke utvikling både for Cerebrum og Evry. Personer Alle personer i ephorte skal komme fra SAPUiO, og administreres i Cerebrum. Oppretting av personer. Personer som oppfyller kriteriene for å være med i ephorte må kunne hentes ut fra Cerebrum og bli opprettet i ephorte. Dette er i hovedsak tilsatte og noen typer gjester registrert i SAPUiO. Evry sitt SOAP API har funksjonalitet for dette. Sperring av personer. Personer som ikke lenger oppfyller kriteriene for å være med i ephorte skal automatisk sperres. Dette er vi blitt enige om å gjøre ved å sperre alle personroller til personen. Evry sitt SOAP API har funksjonalitet for dette. Oppdatering av data om personer. Informasjon om personer som blir oppdatert i SAPUiO og/eller Cerebrum skal også bli fortløpende oppdatert i ephorte. Evry sitt SOAP API har funksjonalitet for dette. Personer skal få følgende informasjon overført fra Cerebrum: Fullt navn. Kommer vanligvis fra SAPUiO, men kan overstyres i Cerebrum. Primært brukernavn. Dette styrer Cerebrum. Feide Id. Dette styrer Cerebrum. Primær e postadresse. Dette styrer Cerebrum. Telefonnummer. Kommer fra SAPUiO. Det er ikke spesifisert hvilke type nummer. Kontoradresse. Kommer fra SAPUiO. I tillegg er det mulighet for adresse, dette må vi diskutere om skal overføres.
Personroller Personroller administreres i Cerebrum, noen med automatikk og resten manuelt, og skal overføres til ephorte. Oppretting av personroller. Sperring av personroller. Dette inkluderer å sperre alle personroller til personer som ikke lenger skal ha tilgang til ephorte. Sette standard personrolle. Styres i Cerebrum ved hjelp av bofh, og skal overføres til ephorte. Personroller knyttes til enheten personen er tilsatt ved, eventuelt enheten rett over dersom det er et Arkivsted i SAPUiO. Tilgangskoder Tilgangskoder administreres i Cerebrum, noen med automatikk og resten manuelt, og skal overføres til ephorte. Oppretting av tilgangskoder. Tilgangskoder må kunne hentes ut fra Cerebrum til ephorte, slik at ephorte kan opprette disse. Sperring av tilgangskoder. Enheter Det er blitt vurdert til at enheter skal registreres manuelt slik som i dag, og ikke overføres fra SAPUiO/Cerebrum. Personroller og tilgangskoder er likevel registrert på enheter, som vil gå automatisk.
Arbeid for Evry Det vi trenger fra Evry, er et lag mellom Cerebrum og EIS som oversetter informasjonen i Cerebrum for ephorte. Løsningen vil måtte: Kunne motta data fra Cerebrum regelmessig Kunne holde tritt med datamengdene som sendes fra Cerebrum Oppdatere ephorte, via EIS, med informasjonen fra Cerebrum. Noen krav vi må sette til løsningen: Informasjon skal synkronisere etter behov, etter hvert som data endrer seg i Cerebrum. (Ikke bare noen ganger i døgnet som i eksisterende løsning). Integrasjonen må takle en del data. Tidligere integrasjon feilet når UiO passerte 50 000 tilgangskoder. Andre kommentarer: Det må avklares hvem på USIT som skal drifte Evry sin løsning. Det må avklares hvem som kan endre på Evry sin løsning ved senere endret behov, eller ved feilfiksing. Tidsestimatet fra Evry for å utvikle denne løsningen er gitt muntlig til ca 50 arbeidstimer, dette vil da ikke være inkludert dokumentasjon, testing, bistand ved oppsett, møter og reisetid. Estimatet er ikke inkludert bistand til oppsett av test og produksjonsmiljø hos UiO, da det er usikkert om UiO trenger hjelp til dette. Evry har ikke fått sett detaljene i løsningsforslaget, så vi bør ta hensyn til å kunne bruke mye mer enn dette. Vårt anslag er 50 arbeidstimer for design og avklaringer og 200 arbeidstimer for selve løsningen, totalt 250 arbeidstimer fra Evry. Vi anbefaler å ta høyde for eventuelle usikkerhetsmoment.
Cerebrum I Cerebrum er det allerede implementert en del automatikk for ephort fra før. Det ser ut til at vi kan gjenbruke noe av dette, med unntak av detaljer esak har påpekt har fungert feil. Cerebrum sine oppgaver: Opplæring i eksisterende ephorte integrasjon, siden alle tidligere involverte i Cerebrum ikke er aktive i prosjektet lenger. Dette er estimert til å ta: 48 timer. Ta i bruk Evry sin webservice. Dette er estimert til å ta 40 timer. Sette opp et synkroniserings script som sammenligner og oppdaterer data nattlig. Estimert til 56 timer. Utvide eksisterende automatikk: Legge til standard tilgangskode XX for alle personer. 1 dagsverk. Sperre alle roller for personer som har sluttet, men likevel med støtte for å kunne gjenåpnes manuelt. 32 timer. Andre feilfikser i eksisterende automatikk: 32 timer. Endringer i administrasjonsverktøyet (bofh): 32 timer Administrasjon, bl.a. møter med Evry og esak for å bli enige om design. Estimert til 56 timer. Testing og oppfølging etter leveranse. Estimert til 40 timer. Totalt er det estimert at Cerebrum vil bruke 344 timer på arbeidet. USIT sin interne timepris er for tiden kr 570, Merk at UAIT bare har ressurser til å kunne bidra med 16 timer i uken til dette prosjektet. Det gjør at leveransen vil ta tid. Evry kan derfor ikke begynne på utviklingen av integrasjonen med en gang, men først når funksjonaliteten for å hente ut informasjonen fra Cerebrum er på plass.