Onderzoeken van functionele en technische ontwerppatronen (WO)

Inleiding

Quinity is een Java/J2EE-maatwerkleverancier die voornamelijk complexe administratieve toepassingen maakt. Voor verzekeringsmaatschappijen maken wij bijvoorbeeld polisadministraties en voor banken rekeningenadministraties. Voor logistieke dienstverleners kun je denken aan incidenten- en schadeadministraties en voor werkgevers gaat het bijvoorbeeld om personeelsadministraties.

 

Aangezien de oplossingen die Quintiy realiseert zeer complex zijn, ligt de nadruk bij ons op een goed ontwerp. We maken voor het technisch ontwerp gebruik van technische ontwerppatronen (GoF en J2EE). Voor het functioneel ontwerp maken we gebruik van functionele ontwerppatronen. Het gebruik van functionele ontwerppatronen is een techniek die wij zelf hebben ontwikkeld. Deze techniek biedt ons de mogelijkheid om functionele ontwerpen te hergebruiken binnen verschillende projecten. Dit stelt ons in staat om maatwerk op basis van standaardcomponenten leveren (COTS - Custom off the shelf). Wij passen de techniek van functionele ontwerppatronen niet alleen toe in onze projecten, maar werken ook samen met universiteiten om door middel van research en development de techniek verder te ontwikkelen. Als technologie gebruiken wij Java/J2EE, Soap/Webservices, XML/XSLT, WebSphere/Tomcat en relationele databases.

 

Lees meer over de manier waarop wij functioneel ontwerppatronen gebruiken.

Doel

In deze stageopdracht onderzoeken we een aantal functionele- en technische ontwerppatronen. Je kunt een keuze maken uit één of meer van de volgende gebieden:

 

Workflow
Dit betreft patronen in de volgende domeinen:

  • Workflow voor collectieve levenproducten bij verzekeringsmaatschappijen
  • Workflow voor individuele schadeproducten bij verzekeringsmaatschappijen
  • Workflow voor het afhandelen van bestellingen bij een internet retailer

 

Tijdafhankelijke productdefinities
Dit betreft patronen in de volgende domeinen:

  • Tijdafhankelijke productdefinities algemeen
  • Tijdafhankelijkheid voor collectieve levenproducten
  • Tijdafhankelijkheid voor individuele schadeproducten

 

Tijdafhankelijke polis- en relatiegegevens
Dit betreft patronen in de volgende domeinen:

  • Tijdafhankelijke polisgegevens algemeen
  • Polishistorie en mutaties met terugwerkende kracht voor schadeproducten
  • Polishistorie en mutaties met terugwerkende kracht voor levenproducten
  • Tijdafhankelijke relatiegegevens in combinatie met tijdafhankelijke polisgegevens

 

Synchronisatie van tijdafhankelijke productdefinities
Dit betreft patronen in de volgende domeinen:

  • Synchronisatie van tijdafhankelijke definities tussen verschillende databases
  • Inrichting van samenhangende ontwikkelstraten voor productieondersteuning en productontwikkeling

 

Tijdafhankelijke tussenpersoon – productcombinaties voor schadeproducten
Dit betreft patronen in de volgende domeinen:

  • Tijdafhankelijke tussenpersoon – productcombinaties voor schadeproducten algemeen
  • Tijdafhankelijke contractafspraken
  • Tijdafhankelijke collectiviteiten

 

Groeperen van mutaties
Dit betreft patronen in de volgende domeinen:

  • Groeperen van mutaties voor collectieve levenproducten
  • Groeperen van mutaties over producten
  • Groeperen van mutaties over relaties
  • Gemeenschappelijke workflow voor gegroepeerde mutaties
  • Uiteenvallen van gegroepeerde mutaties en verwerking in afzonderlijke administraties

 

Koppeling tussen polis-, schade-, klant- en financiële administraties.
Dit betreft patronen in de volgende domeinen:

  • Bijwerken klant-, schade- en financiële administratie op basis van wijzigingen in de polisadministratie
  • Bijwerken klant-, polis- en financiële administratie op basis van wijzigingen in de schadeadministratie
  • Bijwerken schade-, polis- en financiële administratie op basis van wijzigingen in de klantadministratie
  • Bijwerken schade-, polis- en klantadministratie op basis van wijzigingen in de financiële administratie

 

In het verleden hebben we systemen gebouwd die deze functionaliteit bevatten. Hiervan zijn functioneel ontwerpen beschikbaar.

Voor de genoemde functionaliteit ontdekken we de functionele ontwerppatronen die projectoverstijgend zijn. Tegelijkertijd ontdekken we abstracte ontwerppatronen en bedenken we een functionele taal waarin we de abstracte ontwerppatronen beschrijven. We stellen vast waaraan de functionele taal moet voldoen om voor de genoemde functionaliteit bruikbaar te zijn.

Omschrijving

De opdracht bestaat uit een combinatie van theorie en praktijk. We onderzoeken de theorie achter het gebruik van functionele ontwerppatronen en leggen deze vast. Vervolgens tonen we aan hoe we de theorie in de praktijk toe kunnen passen. We werken een aantal technische oplossingen uit in een technisch prototype.

 

Als je deze stage nog meer diepgang wilt geven kun je deze combineren met een (beperkt) deel van de afstudeeropdracht Ontdekken metataal voor functionele ontwerptalen, Onderkennen basis- en aanvullende ontwerppatronen of Abstraheren en verbijzonderen van functionele ontwerppatronen.

Resultaat

Een onderzoeksverslag over het theoretische en praktische gedeelte van de opdracht en een werkend prototype van een functioneel ontwerppatroon voor een deelgebied.

Profiel

Wij zijn op zoek naar laatstejaars Informatica-studenten met een VWO vooropleiding en kennis van:

  • Object georiënteerd programmeren en modelleren
  • Relationele databases
  • Java

Aanvang

In overleg.

Duur

5 tot 8 maanden, afhankelijk van de eisen van de opleiding. Een 32-, 36- of 40-urige werkweek is mogelijk.

Vergoeding

Euro 600,-- netto per maand op basis van een 40-urige werkweek.

Interesse?

Stuur jouw CV en cijferlijsten met een korte motivatie naar jobs@quinity.com. Neem voor meer informatie contact op met Robert Guitink.