Experience Agile Programming XP Days Ukraine Йоханнес Бродвалл, Just-a-programmer Стерия

Slides:



Advertisements
Similar presentations
Extreme Programming Live WeActuallyBuildStuff Johannes Brodwall Exilesoft Chief Guest starring: Chaminda Sooriyapperuma.
Advertisements

Coding dojo PocketMobile Johannes Brodwall, Chief scientist Exilesoft.
Why have safety meetings? They get employees involved in the safety process. Increases the number of eyes and brains engaged in safety. Employees develop.
SOFTWARE DEVELOPMENT METHODOLOGIES Methodologies Waterfall Prototype model Incremental Iterative V-Model Spiral Scrum Cleanroom RAD DSDM RUP.
Alternate Software Development Methodologies
Agile Process Models. Prescriptive models don’t work It is unrealistic to not have changes. Why? The Agile Manifesto: Individuals and interactions over.
PRESENATATION ON AUTOMATED SOFTWARE TESTING ADVANCED SOFTWARE ENGINEERING CSC 532 Presented by VISHAL D RAMPURE.
Jeopardy Root Words Language Arts Prefixes Suffixes Q $100 Q $100
Unfixing the Fixed Scope Project Using Agile Methodologies to Create Flexibility in Project Scope Jeff Patton Tomax Corporation Salt Lake City, UT
Agile Requirements Methods CSSE 371 Software Requirements and Specification Mark Ardis, Rose-Hulman Institute October 26, 2004.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Test Driven Development Coding Katas ADRIAN O’SULLIVAN, LEAD APPLICATION DEVELOPER DEUTSCHE BANK GLOBAL TECHNOLOGY.
By for Test Driven Development: Industry practice and teaching tool Robert Vanderwall, Ph.D. 1 WISTPC-15.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Extreme Programming.
Test Driven Development An approach to writing better code Jimmy Zimmerman Intel Corporation.
Coding Dojo Agile Riga Day 2012 Johannes Brodwall, Principal Architect Steria
Extreme Startup Agile Riga Day 2012 Johannes Brodwall, Principal Architect Steria
1 Design and Integration: Part 1 Nuggets about Design vs Project Management.
Jeopardy Language Arts Math Social Studies Science Q $100 Q $200 Q $300 Q $400 Q $500 Q $100 Q $200 Q $300 Q $400 Q $500 Final Jeopardy.
Chapter 4 Agile Development
Remote Pair Programming Agile 2013 Johannes Brodwall Exilesoft Chief Guest starring: Niruka Ruhunage.
Coding Dojo: an environment for learning and sharing Agile practices Danilo Sato, Hugo Corbucci, Mariana Bravo Agile 2008 – Toronto - Canada 6 th Aug 2008.
Project Workflow. How do you do it? -Discussion-
Experience Agile Programming SDC 2012, Göteborg Johannes Brodwall Steria Featuring: Ole Chr Rynning.
T-unit: Tcl Unit Test Package Automated Unit Test Package For Tcl Procedures Final Presentation Joseph Boyle Loyola Marymount University.
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
Pair Programming. XP Rule of Thumb “When something is difficult or painful, do it more often until it becomes easier.”
Cerberus. Introduction Cerberus is test case generator tool. Used for automation of unit testing.
By for Testing Tools: Test Automation and supporting tools Jariro Pava, Robert Vanderwall 1 WISTPC-14.
Rapid software development 1. Topics covered Agile methods Extreme programming Rapid application development Software prototyping 2.
Extreme Programming.
Balancing Agility and Discipline Chapter 4 Sharon Beall EECS 811 April 22, 2004.
Future Media  BBC MMXI TDD at the BBC David Craddock, Jack Palfrey and Tom Canter.
1 김 수 동 Dept. of Computer Science Soongsil University Tel Fax
The Strengths and Weaknesses of Extreme Programming
Chapter 2 Software processes. Topics covered Software process models Process activities Coping with change.
Acceleration NL 2.2. Acceleration : is a change in velocity. – Because acceleration is a change in velocity and not speed you must also indicate direction.
TDD & PP Workshop for Sterias FHS og T&D team, 9. desember, 2010 Johannes Brodwall Anders Karlsen.
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
Coding Quest JavaBin Stavanger Johannes Brodwall Exilesoft Chief
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
Experience Agile Programming Agile Meetup, Sri Lanka Johannes Brodwall Steria Featuring: Shihan Iqbal.
Multi-purpose tests (Cool tricks with JUnit) JavaZone 2012 Johannes Brodwall, Principal Architect Steria
Prevention to Avoid Intervention Tier 1: the most important tier!
Coding Dojo Sofware People 2012 Johannes Brodwall, Principal Architect Steria
PRESENTATION AND INTERVIEW TIPS. Interviews Be confident BUT be humble.
Welcome!!! Mrs. Czechowski. Birthday Calendar Print your name on the day of your birthday. Please write small in case there is another student that has.
Beginning Software Craftsmanship Brendan Enrick Steve Smith
Remote Pair Programming Agile India 2014 Johannes Brodwall Exilesoft Chief Guest starring: Niruka Ruhunage.
Visual Studio 2015 Tips and Tricks Robert Green Program Manager Evangelism, DX,
J.R. Smith Elementary School Playing, Learning and Growing Together.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Software Testing History, Trends, Perspectives – a Brief Overview.
Welcome to Toll-Free number: (Australia)
Project Workflow.
AGILE METHODS Curtis Cook CS 569 Spring 2003.
Agile Methods SENG 301.
Software Development.
A-level Computing Fizzbuzz programming challenge
Software Development methodologies
Welcome to 8th Grade ELA!.
Walk-in-Work Answer in your Do-Now Log: Copy the sentence starter and finish the following sentence: People who have positive attitudes see the world as.
Agile Scrum Online Training
RCSA Funding Proposal.
At the time of furniture selection, one needs to use some tricks to make the best choice.
Johanna Rothman Create Technical Excellence Chapter 9
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
Coding Dojo: an environment for learning and sharing Agile practices
Welcome to Our Second Grade Class!
Talking Between Services with gRPC
Presentation transcript:

Experience Agile Programming XP Days Ukraine Йоханнес Бродвалл, Just-a-programmer Стерия

Goal To have fun now! For you to have fun now! For you to have fun later (stretch goal)

Agenda Description Demonstration with Dima Mindra Discussion Tips and tricks

Description

Kata: Minesweeper

Given: var minefield = new Minefield([ "....", ".*..", ".*.*", "...*“ ])

Kata: FizzBuzz

1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz FizzBuzz 16

Kata: Prime factors 1 => [] 2 => [2] 3 => [3] 4 => [2,2] … 2*2*13*17*23*23 => [2,2,13,17,23,23]

What do watch for How we interact How we progress through the code How we design How we use the language

Demonstration (Featuring Dmytro Mindra)

What did you see?

How often did we switch ”driver”? Effects of pairing? What did the ”non-driver” do?

What did you see? Was the step size right? What was the first test? How did we decide next test? What was the final test?

What did you see? Language tricks? Did we refactor the right amount? How long was the code red? Strengths in final design Weaknesses in final design

Why become better at programming?

Seriously. Why?

Only 13.37% of effort

Getting better quality

Correctness Maintainability

But more importantly!

Think better

Raise your level of abstraction

What to practice

Test the contract

API Not behavior

Test from outside-in

Who? Why? Pop! Mock

Practice pair programming

Ping pong

Failing test Fix the test Failing test Fix the test Failing test

Fix the test Failing test Fix the test Failing test Refactor

JohannesDmytro SergeyMikhail Volodymyr

JohannesDmytro SergeyMikhail Volodymyr

JohannesDmytro SergeyMikhail Volodymyr

All-green refactoring

Reduce the time of uncertainty

How to practice

Practice Practice at work Practice katas Practice in dojos

Kyiv Coding Dojo?

Pick a demo

1.Outside-in 2.Mocking 3.API test 4.All-green refactoring

Conclusion

Free your mind

Practice our art

Thank you (Please tweet in Cyrillic with english-like words)