Deel 5 – Analyse van een bestaande applicatie met Altova UModel

In de eerdere delen Deel 1, Deel 2, Deel 3 en Deel 4 van deze serie hebben we de functionaliteit van Altova UModel voor reverse engineering gebruikt om UML-diagrammen te maken voor een simulatie-applicatie van een geldautomaat. Na analyse van de bestaande architectuur hebben we een nieuwe functionaliteit gepland en geïmplementeerd: de transactiekosten. Zelfs in een vereenvoudigde vorm geeft ons bijgewerkte sequentiediagram voor de transactie duidelijk, in grafische vorm, de geneste logische structuur van de broncode weer.

Vanmorgen botsten we bij de koffiemachine tegen de productmanager van de geldautomaten. "U werkt nu al meer dan een maand aan die code voor de geldautomaten," zei hij. "Wanneer kan ik zien wat u tot nu toe heeft bereikt?" We kunnen gebruikmaken van UModel Genereer documentatie Deze functie is ontworpen om aan deze vraag te voldoen. UModel genereert automatisch aangepaste documentatie voor ons project in HTML-, Microsoft Word- of RTF-formaten. Met het tabblad "Inclusie" in het dialoogvenster "Documentatie genereren" kunnen we kiezen welke soorten diagrammen we willen opnemen, en het detailniveau van ons rapport bepalen door ons de mogelijkheid te geven elk type diagramelement uit te breiden.

Voor een overzichtelijk rapport kunnen we alle soorten diagrammen selecteren. We selecteren ook "klasse" uit de lijst met elementen om meer informatie over de klassen in onze applicatie weer te geven. UModel vraagt handig of we ook elementen willen toevoegen die afgeleid zijn van de klasse.

Nadat we andere documentparameters hebben geselecteerd of aangepast, waaronder lettertypen en groottes, genereert UModel het rapport in slechts enkele seconden. Bovenaan de eerste pagina begint het rapport met een overzicht van de diagrammen en een apart overzicht van de elementen. Elk item in de index is gekoppeld aan een bladwijzer in het document.

Welke indeling u ook kiest, het resulterende rapport is volledig bewerkbaar. Zo kunnen we bijvoorbeeld een voettekst toevoegen die paginanummers en een bijschrift bevat met de datum van aanmaak van het document. We kunnen de bijschrifttekst die UModel heeft gegenereerd gebruiken om onze voettekst te creëren.

Ons voltooide rapport bevat alle UML-diagrammen die de bestaande ATM-applicatie beschrijven, met gedetailleerde klassendiagrammen die de eigenschappen en functies van de klassen weergeven. Bovendien wordt elke klasse geïllustreerd met een hiërarchiediagram om de relaties tussen de klassen te tonen, en met een lijst van alle klassenassociaties. Naarmate ons project verder ontwikkelt, kunnen we eenvoudig een bijgewerkte versie van het rapport genereren. We kunnen zelfs gebruikmaken van de commandoregelfunctionaliteit of de UModel API om de creatie van projectdocumentatie te automatiseren, of we kunnen de .html-versie van het rapport toevoegen aan de wiki van ons ontwikkelingsteam. Voorlopig hoeven we alleen het rapport per e-mail te sturen naar de productmanager van de ATM-applicatie.

Conclusie

We hopen dat u het interessant vond om deze oefening te volgen, waarin we een bestaande applicatie hebben geanalyseerd met Altova UModel. Hoewel we deze serie hier beëindigen, is er in de praktijk nog veel meer werk te doen aan onze ATM-applicatie. Zo moet de functionaliteit om gebruikers de mogelijkheid te geven om een transactiekosten te accepteren of een opname te annuleren, nog worden geïmplementeerd. Of, we zouden de bestaande code kunnen bijwerken met nieuwere Java-constructies, zoals generieke types, annotaties en enumeraties.

Als u al ervaring heeft met UML, hopen we dat we u een paar nieuwe technieken hebben laten zien. Als u een ontwikkelaar bent die UML nog nooit heeft geprobeerd, willen we u graag een indruk geven van de voordelen van visuele softwaremodellering. Hoe dan ook, als u klaar bent om verder te gaan met uw eigen project, klik hier om te downloaden een volledig functionele, gratis proefversie van Altova UModel.