SlideShare a Scribd company logo
open source administration software for education
next generation student system
open source administration software for education 2
Agenda
• Introductions
• The Challenge
• Approach
• Performance Automaton Strategy
• Picking a tool
• Application Results
• Demo
• Next Steps
• Lessons Learned
• Practices that work for us
open source administration software for education 3
Introduction
• Kyle Campos: Performance Engineer for Kuali Student. 11
years experience testing and building automation frameworks,
both functional and performance, for web, unix and mobile
applications. QA Architect for several startups building processes,
tooling and test automation frameworks.
• Ben Clark, QA Manager for Kuali Student. 12 years of experience in
both the computer software and banking industries. Have lead
performance testing efforts using off-the-shelf and home grown
solutions. ASQ Certified Six Sigma Black Belt and Software Quality
Engineer. Earned a B.A. from the University of Montana.
open source administration software for education 4
The Challenge: Performance Testing KS
• Experience
• Management support
• Implementor User Group support
• Lacked common definitions of the
space
• Poorly defined requirements
• Lacked institutional system
environment information
• No Kuali Student profile information
(how many courses over a year,
cycle info, user info, etc)
• No test machines for perf testing
• Lacked tools for the job
• No qualified resources
+ Forces for achieving success - Forces against achieving success
open source administration software for education 5
The Approach
Action Plan
•Hire experienced performance engineer
•Utilize Functional Council and IUG to obtain
requirements and data
•Define the performance automation strategy
•Utilize cloud technologies for test infrastructure
•Pick a tool that meets the need
• Lacked common definitions of the space
• Poorly defined requirements
• Lacked institutional system environment
information
• No Kuali Student profile information (how
many courses over a year, cycle info, user
info, etc)
• No test machines for perf testing
• Lacked tools for the job
• No qualified resources
open source administration software for education 6
Performance Automation Strategy
• Develop test suites based on critical features list
• Benchmark tags & measure performance gain/loss
• Add suites as features are developed
• Use usage targets provided by universities
open source administration software for education 7
Open source tools –lots out there!
Tool Description Pros Cons
JMeter A java desktop app designed to load test
functional behavior and measure
performance
• HTTP protocol Support
• Documented
• List Support
• Didn’t work with GWT/Ajax
httperf A software tool which is able to simulate
load situations for web services, and
calculates performance metrics against the
results
• Familiarity• Robust• Extensible• HTTP protocol Support• Documented• List Support
No dynamic variable support
The Grinder Java load testing framework that can run a
distributed test using many load injector
machines
• Flexible
• Extensible
• Documented
• List Support
Requires Java expertise
Tsung Built for high transaction Env • Built for high trans env
• Extendable
• HTTP protocol Support
• Documented
• Dynamic variable support
Not being used across other KS
products
Homegrown Build a tool in-house to test performance Total control • Expensive
• Time consuming
• Proprietary
• Reinventing the wheel
open source administration software for education 8
Tool Choice - Tsung
• Tsung XML API is a homegrown Ruby framework that
allows for more rapid load test development, maintenance
and execution
• Load Framework is tagged and released as validated
against milestone releases
• Can easily configure custom test suites and load profiles
Tsung + Tsung XML API (Ruby) = Load Automation Framework
open source administration software for education 8
Tool Choice - Tsung
open source administration software for education 6
Test Design
• Test layer doesn’t generate
any XML, all XML
generated by API calls
• Test layer environment
agnostic
(standalone/embedded)
• Tests are added to suites
and given a probability to
run
• API docs dynamically
created through rdoc
• Test configured &
launched by homegrown
utility
open source administration software for education 9
EC2 Network Diagram
open source administration software for education 10
Application Results - Key Metrics
• Concurrent sessions
– driven by launched sessions/min
• Mean transaction times
– feature defined transactions
– highest 10sec mean time
• Iterative growth changes (linear?)
• System resources
– cpu, mem
open source administration software for education 10
Application Results
• Data collected into Numbers(excel) for
calculations
• Published on wiki
• Demo
open source administration software for education 11
Demo
• Driver Demo
open source administration software for education 12
What’s Next?
• Tuning guide documentation
• Configuration
open source administration software for education 13
Example problem walkthrough
• During Create Proposal load test found 4
concurrent sessions
– upped to 16-18 sessions by upping thread pool
– Way too many threads being consumed per
session
• Several rounds of debugging through
configuration changes
• Traced bottleneck to disabling of Rice
caching. Resolved after 5 months
open source administration software for education 14
Lessons Learned
• A proof of concept may not have really
proved anything
• Tsung is great for flexible load sessions but
difficult to manage concurrent sessions
• Your load tool must have runtime dynamic
variable support to work with GWT (Tsung
does)
open source administration software for education 15
Practices that work for us
• Know your goals and requirements
• When in doubt, benchmark
• Review the test approach with entire team
• A coding effort needs a coder; hire the best
• Pick a tool that’s within your resource capability
• Separate data, tests and tool
• Utilize the cloud – it’s cheap and easy
d
open source administration software for education 16
Resources
• Automation testing home
– https://wiki.kuali.org/display/KULSTG/Automation+Testing
• Load Test Framework tester’s guide
– https://wiki.kuali.org/display/KULSTG/Load+Testing+-
+Tester%27s+Guide
• Load testing results
– https://wiki.kuali.org/display/KULSTG/Automation+Testing+
Results
• Contact
– Kyle Campos / Skype: kylecampos_kuali /
kcampos@rsmart.com
– Ben Clark / Skype: benclark_kuali /
benclark@u.washington.edu
d
open source administration software for education 16
Questions?
d
open source administration software for education 17
Timeline
Perf.Bug
D
etected
Perf.B
ug
Fixed
12/09 01/10 02/10 03/10 04/10 05/10 06/10 07/10 08/10 12/1011/1010/1009/10
H
ire
C
om
pleted
Strategy
in
place
T
oolReview
C
ode
C
om
pleteT
oolT
esting
Benchm
ark
Benchm
ark
Benchm
ark
Benchm
ark
M4
M5
M6
M7
M8
M9
Release 1.1
Release 1.0
Benchm
ark
Benchm
arkM3
EC
2
Im
plem
ented
EC
2
U
se
A
pproved

More Related Content

PDF
Selecting the Right Automated Testing tool
PDF
Seminaire od devops 10traps 1.0
PDF
Continuous testing in agile projects 2015
PPTX
QA Team Goes to Agile and Continuous integration
PDF
Why Ranorex
DOCX
ANAND VISWANATHAN
DOC
Vinay_tiwari
PDF
DevOps day 10 traps to avoid
Selecting the Right Automated Testing tool
Seminaire od devops 10traps 1.0
Continuous testing in agile projects 2015
QA Team Goes to Agile and Continuous integration
Why Ranorex
ANAND VISWANATHAN
Vinay_tiwari
DevOps day 10 traps to avoid

What's hot (20)

PDF
Introduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang Phi
PPT
Testing Frameworks
PDF
Common Web UI Problems Transforming Manual to Automation
PDF
Test Automation
PPTX
Load Testing: See a Bigger Picture, ALM Forum, 2014
DOC
Tashy's resumé
PDF
Leveraging Open Source Automation: A Selenium WebDriver Example
PPTX
Dev ops != Dev+Ops
PPTX
Streamlining Testing with Visual Studio 2012
PPT
Automated Testing with Agile
PPTX
Automation Tools Overview
PPTX
Performance Testing
PDF
Test automation methodologies
PDF
Agile testing - Principles and best practices
PPTX
Framework for Web Automation Testing
PPTX
How To Transform the Manual Testing Process to Incorporate Test Automation
PPTX
ISTQB Advanced Level Test Automation Engineering Training
PPTX
Continuous test automation
PPTX
Combining Automated Functional And Load Testing
PPTX
How Manual Testers Can Break into Automation Without Programming Skills
Introduction to Back End Automation Testing - Nguyen Vu Hoang, Hoang Phi
Testing Frameworks
Common Web UI Problems Transforming Manual to Automation
Test Automation
Load Testing: See a Bigger Picture, ALM Forum, 2014
Tashy's resumé
Leveraging Open Source Automation: A Selenium WebDriver Example
Dev ops != Dev+Ops
Streamlining Testing with Visual Studio 2012
Automated Testing with Agile
Automation Tools Overview
Performance Testing
Test automation methodologies
Agile testing - Principles and best practices
Framework for Web Automation Testing
How To Transform the Manual Testing Process to Incorporate Test Automation
ISTQB Advanced Level Test Automation Engineering Training
Continuous test automation
Combining Automated Functional And Load Testing
How Manual Testers Can Break into Automation Without Programming Skills
Ad

Viewers also liked (11)

PPTX
Viewing informationinkc ss
PPTX
Kuali Ready Overview
PPTX
NCURA PRA 2015 - Sponsored Program Management in the Cloud
PPTX
Award Pre-Closeout, Closeout, Record Retention-screen shots
PPTX
Proposal Development in KC
PDF
My First 90 Days - Strategies for Success
PDF
Brainstem Lesions
PDF
A PROJECT REPORT ON EXPORT PROCESS AND DOCUMENTATION
PPTX
30 60 90 Day Sales Plan
PDF
21 Hidden LinkedIn Hacks Revealed
PPT
Diabetes powerpoint
Viewing informationinkc ss
Kuali Ready Overview
NCURA PRA 2015 - Sponsored Program Management in the Cloud
Award Pre-Closeout, Closeout, Record Retention-screen shots
Proposal Development in KC
My First 90 Days - Strategies for Success
Brainstem Lesions
A PROJECT REPORT ON EXPORT PROCESS AND DOCUMENTATION
30 60 90 Day Sales Plan
21 Hidden LinkedIn Hacks Revealed
Diabetes powerpoint
Ad

Similar to Performance Testing your Kuali Student Product (20)

PPTX
Response time difference analysis of performance testing tools
PDF
5 Steps to Jump Start Your Test Automation
PDF
Lecture #6. automation testing (andrey oleynik)
DOC
SachinKumar_Imp
PPTX
7 Tips from Siemens Energy for Success with Automation
PDF
Test Automation using UiPath Test Suite - Developer Circle Part-3 - 07262022.pdf
PDF
Automation Culture: Essential to Agile Success
PPT
Performance Testing Overview
PPT
_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt
PDF
Meet Big Agile: Testing on Large-Scale Projects
PPT
The QA/Testing Process
PDF
Test Automation using UiPath Test Suite - Developer Circle Part-4.pdf
DOC
Sucheta_kale_4.8years_QA
PDF
No Devops Without Continuous Testing
PDF
Agile Testing – embedding testing into agile software development lifecycle
PPT
UNIT IV.ppt
PPTX
#ATAGTR2020 Presentation - Universal Test Automation Framework
PDF
Agile Methodology - Software Engineering
PPTX
Multiple Dimensions of Load Testing
PPTX
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Response time difference analysis of performance testing tools
5 Steps to Jump Start Your Test Automation
Lecture #6. automation testing (andrey oleynik)
SachinKumar_Imp
7 Tips from Siemens Energy for Success with Automation
Test Automation using UiPath Test Suite - Developer Circle Part-3 - 07262022.pdf
Automation Culture: Essential to Agile Success
Performance Testing Overview
_VoicePPT_QA_Testing_Training_4_Days_Schedule.ppt
Meet Big Agile: Testing on Large-Scale Projects
The QA/Testing Process
Test Automation using UiPath Test Suite - Developer Circle Part-4.pdf
Sucheta_kale_4.8years_QA
No Devops Without Continuous Testing
Agile Testing – embedding testing into agile software development lifecycle
UNIT IV.ppt
#ATAGTR2020 Presentation - Universal Test Automation Framework
Agile Methodology - Software Engineering
Multiple Dimensions of Load Testing
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".

Recently uploaded (20)

PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Encapsulation theory and applications.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
A Presentation on Artificial Intelligence
PPTX
Tartificialntelligence_presentation.pptx
PDF
Empathic Computing: Creating Shared Understanding
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Getting Started with Data Integration: FME Form 101
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
Programs and apps: productivity, graphics, security and other tools
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Encapsulation theory and applications.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
MYSQL Presentation for SQL database connectivity
Assigned Numbers - 2025 - Bluetooth® Document
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Big Data Technologies - Introduction.pptx
Dropbox Q2 2025 Financial Results & Investor Presentation
A Presentation on Artificial Intelligence
Tartificialntelligence_presentation.pptx
Empathic Computing: Creating Shared Understanding
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Getting Started with Data Integration: FME Form 101
20250228 LYD VKU AI Blended-Learning.pptx

Performance Testing your Kuali Student Product

  • 1. open source administration software for education next generation student system
  • 2. open source administration software for education 2 Agenda • Introductions • The Challenge • Approach • Performance Automaton Strategy • Picking a tool • Application Results • Demo • Next Steps • Lessons Learned • Practices that work for us
  • 3. open source administration software for education 3 Introduction • Kyle Campos: Performance Engineer for Kuali Student. 11 years experience testing and building automation frameworks, both functional and performance, for web, unix and mobile applications. QA Architect for several startups building processes, tooling and test automation frameworks. • Ben Clark, QA Manager for Kuali Student. 12 years of experience in both the computer software and banking industries. Have lead performance testing efforts using off-the-shelf and home grown solutions. ASQ Certified Six Sigma Black Belt and Software Quality Engineer. Earned a B.A. from the University of Montana.
  • 4. open source administration software for education 4 The Challenge: Performance Testing KS • Experience • Management support • Implementor User Group support • Lacked common definitions of the space • Poorly defined requirements • Lacked institutional system environment information • No Kuali Student profile information (how many courses over a year, cycle info, user info, etc) • No test machines for perf testing • Lacked tools for the job • No qualified resources + Forces for achieving success - Forces against achieving success
  • 5. open source administration software for education 5 The Approach Action Plan •Hire experienced performance engineer •Utilize Functional Council and IUG to obtain requirements and data •Define the performance automation strategy •Utilize cloud technologies for test infrastructure •Pick a tool that meets the need • Lacked common definitions of the space • Poorly defined requirements • Lacked institutional system environment information • No Kuali Student profile information (how many courses over a year, cycle info, user info, etc) • No test machines for perf testing • Lacked tools for the job • No qualified resources
  • 6. open source administration software for education 6 Performance Automation Strategy • Develop test suites based on critical features list • Benchmark tags & measure performance gain/loss • Add suites as features are developed • Use usage targets provided by universities
  • 7. open source administration software for education 7 Open source tools –lots out there! Tool Description Pros Cons JMeter A java desktop app designed to load test functional behavior and measure performance • HTTP protocol Support • Documented • List Support • Didn’t work with GWT/Ajax httperf A software tool which is able to simulate load situations for web services, and calculates performance metrics against the results • Familiarity• Robust• Extensible• HTTP protocol Support• Documented• List Support No dynamic variable support The Grinder Java load testing framework that can run a distributed test using many load injector machines • Flexible • Extensible • Documented • List Support Requires Java expertise Tsung Built for high transaction Env • Built for high trans env • Extendable • HTTP protocol Support • Documented • Dynamic variable support Not being used across other KS products Homegrown Build a tool in-house to test performance Total control • Expensive • Time consuming • Proprietary • Reinventing the wheel
  • 8. open source administration software for education 8 Tool Choice - Tsung • Tsung XML API is a homegrown Ruby framework that allows for more rapid load test development, maintenance and execution • Load Framework is tagged and released as validated against milestone releases • Can easily configure custom test suites and load profiles Tsung + Tsung XML API (Ruby) = Load Automation Framework
  • 9. open source administration software for education 8 Tool Choice - Tsung
  • 10. open source administration software for education 6 Test Design • Test layer doesn’t generate any XML, all XML generated by API calls • Test layer environment agnostic (standalone/embedded) • Tests are added to suites and given a probability to run • API docs dynamically created through rdoc • Test configured & launched by homegrown utility
  • 11. open source administration software for education 9 EC2 Network Diagram
  • 12. open source administration software for education 10 Application Results - Key Metrics • Concurrent sessions – driven by launched sessions/min • Mean transaction times – feature defined transactions – highest 10sec mean time • Iterative growth changes (linear?) • System resources – cpu, mem
  • 13. open source administration software for education 10 Application Results • Data collected into Numbers(excel) for calculations • Published on wiki • Demo
  • 14. open source administration software for education 11 Demo • Driver Demo
  • 15. open source administration software for education 12 What’s Next? • Tuning guide documentation • Configuration
  • 16. open source administration software for education 13 Example problem walkthrough • During Create Proposal load test found 4 concurrent sessions – upped to 16-18 sessions by upping thread pool – Way too many threads being consumed per session • Several rounds of debugging through configuration changes • Traced bottleneck to disabling of Rice caching. Resolved after 5 months
  • 17. open source administration software for education 14 Lessons Learned • A proof of concept may not have really proved anything • Tsung is great for flexible load sessions but difficult to manage concurrent sessions • Your load tool must have runtime dynamic variable support to work with GWT (Tsung does)
  • 18. open source administration software for education 15 Practices that work for us • Know your goals and requirements • When in doubt, benchmark • Review the test approach with entire team • A coding effort needs a coder; hire the best • Pick a tool that’s within your resource capability • Separate data, tests and tool • Utilize the cloud – it’s cheap and easy
  • 19. d open source administration software for education 16 Resources • Automation testing home – https://wiki.kuali.org/display/KULSTG/Automation+Testing • Load Test Framework tester’s guide – https://wiki.kuali.org/display/KULSTG/Load+Testing+- +Tester%27s+Guide • Load testing results – https://wiki.kuali.org/display/KULSTG/Automation+Testing+ Results • Contact – Kyle Campos / Skype: kylecampos_kuali / kcampos@rsmart.com – Ben Clark / Skype: benclark_kuali / benclark@u.washington.edu
  • 20. d open source administration software for education 16 Questions?
  • 21. d open source administration software for education 17 Timeline Perf.Bug D etected Perf.B ug Fixed 12/09 01/10 02/10 03/10 04/10 05/10 06/10 07/10 08/10 12/1011/1010/1009/10 H ire C om pleted Strategy in place T oolReview C ode C om pleteT oolT esting Benchm ark Benchm ark Benchm ark Benchm ark M4 M5 M6 M7 M8 M9 Release 1.1 Release 1.0 Benchm ark Benchm arkM3 EC 2 Im plem ented EC 2 U se A pproved

Editor's Notes

  • #5: Force Field Diagram is used to weigh up or lay out the points for and against a potential action or task