34
eXtreme Feedback Device for your CI with Jenkins Agile Tour HCMC 2012 株株株株株株株株株 株株株株

Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Embed Size (px)

Citation preview

Page 1: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

eXtreme Feedback Devicefor your CI with Jenkins

Agile Tour HCMC 2012

株式会社アトラクタ 原田騎郎

Page 2: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

原田 騎郎Kiro HARADA

Agile CoachDomain ModelerSCM Consultant

Twitter: @haradakiro

Page 3: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Agenda

What is XFD? A Brief History of XFD

Andon How to Eliminate Muda XFD

Create your own XFD XFD w/Arduino Demo

Page 4: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

What is XFD?

eXtreme Feedback Device

Page 5: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Make Abnormal Condition Visible for Everybody Stop the line if abnormal

condition happens. Prevents defects go through the line.

Everyone knows

Everyone fixes

Build Quality In

Page 6: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Without XFD

How do you know if your build fails?

Page 7: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

You may have build history like:

Page 8: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

7 Muda / 7 Wastes

Transportation Inventory Movement Waiting Over-processing Over-production Defects

Page 9: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Over-producing Software with Defects

Delivering two Muda at the same time

Competing Productivity of Defected Products

Page 10: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Stop!

Over-production Defects

Do not fix the product. Fix the process.

Page 11: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Do not pretend you’re OK.

If there’s no broken builds for a week;

Is it a good symptom? Or a bad one?

Why?

Page 12: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Toyoda Type G Loom

http://commons.wikimedia.org/wiki/File:1924_Non-Stop_Shuttle_Change_Toyoda_Automatic_Loom,_Type_G_1.jpg

Page 13: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

If you do not have Autonomated XFD?

It doesn’t work if you are busy. It doesn’t work when really

neccesary

Autonomate!

Page 14: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Various XFDs

Patolites Lava Lamps Batman? Dolls?

© by Patlitehttp://www.patlite.co.jp/product/detail.php?i=880

Page 15: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

元チーム角谷 芦沢さん作http://objectclub.jp/community/xfd/

Gacksy

Page 16: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

iPad/iPhone can be your XFD

Websocket Notifier Plugin by @mzphttp://d.hatena.ne.jp/mzp/20110612/jenkins

Page 17: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Build your OWN

Use only available / affordable parts

Build and modify features

Sharpen your saw.

Page 18: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Arduino

Page 19: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Arduino

Open Source Hardware AVR based microprocessor board Arduino IDE is available▪ Assembly is optional

Easy to expand▪ Ethernet Shield can talk TCP/IP

http://www.arduino.cc/

Page 20: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Arduino Code Example

void setup() { // Initialize pin13 as digital output. // pin13 has LED connected onboard pinMode(13, OUTPUT); }

void loop() { digitalWrite(13, HIGH); // Turn on LED delay(1000);   // Wait for 1 sec. digitalWrite(13, LOW); // Turn off LED delay(1000);    // Wait for 1 sec.}

Page 21: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Configuration

Arduino Uno Arduino Ethernet Shield Relay Control Kit (KIT-10733) Xenon Flash Light

Get the latest status via Jenkins Remote API (JSON) Turn of the Flash if UNSTABLE / FAILURE

Page 22: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Connect the wires

An output pin controls the relay.

The relay controls the flash light.

Page 23: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Jenkins Remote API

Most of Jenkins information is available via API.

URL to get the latest build

http://example.com/job/projectA/lastCompletedBuild/api/json?tree=result

{“result”:”SUCCESS”} {“result”:”UNSTABLE”} {“result”:”FAILED”}

Page 24: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Arduino Code Example

https://github.com/haradakiro/arduinojenkinsxfd

Ethernet.begin(mac, ip);Client client(server,80);Serial.begin(9600);

Serial.println("connecting...");

if (client.connect()) { Serial.println("connected"); client.println("GET /job/project/lastCompletedBuild/api/json?tree=result HTTP/1.1"); client.println();} else { Serial.println("connection failed");}

Page 25: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Some Soldering Work

っ f

Page 26: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Soldering is Fun

← 4 years old

Page 27: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Software Engineers can solder.

Twitter: @handazukecafe http://handazukecafe.com/

Page 28: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Alternative to Soldering

Grove Starter Kithttp://www.seeedstudio.com

Page 29: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Demo

Page 30: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Raspberry PI ?

ARM CPU Runs Linux

Runs Ruby Built in Ethernet GPIO to connect devices

Page 31: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Raspberry PI Prototype

Hardware can be spaghetti too

Page 32: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

What XFD can bring to your team

Everybody knows if CI/CD is broken

Everybody concerns slow build. Everybody concerns slow tests. Everybody concerns test failures.

Everybody concerns XFD Team fix and modify XFD

Page 33: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

Confirmation work is Muda

Web page available is not good enough The information is not visible Make it visible to everybody

Make it visible so that no action is necessary.

Page 34: Agile Tour HCMC 2012. Kiro HARADA Agile Coach Domain Modeler SCM Consultant Twitter: @haradakiro

It’s your turn to build XFD

Please share if you build a new one.

Have a XFD and Keep Mr. Jenkins and

Team MembersHappy