DEV  &  QA

*Quality Assurance

Slides:   j.mp/dev-and-qa

DEV     QA

[ PLAN ]

   [ PLAN ]

1/ Different steps

α/ A few words

β/ On the graph

1/ Different steps

α/ A few words

γ/ MTP status

β/ On the graph

   [ PLAN ]

1/ Different steps

2/ Summary

α/ A few words

γ/ MTP status

β/ On the graph

   [ PLAN ]

[ Different steps ]

[ Development phase ]

   [ Different steps ]

   [ Steps Development phase ]

Source control

Source control

   [ Source control @ MTP ]

   [ Steps Development phase ]

Code quality rules

Exception monitoring

Code quality rules

   [ Code quality rules @MTP ]

   [ Steps Development phase ]

Code reviews

Code reviews

   [ Code reviews @ MTP ]

   [ Steps Development phase ]

Code analysis

Code analysis

   [ Code analysis @ MTP ]

   [ Steps Development phase ]

Automated testing

Automated testing

   [ Automated testing @ MTP ]

   [ Steps Development phase ]

Continuous integration

Continuous integration

   [ Continuous integration @ MTP ]

[ Deployment phase ]

   [ Different steps ]

   [ Steps Deployment phase ]

Release management

Release management

   [ Release management @ MTP ]

   [ Steps Deployment phase ]

Smoke tests

Smoke tests

   [ Smoke tests @ MTP ]

   [ Steps Deployment phase ]

Rollbacks

Rollbacks

   [ Rollbacks @ MTP ]

[ Validation phase ]

   [ Different steps ]

   [ Steps Validation phase ]

Manual testing

Manual testing

   [ Manual testing @ MTP ]

   [ Steps Validation phase ]

Platform/device testing

Platform/device testing

   [ Platform/device testing @ MTP ]

   [ Steps Validation phase ]

Acceptance testing

Acceptance testing

   [ Acceptance testing @ MTP ]

   [ Steps Validation phase ]

Usability testing

Usability testing

   [ Usability testing @ MTP ]

[ Operation phase ]

   [ Different steps ]

   [ Steps Operation phase ]

Exception monitoring

Exception monitoring

   [ Exception monitoring @ MTP ]

   [ Steps Operation phase ]

Performance monitoring

Performance monitoring

   [ Performance monitoring @ MTP ]

   [ Steps Operation phase ]

Resources monitoring

Resources monitoring

   [ Resources monitoring @ MTP ]

   [ Steps Operation phase ]

Security monitoring

Security monitoring

   [ Security monitoring @ MTP ]

[ Last but not least... ]

   [ Different steps ]

   [ Steps Validation phase ]

Help desk & support

Help desk & support

   [ Help desk & support @ MTP ]

[ Summary ]

[ The complete graph ]

   [ Summary ]

Help desk & support

Security monitoring

Resources monitoring

Performance monitoring

Exception monitoring

Usability testing

Acceptance testing

Platform/device testing

Manual testing

Rollbacks

Smoke tests

Release management

Continuous integration

Automated testing

Code analysis

Code reviews

Source control

Code quality rules

[ The glue ]

Issue tracker

   [ Different steps ]

Github ("Source control" + issues manually entered)

Sentry ("Exception monitoring")

Mails ("Resouces monitoring")

Slack ("Specifications")

[ Timeline ]

   [ Summary ]

10.02.15

First Dev1's commit

27.02.15

First work on tests tooling

25.03.15

First Dev2's commit

03.04.15

First Dev3's commit

08.04.15

First Dev4's commit

27.04.15

Tests: 34

Rush BigClientOnVacation

Start rush BigClient2. Mostly no tests during this phase

04.15

06.15

Tests: 0

pre 02.15

20.01.16

First release of the MTP package. Tests: 577

19.02.16

Docket pull request. Tests: 588

12.04.16

Tests: 653

31.10.15

Jenkins for MTP is alive. Tests: 452

25.11.15

Tests: 500

03.01.16

Automatic code analysis on Jenkins. Tests: 540

Start cleaning session

26.10.15

End cleaning session. Tests: 471

09.11.15

~End rush BigClient2

08.15

[ Conclusion ]

[ The Joel test ]

   [ Conclusion ]

Do you use source control?

Can you make a build in one step?

Do you make daily builds?

Do you have a bug database?

Do you fix bugs before writing new code?

Do you have an up-to-date schedule?

Do you have a spec?

Do programmers have quiet working conditions?

Do you use the best tools money can buy?

Do you have testers?

Do new candidates write code during their interview?

Do you do hallway usability testing?

[ Quality VS Goals ]

   [ Conclusion ]

What does a product manager do every day?

What does it mean to an engineer that the code is a mess?

What was the designer trying to achieve with that colour change?

   [ I don't get it ]

We want to communicate the value of the product in the first 5 minutes

We want to see whether customers engage with this new feature

We want to cut down how often our engineers get paged at 3am.

We want the main features to be at most 3 clicks away

   [ Goals ]

[   Thanks   ]

   [ Links ]

A Holistic Approach to Quality -
The big picture

https://sifterapp.com/academy/overview/what/

The Joel Test: 12 Steps to Better Code

http://www.joelonsoftware.com/articles/fog0000000043.html

Made with Slides.com