Slide 1

Slide 1 text

AGILE METHODOLOGIES Friday 22 August
 National University of Singapore

Slide 2

Slide 2 text

WHAT I WISH I KNEW ABOUT AGILE WHEN I WAS A STUDENT 2

Slide 3

Slide 3 text

WHO AM I? Developer @ ThoughtWorks Waterfall => Agile 3

Slide 4

Slide 4 text

AGILE 4 Project Management Technical Aspects

Slide 5

Slide 5 text

TECHNICAL ASPECTS 5 Pair 
 Programming Test Driven 
 Development Refactoring Continuous 
 Testing Continuous 
 Delivery DevOps

Slide 6

Slide 6 text

PAIR PROGRAMMING • Experience transfer • Better code - code review • Catch errors • Prevent lottery syndrome • Maintains focus 6

Slide 7

Slide 7 text

TEST DRIVEN DEVELOPMENT • Driving design • Preventing regressions • Catching errors • Making you happier 7

Slide 8

Slide 8 text

REFACTORING 8

Slide 9

Slide 9 text

REFACTORING • Refactoring without tests is just randomly changing stuff • Maintainability • Extensibility 9

Slide 10

Slide 10 text

THAT GIVES US… Red-Green-Refactor 10 RED Fail GREEN Pass REFACTOR Pass 1. Write a test that fails REPEAT PROCESS 2. Make only enough 
 code for it to pass 3. Improve code
 quality

Slide 11

Slide 11 text

CONTINUOUS TESTING • Automate everything • Test everything • Test all the time 11 UI SERVICE UNIT

Slide 12

Slide 12 text

CONTINUOUS TESTING 12 UI SERVICE UNIT 5% 10% 85%

Slide 13

Slide 13 text

CONTINUOUS DELIVERY 13 Code 
 and test Integration and tests More 
 integration and tests Final prep 
 and tests PRODUCTION AUTO AUTO AUTO AUTO

Slide 14

Slide 14 text

CONTINUOUS DELIVERY • Cycle time • Automate deployments • Regular deployments • Push enhancements/bug fixes with minimal risks 14

Slide 15

Slide 15 text

DEVOPS 15

Slide 16

Slide 16 text

DEVOPS Automate server setup, network configuration Reduce manual effort Snowflake servers => Phoenix servers 16

Slide 17

Slide 17 text

LEVELUP Bridges the gap between university and the workplace 17

Slide 18

Slide 18 text

LEVELUP • Series of workshops for students who want to add to their classroom learning with real-world experience • Test-driven development • Continuous delivery • Pair programming • Agile project management • Business analysis • How employers hire grads • Offices: Sydney, Melbourne, Brisbane, Johannesburg, Kampala, Bangalore 18

Slide 19

Slide 19 text

LEVELUP ! SINGAPORE LEVELUP EXP ! Saturday 11 October 10am - 6pm ! Register your interest http://levelup.thoughtworks.com/singapore/exp/1.html 19

Slide 20

Slide 20 text

TAN TZE HON Developer [email protected] CONTACT US