Follow Us on Twitter

Conversie van Oracle Forms naar Oracle Apex

Juli 2009 - In het boek Oracle Application Express Forms Converter wordt Oracle Forms naar APEX conversie uitgebreid beschreven. In dit Whitebook volgt een verdere kijk op een van de grote krachten van de conversietool: projectaansturing.

Sinds Oracle Application Express (APEX) 3.2 afgelopen februari beschikbaar is gesteld, hebben we de mogelijkheid om Oracle Forms applicaties (semi-)geautomatiseerd te converteren naar APEX. De opties die de Oracle Forms Converter in APEX 3.2 biedt zijn breed te interpreteren. Het is een duidelijk werkende tool geworden die er, onder andere, voor zorgt dat conversie projecten gecontroleerd en iteratief uitgevoerd kunnen worden.

Ten behoeve van een conversieproject worden XML bestanden in APEX ingelezen. Deze bestanden worden vervolgens geanalyseerd waarna de applicatie kan worden gegenereerd. Als de applicatie gegenereerd is kan deze nog verder worden aangepast zodat alle gewenste functionaliteit aanwezig is.


Overzicht van het proces van Forms Conversie in APEX.

Voor dit proces is echter de techniek niet de enige uitdaging. Het grootste risico in een Forms naar APEX conversie project is namelijk de aansturing. Hoe weten we welke componenten er in ons project zitten? Op welke manier weten we waar we staan in de voortgang van ons project? De tooling biedt ons ondersteuning bij het proces.

De Oracle Forms Converter in APEX 3.2

Oracle Application Express is vanaf het begin af aan met belangstelling gevolgd vanuit de Forms gemeenschap. En niet voor niets. APEX zorgde voor een manier om moderne webapplicaties te ontwikkelen met dezelfde set aan kennis als de Forms ontwikkelaars al in huis hadden. De Database kon behouden blijven, stored procedures konden gewoon hergebruikt worden en we kunnen gewoon doorgaan met ontwikkelen in PL/SQL. Dit gaf ons reden om APEX te blijven volgen.

 
Forms applicatie voor en na conversie naar APEX.

Sinds APEX 3.2 heeft Oracle de mogelijkheid geboden om Oracle Forms en Reports applicaties te converteren. Op deze manier is het mogelijk geworden om niet volledig handmatig te migreren van Forms naar APEX. Maar, gedeeltelijk, geautomatiseerd. De Forms Converter kan niet alles in een keer converteren. Toch is de tool onmisbaar om een gedegen conversieproject uit te voeren. Er is namelijk een grote uitdaging te vinden in elk migratieproject, en deze wordt door de Forms Converter in APEX op een correcte manier geadresseerd.

De uitdaging

Tijdens een migratie- of conversieproject is er altijd één echt grote uitdaging te vinden. Dit is niet de ondersteunende techniek, al geeft deze soms wel kopzorgen, of de complexiteit van de applicatie maar het overzichtelijk houden van de componenten in het project en hiermee de voortgang. Door goed in de gaten te houden welke componenten in ons project reeds zijn geadresseerd en welke nog niet, welke handelingen moeten gebeuren voordat we (een gedeelte) van ons project afhebben kunnen we met zekerheid zeggen dat we alles ten behoeve van de conversie uitgevoerd hebben. Meestal zijn dit handelingen waarvoor veelvuldig pen en papier gebruikt wordt. Met behulp van de Forms Converter in APEX hebben we direct de juiste tools ter beschikking.

De Mogelijkheden

De conversietool in APEX 3.2 biedt een aantal mogelijkheden om het conversieproject in goede banen te leiden. Het begint allemaal bij de projectpagina.

De Project Page

De Project Page bevat een overzicht met de verschillende modules die wij in het project hebben geladen en het aantal componenten die deze bevatten. Per component kunnen we bekijken waar deze uit bestaan en kunnen we aangeven op welke manier deze aangepakt kunnen worden.

De Project Page is de thuisbasis van ons conversieproject. Hier is, globaal, alle informatie te vinden die we nodig hebben voor de aansturing van en overzicht over ons project. Binnen het Forms Conversieproject spreken we over modules, de bestanden die we gemaakt hebben van de Forms of Reports modules en componenten als Blocks, Triggers, Program Units en Lists of Values.

In de projectpagina hebben we inzicht in de aantallen componenten per module en hun status. Zijn de componenten reeds geadresseerd of is er meer inspanning nodig? De complete status valt uit te lezen in de Completion Status rechtsonderaan de pagina. De projectpagina is het middel om duidelijk en overzichtelijk ons project aan te sturen en de variabelen zoals de authenticatie en de lay-out van ons gehele project te wijzigen.


De Project Page in the Forms Converter.

Componenten in ons Project

Uiteraard biedt de Forms Converter ons ook inzicht in de verdere componenten binnen de modules in ons project. Door te klikken op de naam van een component in het overzicht krijgen we onder andere te zien over welk aantal we praten, wat het APEX equivalent van dit Forms component is en een omschrijving op welke manier dit type component geïmplementeerd kan worden.


Een overzicht van de componenten in een module in ons Conversieproject.

Door te klikken op het type component krijgen we een overzicht te zien van de verschillende componenten in de module van dit type. In dit scherm kan per component meer informatie vergaard worden en kunnen de elementen worden ingesteld en aangepast. Op deze manier kunnen we tot in detail bekijken met welke elementen we in ons project te maken hebben.


Een overzicht van de Blocks in een Forms Module.

Annotaties per Component

Op het detailniveau van het component kunnen we de annotaties aanpassen. Dit houdt in dat we een aantal variabelen kunnen meegeven waarmee we met meer controle ons conversieproject in de gaten kunnen houden. De verschillende annotaties die we mee kunnen geven zijn als volgt weer te geven:


De Status op de projectpagina.

  • Applicable: Deze variabele geeft aan of dit component van toepassing is op ons conversieproject. Het zal dus pas meegenomen worden als component in het project als deze waarde op Yes staat. De completion van het project is gedefinieerd als aantal componenten gedeeld door de complete componenten.
  • Priority: de prioriteit van het individuele component. Met behulp van deze waarde kunnen we, bijvoorbeeld, een ontwikkelteam sturen in het maken van keuzes.
  • Complete: geeft aan of het component klaar is voor conversie. Dit houdt in dat het meegenomen zal worden in het aantal complete componenten en dus zal meebepalen met de voortgang van het project. Componenten die niet van toepassing zijn voor ons conversieproject (Applicable staat op No) zullen niet meegenomen worden in deze berekening.
  • Assignee: De naam van degene aan wie dit component is toegekend. Hier staan alle namen van de ontwikkelaars en administrators die recht op het betreffende APEX workspace hebben.
  • Notes: Hier kan iedereen notities of aantekeningen kwijt.
  • Tags: Hier kunnen Tags worden gedefinieerd ten behoeve van dit component. Doordat deze zijn te doorzoeken in het componenten overzicht kan het erg praktisch zijn om met behulp van deze tags nieuwe zoek- of selectiecriteria toe te voegen. Tags zijn woorden die zelf te bedenken zijn. Er zijn ook meerdere Tags in te voeren door deze met kommas te scheiden.


De annotaties.

Project Planning

Applicability en Completeness

Zoals hierboven vermeld is het mogelijk om de verschillende annotaties te bekijken in het overzicht van de verschillende componenten in ons project. Door selecties te maken op deze waarden kunnen we een overzicht creëren met behulp van dit interactive report die ons laat zien welke componenten bijvoorbeeld wel van toepassing zijn voor ons project, maar nog niet klaar zijn.


Applicable en Complete in het Forms Objects scherm.

Uiteraard zijn deze zoekcriteria naar eigen inzicht aan te vullen met bijvoorbeeld de toegewezen ontwikkelaar of andere waarden.

Tags

Een van de meest praktische waarden zijn de zelf in te vullen Tags. Doordat deze mee te geven zijn is het mogelijk om projectspecifieke waarden hieraan toe te kennen. Dit biedt brede mogelijkheden. Op deze manier zijn we in staat een selectie te maken van componenten die openstaan voor verdere beoordeling die onderdeel zijn van een bepaalde iteratie of componenten die bepaalde kennis nodig hebben om goed beoordeeld te worden.


Tags in het Forms Objects scherm.

Conclusie

Er werd vanaf het begin af aan gespeculeerd over de Forms Converter in APEX 3.2. Eén van de dingen die gezegd werd is dat de conversie lang niet compleet is. Dit is uiteraard correct. Maar de tool biedt ons wel mogelijkheden die we echt nodig hebben om een conversieproject succesvol uit te voeren.

Door te werken met de mogelijkheden die de tool biedt op het gebied van projectaansturing is het heel goed mogelijk om een traject met een combinatie van converteren en redesign in te gaan. Tijdens een conversieproject komen er altijd onverwachte moeilijkheden om de hoek kijken en deze kunnen met behulp van de mogelijkheden in APEX 3.2 in ieder geval in de gaten gehouden worden.

De conversietool biedt ons een aantal middelen waarmee we meer inzicht in de voortgang en complexiteit van ons project krijgen. Hierdoor verlagen we de kans aanzienlijk dat er onderdelen van ons project over het hoofd worden gezien. De conversietool heeft daarmee de grootste uitdaging van een migratie of conversieproject gedekt en is een zeer welkome aanvulling voor organisaties die van Oracle Forms naar APEX willen migreren.

Referenties

Oracle Application Express Forms Converter, Douwe Pieter van den Bos, 2009, Packt Publishing.

Waardering:
 

Reacties

Nieuwe reactie inzenden

De inhoud van dit veld is privé en zal niet openbaar worden gemaakt.

Meer informatie over formaatmogelijkheden

CAPTCHA
Deze vraag is om te testen of u een persoon bent en om spam te voorkomen
Image CAPTCHA
Enter the characters shown in the image.