Non functional requirements Altijd lastig!
Non functional requirements Altijd lastig! Non functional requirements Altijd lastig!
Non functional requirements
- Page 2 and 3: Inleiding • Even voorstellen Vinc
- Page 4 and 5: Aandachtsgebieden Aandachtsgebieden
- Page 6 and 7: Grip op Functionaliteit eisen PRIOR
- Page 8 and 9: Non-functionaliteitseisen (ISO9126)
- Page 10 and 11: Voorbeeld non-functionaliteit ident
- Page 12 and 13: KwaliteitsRadar : Gebruik • Wat >
- Page 14 and 15: Demo KwaliteitsRadar KwaliteitsRada
- Page 16 and 17: KwaliteitsRadar: de uitkomsten Rela
- Page 18 and 19: Non-functionaliteit taxeren Risico
- Page 20 and 21: (Non-) functionaliteit beheersen Ei
<strong>Non</strong> <strong>functional</strong> <strong>requirements</strong>
Inleiding<br />
• Even voorstellen<br />
Vincent Verboven<br />
Senior Quality Consultant<br />
• Beheersing volgens Q-MAP<br />
• Aandachtsgebieden<br />
• <strong>Non</strong>-<strong>functional</strong> <strong>requirements</strong>
Beheersing conform QMap<br />
PROJECT<br />
identificeren<br />
waarderen<br />
specificeren<br />
taxeren risico's<br />
beheersen risico's<br />
Product Proces<br />
Wat moet het systeem/ proces doen?<br />
Wat is het relatief belang?<br />
Wat zijn concrete eisen?<br />
Welke risico’s zijn hieraan verbonden?<br />
Welke maatregelen zijn nodig<br />
en voeren we uit?
Aandachtsgebieden<br />
Aandachtsgebieden voor projectbeheersing<br />
Functionaliteit<br />
Product<br />
<strong>Non</strong>-<br />
<strong>functional</strong>iteit<br />
Project<br />
Planmatige<br />
beheersing<br />
Proces<br />
Omgevings-<br />
factoren
(non) Functionaliteit<br />
identificeren - waarderen - specificeren<br />
• Identificeren:<br />
> Vaststellen van functionele eisen en wensen<br />
• Waarderen:<br />
> MoSCoW<br />
> Hoog, middel, laag<br />
> Must have, should have, nice to have<br />
• Specificeren:<br />
> SMART<br />
> Tegenstrijdigheden verwijderen<br />
PROJECT<br />
identificeren<br />
waarderen<br />
specificeren<br />
taxeren risico's<br />
beheersen risico's<br />
Product Proces
Grip op Functionaliteit<br />
eisen<br />
PRIORITEREN<br />
TOETSEN<br />
Specificaties<br />
Ontwerp<br />
Realisatie<br />
Module/unit<br />
test<br />
Functionaliteit<br />
Product<br />
Exploitatie<br />
Acceptatie<br />
test<br />
Integratie<br />
test<br />
<strong>Non</strong>-<br />
<strong>functional</strong>iteit<br />
PROJECT<br />
Planmatige<br />
beheersing<br />
verwachtingen<br />
TESTEN<br />
Proces<br />
Omgevings-<br />
factoren
Voorbeeld <strong>functional</strong>iteit<br />
identificeren - waarderen - specificeren<br />
Aanschaf van een kinderfiets<br />
• Identificeren:<br />
> Versnellingen<br />
> Bagagedrager<br />
• Waarderen:<br />
> Versnellingen is should have<br />
> Bagagedrager is must have<br />
• Specificeren:<br />
> Versnellingen minimaal 5 met bediening<br />
aan het stuur<br />
> Bagagedrager achterop en kan<br />
minimaal 20 kg aan<br />
PROJECT<br />
identificeren<br />
waarderen<br />
specificeren<br />
taxeren risico's<br />
beheersen risico's<br />
Product Proces
<strong>Non</strong>-<strong>functional</strong>iteitseisen (ISO9126)<br />
<strong>Non</strong>-<strong>functional</strong>iteitseisen, wat zijn het?<br />
• een verzameling (gewenste)<br />
eigenschappen/doelen die vanuit het<br />
oogpunt van minimaal één stakeholder<br />
genoemd worden<br />
• Bijvoorbeeld:<br />
> Juistheid<br />
> Bedienbaarheid<br />
> Foutbestendigheid
Grip op<br />
<strong>Non</strong>-<strong>functional</strong>iteit<br />
Extended ISO<br />
model<br />
Functionaliteit<br />
Product<br />
<strong>Non</strong>-<br />
<strong>functional</strong>iteit<br />
PROJECT<br />
Planmatige<br />
beheersing<br />
Proces<br />
Omgevings-<br />
factoren
Voorbeeld non-<strong>functional</strong>iteit<br />
identificeren - waarderen - specificeren<br />
Aanschaf van een kinderfiets<br />
• Identificeren:<br />
> Betrouwbaarheid versnellingen<br />
> Robuustheid van de fiets<br />
• Waarderen:<br />
> Betrouwbaarheid is must have<br />
> Robuustheid is should have<br />
• Specificeren:<br />
> Bij het gebruik van de versnellingen mag<br />
nooit tussen twee versnellingen gekomen<br />
worden<br />
> De fiets mag niet beschadigen bij het<br />
op- en afrijden van de stoep<br />
PROJECT<br />
identificeren<br />
waarderen<br />
specificeren<br />
taxeren risico's<br />
beheersen risico's<br />
Product Proces
<strong>Non</strong>-<strong>functional</strong>iteit mbv Kwaliteitradar<br />
identificeren - waarderen<br />
Leerbaarheid<br />
Bedienbaarheid<br />
KwaliteitsRadar<br />
Foutbestendigheid
KwaliteitsRadar :<br />
Gebruik<br />
• Wat<br />
> Vaststellen onderling belang van non<strong>functional</strong>iteitseisen<br />
(het “waarderen”)<br />
• Hoe<br />
> Het belang van de ene eis wordt afgezet tegen het<br />
belang van de andere eis<br />
> <strong>Non</strong> <strong>functional</strong>iteitseisen worden omschreven in<br />
de terminologie van de deelnemer<br />
„kiezen tussen stellingen‟<br />
• Doel:<br />
› Communicatie op gang brengen tussen alle<br />
belanghebbenden / stakeholders
Eigenschappen KwaliteitsRadar<br />
• Op basis van stellingen een objectieve afweging tussen<br />
kwaliteitsattributen<br />
• Meerdere referentiekaders mogelijk<br />
> ISO 9126 / Quint2<br />
> TMap ®<br />
> Referentiekader van een klant (bijv. KEM bij BC ICT)<br />
• Aanpasbaar aan klantsituatie<br />
• Meerdere belanghebbenden/rollen<br />
• Rapportagemogelijkheden<br />
Downloaden: http://www.tmap.net/Home/TMap/Downloads/Kwaliteitsradar.jsp
Demo KwaliteitsRadar<br />
KwaliteitsRadar
KwaliteitsRadar<br />
PROJECT<br />
identificeren<br />
waarderen<br />
specificeren<br />
taxeren risico's<br />
beheersen risico's<br />
Product Proces<br />
Uitkomst:<br />
relatieve verhoudingen
KwaliteitsRadar: de uitkomsten<br />
Relatief belang „vastgesteld‟, maar……….<br />
Groepssessie:<br />
UITKOMST # WAARHEID!!!<br />
• samen vaststellen werkelijke relatieve<br />
belang (waarderen)<br />
• samen eisen formuleren (specificeren)
(<strong>Non</strong>-) <strong>functional</strong>iteit<br />
specificeren<br />
• Uitschrijven non-<strong>functional</strong>iteit<br />
• SMART-eisen<br />
• Toetsbaar tijdens het project<br />
(waarneembaar tijdens ontwikkeling)<br />
PROJECT<br />
identificeren<br />
waarderen<br />
specificeren<br />
taxeren risico's<br />
beheersen risico's<br />
Product Proces
<strong>Non</strong>-<strong>functional</strong>iteit<br />
taxeren<br />
Risico’s centraal stellen:<br />
• Haalbaarheid concrete eisen<br />
• Waarneembaarheid in project<br />
• Risico = Faalkans * Gevolg<br />
PROJECT<br />
identificeren<br />
waarderen<br />
specificeren<br />
taxeren risico's<br />
beheersen risico's<br />
Product Proces
Voorbeeld (non-)<strong>functional</strong>iteit<br />
taxeren<br />
Aanschaf van een kinderfiets<br />
• Versnellingen:<br />
> Bij afwezigheid van versnellingen is tijdsverlies<br />
het risico<br />
• Bagagedrager:<br />
> Bagagedrager afwezig: risico instabiliteit<br />
doordat de tas aan het stuur hangt cq op de rug<br />
zit.<br />
• Robuustheid:<br />
> Als de fiets te snel stuk gaat, aanschaf<br />
> nieuwe fiets: financieel risico<br />
PROJECT<br />
identificeren<br />
waarderen<br />
specificeren<br />
taxeren risico's<br />
beheersen risico's<br />
Product Proces
(<strong>Non</strong>-) <strong>functional</strong>iteit<br />
beheersen<br />
Eisen<br />
Risico’s<br />
Maatregelen<br />
Optimale mix van maatregelen om risico‟s te<br />
beheersen.
Voorbeeld Fiets<br />
beheersen van risico’s<br />
Aanschaf van een kinderfiets<br />
• Functionaliteit:<br />
> Wijzigingen (7 versnellingen) afstemmen met<br />
leverancier<br />
• <strong>Non</strong>-<strong>functional</strong>iteit:<br />
> Consumentengids raadplegen (testen<br />
uitegvoerd), uitproberen