16a. Softwarevereisten
2021-04-16
slides.com/jod/pt_16a
Docent: Jo Devriendt
Assistent: Ann Philips
Coördinator: Joost Vennekens
voornaam.achternaam@kuleuven.be
Programmeertechnieken [B-KUL-YI0855]
De Nayer, IIW, E-ICT, 2Ba + schakel, 2020-2021
Programmeertechnieken [B-KUL-YI0855]
De Nayer, IIW, E-ICT, 2Ba + schakel, 2020-2021
Programmeerloop
Analyseer probleem
Kies onopgelost deel van probleem
Programmeer simpel algoritme dat deelprobleem oplost
Nog deel probleem onopgelost?
Verbeter code:
- Sneller
- Betrouwbaarder
- Uitbreidbaarder
- Leesbaarder
- ...
Evalueer correctheid
Stapsgewijs verfijnen
Voldoet de software aan de vereisten?
Wat zijn de vereisten voor de software?
Programmeertechnieken [B-KUL-YI0855]
De Nayer, IIW, E-ICT, 2Ba + schakel, 2020-2021
Vereisten
Functionele vereisten: wat moet de software doen?
- een examenrooster uitrekenen
- een zelfrijdende auto besturen
- vrienden en familie met elkaar in contact brengen (een sociaal netwerk)
Programmeertechnieken [B-KUL-YI0855]
De Nayer, IIW, E-ICT, 2Ba + schakel, 2020-2021
Vereisten
Niet-functionele vereisten: wat moet de software zijn?
- performantie: snel genoeg om 200 examens in een uur in te plannen
- betrouwbaarheid: geen bugs bevatten die de auto laten crashen
- stabiliteit: 99% up-time hebben
- privacy: geen data van de gebruikers op straat gooien
- veiligheid: niet makkelijk te hacken
- uitbreidbaarheid: gedesigned voor toekomstige uitbreidingen
- ...
Programmeertechnieken [B-KUL-YI0855]
De Nayer, IIW, E-ICT, 2Ba + schakel, 2020-2021
Programmeerloop
Analyseer probleem
Kies onopgelost deel van probleem
Programmeer simpel algoritme dat deelprobleem oplost
Verbeter code
Evalueer correctheid
Voldoet de software aan de vereisten?
Wat zijn de vereisten voor de software?
Vaak wijzigen vereisten doorheen de tijd.
- Verificatie: testen of de huidige vereisten voldaan zijn.
- Validatie: testen of de huidige vereisten de juiste zijn.
Implementeren
Testen
Debuggen
Programmeertechnieken [B-KUL-YI0855]
De Nayer, IIW, E-ICT, 2Ba + schakel, 2020-2021
Tijdsbesteding
1/3 van de tijd, 90% van de cursus
Programmeertechnieken [B-KUL-YI0855]
De Nayer, IIW, E-ICT, 2Ba + schakel, 2020-2021
Samenvatting
- Functionele en niet-functionele vereisten voor software
- Testen zorgt ervoor dat de code gevalideerd en geverifieerd wordt
- Testen en debuggen nemen elk ongeveer evenveel tijd in beslag als het programmeren van de code zelf
16a. Softwarevereisten
By Jo Devriendt
16a. Softwarevereisten
- 643