Visuele oplossingen


Support
Registreren
Inloggen
Probeer gratis uit

Hoe lang duren vereisten?

Hoe lang duren vereisten?

Inhoudsopgave

Heeft u zich ooit afgevraagd hoeveel tijd het zou kosten om de vereisten voor uw aanstaande project te creëren? Business analisten en managers stellen deze vraag vaak.

Voor de meeste problemen met betrekking tot software- en productontwikkeling is er geen pasklaar antwoord; de reactie hangt echt af van uw unieke omstandigheden.

Verschillende variabelen dragen bij aan dit probleem, leidende industriegemiddelden suggereren welk percentage van de inspanning van een project zou moeten worden besteed aan het ontwikkelen van vereisten, zoals het verzamelen en uitlokken.

Hoe kunt u de juiste hoeveelheid tijd en moeite bepalen die nodig is voor activiteiten zoals het verzamelen van vereisten? Het is niet verrassend dat gegevens van verschillende benchmarks niet altijd met elkaar overeenkomen. Het is ook de vraag of deze "gebruikelijke" projecten verwant zijn aan die van jou. Om u te helpen dit probleem op te lossen, heb ik enkele ideeën uit mijn boek "Meer over softwarevereisten" in dit artikel overgenomen - bekijk het!

Benchmarks voor de industrie

Om een ​​voorbeeld te geven van het potentiële nut van benchmarks, verwijzen wij u naar tabel 1. De gepresenteerde gegevens geven sectorgemiddelden aan voor verschillende inspanningen om vereisten op te wekken en prototypes te maken met betrekking tot projecten met een omvang van 10,000 functiepunten (ongeveer een miljoen regels code), afkomstig van "Softwarebeoordelingen, benchmarks en best practices" van Capers Jones. Hoe relevant zijn deze cijfers voor uw eigen project?

Het gebruik van industriële benchmarks zoals deze is niet zonder nadelen. De gegevens vertellen ons niet of de projecten echt succesvol waren of dat er een verband was tussen succes en inspanningen om aan de eisen te voldoen. Deze informatie geeft ons slechts een gemiddelde van wat er is uitgevoerd, waardoor het moeilijk is om het succes van elk afzonderlijk project nauwkeurig te beschrijven.

Hulpprogramma voor beheer van ALM-vereisten

Het toewijzen van 10% of minder van de inspanningen van het team aan taken zoals het verzamelen van vereisten kan nuttig zijn, op voorwaarde dat ze niet vast komen te zitten in analyseverlamming. In tegenstelling tot wat vaak wordt gedacht, zal het investeren van meer moeite in het verbeteren van uw proces voor het ontwikkelen van vereisten de productie juist versnellen. Door gebruik te maken van dit concept levert elk project een enorm investeringsrendement op!

Omdat ik bij Kodak aan kleinere projecten werkte, besteedde ons team vaak 15% tot 18% van de totale inspanning aan vereiste activiteiten. We ontdekten dat deze investering het aantal benodigde aanpassingen na oplevering verminderde. Het is lastig om oorzaken en gevolgen met zekerheid te verbinden, maar het is waarschijnlijk dat ons lage onderhoudspercentage grotendeels te danken was aan het cultiveren van aanzienlijke gebruikersparticipatie.

Het is een lastige vraag om erachter te komen hoeveel tijd het verzamelen van de vereisten voor uw volgende project precies kost, en het kan moeilijk zijn om nauwkeurig in te schatten. Maar gelukkig geeft figuur 1 ons enig inzicht in de variabelen die dat proces kunnen verkorten of verlengen; helpt u effectiever in te schatten bij het creëren van die noodzakelijke vereisten.

Uw eigen ervaring

Om te beginnen kan het nuttig zijn om de gegevens van eerdere projecten te bekijken om te bepalen wat voor soort inspanning specifiek is besteed aan het verzamelen van vereisten. Hierdoor kunt u beoordelen hoe succesvol uw ontwikkelingsproces in het verleden is geweest en kunt u deze informatie gebruiken bij het inschatten van de kosten voor toekomstige inspanningen. Pas als extra factor uw eerste schattingen aan door te verwijzen naar figuur 1, waarin de verschillen tussen aanstaande projecten en benchmarkprojecten worden geschetst, en door rekening te houden met andere relevante overwegingen met betrekking tot uw huidige project. Door elk van de elementen in figuur 1 te beoordelen op een schaal van 0 (geen invloed) tot 5 (groot effect), kan deze evaluatie u helpen risicofactoren te detecteren die uw ontwikkelingsproces van vereisten kunnen verlengen.

Vereistenbeheersysteem

Naast andere elementen is het essentieel om rekening te houden met de levenscyclus van het project. Ga er niet vanuit dat alle vereisten aan het begin moeten worden verzameld, zoals bij een sequentiële of watervalbenadering (geïllustreerd door de stippellijn in figuur 2). In plaats van een onderscheidende 'vereistenfase' te hebben, moet u nadenken over een reeks vereisten die door elke ontwikkelingsfase lopen. Naarmate onze systeemvereistenspecificatie (SRS) evolueert en wijzigingsverzoeken beginnen op te komen, moeten we ijverig blijven in het actief beheren van de basisvereisten. Dit is een continu proces dat constante aandacht vereist.

Iteratieve en incrementele benaderingen

Agile ontwikkelingsbenaderingen, zoals Scrum, volgen een progressieve route. Hierdoor kunnen gebruikers de potentieel nuttige functies van het product snel in handen krijgen en gemakkelijk hun vereisten aanpassen als dat nodig is. Zo kunnen ontwikkelaars moeiteloos voldoen aan de steeds veranderende zakelijke eisen. Bij agile projecten is er zelden behoefte aan grote aanvraaginitiatieven vanwege kleine maar regelmatige inspanningen om vereisten te verzamelen (ononderbroken lijn in figuur 2).

Vereisten basislijn

In plaats van gefocust te zijn op het begin van het project, wordt de vereiste inspanning in een agile project verspreid over verschillende stadia. Eerste verkenningen leiden tot een achterstand in het detailleren van functionaliteit op basis van het prioriteitsniveau. Wanneer het tijd is voor ontwikkeling en testen, verfijnen teams de vereisten zodat ze voldoende details hebben om met vertrouwen door te gaan met elke iteratie.

Jaren geleden maakte ik deel uit van een softwareontwikkelingsteam dat een incrementele aanpak hanteerde om succes te garanderen. Elke cyclus zou ons project in fasen van drie weken worden vrijgegeven, waarbij het eerste deel gewijd was aan het plannen van vereisten en het ontwikkelen voor die specifieke stap. We boekten geweldige resultaten met deze methode, omdat het om de paar weken nuttige functionaliteit naar het zakelijke gebruikersbestand bracht. Het team heeft hard gewerkt om snel nieuwe functionaliteit in stappen te leveren, waardoor gebruikers regelmatig updates kregen. Deze gebruikersinzichten waren van onschatbare waarde voor het begeleiden van het project en om ervoor te zorgen dat maximale waarde werd bereikt door de voltooiing ervan.

Niet alle initiatieven zijn geschikt om in kleine stukjes aan te leveren. Bij het herbouwen van een bestaande applicatie moet het nieuwe systeem over een substantieel functionaliteitsniveau beschikken voordat gebruikers ernaar kunnen overstappen. Ongeacht hoeveel uw team voltooit in elke projectcyclus, ze moeten de vereisten voor die specifieke reeks begrijpen om langdurige herhalingen en herschrijvingen van ontwerpen, code of tests te voorkomen.

Planning Eisen Elicitatie

Het is vaak ingewikkelder dan het lijkt wanneer u begint met het samenstellen van de vereisten voor een nieuw project. Houd er bij het brainstormen over activiteiten die uw analisten moeten uitvoeren rekening mee of zij taken als deze moeten uitvoeren:

  • Het onderhouden van relaties met productkampioenen door middel van onderhandelingen.
  • Inzichten vergaren door middel van interactieve workshops en diepte-interviews.
  • Bestaande records en producten onderzoeken om mogelijke verbeteringen te ontdekken.
  • Opstellen, verspreiden en ontcijferen van enquêtes.
  • Het ontwerpen en beoordelen van prototypes, het bestuderen van modellen en andere vereiste perspectieven voor succes.
  • Succes behalen door risicobeoordeling, ervoor zorgen dat veiligheids- en beveiligingsprotocollen worden nageleefd, mogelijke storingen analyseren en gevarenonderzoeken uitvoeren.
  • Het vastleggen van de details van uw behoeften in een gegevensopslagplaats.
  • Zorgvuldig onderzoeken van de eisen die zijn beschreven in de eisenspecificaties.
  • Testcases maken op basis van de vermelde vereisten en hun prestaties nauwgezet evalueren.
  • Na een grondige beoordeling of testen kunt u de vereistenspecificaties verfijnen om nauwkeurigheid te garanderen.

Om de inspanning die nodig is voor toekomstige projecten beter te kunnen inschatten, is het essentieel om meer te weten te komen over de verschillende taken die uw team mogelijk moet uitvoeren als onderdeel van het opvragen, analyseren, specificeren en valideren van vereisten. Deze kennis helpt u verder te begrijpen hoeveel tijd elke taak kost en helpt u bij het verbeteren van de prestaties van uw project. Het betekent niet noodzakelijkerwijs dat alle activiteiten bij elke onderneming moeten worden uitgevoerd, maar eerder begrijpen wat er moet worden gedaan, leidt tot een succesvol resultaat.

Vergeet dit bericht niet te delen!

Top

De hoge kosten van slecht behoeftebeheer

Juni 06, 2024

11 uur EST | 5 uur CET | 8 uur PST

Louis Arduin

Hoofdluidspreker

Impact en oplossingen voor inefficiënt behoeftebeheer

Ontdek de aanzienlijke impact die inefficiënte vereistenbeheerpraktijken kunnen hebben op projectkosten en tijdlijnen.