Applicaties ontwikkelen kan veel efficiënter
Softwareontwikkeling kan een frustrerend en tijdrovend proces zijn. Want hoe realiseer je efficiënt functionele doelen als die zoveel ruimte overlaten voor interpretatie? De Thinkwise Software Factory biedt een betere werkwijze om continu herbouwen en corrigeren te voorkomen. Ontwerpspecificaties registreer je in het platform en de requirements worden hier vervolgens uit herleid. Dit werkt veel efficiënter en het is bovendien volledig geïntegreerd in het ontwikkelplatform.
Applicatieontwikkeling begint met het vastleggen van alle uitgangspunten en doelen. Dit laat echter nog te veel speelruimte over. Denk aan het spreekwoord ‘vele wegen leiden naar Rome’. Je besluit bijvoorbeeld dat je met de auto via Duitsland en Zwitserland naar Rome gaat en dat de reis niet langer dan twee dagen mag duren. Neem je dan alleen de snelweg of ook B-wegen? En hoe zit het met de tolwegen?
Het functionele doel kan hier dus op verschillende manieren worden gerealiseerd, en bij softwareontwikkeling is dat niet anders. Neem hierbij de volgende functionele eis als voorbeeld: “De gebruiker mag van de applicatie meerdere medewerkers aan een project toewijzen.” Een voor de hand liggende oplossing om dit te implementeren is met een linktabel voor medewerkers en projecten.
De functionele eis beschrijft echter geen verdere details over de implementatie, waardoor dit op misschien wel drie of meer verschillende manieren gerealiseerd kan worden. Er kunnen dus drie of meer wegen naar Rome gekozen worden. Ook het herleiden van de requirements is bij het op traditionele wijze ontwikkelen van software vaak een probleem. Met behulp van de ontwerpspecificaties zijn die eisen echter helemaal tot aan het model toe te herleiden.
Van requirements tot code en testcases
Een ontwerpspecificatie is een optionele stap in het ontwikkelproces ergens tussen de procesanalysefase en modelleer/programmeerfase van een project. Ontwerpspecificaties kunnen in nieuwe projecten gebruikt worden om implementatiedetails over te brengen aan het ontwikkelteam. Voor projectonderhoud kunnen de ontwerpspecificaties gebruikt worden om wijzigingen aan het bestaande model te beschrijven.
De requirements van de procesanalyse zijn de input voor de ontwerpspecificaties. Zo’n ontwerpspecificatie bestaat uit meerdere paragrafen, en deze wordt gebruikt om het model te creëren, maar ook voor de aanvullende logica en bijbehorende testcases. Ontwerpspecificaties zijn bedoeld om richting te geven, inclusief implementatiedetails voor het model en code-templates.
Hoe het in zijn werk gaat
Een hoofdontwikkelaar kan een ontwerpspecificatie aan een eis koppelen, wat impliceert dat de eis (gedeeltelijk) wordt ingevuld door de implementatie. Meerdere ontwerpspecificaties kunnen aan dezelfde functionele eis gekoppeld worden. Cubes zijn beschikbaar om de vereisten op te sporen die nog niet zijn gekoppeld aan een ontwerpspecificaties. Ontwerpspecificaties kunnen alleen aan functionele en niet-functionele eisen gekoppeld worden. Het is onmogelijk om ze te koppelen aan een gebruiker- of zakelijke eis. Dit type requirements mogen geen functionele aspecten van de applicatie beschrijven. Net als requirements kunnen ontwerpspecificaties in modules opgedeeld worden. Als een ontwerpspecificatie deel uitmaakt van een module, zullen alleen de vereisten van deze module standaard worden getoond bij het koppelen van de ontwerpspecificaties aan de eisen.
Voltooid
Wanneer de ontwerpspecificatie voltooid is, kan hij als ‘klaar om te implementeren’ worden gemarkeerd. Elke ontwikkelaar krijgt de nieuwe specificatie vervolgens te zien, tenzij een specifieke ontwikkelaar is toegewezen. De voortgang en status wordt bijgehouden per paragraaf en per ‘modeller’.
Wijzigingen die een ontwikkelaar in het model heeft doorgevoerd, worden gekoppeld aan de geselecteerde paragraaf. Dit vergemakkelijkt de laatste stap van het traceren van de vereisten tot aan het model. Als de paragraaf is geïmplementeerd, kan deze als voltooid worden gemarkeerd. Het markeren van een paragraaf als ‘klaar’ is alleen van toepassing voor de huidige ‘modeller’. Een paragraaf kan implementaties in verschillende ‘modellers’ vereisen.
Je vindt de ontwerpspecificaties in de menubalk van de Software Factory, waar voorheen de requirements stonden. Dit deel van de menubalk is standaard gepauzeerd om te voorkomen dat een specificatie per ongeluk aan een ontwikkelaar wordt toegewezen. De menubalk kan slechts een beperkte hoeveelheid informatie weergeven. Daarom is er een console-knop die de ontwerpspecificaties in een aparte pop-up toont, die de gebruikersinterface niet blokkeert. De actieve ontwerpspecificatie of paragraaf wordt gesynchroniseerd met de menubalk. Geblokkeerde paragrafen zijn niet gemarkeerd om te worden geïmplementeerd in de huidige ‘modeller’, of reeds gemarkeerd als voltooid.
Wil je meer weten over het maken van ontwerpspecificaties met de Thinkwise Software Factory, en hoe dit je kan helpen bij het effectiever ontwikkelen van software? Schrijf je dan in voor een Technische Sessie. Dat kan door op de link te klikken of op onderstaande knop.