software quality assurance: a mind game between you and devil

45
Software Quality Assurance: A mind game between you and devil

Upload: nascenia-it

Post on 16-Jan-2017

184 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Software Quality Assurance: A mind game between you and devil

Software Quality Assurance: A mind game between you and devil

Page 2: Software Quality Assurance: A mind game between you and devil

Hello!I am Tariqual Hassan

I am here because I love to share my knowledge. So, let’s see what’s inside the box.

Page 3: Software Quality Assurance: A mind game between you and devil

QA in Software DevelopmentWhat is quality?Who we are?Why we are doing

IEE Glossary:Degree to which a system, component or process meets specific requirements and customer or user needs or expectations

ISO Definiton:The totality of features and characteristics of a product or service that beat on it’s ability to satisfy specified or implied needs

“Set of systematic activities providing evidence od the ability of software process to produce a software product that is fit to use” by G.Schulmeyer and J.McManus, Software Quality Handbook, Prentice Hall, 1998

Page 4: Software Quality Assurance: A mind game between you and devil

1.Transition period

What Developers usually think?

Page 5: Software Quality Assurance: A mind game between you and devil

It’s easy to code but it’s always difficult to code which

is human readable.

Page 6: Software Quality Assurance: A mind game between you and devil

I know how to code, I can keep up with the design so why you

guys are here?- Devops

Page 7: Software Quality Assurance: A mind game between you and devil

Why should user do this and that?

I am designing the system, so they should just use it in my

way.

Page 8: Software Quality Assurance: A mind game between you and devil

QA guys are irritating day dreamers. They need not to code so they can come up

with anything.

Page 9: Software Quality Assurance: A mind game between you and devil

Okay, I will have fight with him and come up with a victory.

Page 10: Software Quality Assurance: A mind game between you and devil

Okay it’s very difficult to apply this feature, let’s change it.

Users can be convinced later on.

Page 11: Software Quality Assurance: A mind game between you and devil

I didn’t do it and it’s not my job to fix this. Someone else

will fix this.

Page 12: Software Quality Assurance: A mind game between you and devil

2.Transformation period

How Devs are being transformed?

Page 13: Software Quality Assurance: A mind game between you and devil

QA team interception

✣Found functional issues✣Found UI issues✣Found security issues✣Found usability issues

Okay too much issues…. Need to fix them all.

Page 14: Software Quality Assurance: A mind game between you and devil

Project managersDev team should fix the problems in a day, QA should

finish testing in half day. Clients are waiting.

Page 15: Software Quality Assurance: A mind game between you and devil

Software Development ecosystem

QA: Things need to be done properly.

Developers: Things need to be done in

any way.

PM:I need the

product at any cost.

Page 16: Software Quality Assurance: A mind game between you and devil

Dev’s Mind:I should provide a confirmation message before delete this record.Shouldn’t I give an alert before saving a contentIt work’s in my browser.UI can be better.

Error message should not be propagated to user.

A Dev’s Mind

Dev’s Devil Mind:Ohh… it’s not your job.

Users are not dumb. They should get this point.Why user use that browser. He should use like mine.UI is not my task. It’s the designer jobIt’s an error message. It should be visible to user. I have no time for a formatted message.

Page 17: Software Quality Assurance: A mind game between you and devil

Common Mistakes Made By Developers

Things need to be corrected

Page 18: Software Quality Assurance: A mind game between you and devil

It works in my browser.

Page 19: Software Quality Assurance: A mind game between you and devil

Input Data validation. Assuming that user will always

input as intended.

Page 20: Software Quality Assurance: A mind game between you and devil

Input Data verification. Making a checklist of what should be allowed and what should not

be allowed.

Page 21: Software Quality Assurance: A mind game between you and devil

Bloated Response: Page filled with high quality image and scaled down with the use of ‘img’ element. Files linked from the page(css and js) are large. Source

HTML markup is complex and extensive.Page rendering should be slow.

Consider the total cost for a request and response.

Page 22: Software Quality Assurance: A mind game between you and devil

Deploying code without error. Ensure that no console error

should be there.

Page 23: Software Quality Assurance: A mind game between you and devil

Writing forking code: Developer may write codes to respond each possible

scenario.The code becomes a heap of if statements, forking in all sorts of

directions.If a new version of the browser has come, then management of those if

blocks becomes very difficult.

Page 24: Software Quality Assurance: A mind game between you and devil

Designing a site unresponsively: I am

developing the site for the desktop .. why should a user visits the page from mobile?

Page 25: Software Quality Assurance: A mind game between you and devil

Missing the accessibility feature

Page 26: Software Quality Assurance: A mind game between you and devil

Creating a site that requires full refreshes of a page for

each interaction.

Page 27: Software Quality Assurance: A mind game between you and devil

Not thinking the security holes like sql injection, XSS, CSRF, HTTP, broken links, showing the directory structures etc.

Page 28: Software Quality Assurance: A mind game between you and devil

Mandatory field remarking

Page 29: Software Quality Assurance: A mind game between you and devil

Validation message text, color and position

Page 30: Software Quality Assurance: A mind game between you and devil

Fails to distinguish among error message, warning

message and informative message.

Page 31: Software Quality Assurance: A mind game between you and devil

Forgot to handle the session timeout operation for different

tabs.

Page 32: Software Quality Assurance: A mind game between you and devil

Forgot to adopt the localization feature

Page 33: Software Quality Assurance: A mind game between you and devil

Common spelling and grammatical errors

Page 34: Software Quality Assurance: A mind game between you and devil

3.Evolution and revolution

I am changed now!!!

Page 35: Software Quality Assurance: A mind game between you and devil

Realizing the cost of Bug Fixing

A complex ide

Page 36: Software Quality Assurance: A mind game between you and devil

Realizing the cost of Bug Fixing

Page 37: Software Quality Assurance: A mind game between you and devil

Realizing the cost of Bug Fixing

Page 38: Software Quality Assurance: A mind game between you and devil

Place your screenshot here

Popup messageMessage without popup window title.

Page 39: Software Quality Assurance: A mind game between you and devil

Place your screenshot hereToolTip MessageTooltip is not visible

Page 40: Software Quality Assurance: A mind game between you and devil

Place your screenshot hereLeaving Dev MessageMeaningless Response to user

Page 41: Software Quality Assurance: A mind game between you and devil

Place your screenshot hereLet’s look at this

Page 42: Software Quality Assurance: A mind game between you and devil

Our process is easy

Develop

Perform a Dev test

Call for a short QA or

pre-QA

Page 43: Software Quality Assurance: A mind game between you and devil

Let’s review some concepts

AgileChanges should appear at any point. So better code review will provide better maneuverability.

ProcessAlways follow a process. Make it tuned for a perfect fit to the team. Every process should NOT fit every team

Bug Prioritization Learn how to give priority to a bug. Bugs should be prioritized.

Fix the core issueFix the core issue which causes the bug scenario rather than fix it in a temporary manner.

Freeze your code Code freeze should be there before deployment operations

EthicsBug will be there no matter how better testing is done, but it will only acceptable if the bug is not in a certain path.

Page 44: Software Quality Assurance: A mind game between you and devil

Probability for a bug

Bugs Max DefectsMax Client Reported

Issues

Development x x-1 -

PreQA x-y - -

Testing ((x-y)-z)=N - N-1/N!

Page 45: Software Quality Assurance: A mind game between you and devil

Thanks!Any questions?

You can find me at @tariqual & [email protected]