Silicon 5 Codegeneratie

More Info
expand_more

Abstract

Het doel van het project was de ontwikkeling van een codegenerator om snel nieuwe webprojecten op te kunnen starten. Het bedrijf FenĂȘtre ontwikkelt complexe internetapplicaties met behulp van een eigen framework. De projecten die met dit framework, Silicon 5, worden gemaakt bevatten vaak project-specieke entiteiten. Voor deze entiteiten zijn bijna altijd onderhoudsschermen nodig. Elk project is uniek, daarom zullen deze schermen voor elk project op een andere manier gebouwd moeten worden. Dit is een tijdrovend proces. Omdat alle schermen volgens dezelfde structuur zijn gemaaktkan het bouwen van de schermen signicant versneld worden met een codegenerator. De uitdaging zat in het zo goed mogelijk benutten van de beschikbare informatie over de tabellen in het framework. Door een reeds bestaande generator is van elke databasetabel een model gemaakt. De combinatie van de metadata uit de database en de beschikbare modellen, biedt veel mogelijkheden. Voornamelijk het analyseren en genereren van de elementen voor relaties tussen verschillende tabellen en views (en dus tussen schermen) is een uitdaging. Samen met het bedrijf zijn op dit gebied veel complexe problemen bediscussieerd en aangepakt. Het eindproduct is een volledig werkende applicatie die aan bijna alle gestelde eisen voldoet. De ap-plicatie biedt de mogelijkheid om met enkele klikken een serie schermen te genereren op basis van een databasetabel. Deze nieuwe schermen zijn daarna direct te gebruiken in de webapplicatie, inclusief bijkomende functionaliteiten zoals het bewerken van data. Wensen en mogelijkheden die tijdens het project zijn ontdekt, zijn geformuleerd in een lijst van aanbevelingen. De ontwikkelaars bij FenĂȘtre zullen deze generator gaan gebruiken bij het opstarten van projecten. Een aantal schermen die standaard in het framework zitten, zijn zelfs al gemaakt met de generator. Daarnaast zal de generator ook met zekerheid nog verder uitgebreid worden met extra functionaliteiten.