wk voetbalpool webapp: dag 13

 
20 april 2010

Vanmiddag gaan we voor de bijl: om 4 uur is er een demonstratie. Dan moet alles bij elkaar komen. Aan de achterkant lijken we inmiddels alles wel zo’n beetje voor elkaar te hebben, en Anatoly meldt dat de componenten die we voor de demo nodig hebben, allemaal al wel lijken te werken. Dus hopelijk gaat alles goed. Hij is meest recent nog bezig geweest met de mogelijkheid om een overzicht van de groepen te maken, met daarbij de melding of je als gebruiker al lid bent, en (zo nee) een knop om je aan te melden. Maar er zijn recent nog wat kleine JSON-wijzigingen geweest in het backend die nog wat aanpassing aan de voorkant vereisen. De vraag is dus nog even waar we nu precies staan. Christa heeft ondertussen de gebruikersprofielpagina op orde, inclusief de bonusvraag te kunnen invullen.

Ondertussen ben ik nog bezig met de verschillende events te inventariseren die door de verschillende actoren verstuurd worden, en als gevolg van welk event dat dan is. Dan blijkt dat er nog een aantal views zijn die domein-functionaliteit implementeren: de status updates die een gebruiker verstuurt komen niet in het domein terecht maar alleen in de betreffende UserView; en net zo met de schiftingsvraag. Nu we dit overzicht hebben kunnen we goed zien waar dit soort ‘schoonheidsfoutjes’ zitten. We kunnen nu ook duidelijk zien dat er een aantal elementen alleen in de reporting-kant gerepresenteerd zijn, zoals het redactioneel commentaar, en de wedstrijden zelf. Dat laatste lijkt misschien raar, maar de wedstrijden zelf zijn niet echt actieve objecten in onze opzet, en hoeven daarom ook niet als actoren in het domein gerepresenteerd te zijn. Een groter punt is dat de voorspellingen nog niet in het domein zelf zitten. Dit is een vrij grote wijziging, dus we besluiten om daar nog maar even mee te wachten tot na de demo.

Rikkert heeft zijn persistentie-componentje nu ook weer bijna op orde. Door de geserialiseerde objecten om te zetten naar een base64-string lijkt het wegschrijven naar de database goed te lukken; alleen het deserialiseren geeft nog wat moeite. Maar niets waarvan hij verwacht dat het niet vrij simpel op te lossen is…. al blijkt dat het toch nog tot tegen 16:00u duurt voordat hij, vele cryptische foutmeldingen over ongeldige headers later, de zaak voor elkaar heeft.

Rick was verder nog bezig met Specs, een behaviour-driven test framework. Het blijkt lastig om dat fatsoenderlijk aan de praat te krijgen onder Scala; het lijkt erop dat de library verkeerd wordt aangesproken. Wellicht ligt dit aan versie-problemen? Jan-Willem heeft tenslotte de laatste hand aan de verschillende views gelegd; we kunnen dus nu gaan bouwen aan de persistentie-problematiek. Nu we het event-overzicht hebben zou dat met relatief gemak moeten kunnen. Het lijkt erop dat we de applicatie moeten opsplitsen in een bedrijfsfase en een bootup-fase, waarin we de verschillende factories uit de database halen, die vervolgens weer weten welke gebruikers of pools er zouden moeten zijn, en welke views er bij elke gebruiker of pool horen. Die kunnen vervolgens weer aangemaakt worden en dan hun state uit de DB halen, gestart worden, waarna alle gebruikers- en pool-actoren aangemaakt gestart kunnen worden. Als alles klaar is kan dan tenslotte de bedrijfsfase beginnen waarin de REST API opengezet wordt en er events verstuurd kunnen worden.

Om 4 uur is er dan eindelijk de presentatie, en warempel, het lijkt al aardig te werken. Simon heeft nog wel een aantal vragen en feature requests voor het front-end, en we merken dat sommige data nog missen in de back-end. Maar over het algemeen lijkt de applicatie al aardig de goeie kant op te gaan, en zijn er waarschijnlijk inderdaad maar kleine wijzigingen nodig voordat we ook aan een iPhone- en Android-applicatie kunnen denken.


Werken met ?
Kijk dan bij onze mogelijkheden voor starters en/of ervaren IT'ers.


Categorieën: Development