SlideShare a Scribd company logo
Daniel Teng, Certified Scrum Coach
Tech talk at Think in Lamp Gathering
June 6, 2010
   Continuous Integration
   Check In Dance
   ATDD & TDD
   Live Demo
   The Challenges
   CI in One Page
   Why It Helps
   Visualize the Status
   CI Tools
   Basic Guidelines
   Integration of components
   Application configuration
   Deployment
   Testing
   Monitoring
   Logging
   Safe Net
   Communication
   Feedback
   History
   Website
   Email
   Desktop notification
   Build monitor
   Traffic light
   Rabbit
   Sound
   Hudson
   CruiseControl, CruiseControl.Net,
    CruiseControl.rb
   TeamCity
   Team Foundation Server
   More on
    http://en.wikipedia.org/wiki/Continuous_Integ
    ration#Software
   Check in as often as you can
   Avoid stale code
   Don't ever check into or out of a busted build
   Communicate and negotiate check in's to the
    rest of the team
   If you're working on fixing the build, let the
    rest of the team know
   DON'T LEAVE THE BUILD BROKEN
    OVERNIGHT
   Check in Dance
   Go
   Get the latest code from source control.
   Do a merge on any conflicts.
   Run the build locally and fix any problems
   Peer Review
   Let the rest of the team know a change is
    coming if it's a significant update.
   Commit the changes to source control.
   Stop coding until the build passes.
   If the build breaks, drop everything else and
    fix the build.
   The Agile Cycles
   TDD Cycles
Sprint demo

Acceptance Test

  Continuous
  integration

    Unit test


      Pair
  programming
User Story Selected For           Development
Iteration
                                   Story
                                   Implemented
Domain Model / User
                                   Using TDD
Story Elaborated For
Feature
                                   Unit Tests
StoryTest developed by             Initially Fail
Business Owners and
Development/QA
                                   Refactor Until
                                   Unit Tests           Story
   StoryTest Initially             Pass                 Accepted
   Fails                                                when Story
                                                        Test passes


                    Defining “done” for a user story.
   Problem -> String Calculator
   Tools
      Fitness & Slim, FitSharp (revised)
      TeamCity
      C# 3.5
      VS.Net 2008 + ReSharper 4.5
      SubVersion
      NAnt + MSBuild
      NUnit
      NCover + NCoverExplorer
      NDepend
Email: tengzhenyu@gmail.com                  Blog: http://www.cnblogs.com/tengzy/
LinkedIn: http://www.linkedin.com/in/dteng   Twitter: http://twitter.com/danielteng

More Related Content

What's hot

Sustainable Test Automation with Serenity BDD and Screenplay
Sustainable Test Automation with Serenity BDD and ScreenplaySustainable Test Automation with Serenity BDD and Screenplay
Sustainable Test Automation with Serenity BDD and Screenplay
John Ferguson Smart Limited
 
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
KMS Technology
 
Hybrid Automation Framework Development introduction
Hybrid Automation Framework Development introductionHybrid Automation Framework Development introduction
Hybrid Automation Framework Development introduction
Ganuka Yashantha
 
Java Unit Testing
Java Unit TestingJava Unit Testing
Java Unit Testing
Nayanda Haberty
 
Git One Day Training Notes
Git One Day Training NotesGit One Day Training Notes
Git One Day Training Notes
glen_a_smith
 
Angular Unit Testing
Angular Unit TestingAngular Unit Testing
Angular Unit Testing
Shailendra Chauhan
 
testng
testngtestng
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
Anwarul Islam
 
SI 화면테스트(단위) 가이드
SI 화면테스트(단위) 가이드SI 화면테스트(단위) 가이드
SI 화면테스트(단위) 가이드
SangIn Choung
 
Serenity and the Journey Pattern
Serenity and the Journey PatternSerenity and the Journey Pattern
Serenity and the Journey Pattern
John Ferguson Smart Limited
 
Unit Test Presentation
Unit Test PresentationUnit Test Presentation
Unit Test PresentationSayedur Rahman
 
Codemotion Madrid 2023 - Testcontainers y Spring Boot
Codemotion Madrid 2023 - Testcontainers y Spring BootCodemotion Madrid 2023 - Testcontainers y Spring Boot
Codemotion Madrid 2023 - Testcontainers y Spring Boot
Iván López Martín
 
ATDD in Practice
ATDD in PracticeATDD in Practice
ATDD in Practice
Steven Mak
 
Unit Testing like a Pro - The Circle of Purity
Unit Testing like a Pro - The Circle of PurityUnit Testing like a Pro - The Circle of Purity
Unit Testing like a Pro - The Circle of Purity
Victor Rentea
 
BDD WITH CUCUMBER AND JAVA
BDD WITH CUCUMBER AND JAVABDD WITH CUCUMBER AND JAVA
BDD WITH CUCUMBER AND JAVA
Srinivas Katakam
 
TestNG introduction
TestNG introductionTestNG introduction
TestNG introductionDenis Bazhin
 
Selenium ppt
Selenium pptSelenium ppt
Selenium ppt
Anirudh Raja
 
Unit testing with Qt test
Unit testing with Qt testUnit testing with Qt test
Unit testing with Qt test
Davide Coppola
 
Git을 조금 더 알아보자!
Git을 조금 더 알아보자!Git을 조금 더 알아보자!
Git을 조금 더 알아보자!
Young Kim
 

What's hot (20)

Sustainable Test Automation with Serenity BDD and Screenplay
Sustainable Test Automation with Serenity BDD and ScreenplaySustainable Test Automation with Serenity BDD and Screenplay
Sustainable Test Automation with Serenity BDD and Screenplay
 
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
 
Hybrid Automation Framework Development introduction
Hybrid Automation Framework Development introductionHybrid Automation Framework Development introduction
Hybrid Automation Framework Development introduction
 
Java Unit Testing
Java Unit TestingJava Unit Testing
Java Unit Testing
 
Git One Day Training Notes
Git One Day Training NotesGit One Day Training Notes
Git One Day Training Notes
 
Angular Unit Testing
Angular Unit TestingAngular Unit Testing
Angular Unit Testing
 
testng
testngtestng
testng
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
 
SI 화면테스트(단위) 가이드
SI 화면테스트(단위) 가이드SI 화면테스트(단위) 가이드
SI 화면테스트(단위) 가이드
 
Serenity and the Journey Pattern
Serenity and the Journey PatternSerenity and the Journey Pattern
Serenity and the Journey Pattern
 
Unit Test Presentation
Unit Test PresentationUnit Test Presentation
Unit Test Presentation
 
Codemotion Madrid 2023 - Testcontainers y Spring Boot
Codemotion Madrid 2023 - Testcontainers y Spring BootCodemotion Madrid 2023 - Testcontainers y Spring Boot
Codemotion Madrid 2023 - Testcontainers y Spring Boot
 
ATDD in Practice
ATDD in PracticeATDD in Practice
ATDD in Practice
 
Unit Testing like a Pro - The Circle of Purity
Unit Testing like a Pro - The Circle of PurityUnit Testing like a Pro - The Circle of Purity
Unit Testing like a Pro - The Circle of Purity
 
BDD WITH CUCUMBER AND JAVA
BDD WITH CUCUMBER AND JAVABDD WITH CUCUMBER AND JAVA
BDD WITH CUCUMBER AND JAVA
 
TestNG introduction
TestNG introductionTestNG introduction
TestNG introduction
 
Selenium ppt
Selenium pptSelenium ppt
Selenium ppt
 
Unit testing with Qt test
Unit testing with Qt testUnit testing with Qt test
Unit testing with Qt test
 
Git을 조금 더 알아보자!
Git을 조금 더 알아보자!Git을 조금 더 알아보자!
Git을 조금 더 알아보자!
 
Hybrid framework
Hybrid frameworkHybrid framework
Hybrid framework
 

Viewers also liked

Voorbeelden voor Zeeland: Mediaregeling Limburg & e52
Voorbeelden voor Zeeland: Mediaregeling Limburg & e52Voorbeelden voor Zeeland: Mediaregeling Limburg & e52
Voorbeelden voor Zeeland: Mediaregeling Limburg & e52
Bart Brouwers
 
Social Media For Small Business 5 10 11
Social Media For Small Business   5 10 11Social Media For Small Business   5 10 11
Social Media For Small Business 5 10 11
mythicgroup
 
Pmr Bm Kertas 1 Set 3
Pmr Bm Kertas 1 Set 3Pmr Bm Kertas 1 Set 3
Pmr Bm Kertas 1 Set 3
Kay Aniza
 
Historic Springfield Ppt
Historic Springfield PptHistoric Springfield Ppt
Historic Springfield Ppt
crissiecudd
 
Payroll And Personal Services
Payroll And Personal ServicesPayroll And Personal Services
Payroll And Personal Services
Anthony Rainey
 
Mediamachten en e52, voor #smc040
Mediamachten en e52, voor #smc040 Mediamachten en e52, voor #smc040
Mediamachten en e52, voor #smc040
Bart Brouwers
 
Looking At Christmas Back In Time
Looking At Christmas Back In TimeLooking At Christmas Back In Time
Looking At Christmas Back In TimeJeanette Murphy
 
11 Pipers Piping
11 Pipers Piping11 Pipers Piping
11 Pipers Pipinggenequezada
 
Brochure In2intelligence
Brochure In2intelligenceBrochure In2intelligence
Brochure In2intelligenceremconicolai
 
Company profile royal bricks infraheights
Company profile   royal bricks infraheightsCompany profile   royal bricks infraheights
Company profile royal bricks infraheights
Amit Vats
 
Has Anyone Asked a Customer?
Has Anyone Asked a Customer?Has Anyone Asked a Customer?
Has Anyone Asked a Customer?
Dan Armstrong
 
FINISTERRE
FINISTERREFINISTERRE
FINISTERRENCS
 
PeaK Ict Wiki Space Histry Jan Oct 2009
PeaK Ict Wiki Space Histry Jan Oct 2009PeaK Ict Wiki Space Histry Jan Oct 2009
PeaK Ict Wiki Space Histry Jan Oct 2009Jeanette Murphy
 
Ceramic teapots -PMI Loyalty Program for Red Rose Te and Dare Biscuit
Ceramic teapots -PMI Loyalty Program for Red Rose Te and Dare BiscuitCeramic teapots -PMI Loyalty Program for Red Rose Te and Dare Biscuit
Ceramic teapots -PMI Loyalty Program for Red Rose Te and Dare Biscuit
PMI Inc
 
Capturing Evidential Data –
Capturing Evidential Data –Capturing Evidential Data –
Capturing Evidential Data –Jeanette Murphy
 

Viewers also liked (20)

Hyperactivation
HyperactivationHyperactivation
Hyperactivation
 
Voorbeelden voor Zeeland: Mediaregeling Limburg & e52
Voorbeelden voor Zeeland: Mediaregeling Limburg & e52Voorbeelden voor Zeeland: Mediaregeling Limburg & e52
Voorbeelden voor Zeeland: Mediaregeling Limburg & e52
 
Social Media For Small Business 5 10 11
Social Media For Small Business   5 10 11Social Media For Small Business   5 10 11
Social Media For Small Business 5 10 11
 
Pmr Bm Kertas 1 Set 3
Pmr Bm Kertas 1 Set 3Pmr Bm Kertas 1 Set 3
Pmr Bm Kertas 1 Set 3
 
Historic Springfield Ppt
Historic Springfield PptHistoric Springfield Ppt
Historic Springfield Ppt
 
Payroll And Personal Services
Payroll And Personal ServicesPayroll And Personal Services
Payroll And Personal Services
 
Mediamachten en e52, voor #smc040
Mediamachten en e52, voor #smc040 Mediamachten en e52, voor #smc040
Mediamachten en e52, voor #smc040
 
Looking At Christmas Back In Time
Looking At Christmas Back In TimeLooking At Christmas Back In Time
Looking At Christmas Back In Time
 
11 Pipers Piping
11 Pipers Piping11 Pipers Piping
11 Pipers Piping
 
Circuito
CircuitoCircuito
Circuito
 
Brochure In2intelligence
Brochure In2intelligenceBrochure In2intelligence
Brochure In2intelligence
 
Company profile royal bricks infraheights
Company profile   royal bricks infraheightsCompany profile   royal bricks infraheights
Company profile royal bricks infraheights
 
Has Anyone Asked a Customer?
Has Anyone Asked a Customer?Has Anyone Asked a Customer?
Has Anyone Asked a Customer?
 
FINISTERRE
FINISTERREFINISTERRE
FINISTERRE
 
PeaK Ict Wiki Space Histry Jan Oct 2009
PeaK Ict Wiki Space Histry Jan Oct 2009PeaK Ict Wiki Space Histry Jan Oct 2009
PeaK Ict Wiki Space Histry Jan Oct 2009
 
T2, Week 6, 2010
T2, Week 6, 2010T2, Week 6, 2010
T2, Week 6, 2010
 
Roger
RogerRoger
Roger
 
Ceramic teapots -PMI Loyalty Program for Red Rose Te and Dare Biscuit
Ceramic teapots -PMI Loyalty Program for Red Rose Te and Dare BiscuitCeramic teapots -PMI Loyalty Program for Red Rose Te and Dare Biscuit
Ceramic teapots -PMI Loyalty Program for Red Rose Te and Dare Biscuit
 
Capturing Evidential Data –
Capturing Evidential Data –Capturing Evidential Data –
Capturing Evidential Data –
 
RUN FOR HOPE
RUN FOR HOPERUN FOR HOPE
RUN FOR HOPE
 

Similar to Check in dance

Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer Perspective
Wee Witthawaskul
 
TDD - Agile
TDD - Agile TDD - Agile
TDD - Agile
harinderpisces
 
Continuous delivery slideshare upload 101914
Continuous delivery   slideshare upload 101914Continuous delivery   slideshare upload 101914
Continuous delivery slideshare upload 101914
Vijay Reddy
 
PyCon 9: Continuous Delivery starts at your Development Dnvironment
PyCon 9: Continuous Delivery starts at your Development DnvironmentPyCon 9: Continuous Delivery starts at your Development Dnvironment
PyCon 9: Continuous Delivery starts at your Development Dnvironment
Peter Bittner
 
Continuous Delivery for Python Developers – PyCon Otto
Continuous Delivery for Python Developers – PyCon OttoContinuous Delivery for Python Developers – PyCon Otto
Continuous Delivery for Python Developers – PyCon Otto
Peter Bittner
 
Test driven development_continuous_integration
Test driven development_continuous_integrationTest driven development_continuous_integration
Test driven development_continuous_integration
haochenglee
 
Ci tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepinsCi tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepins
Linards Liep
 
Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai Culture
Wee Witthawaskul
 
Tech talks #1- Unit testing and TDD
Tech talks #1- Unit testing and TDDTech talks #1- Unit testing and TDD
Tech talks #1- Unit testing and TDD
DUONG Trong Tan
 
TDD with BizTalk
TDD with BizTalkTDD with BizTalk
TDD with BizTalk
Ben Carey
 
Adrian marinica continuous integration in the visual studio world
Adrian marinica   continuous integration in the visual studio worldAdrian marinica   continuous integration in the visual studio world
Adrian marinica continuous integration in the visual studio world
Codecamp Romania
 
xUnit and TDD: Why and How in Enterprise Software, August 2012
xUnit and TDD: Why and How in Enterprise Software, August 2012xUnit and TDD: Why and How in Enterprise Software, August 2012
xUnit and TDD: Why and How in Enterprise Software, August 2012
Justin Gordon
 
Continuous Everything
Continuous EverythingContinuous Everything
Continuous Everything
Andrea Tino
 
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionBeyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Product Marketing Services
 
TDD in functional testing with WebDriver
TDD in functional testing with WebDriverTDD in functional testing with WebDriver
TDD in functional testing with WebDriver
Mikalai Alimenkou
 
Testing apps with MTM and Tea Foundation Service
Testing apps with MTM and Tea Foundation ServiceTesting apps with MTM and Tea Foundation Service
Testing apps with MTM and Tea Foundation ServiceKevin DeRudder
 
#SPSToronto How to do #DevOps with #SPFx and why it matters
#SPSToronto How to do #DevOps with #SPFx and why it matters#SPSToronto How to do #DevOps with #SPFx and why it matters
#SPSToronto How to do #DevOps with #SPFx and why it matters
Vincent Biret
 
Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model
cPrime | Project Management | Agile | Consulting | Staffing | Training
 
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...Anna Russo
 
Essential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile AdoptionEssential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile Adoption
Steven Mak
 

Similar to Check in dance (20)

Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer Perspective
 
TDD - Agile
TDD - Agile TDD - Agile
TDD - Agile
 
Continuous delivery slideshare upload 101914
Continuous delivery   slideshare upload 101914Continuous delivery   slideshare upload 101914
Continuous delivery slideshare upload 101914
 
PyCon 9: Continuous Delivery starts at your Development Dnvironment
PyCon 9: Continuous Delivery starts at your Development DnvironmentPyCon 9: Continuous Delivery starts at your Development Dnvironment
PyCon 9: Continuous Delivery starts at your Development Dnvironment
 
Continuous Delivery for Python Developers – PyCon Otto
Continuous Delivery for Python Developers – PyCon OttoContinuous Delivery for Python Developers – PyCon Otto
Continuous Delivery for Python Developers – PyCon Otto
 
Test driven development_continuous_integration
Test driven development_continuous_integrationTest driven development_continuous_integration
Test driven development_continuous_integration
 
Ci tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepinsCi tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepins
 
Agile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai CultureAgile Software Development Process Practice in Thai Culture
Agile Software Development Process Practice in Thai Culture
 
Tech talks #1- Unit testing and TDD
Tech talks #1- Unit testing and TDDTech talks #1- Unit testing and TDD
Tech talks #1- Unit testing and TDD
 
TDD with BizTalk
TDD with BizTalkTDD with BizTalk
TDD with BizTalk
 
Adrian marinica continuous integration in the visual studio world
Adrian marinica   continuous integration in the visual studio worldAdrian marinica   continuous integration in the visual studio world
Adrian marinica continuous integration in the visual studio world
 
xUnit and TDD: Why and How in Enterprise Software, August 2012
xUnit and TDD: Why and How in Enterprise Software, August 2012xUnit and TDD: Why and How in Enterprise Software, August 2012
xUnit and TDD: Why and How in Enterprise Software, August 2012
 
Continuous Everything
Continuous EverythingContinuous Everything
Continuous Everything
 
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionBeyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
 
TDD in functional testing with WebDriver
TDD in functional testing with WebDriverTDD in functional testing with WebDriver
TDD in functional testing with WebDriver
 
Testing apps with MTM and Tea Foundation Service
Testing apps with MTM and Tea Foundation ServiceTesting apps with MTM and Tea Foundation Service
Testing apps with MTM and Tea Foundation Service
 
#SPSToronto How to do #DevOps with #SPFx and why it matters
#SPSToronto How to do #DevOps with #SPFx and why it matters#SPSToronto How to do #DevOps with #SPFx and why it matters
#SPSToronto How to do #DevOps with #SPFx and why it matters
 
Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model
 
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
 
Essential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile AdoptionEssential practices and thinking tools for Agile Adoption
Essential practices and thinking tools for Agile Adoption
 

More from Daniel Teng

Pretotyping Before Prototyping @ QCon Beijing
Pretotyping Before Prototyping @ QCon BeijingPretotyping Before Prototyping @ QCon Beijing
Pretotyping Before Prototyping @ QCon Beijing
Daniel Teng
 
Fearless Change RSG Japan English.pdf
Fearless Change RSG Japan English.pdfFearless Change RSG Japan English.pdf
Fearless Change RSG Japan English.pdf
Daniel Teng
 
Be(yond/neath) Scrum Values
Be(yond/neath) Scrum Values Be(yond/neath) Scrum Values
Be(yond/neath) Scrum Values
Daniel Teng
 
Dance in the Darkness
Dance in the DarknessDance in the Darkness
Dance in the Darkness
Daniel Teng
 
Adult Manifesto
Adult ManifestoAdult Manifesto
Adult Manifesto
Daniel Teng
 
Be the Owner
Be the OwnerBe the Owner
Be the Owner
Daniel Teng
 
ISNIPER - How To Make The Change When Change Is Hard
ISNIPER - How To Make The Change When Change Is HardISNIPER - How To Make The Change When Change Is Hard
ISNIPER - How To Make The Change When Change Is Hard
Daniel Teng
 
How to Get There - An Ideathon Toolkit
How to Get There - An Ideathon ToolkitHow to Get There - An Ideathon Toolkit
How to Get There - An Ideathon ToolkitDaniel Teng
 
Meteor is Coming
Meteor is ComingMeteor is Coming
Meteor is Coming
Daniel Teng
 
Tool
ToolTool
Agile Beyond Software
Agile Beyond SoftwareAgile Beyond Software
Agile Beyond Software
Daniel Teng
 

More from Daniel Teng (12)

Pretotyping Before Prototyping @ QCon Beijing
Pretotyping Before Prototyping @ QCon BeijingPretotyping Before Prototyping @ QCon Beijing
Pretotyping Before Prototyping @ QCon Beijing
 
Fearless Change RSG Japan English.pdf
Fearless Change RSG Japan English.pdfFearless Change RSG Japan English.pdf
Fearless Change RSG Japan English.pdf
 
Be(yond/neath) Scrum Values
Be(yond/neath) Scrum Values Be(yond/neath) Scrum Values
Be(yond/neath) Scrum Values
 
Dance in the Darkness
Dance in the DarknessDance in the Darkness
Dance in the Darkness
 
Adult Manifesto
Adult ManifestoAdult Manifesto
Adult Manifesto
 
Be the Owner
Be the OwnerBe the Owner
Be the Owner
 
ISNIPER - How To Make The Change When Change Is Hard
ISNIPER - How To Make The Change When Change Is HardISNIPER - How To Make The Change When Change Is Hard
ISNIPER - How To Make The Change When Change Is Hard
 
How to Get There - An Ideathon Toolkit
How to Get There - An Ideathon ToolkitHow to Get There - An Ideathon Toolkit
How to Get There - An Ideathon Toolkit
 
Meteor is Coming
Meteor is ComingMeteor is Coming
Meteor is Coming
 
Tool
ToolTool
Tool
 
Agile Beyond Software
Agile Beyond SoftwareAgile Beyond Software
Agile Beyond Software
 
Road To Agility
Road To AgilityRoad To Agility
Road To Agility
 

Recently uploaded

DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
Fwdays
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 

Recently uploaded (20)

DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 

Check in dance

  • 1. Daniel Teng, Certified Scrum Coach Tech talk at Think in Lamp Gathering June 6, 2010
  • 2.
  • 3. Continuous Integration  Check In Dance  ATDD & TDD  Live Demo
  • 4. The Challenges  CI in One Page  Why It Helps  Visualize the Status  CI Tools  Basic Guidelines
  • 5. Integration of components  Application configuration  Deployment  Testing  Monitoring  Logging
  • 6.
  • 7. Safe Net  Communication  Feedback  History
  • 8. Website  Email  Desktop notification  Build monitor  Traffic light  Rabbit  Sound
  • 9.
  • 10.
  • 11.
  • 12. Hudson  CruiseControl, CruiseControl.Net, CruiseControl.rb  TeamCity  Team Foundation Server  More on http://en.wikipedia.org/wiki/Continuous_Integ ration#Software
  • 13. Check in as often as you can  Avoid stale code  Don't ever check into or out of a busted build  Communicate and negotiate check in's to the rest of the team  If you're working on fixing the build, let the rest of the team know  DON'T LEAVE THE BUILD BROKEN OVERNIGHT
  • 14. Check in Dance  Go
  • 15. Get the latest code from source control.  Do a merge on any conflicts.  Run the build locally and fix any problems  Peer Review  Let the rest of the team know a change is coming if it's a significant update.  Commit the changes to source control.  Stop coding until the build passes.  If the build breaks, drop everything else and fix the build.
  • 16.
  • 17. The Agile Cycles  TDD Cycles
  • 18. Sprint demo Acceptance Test Continuous integration Unit test Pair programming
  • 19. User Story Selected For Development Iteration Story Implemented Domain Model / User Using TDD Story Elaborated For Feature Unit Tests StoryTest developed by Initially Fail Business Owners and Development/QA Refactor Until Unit Tests Story StoryTest Initially Pass Accepted Fails when Story Test passes Defining “done” for a user story.
  • 20. Problem -> String Calculator  Tools  Fitness & Slim, FitSharp (revised)  TeamCity  C# 3.5  VS.Net 2008 + ReSharper 4.5  SubVersion  NAnt + MSBuild  NUnit  NCover + NCoverExplorer  NDepend
  • 21. Email: tengzhenyu@gmail.com Blog: http://www.cnblogs.com/tengzy/ LinkedIn: http://www.linkedin.com/in/dteng Twitter: http://twitter.com/danielteng