SlideShare a Scribd company logo
Continuous Code Quality Improvement   --Tools & Process Navigator, 10-Oct-06
Yesterday Better?
Today Better! Continuous Code Quality Improvement Tools & Process
Tools Summary Code Quality Coding Standard Comment Unit Test Others… Fxcop Ncover Ndoc
Tools: Fxcop  Coding Standard Examples Don’t declare visible instance fields Pass base type as parameters Nested type should not be visible Rule One rule to one coding standard Fxcop Check code according to rules Rules container Plugable Introduction
Tools: Fxcop Our Company’s Coding Standard Method must begin with upper case Const values should never be public Must log an exception as soon as it’s caught Extended Rule Implement a small set of Rule API Use Fxcop’s Introspection Engine  Extension
Tools: NCover  Accurate unit test coverage Clear indication of where to enhance unit test  Requirement We expect We need An actual and clear statistics like this:
Tools: NCover Introduction Code coverage A measure for software testing NCover A code coverage tool for .NET
Tools: NCover Practice Extension: NCoverEx Multiple execute in a loop for single assembly Reformat to statistic table and filter output for non-private methods
Tools: NDoc Complete and clear comments A statistics of missing common comments Class Declaration Method Declaration A statistics of missing special comments Whether a parameter or returned value could possibly be null Whether a parameter or returned value could possibly be empty if it is string type Whether a parameter or returned value could possibly be empty if it is collection type Requirement
Tools: NDoc About Ndoc Generates Documentation for .NET Code Multiple Doc Formats Support Open-Source Extension Practice
Process Summary Fix & Update Status Discuss Washup Items Claim Publish Check
Process: Check One Master for Each Tool Every Week Two Phase Phase1 – Partial and Incremental Fxcop - Sort rules by message level NCover - Missing test classes; Missing test methods NDoc - Fixed count for each component Phase2 – Select All
Process: Publish & Claim Uniform Excel Output  Claim Items  ASAP by Self Generally by Component Ownership by Primitive Authorship
Process: Fix & Update Status Must finish by weekend Fit into daily work by each self freely Get help or change ownership if necessary Exclude with reasons
Process: Discuss Discuss On Demand After publishing, fix&update, or anytime else Lightweight Discuss Fxcop rules Discuss difficulty in writing unit tests Discuss comment standard Discuss how to further extend Fxcop/Ndoc/NCover
Conclusion Yes No Funny Find/Develop Better Tools and Process Find Mistakes Work Focus All Corrected, Easy to Review&Track Limited Corrections,  No Review and Track Fix Mistakes Auto,  Quick,  All Results by Tools Manually,  Time-cost,  Limited Results Check Mistakes 1 week An Iteration (6 weeks) Frequency Today Yesterday
Limits Work Load of Tool Extension Measure & Check of Software Design Class TestClass MethodA MethodB TestMethod1 TestMethod2 TestMethod3 More Accurate Unit Test Coverage
Tomorrow From Weekly To Daily Easy to Append Missing Comments and Unit Test Methods Keep Few Mistakes All Along Ultimately Test-Driven Realized Big Rule Repository More and Smarter Tools
Thanks

More Related Content

PPT
Agile Testing - Challenges
PPT
Introducing fx cop
PPTX
www.tutorialsbook.com presents Manual testing
KEY
Testing tests
PPTX
Exploratory Testing for Developers
PPT
Automation testing
PPT
PPT
Reporting On The Testing Process
Agile Testing - Challenges
Introducing fx cop
www.tutorialsbook.com presents Manual testing
Testing tests
Exploratory Testing for Developers
Automation testing
Reporting On The Testing Process

What's hot (20)

PPTX
ISTQB Advanced Test Automation Engineering (CTAL-TAE) Q&A
PPTX
ISTQB Advanced Level Test Automation Engineering Training
PPT
Automated Unit Testing
PPTX
Pa chapter08-testing integrating-the_programs-cs_390
PDF
Innovations in Test Automation: It’s Not All about Regression
PPTX
Software testing
PPTX
QA part 2
PPTX
Choosing a performance testing tool
PDF
Test Smarter: Efficient Coverage Metrics That Won't Leave You Exposed
PPT
SD & D analysis
PPT
BJDsolutions.com agile process
PDF
Salt City Digital - Automation Testing
PDF
4. The Software Development Process - Testing
PPTX
Hemanth
PPT
Hunt On The White Rabbit 10 A Eng
PPTX
PPTX
Software analysis
PPTX
Automation testing
PDF
Test Automation
PPTX
Infoshare integrating test automation in dev ops and agile
ISTQB Advanced Test Automation Engineering (CTAL-TAE) Q&A
ISTQB Advanced Level Test Automation Engineering Training
Automated Unit Testing
Pa chapter08-testing integrating-the_programs-cs_390
Innovations in Test Automation: It’s Not All about Regression
Software testing
QA part 2
Choosing a performance testing tool
Test Smarter: Efficient Coverage Metrics That Won't Leave You Exposed
SD & D analysis
BJDsolutions.com agile process
Salt City Digital - Automation Testing
4. The Software Development Process - Testing
Hemanth
Hunt On The White Rabbit 10 A Eng
Software analysis
Automation testing
Test Automation
Infoshare integrating test automation in dev ops and agile
Ad

Similar to Continuous Code Quality Improvement (20)

PPT
Codingstandards matiar
PPTX
Code Metrics
PPT
N depend & cql
PPT
Automating C# Coding Standards using StyleCop and FxCop
PPTX
Code Reviews
PPTX
Code quality
PPTX
Code Quality
PPS
ISTQB Foundation - Chapter 3
PDF
CAJ-014 Rick Spiewak
PDF
Back to the basics principles for constructing quality software
PPTX
Quality Coding: What's New with Visual Studio 2012
PPTX
Quality Coding: What’s New with Visual Studio 2012
PPTX
Quality Coding with Visual Studio 2012
PDF
[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...
PPT
ISTQB / ISEB Foundation Exam Practice
PPTX
Improving the Design of Existing Software
PPT
Iseb, ISTQB Static Testing
PDF
Clean code and code smells
PDF
Software Development Standard Operating Procedure
PPTX
How Functional Programming Made Me A Better Developer
Codingstandards matiar
Code Metrics
N depend & cql
Automating C# Coding Standards using StyleCop and FxCop
Code Reviews
Code quality
Code Quality
ISTQB Foundation - Chapter 3
CAJ-014 Rick Spiewak
Back to the basics principles for constructing quality software
Quality Coding: What's New with Visual Studio 2012
Quality Coding: What’s New with Visual Studio 2012
Quality Coding with Visual Studio 2012
[DevDay2018] Let’s all get along. Clean Code please! - By: Christophe K. Ngo,...
ISTQB / ISEB Foundation Exam Practice
Improving the Design of Existing Software
Iseb, ISTQB Static Testing
Clean code and code smells
Software Development Standard Operating Procedure
How Functional Programming Made Me A Better Developer
Ad

More from Ocean Dong (11)

PPT
Software Dev Process In A Nutshell
PPTX
Review of code review
PPT
RUP Basics
PPT
Software Design Principles
PPT
Groovy Intro
PPT
A Glance At Scrum
PPT
How To Write Work Mail
PPT
Stress free email handling
PPT
柬埔寨之旅
PPT
Introduction About Lean Way
PPT
Agile Testing
Software Dev Process In A Nutshell
Review of code review
RUP Basics
Software Design Principles
Groovy Intro
A Glance At Scrum
How To Write Work Mail
Stress free email handling
柬埔寨之旅
Introduction About Lean Way
Agile Testing

Continuous Code Quality Improvement

  • 1. Continuous Code Quality Improvement --Tools & Process Navigator, 10-Oct-06
  • 3. Today Better! Continuous Code Quality Improvement Tools & Process
  • 4. Tools Summary Code Quality Coding Standard Comment Unit Test Others… Fxcop Ncover Ndoc
  • 5. Tools: Fxcop Coding Standard Examples Don’t declare visible instance fields Pass base type as parameters Nested type should not be visible Rule One rule to one coding standard Fxcop Check code according to rules Rules container Plugable Introduction
  • 6. Tools: Fxcop Our Company’s Coding Standard Method must begin with upper case Const values should never be public Must log an exception as soon as it’s caught Extended Rule Implement a small set of Rule API Use Fxcop’s Introspection Engine Extension
  • 7. Tools: NCover Accurate unit test coverage Clear indication of where to enhance unit test Requirement We expect We need An actual and clear statistics like this:
  • 8. Tools: NCover Introduction Code coverage A measure for software testing NCover A code coverage tool for .NET
  • 9. Tools: NCover Practice Extension: NCoverEx Multiple execute in a loop for single assembly Reformat to statistic table and filter output for non-private methods
  • 10. Tools: NDoc Complete and clear comments A statistics of missing common comments Class Declaration Method Declaration A statistics of missing special comments Whether a parameter or returned value could possibly be null Whether a parameter or returned value could possibly be empty if it is string type Whether a parameter or returned value could possibly be empty if it is collection type Requirement
  • 11. Tools: NDoc About Ndoc Generates Documentation for .NET Code Multiple Doc Formats Support Open-Source Extension Practice
  • 12. Process Summary Fix & Update Status Discuss Washup Items Claim Publish Check
  • 13. Process: Check One Master for Each Tool Every Week Two Phase Phase1 – Partial and Incremental Fxcop - Sort rules by message level NCover - Missing test classes; Missing test methods NDoc - Fixed count for each component Phase2 – Select All
  • 14. Process: Publish & Claim Uniform Excel Output Claim Items ASAP by Self Generally by Component Ownership by Primitive Authorship
  • 15. Process: Fix & Update Status Must finish by weekend Fit into daily work by each self freely Get help or change ownership if necessary Exclude with reasons
  • 16. Process: Discuss Discuss On Demand After publishing, fix&update, or anytime else Lightweight Discuss Fxcop rules Discuss difficulty in writing unit tests Discuss comment standard Discuss how to further extend Fxcop/Ndoc/NCover
  • 17. Conclusion Yes No Funny Find/Develop Better Tools and Process Find Mistakes Work Focus All Corrected, Easy to Review&Track Limited Corrections, No Review and Track Fix Mistakes Auto, Quick, All Results by Tools Manually, Time-cost, Limited Results Check Mistakes 1 week An Iteration (6 weeks) Frequency Today Yesterday
  • 18. Limits Work Load of Tool Extension Measure & Check of Software Design Class TestClass MethodA MethodB TestMethod1 TestMethod2 TestMethod3 More Accurate Unit Test Coverage
  • 19. Tomorrow From Weekly To Daily Easy to Append Missing Comments and Unit Test Methods Keep Few Mistakes All Along Ultimately Test-Driven Realized Big Rule Repository More and Smarter Tools