22.11.2013 Views

Dankwoord - martes

Dankwoord - martes

Dankwoord - martes

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

60 HOOFDSTUK 6. BESLUIT<br />

De oorspronkelijke mogelijkheden van HAT lieten ons niet toe om de intelligente aanpak te<br />

implementeren. Dat was eigenlijk het moment van de geboorte van de intelligente aanpak<br />

gebaseerd op string matching. Deze methode zoekt voor elke postconditie horend bij een<br />

publieke operatie welke object of variabele tijdens de uitvoering van deze operatie zou moeten<br />

aangepast worden. Vervolgens gaan we de gevonden object of variabele met een of meerdere<br />

klasse-invarianten proberen te matchen. Met deze oplossing hebben we het probleem van de<br />

intelligente aanpak niet kunnen implementeren omgezeild.<br />

Tijdens de implementatie in HAT hebben we samen met E2S naar verschillende oplossingen<br />

gezocht om wat verjningen aan het tool aan te brengen.<br />

6.3 Kritische noot<br />

Een nadeel van het HAT tool is dat er geen ondersteuning is voor sleutelwoorden zoals @pre<br />

en result. Blijkbaar is de complexiteit verhoogd om deze sleutelwoorden te implementeren<br />

dan de voordelen die dat zou opbrengen.<br />

Naast de methodologie die we voor het bereiken van de doelstellingen ontwikkeld hebben,<br />

hebben we ook een evaluatie van bestaande tools gemaakt die run-time OCL ondersteunen.<br />

Voor onze grote verassing wat wij uit de gegenereerde code gemerkt hebben is dat er geen enkel<br />

van de geëvalueerde tools een meer intelligente, slimme implementatie had voor het nagaan<br />

van voldoening van constraints. Alle tools volgen min of meer een aanpak die op onze naïeve<br />

aanpak lijkt. Dat plaats HAT tool een stap voor zijn concurrenten alhoewel nog wat werk<br />

moet gedaan worden om een een deftige implementatie van de intelligente aanpak in HAT te<br />

hebben.<br />

6.4 Toekomstig werk: uitbreidingen en aanpassingen<br />

We hebben aangegeven hoe run-time OCL expressies naar werkende code in HAT getransformeerd<br />

kunnen zijn. We sommen enkele uitbreidingen op die nuttig zijn om het systeem<br />

bruikbaarder te maken.<br />

Het zou interessant zijn om een ondersteuning voor sleutelwoorden zoals @pre en result te<br />

voorzien. Dat zou het tool bruikbaarder maken wat betreft transformaties van run-time OCL<br />

expressies.<br />

Op basis van de methodologie die we in deze thesis ontwikkeld hebben, zouden we generatoren<br />

ook in andere talen moeiteloos kunnen implementeren.<br />

Een volledige beschrijving van OCL taal kan ook beschouwd worden. De methodologie die we<br />

voorgesteld hebben, is niet volledig in de zin dat we maar een deelverzameling van de OCL<br />

taal genomen hebben. We hebben vooral op een aantal aspecten gefocust: klasse-invarianten,<br />

pre- en postcondities. Aeiding regels, initiële waarden, body-of-query operaties hebben we<br />

niet bestudeerd.<br />

Alhoewel onze aandacht in deze thesis op de JAVA programmeertaal gericht was, zou er interessant<br />

zijn om een alternatieve implementatie wat betreft aspect-georiënteerde uitbreidingen

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!