Upload
kulawat-wongsaroj
View
1.328
Download
12
Embed Size (px)
DESCRIPTION
[Download .pps to view is better for animation] A story of a man who wouldn't want to go back to Waterfall, ever!
Citation preview
Confession of an Agile AddictA story of a man who wouldn’t go back to Waterfall, ever!
คำ��ส�รภ�พของคำนติ ดเอไจล์�เบื้��องหลังของคนชัง Waterfall
Kulawat Wongsaroj
Hello. I’m Kulawat. I am an Agile Addict.
3 Years ago, I was involved in a 2-billion bath government contract to migrate legacy core bank system to a new one. – โปรเจคสองพันลั�าน อลังการงานสร�าง
It is so chaotic. I felt sorry for the future customer – we are not building what they want! - ทำ�าไปก�ใชั�ไม่�ได้�แน�ๆ
At one point, we went off-site to conduct a planning working. We got thousands items in MS Project defined. – ไปสม่ม่นาทำ�าแผนทำ#$พัทำยา 5 วันได้� MS Project ม่าเป'น 1,000 รายการ
Those items were hardly complete. – แทำบื้ไม่�ได้�ทำ�าตาม่แผนเลัย Project was eventually cancelled. – ส)ด้ทำ�ายก�ลั�ม่!! What is wrong with it? – ม่นอะไรกนเน�ย!!!
IT Projects are failing everywhere!
IT Projects Failure Research– 75% of projects at US DoD
following DOD-STD-2167 (waterfall model) fails (The 5th Annual JAWS S3 Proceedings, 1999)
– 87% of 1,027 IT projects in the UK fails (British Computer Society Review, 2001)
– 31.1% is canceled, 52.7% cost over 189% of original estimates(The Chaos Report, 1995)
– ลัองถาม่คนข�างๆตวัค)ณ!!! – Ask your friends!!!
ทำ��ไมม�นถึ�งย�กน�กหน�?
What is wrong with it?
Separation of Design & Construction – Traditional View
Design
Construction
drawing
Discuss Requirement
System Analysis & Design
design spec
Discuss Requirement
Architectural Design
Construct
Inspect
Code
Acceptance Test
Build a House Build Software
Design
Construction
drawing
Discuss Requirement
source code
Discuss Requirement
Architectural Design
Construct
Inspect
Design & Code
(Automated) Acceptance Test
Build a House Build Software
Compile & Link
• งานทำ#$ต�องใชั�ควัาม่ค-ด้สร�างสรรค.น�นไม่�สาม่ารถจะวัางแผนลั�วังหน�าได้�ง�าย ด้งน�นการคำ�ดก�รล์�วงหน��น�นจ/งเป็ นไป็ไม�ได�เลัย
• Creative processes are not easily planned, and so predictability may well be an impossible target.
• เราไม่�ควัรทำ#$จะใชั�ควัาม่ค-ด้ทำางวั-ศวักรแบื้บื้เด้-ม่ๆในการค-ด้สร�างซอฟต.แวัร. เน�$องจากม่นเป'นงานคนลัะอย�างแลัะม่นต�องการขบวนก�รทำ��ง�นทำ"#แติกติ��งจากเด้-ม่
•We should be very wary of the traditional engineering metaphor for building software. It's a different kind of activity and requires a different process
[The New Methodology, Martin Fowler]
Cheap (to execute)
Creativity & Talent
Separation of Design & Construction – Different View
แล์�วจะทำ��อย��งไรก�นด"?
How do we fix it?
Agile Manifesto - พ�นธะส�ญญ�เอไจล์�
In early 2001, a group of industry experts in light-weight process like XP, Scrum, FDD, Crystal, DSDM, and etc, formed the Agile
Alliance and created The Manifesto of the Agile Alliance.
We are uncovering better ways of developingsoftware by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and toolsWorking software over comprehensive documentation
Customer collaboration over contract negotiationResponding to change over following a plan
That is, while there is value in the items onthe right, we value the items on the left more.
agilemanifesto.org
พัวักเราได้�ค�นพับื้วั-ถ#แห�งการพัฒนาซอฟต.แวัร.ทำ#$ด้#กวั�าจากการทำ�าจร-งแลัะชั�วัยคนอ�$นๆทำ�า
จากประสพัการณ.น#� เราตกลังกนวั�าเราจะให�ค)ณค�ากบื้ติ�วคำนทำ��ง�นแล์ะก�รป็ฎิ ส�มพ�นธ� > กระบวนก�รแล์ะเคำร*#องม*อ
ซอฟติ�แวร�ทำ"#ใช้�ง�นได�จร ง > เอกส�รทำ"#คำรบถึ�วนก�รทำ��ง�นอย��งใกล์�ช้ ดก�บล์/กคำ�� > ติ�อรองส�ญญ�ก�รทำ��ง�น
ก�รติอบสนองติ�อคำว�มเป็ล์"#ยนแป็ล์ง > ก�รทำ��ติ�มแผนทำ"#ว�งไว�ทำ�งม่#เราม่-ได้�ลัะเลัยค)ณค�าทำ#$กลั�าวัทำางด้�านขวัา
หากแต�เพั#ยงเราให�ค)ณค�าแก�ทำางด้�านซ�ายม่ากกวั�า
Individuals & interactions over processes and tools
ติ�วคำนทำ��ง�นแล์ะก�รป็ฎิ ส�มพ�นธ� > กระบวนก�รแล์ะเคำร*#องม*อ
Plan and design together in team rather than a project manager
Encourage face-to-face communication rather than formal meeting
Use story board as project planning and tracking tool rather than MS Project
วัางแผนแลัะออกแบื้บื้กนทำ�1งทำ"มแทำนทำ#$จะให� PM เป'นคนวัางแผนให�
เน�นการพ/ดคำ2ยก�นติ�วติ�อติ�วม่ากกวั�าการจด้ประชั)ม่อย�างเป'นทำางการ
ใชั� story board แทำน MS Project ในการวัางแผนแลัะต-ด้ตาม่งาน
User Story
User stories consist of three parts:– Card – The place holder we use to remind us of the story (above)– Conversation – The conversation to follow that will cover the detail– Confirmation – The tests that confirm the story’s satisfactory completion
Consider using a template– “As a <user role>,
I want to <do something> (so that <achieve some business value>)” – WHO/WHAT/WHY
13 51 1
31 2
2155
HIGH PRIORITY LOW PRIORITYRelease
Story
Release in an Agile project
13 51 1
31 2
2155
Iteration 1 Iteration 2 Iteration 3Velocity=10 Velocity=10 Velocity=10
HIGH PRIORITY LOW PRIORITYRelease
Release in an Agile project
ติ�องม" Daily Report แล์ะส�งม�ทำ�ง e-mail ได�ด�วย
นะ
Requirement Design Code Test
R D C T
I
R D C T R D C T R D C T
I I I I I I I I I I I I I I I
a b c d a b c d a b c d a b c d
a a a a b b b b c c c c d d d d
a a a a b b b b c c c c d d d dX X X X
Waterfall
Iterative
Agile
Responding to change over following a plan
ก�รติอบสนองติ�อคำว�มเป็ล์"#ยนแป็ล์ง > ก�รทำ��ติ�มแผนทำ"#ว�งไว�
Customer collaboration over contract negotiation
ก�รทำ��ง�นอย��งใกล์�ช้ ดก�บล์/กคำ�� > ติ�อรองส�ญญ�ก�รทำ��ง�น
a a a a
Requirement Design Code Test
a b c d e f g h a b c d e f g h a b c d e f g h a b c d e f g h
plan Due Date
Waterfall
Requirement Design Code Test
a b c d e f g h a b c d e f g h a b c d e f g h a b c d e f g h
actual
b b b b
f f f f
c c c c
e e e e
I
AgileI I I I I I I
g g g g
Feedback &Re-prioritize
d d d d
h h h h
i
Features
This is what we really want!
Working softwareover comprehensive documentation
ซอฟติ�แวร�ทำ"#ใช้�ง�นได�จร ง > เอกส�รทำ"#คำรบถึ�วน
I
AgileI I I I I I I
Test Driven Development (TDD)- NO BUGS = Working Software- Unit Test = Best Design Doc
Track Progress with Working SoftwareNOT how much plan has progressed
a a a a b b b b c c c c
Agile Benefit
เก�บื้ Requiremen
tเห�นหน�าบื้�อย
ทำะเลัาะกนม่ากชั�วัง UAT
ใกลั� Deliver
เปลั#$ยนยาก
Working Software ใชั�
งานได้�จร-งต�งแต�แรก
RISK ทำ#$จะ FAIL ลัด้อย�าง
รวัด้เร�วัเพัราะค)ยกนตลัอด้
คำ��ส�รภ�พ
A confession
I’d like to confess that …
Agile is not a really a process, but a “way of thinking” (วั-ธี#ค-ด้)
Agile is direction (วั-ถ#ทำาง), not destination (จ)ด้หม่าย) Agile is not a silver bullet (แก�ป5ญหาทำ)กอย�าง) Agile is not easy – self-organizing team means
management has less power – (อาจโด้นข�อหากบื้ฏ) I love Agile and I never want to go back to Waterfall!
If you want to start being Agile
Study and REALLY understand the PRINCIPLES behind it before implementing it-- เข�าใจจร-งๆ
No need to start big – Use pilot to convince your management – ไม่�ต�องเร-$ม่ใหญ�ก�ได้� ทำ�าให�ด้8จร-งๆ
Practices what good for you – เลั�อกใชั�ในส-$งทำ#$เหม่าะ
Who’s using Agile?
Books I like
Mike Cohn Venkat Subramaniam & Andy Hunt (Author)
Robert C. Martin
Mary & Tom Poppendick
Thank You
Q & A