---
title: "Agile modellering met UModel"
date: "2008-07-10"
tags: 
  - "agile-development"
  - "uml"
  - "umodel"
description: Ontdek hoe UModel agile ontwikkeling verbetert door middel van UML-modellering, waardoor flexibiliteit en effectieve samenwerking mogelijk worden, terwijl de documentatie en ontwerp processen worden vereenvoudigd.
---
Status: #blog

Tags:  #agile-development #uml #umodel

Categories: [Altova](/blog/nl/category/altova.md) 
# Agile modellering met UModel

Agile ontwikkeling wordt snel een toonaangevend model binnen de vooruitstrevende softwaregemeenschap. De agile methode probeert de ontwikkeling te bevrijden van de inflexibele, documentgedreven aanpak die vaak voorkomt in projecten met een sterke focus op architectuur, door een flexibele en lichte alternatief te bieden dat sterk gericht is op aanpassingsvermogen en communicatie met de klant. Het agile model streeft ernaar de enorme hoeveelheid documentatie en planning die in veel softwareontwikkelingsprojecten wordt gebruikt, te verminderen, en verschuift de focus naar het aanpassen aan veranderende eisen en de algehele klanttevredenheid. De [Unified Modeling Language™](http://www.uml.org/) (UML®) is al lange tijd de de facto industriestandaard voor objectgeoriënteerd softwareontwerp, en biedt dertien soorten diagrammen om drie verschillende systeemaspecten weer te geven: structuur, gedrag en interactie. Altova's UML-modelleertool, UModel, biedt een iteratieve en flexibele aanpak voor UML, waardoor softwaredocumentatie zich kan aanpassen en veranderen bij elke nieuwe iteratie. Dit biedt ontwikkelteams die direct met klanten communiceren, de mogelijkheid om overtuigende applicatiemodellen te presenteren in elke fase van het project.

### UML

UML (Unified Modeling Language) werd in 1997 als standaard aangenomen door de [Object Management Group](http://www.omg.org/) (OMG) en later formeel vastgelegd als ISO 19805. UML is in feite het resultaat van verschillende gangbare objectgeoriënteerde modelleertaal die in de vroege jaren '90 ontstonden. UML is een grafische taal voor het organiseren, analyseren en plannen van objectgeoriënteerde of componentgebaseerde softwareprojecten. De UML 2.1-specificatie definieert dertien verschillende soorten diagrammen en meer dan duizend grafische en tekstuele elementen, evenals aanvullende uitbreidingsmogelijkheden. Traditioneel worden deze diagrammen gebruikt door softwareontwikkelaars en projectmanagers als een krachtige, gestandaardiseerde planningsmethode om de applicatielogica te verifiëren en te bevestigen dat de behoeften van de eindgebruikers worden vervuld. UML is complex van aard en biedt een veelvoud aan opties om software-implementaties visueel weer te geven in een breed scala aan hiërarchische modellen, die representaties kunnen bieden voor elke fase en elk proces binnen de ontwikkelingscyclus. **Structuurdiagrammen**

- Klassendiagram
- Componentdiagram
- Diagram van een samengestelde structuur
- Implementatiediagram
- Objectdiagram
- Pakketdiagram

**Gedragsdiagrammen**

- Activiteitendiagram
- Diagram van een eindige automaat
- Gebruiksscenariodagram

**Interactiediagrammen**

- Communicatiediagram
- Overzicht van het interactiediagram
- Sequentiediagram
- Tijdschema

Deze complexiteit brengt een leercurve met zich mee, die gemakkelijk te overwinnen is door een intuïtief UML-modelleertool te kiezen. Zo'n tool moet geavanceerde gebruiksvriendelijke functies en naadloze grafische representaties bieden, en tegelijkertijd flexibel genoeg zijn om zich aan te passen en mee te groeien met een softwareontwikkelingsproject. 

**Het Agile Manifest**
Het [Agile Manifest](http://www.agilemanifesto.org/) is begin 2001 opgesteld en beschrijft een reeks principes voor een snellere, flexibelere en doelgerichte aanpak van softwareontwikkeling. Deze aanpak staat in contrast met de traditionele "waterfall"-methode, die al lange tijd bij de meeste technologiebedrijven wordt gebruikt. De ideeën achter agile ontwikkeling hebben de afgelopen jaren aan populariteit gewonnen, mede door de ontwikkeling van andere, vergelijkbare, lichtgewicht methodologieën, waarvan velen sindsdien zijn opgenomen in de "agile"-familie. Het manifest is gebaseerd op het concept van softwareontwikkeling als een iteratief proces dat snel moet kunnen worden aangepast aan voortdurend veranderende eisen en klantbehoeften. Het document richt zich op:

- Individuen en interacties staan centraal, in plaats van processen en tools
- Werkende software boven uitgebreide documentatie
- Samenwerking met klanten tijdens onderhandelingen over contracten
- Reageren op veranderingen in plaats van een plan volgen

Het vasthouden aan deze algemene doelen is bedoeld om softwareprojecten flexibel en aanpasbaar te houden, zodat ze zich kunnen aanpassen aan veranderende eisen, terwijl tegelijkertijd de ontwikkelaars gefocust blijven op de kwaliteit van hun werk in elke fase van het proces. 

**Agile Modellering**
De agile methodologie vereist een modellerings- en documentatieproces dat de flexibiliteit van de fundamentele principes weerspiegelt. Het agile modelleringsproces is een manier om ontwikkelingsprojecten te ondersteunen, waarbij interactie en samenwerking worden bevorderd door middel van visuele presentaties van actieplannen die voor alle betrokkenen gemakkelijk te begrijpen zijn, terwijl ze tegelijkertijd voldoende technisch zijn om ontwikkelaars een basis te bieden voor hun ontwerp. Agile modellering richt zich op eenvoud en het vermogen om veranderende eisen te verwerken en te beheren, wat leidt tot een incrementele aanpak, waarbij softwareprojecten visueel worden gemodelleerd en in fasen worden gepresenteerd, in plaats van een traditioneel model waarin uitgebreide plannen vooraf worden opgesteld. De Agile Model Driven Development (AMDD)-aanpak vereist een relatief korte fase van eisenanalyse, met opeenvolgende modellering op het juiste moment om aan de behoeften van het project in elke iteratie te voldoen. Met deze methode is werkende software al in een veel eerder stadium beschikbaar voor beoordeling en testen, waardoor samenwerkers de mogelijkheid krijgen om eisen aan te passen naarmate het project zich ontwikkelt. 

**UML en Agile Modellering**
De brede acceptatie van UML als modelleringstaal is grotendeels te danken aan het vermogen om softwareontwerp op veel verschillende manieren en in verschillende fasen weer te geven. Bovendien suggereert de snelle acceptatie als standaard een erkende behoefte aan een uniforme aanpak van modellering, waardoor verschillende ontwikkelteams kunnen samenwerken aan gezamenlijke projecten. Als voorloper van agile methoden is UML ontwikkeld om te voldoen aan strengere objectgeoriënteerde ontwerpmethoden, die hogere eisen stellen aan modellering en documentatie. Echter, met het juiste gereedschap kunnen ontwikkelaars, projectmanagers en belanghebbenden profiteren van deze standaard modelleringstaal in hun agile projecten. 

**Agile modellering met UModel**
Altova UModel is een uitgebreide UML-ontwikkelingstool die alle diagramtypen ondersteunt, met aanvullende functionaliteit voor het genereren van code en documentatie, reverse engineering en geavanceerde gebruiksvriendelijke functies. UModel is volledig conform de nieuwste UML-specificatie (2.1.1) en is een waardevolle aanwinst voor elke vorm van softwareontwikkeling. De ongeëvenaarde flexibiliteit en functionaliteit van UModel maken het de ideale UML-tool voor agile modellering, waardoor ontwikkelaars en samenwerkers gebruik kunnen maken van de betrouwbare UML-standaard door de modelleringstechnieken ervan toe te passen op agile methoden. 

[![UModel, een UML-tool](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/UModel2008_Overview_thumb_thumb.gif)](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/UModel2008_Overview_thumb.gif) 

UModel biedt geavanceerde gebruiksvriendelijke functies die helpen om de leercurve van UML te verkorten, waardoor modellering toegankelijk wordt voor alle projectdeelnemers. Met een focus op veelzijdigheid in modelontwerp, biedt UModel een volledig aanpasbare interface met kleurgecodeerde elementen om de kenmerken van het model duidelijk aan te geven. 

[![Visuele elementen in UModel](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/UModel_visual_graphical_elements_thumb.gif)](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/UModel_visual_graphical_elements.gif) 

Gebruikers kunnen ook aanvullende aanpassingen toevoegen om de bruikbaarheid en communicatie te verbeteren, en deze automatisch toepassen op individuele elementen, groepen of het hele project. De uitgebreide visuele interface van UModel stelt ontwikkelaars in staat om softwareontwerpen snel en eenvoudig te schetsen, zodat alle aspecten van de systeemarchitectuur duidelijk kunnen worden gecommuniceerd. Deze gestroomlijnde aanpak van UML-ontwerp sluit perfect aan bij de agile methodologie, waardoor er mogelijkheden ontstaan voor communicatie via dynamische projectweergaven. UModel biedt extra ondersteuning voor samenwerking door het mogelijk te maken om pakketten te delen, waardoor ontwikkelaars hun functionele ontwerpen met andere teamleden kunnen delen of ontwerpen uit andere projecten kunnen importeren voor hergebruik. 

[![UModel-pakket voor het delen van modellen](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/umodel_share_thumb.gif)](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/umodel_share.gif) 

Visuele ontwerpen kunnen eenvoudig worden opgeslagen of als afbeeldingen worden geprint, zodat niet-technische medewerkers de concepten kunnen bekijken. 

[![Sla het UML-diagram op als een afbeelding](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/umodel_save_thumb.gif)](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/umodel_save.gif) 

Een andere belangrijke functie van UModel die de communicatie tussen projecten en de samenwerking met klanten bevordert, is het gemak waarmee ontwikkelaars informatieve use case diagrammen kunnen maken. UML use case diagrammen zijn vaak een populaire keuze bij agile modellering, omdat ze een van de meest uitdagende fasen van het softwareontwikkelingsproces aanpakken: de visualisatie van de interactie met de gebruiker. De use case diagrammen in UModel kunnen moeiteloos worden geïllustreerd met behulp van geavanceerde gebruiksvriendelijke functies en verfijnde grafische output. 

[![UML-gebruiksscenario's in UModel](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/UModel_use_case_example_thumb.gif)](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/UModel_use_case_example.gif) 

UModel stelt ontwikkelaars in staat om automatisch gedetailleerde documentatie te genereren, inclusief ingebedde afbeeldingen, in HTML, RTF of Microsoft® Word. Deze functie sluit aan bij het tweede punt van het Agile Manifest, waardoor teams zich kunnen concentreren op softwareontwerp in plaats van te verdwijnen onder uitgebreide documentatie die soms de voortgang van een project kan vertragen. 

[![Genereer UML-documentatie](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/UModelGenerateDocImage1_thumb.gif)](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/UModelGenerateDocImage1.gif)

De geavanceerde functionaliteit van UModel maakt het mogelijk om snel aanpassingen te maken en te reageren op veranderingen gedurende het project. UModel interpreteert wijzigingen in de broncode van het project en synchroniseert deze met het bijbehorende UML-diagram. UModel ondersteunt Java, C# en Visual Basic, en biedt daarmee geavanceerde functionaliteit en flexibiliteit voor het iteratieve ontwikkelingsproces. 

[![UML-gebaseerd heen-en-weer engineering](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/umodel_roundTrip_thumb.gif)](https://www.altova.com/blog/images/AgileModelingwithUModel_11C93/umodel_roundTrip.gif) 

UModel biedt een naadloze integratie met de toonaangevende ontwikkelomgevingen Visual Studio® en Eclipse, waardoor ontwikkelaars moeiteloos kunnen schakelen tussen het UML-model en de code-bewerkingsvensters en direct alle updates en wijzigingen kunnen zien. De uitgebreide gebruiksvriendelijkheid en communicatiefuncties van UModel stellen ontwikkelingsteams in staat om projecteisen snel aan te passen op basis van de resultaten van incrementele samenwerking. De grafische ontwerpinterface en de intuïtieve modelleercapaciteiten stellen teamleden in staat om overtuigende visuele ontwerpen te creëren die gemakkelijk te begrijpen zijn voor zowel technische als niet-technische stakeholders in elke fase van het project. 

**Conclusie**
De brede acceptatie van agile methoden duidt op een verschuiving van de traditionele, hiërarchische aanpak (waterfall-model) die nog maar een paar jaar geleden de norm was. Bedrijven realiseren zich dat softwareprojecten voortdurend veranderen en zich ontwikkelen in elke fase. Ontwikkelingsteams moeten in staat zijn om veranderingen te beheren, deadlines te halen en kosten te verlagen. Niets is zo effectief als een reeks heldere diagrammen om de essentie van een software-implementatie weer te geven. UML heeft de capaciteit om structuur te bieden aan vage en abstracte klantvereisten, waardoor ontwikkelaars de taak die voor hen ligt gemakkelijk kunnen visualiseren. Met zijn flexibele en geavanceerde UML-ontwerpinterface is UModel een ideaal modelleertool voor agile ontwikkeling, en biedt ontwikkelaars een betaalbare, gebruiksvriendelijke en uitgebreide modelleeroptie met robuuste functies voor project samenwerking en communicatie. UModel biedt gebruikers de mogelijkheid om te profiteren van de uitgebreide mogelijkheden van de UML-standaard, maar biedt ook de flexibiliteit die nodig is voor agile implementaties. 

U kunt [UModel gratis uitproberen](https://www.altova.com/nl/download/umodel/uml_tool_enterprise.html) in uw volgende agile ontwikkelproject. Deze [technische handleiding](http://http//www.altova.com/techbriefs.html) en andere bronnen zijn beschikbaar in de Altova-bibliotheek.
