Top Banner
QUALITY ATTRIBUTES TESTING FR O M ARCHITECT U RE TO TEST AC CEPTANCE OLEKSA NDR REMI N NYI
35

Quality attributes testing. From Architecture to test acceptance

Nov 28, 2014

Download

Software

IT Weekend

by Oleksandr Reminnyi
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Quality attributes testing. From Architecture to test acceptance

QUALITY

ATTR

IBUTE

S

TESTI

NG

FR

OM

AR

CH

I TE

CT

UR

E T

O T

ES

T A

CC

EP

TA

NC

E

OL

EK

SA

ND

R R

EM

I NN

YI

Page 2: Quality attributes testing. From Architecture to test acceptance

8 years in IT

Solutions Architect

Automation Expert (Consultant, Trainer)

PhD in IT (automation testing)

[email protected]

WHO IS IT?

Page 3: Quality attributes testing. From Architecture to test acceptance

TESTI

NG ARCHIT

ECTURE

WT

F ?

Page 4: Quality attributes testing. From Architecture to test acceptance

WHAT IS SOFTWARE ARCHITECTURE?

Page 5: Quality attributes testing. From Architecture to test acceptance

IT STARTS FROM ONE GEEKY GUY…

Page 6: Quality attributes testing. From Architecture to test acceptance

THEN IT MIGHT FINISH UP AS FOLLOWING…

Page 7: Quality attributes testing. From Architecture to test acceptance

WHAT IS SOFTWARE ARCHITECTURE?

SO,

Page 8: Quality attributes testing. From Architecture to test acceptance

WHAT FORMS SOFTWARE ARCHITECTURE?

Page 9: Quality attributes testing. From Architecture to test acceptance

BUSINESS

Page 10: Quality attributes testing. From Architecture to test acceptance

USERS

Page 11: Quality attributes testing. From Architecture to test acceptance

SYSTEM

Page 12: Quality attributes testing. From Architecture to test acceptance

WHAT CAN BE TESTED HERE?

Page 13: Quality attributes testing. From Architecture to test acceptance

THIS???

Page 14: Quality attributes testing. From Architecture to test acceptance

GO SMART

DE

F I NI N

G Q

UA

L I TI E

S

Page 15: Quality attributes testing. From Architecture to test acceptance

SEI

THEY LIKE NON FUNCTIONAL REQUIREMENTS

Page 16: Quality attributes testing. From Architecture to test acceptance

THEY CALL THEM – QUALITY ATTRIBUTES

Category Quality attributeDesign Qualities Conceptual Integrity

MaintainabilityReusability

Run-time Qualities Availability

Interoperability

ManageabilityPerformance

ReliabilityScalabilitySecurity

System Qualities SupportabilityTestability

User Qualities Usability

Page 17: Quality attributes testing. From Architecture to test acceptance

WHAT IS QUALITY ATTRIBUTE?

ABILITY

Page 18: Quality attributes testing. From Architecture to test acceptance

WHAT QUALITY ATTRIBUTES YOU SEE?

Page 19: Quality attributes testing. From Architecture to test acceptance

LET’

S DO T

HE

SYSTE

MATIC

APP

ROACH

T AK

I NG

IT

AL L T

OG

ET

HE

R

Page 20: Quality attributes testing. From Architecture to test acceptance
Page 21: Quality attributes testing. From Architecture to test acceptance

QUALITY ATTRIBUTE WORKSHOP

Page 22: Quality attributes testing. From Architecture to test acceptance

Specific (why/what/how)

Measurable

Achievable

Result-focused

Time-bound

S.M.A.R.T.

Page 23: Quality attributes testing. From Architecture to test acceptance

ARCHITECTURE SCENARIOS – SAMPLE UTILITY TREE

Page 24: Quality attributes testing. From Architecture to test acceptance

ACCEPTANCE: A SOFTWARE ERROR OCCURS AT HIGH VEHICLE SPEED. REBOOT WITHIN 50 MSEC.

Source

• System

Stimulus

• Software error

Artifact

• System

Env

• High vehicle speed

Response

• Reboot occursResponse Measure

• Time to reboot up to 50 msec.

Page 25: Quality attributes testing. From Architecture to test acceptance

EXPLAINING ACCEPTANCE: GHERKIN

Given

Environment• High vehicle

speedArtifact• System

As

Source• System

When

Stimulus• Software error

Then

Response• Reboot occursResponse Measure• Time to reboot

up to 50 msec.

Page 26: Quality attributes testing. From Architecture to test acceptance

IMPLEMENTATION

Gherkin stubs

Best practices

Base classes reusage

Implementation monitoring

….

Page 27: Quality attributes testing. From Architecture to test acceptance

TRACEABILITY: ACCEPTANCE TREE

1. Implementation directly linked to Quality attribute

2. Quality attribute linked to business driver

3. Priority of the scenario shows might be a start point for its automation

Page 28: Quality attributes testing. From Architecture to test acceptance

Project specificsDisk level data encryption system

Goal: form acceptance for the system

Support large number of OS

Test in the cloud

Test definitionsNone

TechnologyAmazon + LAMP

ResourcesSenior part time and junior full time developer

REAL USE CASE

Page 29: Quality attributes testing. From Architecture to test acceptance

HOW IT MIGHT LOOK IN IDE

Page 30: Quality attributes testing. From Architecture to test acceptance

DIRECT JUMP TO CODE

Page 31: Quality attributes testing. From Architecture to test acceptance

Factor QAW-based Classic analysis approach

Work with stakeholders It’s better to have everybody in one location, at least for a short period.

You can have several separate sessions with technical representatives only

Documentation That should be part of stakeholders knowledge only

Might be outdated

Domain knowledge Not deep knowledge – participants are the knowledge holders

Required

Rough Estimate 2-3 days 3-5 days

     

GETTING ANALYSIS DATA TOGETHER

Page 32: Quality attributes testing. From Architecture to test acceptance

Acceptance test suite definition (~30 tests)

Mini-framework implementation

Jenkins integration

Project was DECLINED to be released because of NOT passing the automation tests

RESULT

Page 33: Quality attributes testing. From Architecture to test acceptance

GOT IT

?

L ET

’ S P

RA

CT

I CE

!

Page 34: Quality attributes testing. From Architecture to test acceptance

RECAP: PROCESS DEFINITION

•Prioritize•Build timeline•Implement

•Break scenario into steps

•Define steps in QC language

•Generate test stubs

•Define Business Goals

•Gather Quality Attributes

•Generate Scenarios

Architecture

Form Acceptanc

e

Test solution

Trace and update

Page 35: Quality attributes testing. From Architecture to test acceptance

QUESTIONS?