Professional – Multilingual – Service Oriented
Automate the Process
Deliver Quality
Agenda
 Presenter
 Quality & QA
 DEV Lifecycle
 Cost of quality
 Technical debt
 Issues
 Git, CI, Sonar, Se
 Bottom line
 Thanks
Ady Beleanu
• Quality inquisitor
• 10 years in field of QC & QA
• Managed projects & teams
• Coached & inspired testers
• https://www.linkedin.com/in/adybeleanu
Quality
Quality (ISO) = The totality of the characteristics of an entity
that bear on its ability to satisfy stated or implied needs
“= ability of product to be able to satisfy end users”
The concept of making products fit for a purpose.
Minimising defects and problems.
You - feel it!
Quality Perspectives
External
 Valuable for users
 Internal
 Right design
 Simple to understand
 Extendable
 Maintainable
Quality Focus – Final product
 Added value
 Attention to detail
 Process behind the product  Innovation & Pioneering
 Both – from point A to point B
 the difference - usability, safety, comfort, reliability, and so
on
vs.
Quality Assurance – The Pieces
For the system to work, each piece has to be:
 Perfect
 Easily integrated
 Tested
 Reusable
vs.
Key Success Criteria
THE BIBLE of the project
• Business case
• Architecture
• Requirements
• Quality strategy
• Project Synchronization
“Establishing your Automation Development Lifecycle”, Galen
Costs
• Lack of Quality Management
– Plan the quality
– Perform QA
– Perform QC
• Technical DEBT
• 1 External Failure Cost
• 2 Internal Failure Cost
• 3 Inspection (Appraisal) Cost
• 4 Prevention Cost
Costof Quality
$59.5 Billion Cost Software Errors in U.S. Economy / Year
estimated $22.2 billion,
could be prevented
 improved testing
infrastructure  eliminate
defects earlier / efficiently
*NIST
Assessment
Technical DEBTf Quality
http://otja.wordpress.com/2011/11/21/what-am-i-
thinking-about-visualising-your-technical-debt/
GOOD code vs. BAD code
or
Doing it
RIGHT & LONGER
/
QUICK & DIRTY
SDLC
Common Repository
http://otja.wordpress.com/2011/11/21/what-am-i-
thinking-about-visualising-your-technical-debt/
• Traceability
• Visibility
• Versioning
• Best practices
• Non-Latency
• Concurrency
CHAOS
Lack of integration
http://otja.wordpress.com/2011/11/21/what-am-i-thinking-about-visualising-your-technical-debt/
Issues
• Broken code check-in
• Uncertainty
• Missing code files
• Small mistakes – BIG issues
• Missing integration
The KEY to sustainable quality
REUSE of Resources
• Planning
• Analysis
• Design
• Development
• Testing
• Deployment
http://www.itcinfotech.com
A framework example
Repository
Source Code Management (SCM)
tool
Version Control System (VCS)
Continuous Integration
Automated builds
Static code analysis
Code coverage
reports
Trigger
Code aggregator
Central point for
quality
Problem no.1 – Code Quality
http://www.bonkersworld.net/code-reviews/
Poor unit test coverage Complexity for integration test
No full regression (100%) Tight couplings
Why code review?
Find bugs early / Fix cheap
Coding standards compliance
Sharing knowledge
Consistent design and
implementation
Higher software security
Team cohesion
Confidence of stakeholders
Code Quality Measurement Needed !!!
… but, WHATto measure?
Context – project done with & without code review:
 10k LOC,
 10eng,
 3month project
 Measured # of bugs found by QA Team in the next 6
months
The result: Code review would have saved half the cost of
fixing the bugs. Plus, they would have found 162 additional
bugs.
Code Review – Case Study
Code Review – Use Case
Code Review – Use Case
Code Review - trend & numbers
2012 study (VDC Research)
• 17.6% software engineers surveyed currently use automated tools for CR
• 23.7% expect to use them within 2 years.
Capers Jones' - 12,000 SW dev projects:
- 60-65% - The latent defect discovery rate of formal inspection.
- < 50% - For informal inspection.
- 30% - The latent defect discovery rate for most forms of testing.
150 lines of code per hour - Typical code review rates.
Code reviews => ~85% defect removal rate (avg. rate of about 65%)
75% of CR defects  evolvability rather than functionality
suitable for long product / system life cycles => increase of Technical DEBT.
Cost in SDLC
Code needs Continuous Inspection
code violations
code improvements
build stability
Continuous Inspection with SonarQube
7 Deadly Sins of source code
 Duplications
 Bad distribution of complexity
 Spaghetti Design
 Lack of unit tests
 No coding standards
 Potential bugs
 Not enough / too many comments
Integrate with SonarQube
SonarQube – look & feel
SonarQube – look & feel
SonarQube – look & feel
SonarQube – Technical DEBT Measurement
The so called Testing phase
Functional
/ UI
API / Services
Integration
Unit
Automated Test Tool
https://saucelabs.com/tutorials/php/se2/img/Diagram-Selenium.png
Reporting
~20 - 40%of project lifecycle time  REPORTING
Simplified…
Bottom Line
http://mycartoonthing.com/wp-content/uploads/image/business/Business%20bottom%20line%20cartoon.jpg
Bottom Line
Harvest
Foresee risks
Automate & Reuse
Organize process
Prevent
Build framework
Think & Understand
Rtc2014 automate the_process_deliver_quality_ady_beleanu

Rtc2014 automate the_process_deliver_quality_ady_beleanu