Hvad kan jeg
Nu har du måske læst om hvordan jeg gerne vil arbejde. Men sidder tilbage og tænker på hvad det er jeg kan rent teknisk. Den nemmeste måde er måske ved at fortælle lidt om en af de opgaver jeg har løst inden for de sidste to år set fra et teknisk synspunkt.
Ekstranet
En boligforening som administrerer flere tusind boliger har et større administrativt system, som indeholder en del oplysninger som de ønsker at gøre tilgængelige for tillidsfolk i organisationen. Systemets datalager er baseret på Microsoft SQL server, hvilket gør det muligt at tilgå oplysningerne i systemet uden om systemets brugergrænseflade.
Løsningen blev at opbygge en database på webserveren som replikerer data fra systemets SQL Server hver nat, databasen på webserveren er en simplere udgave af systemdatabasen, og indeholder kun de oplysninger der skal være tilgængelige på ekstranettet. For at gennemføre replikeringen af data, udformede jeg en række stored procedures som læser og behandler data fra systemet og indlæser dem i databasen på webserveren.
Til behandling og visning af data der er replikeret til webserveren udviklede jeg et klasse bibliotek (et Business Object Layer) i VB.NET, som læser data fra webdatabasen og gør dem tilgængelige for de ASP.NET sider som viser og søger i data fra webdatabasen. Klassebiblioteket kompileres til en dll-fil, som kan bruges af websitet.
I websitet findes en række asp.net filer som viser oplysningerne fra databasen frem ved hjælp af datalaget som ligger i dll-filen. Websitet er opbygget af aspx- css- og javascript-filer, som tilsammen gør det muligt for brugerne at se de oplysninger de har adgang til.
Ved siden af databasen med oplysningerne fra det administrative system har boligforeningen en database med bestyrelsesmedlemmer i de forskellige boligforeninger. Tila t løse denne opgave udviklede jeg en MS SQL Server database og en Access front-end som giver brugerne mulighed for at at oprette og redigere bestyrelser og medlemmer og udskrive forskellige rapporter med oversigter som bruges i anden sammenhæng.
Oplysningerne i bestyrelsesdatabasen danner grundlag for adgangsrettigheder til ekstra nettet, således at når et bestyrelsesmedlem er oprettet i bastyrelsesdatabasen, bruger ekstranettet oplysningerne i denne database til at afgøre, hvilke oplysninger og sider brugerne har adgang til når de er logget ind i systemet. Oplysningerne afgør også om brugerne i det hele taget kan logge ind i systemet.
Løsningen gør det altså muligt for boligforeningen at have et ekstra-net med oplysninger der altid er up-to date, uden at skulle lave noget ekstra arbejde i hverdagen, fordi data replikeres til web-serveren fra datakilder der alligevel vedligeholdes i forbindelse med boligforeningens andre opgaver.
Samtidig er der meget lav sikkerhedsrsiko ved systemet, fordi alle data på webserveren er en bearbejdet kopi af data fra de administrative systemer. Der er altså ingen forbindelse mellem data på webserveren og data i det administrative system, og et eventuelt datatab på webserveren kan genoprettes ved at replikere data fra det administrative system en ekstra gang.
Jeg udviklede hele løsningen selv ved hjælp af SQL Query Analyzer, Access 2000, #Develop og TopStyle. For at udvikle løsningen brugte jeg følgende teknologier:
- T-SQL til stored procedures i forbindelse med replikering af data og udtræk af data til klassebiblioteket.
- Access 2000 til at lave en SQL-server front-end som bruges til bestyrelsesdatabasen
- VBA (Visual Basic for Applications) til avancerede funktioner i bestyrelsesdatabasen
- VB.NET til klassebibilioteket
- ASP.NET til at instantiere klassebiblioteket og returnere opbygge websiderne
- XHTML til siderne i ekstranettet, XHTML'en er XHTML 1.0 Strict, og overholder stort set W3C's standarder. W3C's standarder brydes kun for at opnå funktionalitet som det ellers ville være meget svært at opnå.
- CSS til at styre formatering og design på siderne.
- JavaScript til at levere dynamiske effekter.
