37
Chasing Quality In Cloud Computing Testing Different Levels Of Quality Requirements Kees Blokland [email protected] Polteq Testing Services BV, The Netherlands Download recent version from www.polteq.com

Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

Embed Size (px)

DESCRIPTION

The IT world is changing quickly, in fact it’s accelerating for a complete new era. During the next couple of years the IT and testing scene will migrate towards servicing and sourcing, partly provided in the private, public and hybrid clouds. There is no time to lose. In the tradition of the testing world we are already late. Architects, designers, developers and suppliers such as Microsoft, Google, Amazon and IBM are working day and night to provide the technology and infrastructure for the near future. The cloudy future of IaaS, PaaS, SaaS, webservices, mobile Apps, virtualisation and social media and networks, in fact the real Internet age. More and more applications consist of ‘cloudy’ solutions. Every piece of software that moves into the cloud increases the dependency on the ‘evil’ internet. The end-to-end test complexity increases rapidly. Since all testing in de cloud IS end-to-end, the testing challenges are huge!Quality can be bought from the cloud: it brings you flexible performance and storage. Pay as you go. But what about the continuity, availability, elasticity and controllability of these cloud services that are delivered through the insecure minefield called internet? Cloud Computing introduces a new set of quality requirements, at different levels e.g. at the level of the software supplier, at the level of the internet and at the end-to-end level. So in short: how to test the cloud?

Citation preview

Page 1: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

Chasing Quality In Cloud Computing

Testing Different Levels Of Quality Requirements

Kees Blokland

[email protected] Polteq Testing Services BV, The Netherlands

Download recent version from www.polteq.com

Page 2: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

2

Going to the cloud…

Test

managemen

t

applications

CRMERP

healthfinance

(test) environments

email

storage

Page 3: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

3

bandwidth

Going to the cloud…

Test

managemen

t

applications

CRMERP

healthfinance

(test) environments

email

storage

virtualizationENABLERS

SOAstandard software

internet

Page 4: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

4

Deployment models– private cloud– community cloud– public cloud– hybrid cloud

Service Models

Cloud Computing according to NIST

Essential characteristics

On-demand service

Broad network access

Resource pooling

Rapid elasticity

Measured service

Software as a Service

Platform as a Service

Infrastructure as a Service

US: National Institute of Standards and Technology http://www.nist.gov

Page 5: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

5

Cloud Computing: risks and requirements

Essential characteristics On-demand serviceBroad network accessResource poolingRapid elasticityMeasured service

Deployment models– private cloud– community cloud– public cloud– hybrid cloud

Service Models

SaaS – Software as a Service

PaaS – Platform as a Service

IaaS – Infrastructure as a Service

SaaSPaaSIaaS

Security?

Performance? Legislation?

Privacy?

Vendor lock-in?

Elasticity?

Testability?

Multi platform?

User experience?

Migration? Continuity?

Integration?

Page 6: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

6

From risk to test

Risk groups Test groups

PerformanceSecurityContinuityFunctionalityMaintainabilityLegislation and regulationsSuppliers…

PerformanceSecurityContinuityMigrationFunctionalityMaintainability Legislation End-to-endSelectionImplementationOperation…

Page 7: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

7

Risk Groups – so far

PerformanceSecurityContinuityFunctionalityMaintainabilityLegislation and regulationsSuppliers…

PerformanceSecurityContinuityMigrationFunctionalityMaintainability Legislation End-to-endSelectionImplementationOperation…

Page 8: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

8

Risk group: performance

• Response times too long– insufficient concurrent users– at (un)expected peaks

• Scalability, elasticity not working• Latency too high• Bandwidth, throughput too low• Up/download speed insufficient

! Other customers! Over-book, subscription model! Slow internet connection

On-demand service

Broad network access

Resource pooling

Rapid

elasticity

Measured service

Page 9: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

9

Risk group: security

• Unauthorized access– administrators cloud service supplier– authorization/authentication inadequate– cyber crime, hackers, authorities– into cloud equipment building– ‘somewhere’ on the connection

• Data integrity– erased, not erased– unusable (loss of decryption key)

! Insecure internet connection! Insufficient data separation in equipment! Bring Your Own, insecure behavior users

On-demand service

Broad network access

Resource pooling

Page 10: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

10

Risk group: continuity

• Cloud service unavailable– % availability is not achieved– supplier bankrupt or a conflict– internet connection lost

• Fall back plan does not work

! Internet connection malfunction! Other suppliers disturb the service! Supplier redundancy failure! Business instability supplier

On-demand service

Broad network access

Resource pooling

Rapid

elasticity

Measured service

Page 11: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

11

• No fit on the business process• Low score on user friendliness• Not accessible everywhere• Not all mobile devices are supported• The equipment/configuration is not well performed• Customization is not well built• Integration with other systems fails

! Limitations in the Cloud Service! Bring Your Own Device, New Ways of Working! The evil Internet

Risk group: functionality

On-demand service

Broad network access

Page 12: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

12

Risk group: maintainability

• Cloud service not testable• Manuals are inadequate because of changes• An end-to-end test is not possible• Unclear who is to solve problems• Cloud service not adaptable to new requirements

! Cloud service changes unannounced! Cloud service not configurable! No test environment for cloud service! No helpdesk

On-demand service

How to keep it up and running?

Page 13: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

13

Risk group: legislation and regulations

• Violating EU data protection directive– location, security data– ownership, agreements with data processors

• Violating EU data retention directive• Bankruptcy of supplier inhibits keeping obligations• No grip on what happens to data

– warrant in other country

! Where are my data?! Conflicting or unclear legislation! Role of (unreliable) authorities

US: Patriot Act

On-demand service

Broad network access

Rapid

elasticity

Page 14: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

14

Risk group: supplier

• Bankruptcy, conflict• At the mercy of the supplier

– (pay-per-use) conditions change– cloud service changes

• Quality not stable, unreliable• Difficult to switch

– to another supplier– back

! Vendor lock-in, powerful supplier! No insight in quality SW development! Developments (technology, growth, take-overs, …)

There is no fit any more

Supplier unmasked

Page 15: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

15

Test Groups – so far

PerformanceSecurityContinuityFunctionalityMaintainabilityLegislation and regulationsSuppliers…

PerformanceSecurityContinuityMigrationFunctionalityMaintainability Legislation End-to-endSelectionImplementationOperation…

Page 16: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

16

Test Groups – so far

PerformanceSecurityContinuityFunctionalityMaintainabilityLegislation and regulationsSuppliers…

PerformanceSecurityContinuityMigrationFunctionalityMaintainability Legislation End-to-endSelectionImplementationOperation…End-to-end testing

Operational profilesTesting of PackagesBVA-STT-DCoT-DCT

Load & Stress

Page 17: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

17

Test group: performance

• What are the acceptance criteria?• Load testing• Stress testing

– not always allowed– what happens at the boundaries of the “bundle”

• Endurance test, volume test– restricted possibilities: fair use policy– monitors

• Elasticity, pay-per-use– LOAD+PCT+BVA

Page 18: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

18

Test group: performance

• Test cases based on load profiles

• Load profiles based on operational profiles

• Test environment = production environment

• Testing in real time– under operating conditions– with the “cloud shop open”

Page 19: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

19

Testing Elasticity

100

usage

time

Load profile – ‘UP’

99

100

101

Boundary values ‘UP’ Load profile – ‘DOWN’

Boundary values ‘UP’test case 1: usage=99, paid for 100test case 2: usage=100, paid for 100test case 3: usage=101, paid for 200

Boundary values ‘DOWN’test case 1: usage=101, paid for 200test case 2: usage=100, paid for 100test case 3: usage=99, paid for 100

200

max=100max=100

wantextension?

max=200200 billed

max=100100 billed

no

yes

Process Cycle Test

Page 20: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

20

Test group: security

• Make inventory of security measures– Internet connection

– Cloud service

– Client

http/ssl vpnwifi/wap data encryption

login identity management autorisation profile

access to building logs

IDaaS

weak passwords

authorisation

pincode mobiles

door closed patch routine

patch routine

social engineering

firewall

firewall

Security measuresAuthorisationAuthenticationTechnical facilities Security updatesBehaviour of peopleLogging

Page 21: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

21

Test group: security

• Testing and assessing– Assessing end-to-end security architecture

– Functional tests

– Tests by specialists

authorisation authentication encryption logs

encryption technique authentication technique

technical infrastructure

physical security

data separation

audit trailspatch update routine

hackers test audit

Specialists n

eeded

Specialists n

eeded

Page 22: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

22

Test group: continuity

• Testing of redundancy, fall back• Off line• Continuous end-to-end regression test

• Measuring the availability– 99.99….9%– critical moments– MTBF, MTTR

• What-if scenarios– disaster recovery– internet unavailable– …

Fail over testing with State Transition Test

Page 23: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

23

Test group: migration

• Where goes the data?• To/from/between cloud services

• Data repair: testing data• Testing the data conversion tool

• Data conversion– checklist – performance– security

! cloud service is

tested

! detailed planning

! sufficient tim

e

! technical knowledge

CHECKLIST MIGRATIONminimal disruptionno data lossconversion successfullyno hanging transactionsno loss due to bad data…

Page 24: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

24

• Testing SaaS = testing of standard software package• Testing:

– fit between cloud service and business process– configuration of the cloud service– integration of cloud service with other systems– multi client platforms– the end-to-end business process

• What is the test basis?– the old system– process descriptions, use cases– (functional) operational profiles

Test group: functionality

ClassificationTrees

ProcessModels

Page 25: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

25

Test group: maintainability

• Test environments– Public: none, stubs & mocks– Private: to be negotiated

• Manuals– Public: instructions for use– Private: custom manuals, also for maintenance

• Change procedure– Public: announcements supplier– Private: to be negotiated

• Helpdesk– Incident handling

Page 26: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

26

Test group: legislation and regulation

• Storage and processing of data– examples…

• Influence of the authorities– examples…

• How is the test manager supposed to deal with it?– ensure that it is taken into account– ensure that lawyers are involved– bridge between ICT and lawyer

what is the ris

k of non-compliancy?

example: who does n

ot use production data for testin

g?

Page 27: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

27

Broad role of the Test Manager

Implementation testing, testing, testing

Page 28: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

28

PerformanceSecurityContinuityMigrationFunctionalityMaintainability Legislation End-to-endSelectionImplementationOperation…

Implementation: what to test?

Risk groups

Test groupsPerformanceSecurityContinuityFunctionalityMaintainabilityLegislation and regulationsSuppliers…

Cloud Service selected!

Page 29: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

29

Broad role of the Test Manager

Selection

Implementation

risks, criteria, advice, contract

testing, testing, testing

Page 30: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

30

Selection: the risks

PublicSaaSPublicSaaS

Intention: introducing Cloud Computing

Cloud Risks

Page 31: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

31

Selection: criteria

Intention: introducing Cloud Computing

Selection criteria

Cost reductionBusiness processPerformanceScalabilityNew ways of workingContinuityMigrationSecurityIntegration…

Page 32: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

32

Broad role of the Test Manager

Selection

Implementation

Operation

risks, criteria, advice, contract

testing, testing, testing

end-to-end regression test, evaluation

Page 33: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

33

Operation: everything is moving

OperationOperation

changes in other systems

internet changes

changes in clients

changes in

business

process

changes in cloud service

changes cloud supplier

Release Calendar?Change Process?

Continuous End-to-end Test

growth

Page 34: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

34

Operation, role of the test manager

• Make inventory of cloud continuity risks– everything is moving!

• Periodic end-to-end testing– is it still working?

…- end-to-end-to-end-to-end-end-to-end-to-end-to-end-to-…

Page 35: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

35

Cloud & perspective of testing

From Risk To Test

Everything is moving

Broad Role Test Manager

End to End and the rest

Page 36: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

Questions?

Page 37: Chasing Quality In Cloud Computing - Testing Different Levels Of Quality Requirements' by Kees Blokland

logo van Flair17-12-2010Polteq logo_RGB.png

Thank you!