SlideShare a Scribd company logo
C o n t i n u o u s D e l i v e r y i n P r a c t i c e 
FINE-TUNING OF AGILE 
DEVELOPMENT 
Isa Goksu, Cengiz Han
ABOUT US 
§ Isa Goksu, @IsaGoksu 
Tech Principal 
§ Cengiz Han, @hancengiz 
Tech Lead 
© 2014 ThoughtWorks, Inc. All rights reserved. 2
RECOGNIZE THIS? 
§ Single line of change takes a week to deploy 
§ Slow Feedback (10 weeks after delivering the 
features, receiving your first feedbacks) 
§ You started a new project, defect from old 
project is bugging you 
§ Code Freeze? 
§ Sleepless nights during deployments 
© 2014 ThoughtWorks, Inc. All rights reserved. 3
“How long would it take your 
organization to deploy a change that 
involves just one single line of code?” 
Mary and Tom Poppendieck 
© 2014 ThoughtWorks, Inc. All rights reserved. 4
THE CONTINUOUS DELIVERY MATURITY MODEL 
© 2014 ThoughtWorks, Inc. All rights reserved. 5
Where to start? 
© 2014 ThoughtWorks, Inc. All rights reserved. 6
1 
7 
make it always production ready 
© 2014 ThoughtWorks, Inc. All rights reserved.
TRUNK-BASED DEVELOPMENT 
8 
§ One and only one branch 
§ Continuously Integrate with the team 
§ All the time production ready 
§ At least 1-commit per day per pair/dev 
§ Quality increase
FEATURE TOGGLING 
§ Helps you to have production-ready code 
all the time 
§ Gives you the flexibility of trying out 
multiple features 
§ QA can test individual features or group 
of features 
§ Business can get fast feedback thru 
feature previewing 
© 2014 ThoughtWorks, Inc. All rights reserved. 9
10 
Features developed 
in an iteration 
Enabled features 
in production 
© 2014 ThoughtWorks, Inc. All rights reserved.
Many more.. 
C# - FeatureSwitcher 
Golang - flag 
Python - Waffle 
Ruby - Feature-Toggles 
Node.js - feature-flags 
11 
© 2014 ThoughtWorks, Inc. All rights reserved.
FEATURE BRANCHING 
§ Avoid it! 
§ CI is a problem 
§ Long-lived 
§ Merging hell 
§ Works on 
§ Small teams 
§ Short-lived 
© 2014 ThoughtWorks, Inc. All rights reserved. 12
2 
13 
build quality in 
© 2014 ThoughtWorks, Inc. All rights reserved.
TEST STRATEGY 
§ Make the QA the key participant of your 
flow 
§ QAs are not just testers (assuring quality) 
§ Enforces you to deliver vertical slices 
§ Consider using new approaches like 
Specification by Example, Generative 
Testing, Parametric Testing) 
§ Automation is a must 
© 2014 ThoughtWorks, Inc. All rights reserved. 14
© 2014 ThoughtWorks, Inc. All rights reserved. 15
© 2014 ThoughtWorks, Inc. All rights reserved. 16
3 
17 
keep everything in source control 
© 2014 ThoughtWorks, Inc. All rights reserved.
STORING DB CHANGES IN SCM 
§ Start with a clean DB 
§ Use proven tools (dbdeploy, liquidbase, etc) 
§ Make sure deltas are incremental, small and 
immutable 
§ Have rollback scripts ready and auto rollback if 
possible, or do only roll-forward 
§ Fail directly if any delta fails 
§ Run each delta in order 
§ Stored together 
© 2014 ThoughtWorks, Inc. All rights reserved. 18
19 
DBDeploy 
Metadata 
Baseline 
Database 
Apply Deltas 
Test 
Apply Deltas Apply Deltas Apply Deltas Apply Deltas 
Fail 
Fast 
© 2014 ThoughtWorks, Inc. All rights reserved.
© 2014 ThoughtWorks, Inc. All rights reserved. 20
INFRASTRUCTURE AS CODE 
§ Determinism vs. Indeterminism 
§ Treat your infrastructure as you are 
coding 
§ Helps you to have system consistency 
§ Use proven tools (puppet, chef, ansible, 
bcm, cfengine, etc) 
§ Have a test machine/vm to try 
© 2014 ThoughtWorks, Inc. All rights reserved. 21
22 
System Config. 
SCM Puppetmaster 
WebServers AppServers WebServers AppServer s OOththeerSrSeervreversr s 
© 2014 ThoughtWorks, Inc. All rights reserved.
23 
Puppet example 
manifest for 
Apache HTTP 
server 
© 2014 ThoughtWorks, Inc. All rights reserved.
TEST IT BEFORE GET IT OUT 
© 2014 ThoughtWorks, Inc. All rights reserved. 24
4 
25 
repeatable, risk-free deployments 
© 2014 ThoughtWorks, Inc. All rights reserved.
UNIFIED WAY 
§ Build one binary and use it everywhere 
§ Deploy the same way to all environments 
§ Unattended deployments 
§ Separate the things that change from the 
thing that don’t 
© 2014 ThoughtWorks, Inc. All rights reserved. 26
VIRTUALIZATION 
§ Use one 
§ Containers vs Hypervisors 
§ Availability, Fail-safe 
§ Fast provisioning 
§ You can automate it! 
© 2014 ThoughtWorks, Inc. All rights reserved. 27
PACKAGING 
28 
RPM | CHOCOLATEY 
sudo rpm –ivh awesome-app-1.0.rpm 
Cinst awesome-app –version 1.0 
© 2014 ThoughtWorks, Inc. All rights reserved.
5 
29 
everybody is responsible 
© 2014 ThoughtWorks, Inc. All rights reserved.
MTBF, MTRS 
§ Failure is inescapable just like getting sick 
§ Self-healing systems (auto-scale, retries, etc) 
30 
© 2014 ThoughtWorks, Inc. All rights reserved.
IMMUNE SYSTEMS 
§ Zero access policy (phoenix or immutable 
servers) 
§ Monitoring (graphite, riemann, munin, 
nagios, etc) 
§ Logging (ELK clusters, Graylog2, syslog, 
etc) 
§ Application Status / Healthcheck / 
Configuration Endpoints 
© 2014 ThoughtWorks, Inc. All rights reserved. 31
32 
Status Endpoint Healthcheck Endpoint 
GET http:// 
my.service/status 
GET http://my.service/ 
healthcheck 
© 2014 ThoughtWorks, Inc. All rights reserved.
SUMMARY 
§ DONE means released! 
§ Automate everything 
§ Be always production ready 
§ If anything fails, stop the delivery line 
§ Keep everything in SCM 
§ Build binaries only once 
§ Use precisely the same mechanism to the every 
environment 
© 2014 ThoughtWorks, Inc. All rights reserved. 33
Q/A 
Ping us later @IsaGoksu, @hancengiz 
© 2014 ThoughtWorks, Inc. All rights reserved. 34

More Related Content

PDF
Continuous Deployment Strategies
PDF
ThoughtWorks Technology Radar Roadshow - Brisbane
PPTX
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
PPTX
All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014)
PDF
ThoughtWorks Technology Radar Roadshow - Melbourne
PPTX
Cloud-native Application Lifecycle Management
PDF
DevOps and its impact
PDF
12 Factor, or Cloud Native Apps - What EXACTLY Does that Mean for Spring Deve...
Continuous Deployment Strategies
ThoughtWorks Technology Radar Roadshow - Brisbane
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
All Things Jenkins and Cloud Foundry (Cloud Foundry Summit 2014)
ThoughtWorks Technology Radar Roadshow - Melbourne
Cloud-native Application Lifecycle Management
DevOps and its impact
12 Factor, or Cloud Native Apps - What EXACTLY Does that Mean for Spring Deve...

What's hot (20)

PDF
Developer Experience Cloud Native - Become Efficient and Achieve Parity
PDF
Cloud native development without the toil
PPTX
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
PPTX
SkyBase - a Devops Platform for Hybrid Cloud
PDF
The 12 Factor App
PDF
Continuous Testing
PDF
PVS-Studio in the Clouds: Azure DevOps
PPTX
How to build the Cloud Native applications the way you want – not the way the...
PPTX
How to Use the Salesforce Suite with Drupal 8: A Quick Start Guide
PDF
Devops: Who Does What? - Devops Enterprise Summit 2016
PPTX
Infrastructure as Code (BBWorld/DevCon13)
PDF
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
PDF
JavaOne 2015 - Swimming upstream in the container revolution
PDF
DevOps@Morpho for ParisDevOps - 2nd of December 2014
PPTX
Introducción a Azure Devops Pipelines - Plain Concepts DevOps day
PPTX
WinOps Conf 2015 - Microsoft Azure & Open Source
PDF
XebiCon'17 : Monolith to microservice, histoire d’une transformation centrée...
PDF
Your own kubernetes castle
PDF
JAX London 2021: Jumpstart Your Cloud Native Development: An Overview of Prac...
PPTX
Overseeing Ship's Surveys and Surveyors Globally Using IoT and Docker by Jay ...
Developer Experience Cloud Native - Become Efficient and Achieve Parity
Cloud native development without the toil
Automation: The Good, The Bad and The Ugly with DevOpsGuys - AppD Summit Europe
SkyBase - a Devops Platform for Hybrid Cloud
The 12 Factor App
Continuous Testing
PVS-Studio in the Clouds: Azure DevOps
How to build the Cloud Native applications the way you want – not the way the...
How to Use the Salesforce Suite with Drupal 8: A Quick Start Guide
Devops: Who Does What? - Devops Enterprise Summit 2016
Infrastructure as Code (BBWorld/DevCon13)
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
JavaOne 2015 - Swimming upstream in the container revolution
DevOps@Morpho for ParisDevOps - 2nd of December 2014
Introducción a Azure Devops Pipelines - Plain Concepts DevOps day
WinOps Conf 2015 - Microsoft Azure & Open Source
XebiCon'17 : Monolith to microservice, histoire d’une transformation centrée...
Your own kubernetes castle
JAX London 2021: Jumpstart Your Cloud Native Development: An Overview of Prac...
Overseeing Ship's Surveys and Surveyors Globally Using IoT and Docker by Jay ...
Ad

Viewers also liked (20)

PDF
Simpler, Clearer, Faster Government Services
PDF
Agile Testing, por Carolina Borim
PDF
Booz Allen Hamilton Public Health Awareness Infographic
PPTX
Inbound Marketing is the Answer - Leighton Interactive
PDF
Highlights of FinanceConnect - FinanceConnect 2015
PPTX
E-Marketing Specialist - Seminar
PPTX
Scheduling Speaking Engagements
PDF
Motivating LinkedIn Members to Engage with Your Content
PPTX
Intro to social media seminar
PDF
2014 Economy of US Infographic
PDF
Universal Mc Cann Wave4
PPTX
Security is Just the Start with Intelligent Video - March Networks
PDF
QTB Technology Lab - The Travel Domain, Beyond SQL, the Cloud, and more...
PPTX
Agile Turkey summit 2014 - Empirical Management explored
PPTX
60 Ways To Grow Your Email List
PDF
A Quick Guide to Baidu Ad Products
PDF
Micro-Interactions in a 2.0 World (v2)
PPTX
What You Don't Know about Document Management, But Should - M-Files
PPTX
Learn How to Efficiently Manage Your Print and Scan Environment - Canon
PDF
Baidu Travel Kit by iClick
Simpler, Clearer, Faster Government Services
Agile Testing, por Carolina Borim
Booz Allen Hamilton Public Health Awareness Infographic
Inbound Marketing is the Answer - Leighton Interactive
Highlights of FinanceConnect - FinanceConnect 2015
E-Marketing Specialist - Seminar
Scheduling Speaking Engagements
Motivating LinkedIn Members to Engage with Your Content
Intro to social media seminar
2014 Economy of US Infographic
Universal Mc Cann Wave4
Security is Just the Start with Intelligent Video - March Networks
QTB Technology Lab - The Travel Domain, Beyond SQL, the Cloud, and more...
Agile Turkey summit 2014 - Empirical Management explored
60 Ways To Grow Your Email List
A Quick Guide to Baidu Ad Products
Micro-Interactions in a 2.0 World (v2)
What You Don't Know about Document Management, But Should - M-Files
Learn How to Efficiently Manage Your Print and Scan Environment - Canon
Baidu Travel Kit by iClick
Ad

Similar to Fine-Tuning of Agile Development (20)

PDF
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...
PPT
Making the Agile Leap to Continuous Deployment
PDF
Introduction to DevOps
PDF
Continuous, continuous, continuous
PPTX
Continuous Delivery: why ? where to start ? how to scale ?
PDF
Recipes for Continuous Delivery (ThoughtWorks Geeknight)
PDF
Continuous Delivery for Agile Teams
PDF
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
PPTX
Road to Continuous Delivery - Wix.com
ZIP
Continuous Integration, Build Pipelines and Continuous Deployment
PPTX
Our Journey To Continuous Delivery
PPTX
Continuous delivery applied (RJUG)
PDF
Continuous Delivery Distilled
PDF
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
PPTX
Continuous Delivery Decision points
PPTX
Continuous Testing in containerized environment
PPTX
Tester’s considerations when moving towards successful CI/CD
PPTX
DevOps Days Ohio
PDF
Constant Contact SF's Road to CD
PDF
Devops
Robert Mircea & Virgil Chereches: Our Journey To Continuous Delivery at I T.A...
Making the Agile Leap to Continuous Deployment
Introduction to DevOps
Continuous, continuous, continuous
Continuous Delivery: why ? where to start ? how to scale ?
Recipes for Continuous Delivery (ThoughtWorks Geeknight)
Continuous Delivery for Agile Teams
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Road to Continuous Delivery - Wix.com
Continuous Integration, Build Pipelines and Continuous Deployment
Our Journey To Continuous Delivery
Continuous delivery applied (RJUG)
Continuous Delivery Distilled
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
Continuous Delivery Decision points
Continuous Testing in containerized environment
Tester’s considerations when moving towards successful CI/CD
DevOps Days Ohio
Constant Contact SF's Road to CD
Devops

More from Thoughtworks (20)

PDF
Design System as a Product
PDF
Designers, Developers & Dogs
PDF
Cloud-first for fast innovation
PDF
More impact with flexible teams
PDF
Culture of Innovation
PDF
Dual-Track Agile
PDF
Developer Experience
PDF
When we design together
PDF
Hardware is hard(er)
PDF
Customer-centric innovation enabled by cloud
PDF
Amazon's Culture of Innovation
PDF
When in doubt, go live
PDF
Don't cross the Rubicon
PDF
Error handling
PDF
Your test coverage is a lie!
PDF
Docker container security
PDF
Redefining the unit
PPTX
Technology Radar Webinar UK - Vol. 22
PDF
A Tribute to Turing
PDF
Rsa maths worked out
Design System as a Product
Designers, Developers & Dogs
Cloud-first for fast innovation
More impact with flexible teams
Culture of Innovation
Dual-Track Agile
Developer Experience
When we design together
Hardware is hard(er)
Customer-centric innovation enabled by cloud
Amazon's Culture of Innovation
When in doubt, go live
Don't cross the Rubicon
Error handling
Your test coverage is a lie!
Docker container security
Redefining the unit
Technology Radar Webinar UK - Vol. 22
A Tribute to Turing
Rsa maths worked out

Recently uploaded (20)

PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
Essential Infomation Tech presentation.pptx
DOCX
The Five Best AI Cover Tools in 2025.docx
PPTX
Introduction to Artificial Intelligence
PDF
AI in Product Development-omnex systems
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Digital Strategies for Manufacturing Companies
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
medical staffing services at VALiNTRY
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Materi-Enum-and-Record-Data-Type (1).pptx
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
Materi_Pemrograman_Komputer-Looping.pptx
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
Transform Your Business with a Software ERP System
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
How Creative Agencies Leverage Project Management Software.pdf
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Essential Infomation Tech presentation.pptx
The Five Best AI Cover Tools in 2025.docx
Introduction to Artificial Intelligence
AI in Product Development-omnex systems
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Understanding Forklifts - TECH EHS Solution
Digital Strategies for Manufacturing Companies
VVF-Customer-Presentation2025-Ver1.9.pptx
medical staffing services at VALiNTRY
How to Choose the Right IT Partner for Your Business in Malaysia
Materi-Enum-and-Record-Data-Type (1).pptx
Softaken Excel to vCard Converter Software.pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 41
2025 Textile ERP Trends: SAP, Odoo & Oracle
Materi_Pemrograman_Komputer-Looping.pptx
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Transform Your Business with a Software ERP System
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
How Creative Agencies Leverage Project Management Software.pdf

Fine-Tuning of Agile Development

  • 1. C o n t i n u o u s D e l i v e r y i n P r a c t i c e FINE-TUNING OF AGILE DEVELOPMENT Isa Goksu, Cengiz Han
  • 2. ABOUT US § Isa Goksu, @IsaGoksu Tech Principal § Cengiz Han, @hancengiz Tech Lead © 2014 ThoughtWorks, Inc. All rights reserved. 2
  • 3. RECOGNIZE THIS? § Single line of change takes a week to deploy § Slow Feedback (10 weeks after delivering the features, receiving your first feedbacks) § You started a new project, defect from old project is bugging you § Code Freeze? § Sleepless nights during deployments © 2014 ThoughtWorks, Inc. All rights reserved. 3
  • 4. “How long would it take your organization to deploy a change that involves just one single line of code?” Mary and Tom Poppendieck © 2014 ThoughtWorks, Inc. All rights reserved. 4
  • 5. THE CONTINUOUS DELIVERY MATURITY MODEL © 2014 ThoughtWorks, Inc. All rights reserved. 5
  • 6. Where to start? © 2014 ThoughtWorks, Inc. All rights reserved. 6
  • 7. 1 7 make it always production ready © 2014 ThoughtWorks, Inc. All rights reserved.
  • 8. TRUNK-BASED DEVELOPMENT 8 § One and only one branch § Continuously Integrate with the team § All the time production ready § At least 1-commit per day per pair/dev § Quality increase
  • 9. FEATURE TOGGLING § Helps you to have production-ready code all the time § Gives you the flexibility of trying out multiple features § QA can test individual features or group of features § Business can get fast feedback thru feature previewing © 2014 ThoughtWorks, Inc. All rights reserved. 9
  • 10. 10 Features developed in an iteration Enabled features in production © 2014 ThoughtWorks, Inc. All rights reserved.
  • 11. Many more.. C# - FeatureSwitcher Golang - flag Python - Waffle Ruby - Feature-Toggles Node.js - feature-flags 11 © 2014 ThoughtWorks, Inc. All rights reserved.
  • 12. FEATURE BRANCHING § Avoid it! § CI is a problem § Long-lived § Merging hell § Works on § Small teams § Short-lived © 2014 ThoughtWorks, Inc. All rights reserved. 12
  • 13. 2 13 build quality in © 2014 ThoughtWorks, Inc. All rights reserved.
  • 14. TEST STRATEGY § Make the QA the key participant of your flow § QAs are not just testers (assuring quality) § Enforces you to deliver vertical slices § Consider using new approaches like Specification by Example, Generative Testing, Parametric Testing) § Automation is a must © 2014 ThoughtWorks, Inc. All rights reserved. 14
  • 15. © 2014 ThoughtWorks, Inc. All rights reserved. 15
  • 16. © 2014 ThoughtWorks, Inc. All rights reserved. 16
  • 17. 3 17 keep everything in source control © 2014 ThoughtWorks, Inc. All rights reserved.
  • 18. STORING DB CHANGES IN SCM § Start with a clean DB § Use proven tools (dbdeploy, liquidbase, etc) § Make sure deltas are incremental, small and immutable § Have rollback scripts ready and auto rollback if possible, or do only roll-forward § Fail directly if any delta fails § Run each delta in order § Stored together © 2014 ThoughtWorks, Inc. All rights reserved. 18
  • 19. 19 DBDeploy Metadata Baseline Database Apply Deltas Test Apply Deltas Apply Deltas Apply Deltas Apply Deltas Fail Fast © 2014 ThoughtWorks, Inc. All rights reserved.
  • 20. © 2014 ThoughtWorks, Inc. All rights reserved. 20
  • 21. INFRASTRUCTURE AS CODE § Determinism vs. Indeterminism § Treat your infrastructure as you are coding § Helps you to have system consistency § Use proven tools (puppet, chef, ansible, bcm, cfengine, etc) § Have a test machine/vm to try © 2014 ThoughtWorks, Inc. All rights reserved. 21
  • 22. 22 System Config. SCM Puppetmaster WebServers AppServers WebServers AppServer s OOththeerSrSeervreversr s © 2014 ThoughtWorks, Inc. All rights reserved.
  • 23. 23 Puppet example manifest for Apache HTTP server © 2014 ThoughtWorks, Inc. All rights reserved.
  • 24. TEST IT BEFORE GET IT OUT © 2014 ThoughtWorks, Inc. All rights reserved. 24
  • 25. 4 25 repeatable, risk-free deployments © 2014 ThoughtWorks, Inc. All rights reserved.
  • 26. UNIFIED WAY § Build one binary and use it everywhere § Deploy the same way to all environments § Unattended deployments § Separate the things that change from the thing that don’t © 2014 ThoughtWorks, Inc. All rights reserved. 26
  • 27. VIRTUALIZATION § Use one § Containers vs Hypervisors § Availability, Fail-safe § Fast provisioning § You can automate it! © 2014 ThoughtWorks, Inc. All rights reserved. 27
  • 28. PACKAGING 28 RPM | CHOCOLATEY sudo rpm –ivh awesome-app-1.0.rpm Cinst awesome-app –version 1.0 © 2014 ThoughtWorks, Inc. All rights reserved.
  • 29. 5 29 everybody is responsible © 2014 ThoughtWorks, Inc. All rights reserved.
  • 30. MTBF, MTRS § Failure is inescapable just like getting sick § Self-healing systems (auto-scale, retries, etc) 30 © 2014 ThoughtWorks, Inc. All rights reserved.
  • 31. IMMUNE SYSTEMS § Zero access policy (phoenix or immutable servers) § Monitoring (graphite, riemann, munin, nagios, etc) § Logging (ELK clusters, Graylog2, syslog, etc) § Application Status / Healthcheck / Configuration Endpoints © 2014 ThoughtWorks, Inc. All rights reserved. 31
  • 32. 32 Status Endpoint Healthcheck Endpoint GET http:// my.service/status GET http://my.service/ healthcheck © 2014 ThoughtWorks, Inc. All rights reserved.
  • 33. SUMMARY § DONE means released! § Automate everything § Be always production ready § If anything fails, stop the delivery line § Keep everything in SCM § Build binaries only once § Use precisely the same mechanism to the every environment © 2014 ThoughtWorks, Inc. All rights reserved. 33
  • 34. Q/A Ping us later @IsaGoksu, @hancengiz © 2014 ThoughtWorks, Inc. All rights reserved. 34