Medlemsdatabase/design

Vi bør ha et modulbasert system, hvor modulene snakker med en sentral database - enten gjennom direkte databasekontakt eller gjennom lag med "lim". Hver modul skal ha dedikerte funksjoner ifht kravspesifikasjonen. Programvare som ikke er en direkte del av medlemsdatabasesystemet, men som trenger tilgang til medlemsregisteret (brukerdatabasen) kaller vi "verktøy". Eksempler på verktøy: mediawiki, reddit, zimbra. Moduler som utgjør en sentral del av medlemsdatabasen bør ha direkte tilgang til databasen. Verktøy som utvikles internt kan også få direkte tilgang til databasen dersom det ansees som enklest eller nødvendig.



De to mest utbredte standardene for "lim" er LDAP og OpenID. Det meste av verktøy der ute støtter minst én av disse standardene. Vi bør støtte begge, for å få størst mulig frihet til å installere ulike typer verktøy. I de tilfellene hvor hverken bruk av LDAP, OpenID eller direkte databasekontakt er mulig, kan vi bli nødt til å lage synkroniseringsskript som sørger for at databaser er i synk ("eksportscript" på figuren - da de fleste verktøy bare skal lese fra medlemsdatabasen, ikke skrive).



(Vi trenger ikke nødvendigvis ha to forskjellige moduler for kontoregistrering og kontoredigering - dette vil høyst sannsynlig være snakk om samme modul).