• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Code inspecties
 

Code inspecties

on

  • 1,322 views

 

Statistics

Views

Total Views
1,322
Views on SlideShare
1,188
Embed Views
134

Actions

Likes
0
Downloads
6
Comments
0

2 Embeds 134

http://devnology.nl 128
http://www.ferox-it.nl 6

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Code inspecties Code inspecties Presentation Transcript

    • Code-inspecties Ronald Harmsen Frank Oppedijk
    • Agenda  Inleiding  Introductie IfSQ-Level 1 (6 indicatoren)  Hands-on: inspectie Level 1  Introductie IfSQ-Level 2 (12 indicatoren)  Hands-on: inspectie Level 2  IfSQ-Level 2: nog 3 indicatoren  Vragen & discussie
    • Waarom?  Fouten vinden in bestaande code  Fouten voorkómen – door verhoging van kwaliteit van toekomstige code  Inzicht krijgen in betrouwbaarheid en onderhoudbaarheid
    • Voordelen en nadelen  Geïnspecteerde software levert half zoveel rework op  Geïnspecteerde software kost 90% minder onderhoud  Inspectie vindt 60% meer fouten dan testen  Inspectie is 4x meer effectief dan testen  Developers die code inspecteren zijn minimaal 20% productiever  Code-inspecties kosten tijd  Code-inspecties zijn saai   Code-inspecties kunnen negatief werken op de sfeer in het team
    • Soorten code-inspecties  Formeel  Lightweight
    • Formele code-inspectie  Bijv. Fagan-inspecties  Meerdere rollen en fasen  Effectief  Defect Removal Efficiency ~60%  Ter vergelijking: DRE van testen: 35%  Tijdrovend (sneuvelt daardoor vaak)
    • Lightweight code-inspectie  Bijv. ‘walkthrough’, pair-programming  Informeel  Sneller  Minder effectief (DRE ~50%)  Minder efficiënt? (Formele inspecties meer gefocused; betere payoff)
    • IfSQ  Formeel proces; objectief  Snel  Op papier
    • IfSQ: 3 levels  Level-1: 6 indicatoren (1 min/pagina)  Level-2: 12 (15) indicatoren (3 min/pagina)  Level-3: 19 indicatoren (5 min/pagina)
    • IfSQ Level-1: indicatoren  Work In Progress  WIP-1—Vague "To Do"  WIP-2—Disabled Code  WIP-3—Empty Statement Block  Structured Programming  SP-1—Routine Too Long  SP-2—Nesting Too Deep  Single Point of Maintenance  SPM-1—Magic Numbers
    • IfSQ Level-1: proces
    • IfSQ Level-1: hands-on  Voer inspectie uit op uitgereikte code  Level-1  20 minuten  Noot: indicatoren Level-1 staan in boekje en op Quick Reference Card
    • IfSQ Level-1: hands-on  Resultaten code-inspectie:  WIP-1—Vague "To Do":2  WIP-2—Disabled Code: 38  WIP-3—Empty Statement Block: 5  SP-1—Routine Too Long: 10  SP-2—Nesting Too Deep: 0  SPM-1—Magic Numbers: 31
    • IfSQ Level-2: 6 extra indicatoren  Structured Programming  SP-3—Routine Too Complex  Single Point of Maintenance  SPM-2—Magic Strings  SPM-3—Copy/Paste Programming  Defensive Programming  DP-1—Parameter Not Checked  DP-2—Status Ignored After Call  DP-3—Unexpected State Not Trapped
    • IfSQ Level-2: proces
    • IfSQ Level-2: hands-on  Voer inspectie uit op zelf meegebrachte code  Level-2  30 minuten  Noot: indicatoren Level-2 staan op Quick Reference Card
    • IfSQ Level-2: rating  Bereken defect indicators per 1000 LOC  Bepaal vervolgens de rating: count/kLOC (min.) count/kLOC (max.) rating 0 0 10 1 1 9 2 4 8 5 9 7 10 19 6 20 49 5 50 99 4 100 199 3 200 499 2 500 999 1 1000 unlimited 0
    • IfSQ Level-2  Nog 3 indicatoren  Minder objectief  CfC-NC—Not Complete  CfC-WR—Wrong Result  CfC-HtM—Hard to Maintain
    • Vragen?