morning@lohika presentation performance in agile

16

Upload: andrew-kovalenko

Post on 02-Aug-2015

66 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Morning@lohika presentation performance in Agile
Page 2: Morning@lohika presentation performance in Agile

Andrey Kovalenko5 last years in IT - again. 3 years of developing and implementing distributed protected networks2 last years - performance engineer.

kovalenko.andrey.odessa

Page 3: Morning@lohika presentation performance in Agile

Why do we need performance?

Page 4: Morning@lohika presentation performance in Agile

What is performance?

Load testing - to verify application behavior under normal and peak load conditions.

Stress testing - To determine or validate an application’s behavior when it is pushed beyond normal or peak load conditions.

Capacity testing - To determine how many users and/or transactions a given system will support and still meet performance goals.

Page 5: Morning@lohika presentation performance in Agile

Performance testing flow

Page 6: Morning@lohika presentation performance in Agile

What do we need for it?Performance testing

=

Performance testing = long and expensive process

Page 7: Morning@lohika presentation performance in Agile

Agile&Performance• Agile is: • Fast • Flexible • Team members embrace different roles

• Traditionally, performance testing is: • Slow (many weeks) • Needs a ‘code freeze’ • Requires an environment for the testing • –Dedicated test tool ‘experts’

Page 8: Morning@lohika presentation performance in Agile

When?

Page 9: Morning@lohika presentation performance in Agile

Performance in Agile - Gut)Architecture and code optimization

Application failure

Bottleneck early detection

Release date

Real customer data and scenarios

Resolving performance issues

Page 10: Morning@lohika presentation performance in Agile

Some best practicesintegrate yourself into the Sprint team/Dev team

Use functional tests for performance

Include your performance tests in CI

Make fixing functional bugs that block performance test a high priority

Don’t pre-optimize before testing

Know when performance is good enough

Page 11: Morning@lohika presentation performance in Agile

Cheap! Fast! Quality!

Page 12: Morning@lohika presentation performance in Agile

LoadRunner

Page 13: Morning@lohika presentation performance in Agile

Some stuff to learnResponsibilities

• Conduct performance regression test, analysis and create test reports summary

• Design performance STP for new features• Create and debug scripts for load tests • Implement tests and analyze data to identify system bottlenecks• Coordinate with customer support teams to diagnose performance issues • Analyze on performance and capacity, tune large scale JAVA applications

(from code level)• Suggest option for resolutions of problems • Maintain, troubleshoot and resolve DB and JAVA application server issues• Interact closely with Dev and QA teams for assure overall quality• Propose performance improvements for product.

Page 14: Morning@lohika presentation performance in Agile

Some stuff to learnSkills

• Deep knowledge of HTTP load generation, measurement software• Experience with Oracle/MSSQL Databases and SQL tuning and scripting, Oracle

AWR reports and trace logs • Deep knowledge and experience in Windows and Linux OS• Strong understanding on network, Web servers and browsers• Strong in performance requirement analysis, and construction of performance

test cases• Strong understanding of Java, .NET and VB coding and the use of Java SDK

performance tools.• Experience with HTTP, REST and web services• Deep knowledge in Java Performance (CPU, Memory, IO, SWAP, Network usage),

hotspot detection, GC logs, optimization and analysis of bottle-necks using various profilers

• Able to send executive summary of the tests

Page 15: Morning@lohika presentation performance in Agile

Q&A

Page 16: Morning@lohika presentation performance in Agile