rtc2014 automate the_process_deliver_quality_ady_beleanu

Post on 23-Aug-2014

132 Views

Category:

Presentations & Public Speaking

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presented at Romanian Testing Conference 2014 - Cluj-Napoca, Romania

TRANSCRIPT

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, WHAT to 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

Reporting

~20 - 40% of project lifecycle time REPORTING

Simplified…

Bottom Line

Harvest

Foresee risks

Automate & Reuse

Organize process

Prevent

Build framework

Think & Understand

top related