Select your location
Austria

Austria

Czech Republic

Czech Republic

Germany

Germany

Italy

Italy

The Netherlands

The Netherlands

Romania

Romania

Sweden

Sweden

Greece

Greece

Het geheim van succesvolle software (1): begin met het begrijpen van de business drivers

Oogstrelend design, intuïtieve navigatie, bliksemsnelheid en een heleboel geavanceerde functies: zo ziet de perfecte softwaretoepassing eruit, toch? Nou, dat hangt ervan af. Vereiste nummer één voor elk softwareproject is dat het beantwoordt aan de verwachtingen van de klant. Daarom starten we bij Cegeka uw softwareontwikkelingsproject met demand mapping - 'de basisfase'.

‘Ken uw klant' is niet alleen het motto in alles wat met marketing en sales te maken heeft, het is net zo belangrijk voor softwareontwikkeling. Ondanks de iteratieve, agile aanpak van hedendaagse softwareprojecten is het cruciaal om de fundamenten van een software-app te leggen vóór de kick-off van het project. Vandaar Cegeka's funderingsfase: een reeks workshops die ons toelaten uw organisatie en behoeften grondig te begrijpen.

Van aanvraag tot voorstel in vier stappen:

Stap 1: Identificatie van de drijvende krachten van uw business: doelstellingen, actoren, effecten en te leveren prestaties

Om een duidelijk overzicht van het project te krijgen, identificeren we eerst de high-level business drivers - de uiteindelijke doelen van het project - en prioriteren ze vervolgens. Vragen die we bespreken zijn onder andere:

  • Waarom is nieuwe software nodig: wat is het probleem dat de software app moet oplossen?
  • Wie zal de applicatie gebruiken? Wat zijn hun behoeften, verwachtingen en aanrakingspunten?
    Met welke systemen zal de software communiceren (legacy bedrijfsapplicaties, data stores, data warehouse, externe systemen, cloud services, etc.)?
  • Wat moet de oplossing omvatten - en wat niet?

Door de business drivers te identificeren, krijgen we een goed inzicht in uw organisatie en uw behoeften. Dat stelt ons in staat om tijdens het hele ontwikkelingsproject met u, onze klant, mee te denken.

De reis van de klant in kaart brengen

Tijdens stap 1 van de oprichtingsfase brengen we het klanttraject in kaart: de route die uw verschillende gebruikers volgen wanneer ze met de software werken. Op die manier kunnen we bij elke stap de beste gebruikerservaring garanderen.

Inzicht in de zakelijk drijfveren stelt ons in staat om met de klant mee te denken gedurende de gehele levenscyclus van de softwareontwikkeling. lifecycle.

Step 2: Definiëren van de project scope: functionele, niet-functionele, context- en technische eisen

Zodra we uw business drivers begrijpen, vertalen we die inzichten in een beschrijving van de vereiste functies van de software: de functionele eisen. Daarnaast inventariseren we de niet-functionele eisen (kwaliteitsattributen zoals de gewenste performance). Op basis van deze inzichten en de context van de software bepalen we vervolgens de technische scope, d.w.z. de benodigde architectuur en technologie.

Vragen zijn onder andere:

  • Wat moet het systeem mogelijk maken - wat zijn de benodigde functies (functioneel)?
  • Aan welke criteria moet worden voldaan?
  • Wat is het Minimal Viable Product, de minimale set van functies die absoluut nodig is om een eerste impact te creëren?
  • Wat zijn de kritieke niet-functionele vereisten, d.w.z. hoe moet het systeem werken in termen van prestaties, schaalbaarheid, beschikbaarheid, veiligheid, betrouwbaarheid, interoperabiliteit, onderhoudbaarheid, enz. (niet-functioneel)?
  • Wat is de context van het project: het toepassingslandschap, de use cases, enz.

Alle functies die we in deze stap identificeren, worden opgenomen in een 'feature map' die we gebruiken om ze te plannen op basis van de gestelde prioriteiten. Zodra we de niet-functionele vereisten en de context hebben gedefinieerd, stellen we context-, component- en containerdiagrammen op. Al deze documenten dienen als richtlijnen en referentiepunten voor de softwareontwikkelaars vanaf dag 1 tot de voltooiing van uw softwareproject.

Niet-functionele eisen: de juiste balans vinden

Het opschrijven van de niet-functionele eisen is essentieel, maar wordt vaak vergeten bij de voorbereiding van een softwareproject. Klanten kunnen eigenschappen als performance en beveiliging als vanzelfsprekend beschouwen, in de veronderstelling dat ze inherent zijn aan elke applicatie. Ze hebben natuurlijk gelijk, maar slechts tot op zekere hoogte. Factoren zoals projectbehoeften, budgetbeperkingen, bedrijfspolitiek, regelgeving en nog veel meer hebben allemaal invloed op uw keuze om te investeren (of niet) in een bepaalde niet-functionele eis. Dat is geen gemakkelijke taak. Te uitgebreide specificatie maakt de oplossing te duur om levensvatbaar te zijn. Te beperkte specificatie zal de softwarekwaliteit dramatisch doen dalen. Er zullen dus compromissen moeten worden gesloten. Wij hebben de ervaring die nodig is om te helpen de juiste keuzes te maken.

Stap 3: Het bepalen van de prijs

Pas als alle bovenstaande eisen op een rijtje zijn gezet, maken we het projectbudget. Samen met de softwareontwikkelaars verdelen we de software in subtaken en koppelen we aan elk van die subtaken een aantal mandagen. Onze uiteindelijke kostenraming combineert dat budget met een budget voor onvoorziene gebeurtenissen die zich tijdens de ontwikkeling kunnen voordoen.

Stap 4: Het opstellen van de roadmap

Aan het einde van de voorbereidingsfase stellen we een concreet projectdraaiboek op met daarin de tijdlijn, releases, het aantal benodigde softwareontwikkelaars en de behoefte aan ander personeel zoals beveiligings- of UI-experts, enz.

In close cooperation

De startfase vereist teamwork en is idealiter het begin van een succesvol lange termijn partnership. Om uw behoeften en wensen volledig te begrijpen, luistert en praat een cross-functioneel Cegeka-team - bestaande uit een onder meer een projectmanager, domeinexperts, ontwikkelaars - zowel met uw business als met IT-mensen. Uiteraard houden we die dialoog tijdens het hele softwareontwikkelingsproject om ervoor te zorgen dat de resulterende software uw verwachtingen overtreft.

De basisfase vereist teamwerk en vormt idealiter het begin van een succesvol partnerschap op lange termijn met u.


Deze blog (1) maakt onderdeel uit van een reeks van 4 blogs over 'Het geheim van succesvolle software'. In blog 2 gaan we in op 'hoe wij software van hoge kwaliteit leveren om de TCO te verlagen'. Blog 3 gaat over 'toekomstbestendige toepassingen voor een lagere TCO' en blog 4 over 'vanaf het begin beveiliging inbouwen'. 
Software Development Whitepaper