way to agile - usth

52
A gile A gile way to Nguyễn Văn Hiển 2013

Upload: hien-nguyen

Post on 15-Aug-2015

88 views

Category:

Software


1 download

TRANSCRIPT

AgileAgileway  to

Nguyễn  Văn Hiển2013

Way  to  Agile  Nguyễn  Văn Hiển

[email protected]

Agile4U

Content

Software  

Development  

MethodologiesAgile  and  Agile  processes

XPScrum

Lean  &  Lean  Startup

Agile  NOW!

Mindset

Techniques  

Collaboration    

Tools

How  is  a  software  created?

Someone  wants  a  software  

to  meet  his  needs

investigates  and  

assigns  some  people   to    create  one  with  required

features,  that’s  called  

REQUIREMENTS    

And,  some  of  these  people  draw  

something,  that’s  called

DESIGN

Then  others  type  the  statements,  follow  

the  design  ,  that’s  called

CODING

After  that,  other  execute  the  software  to  make  sure  

it  meets  the  requirements,   that’s  called

TESTING

Hopefully,  a  SOFTWARE will  be  released  with  full  related  documents,

CONTRACT will  be  paid,CUSTOMER will  be  over-­‐satisfied  

Wonderful  ending…

But,  wait.  The  fact  is…

Source:  The  CHAOS  Manifesto,  The  Standish  Group,  2012.

14%

57%

29%

Thành  côngThử  tháchThất  bại

SuccessfulChallenged  Failed

Customers  are  so  disappointed…

What  customers  needWhat  we  promise

What  customers  pay

What  customers  receive

Images:  http://natishalom.typepad.com/nati_shaloms_blog/2008/04/one-­‐requirment.html

Why?

!

Eliminate  in-­‐progress!

HOW  DOES  SCRUM  TEAMCREATE  A  SOFTWARE ??

Someone  wants  a  software  

to  meet  his  needs,  investigates  and  assigns  some  people  to  

create  one  with  required features,  that’s  called

REQUIREMENTS

Software  creation  work  is  assigned  to

Development  teamThis  team  work  together  and  do

PlanningWhat  will  be  done  in  next

month/weekto  have  (some)  completed feature(s)

to  release at  end  of  next  month/week

Result  of  planning  meeting

is  a

Plan

that  includes  goals

followed  by

work  that  needs  to  completed

in  this  month/week

Work  is  disseminated  to  each  team  member.  

Members  will  work  with

close  collaboration

The  team  has  daily  meeting  L

15  minutes/day    

to  update,  check  the  working  

progress,  and  fix  rising  issues.

Just-­‐in-­‐time  update plan  if  

necessary

Iterate  working

till  end  of

time  box

Releasable  

software

will

be

created  

RELEASABLE

software

What  will  

we  have?

Not  done  yet,  development   team    should  have  a  reflection  meeting

HOW did  team  WORK? Could  team  work  BETTER?Try  to  find  out   some  points  that  should  be  IMPROVED  in  next  month/week

And,  repeat  that…

Scrum  Framework

Differences?

Scrum  concentrates  on:Collaboration over  documentCustomer  problem  solving  over  contract  signing

Scrum  quickly respond  to    changes!

Customers  can  receive  software  right  after  one  month,  or  one week

Agile  umbrella!

ScrumXP Lean  Software  

DevelopmentCrystal

DSDM

Agile  

FDDAgileUP

eXtreme  Programming

Read  more:  http://www.hanoiscrum.net/hnscrum/learning/167

Principles• Rapid  Feedback

• Assume  Simplicity

• Incremental  Change

• Embracing  Change

• Quality  WorkValue• Communication• Simplicity• Feedback• Respect• Courage

Develop  software  with highest  quality,  lowest  cost,  fewest bugs,  hyper  productivity  and  maximize  ROI  

eXtreme  Programming

Source:  http://testing.agilebuddha.com/wp-­‐content/uploads/2012/12/PairProgrammingInAction.jpghttp://1.bp.blogspot.com/_9kQQgQD35rY/SYyl7X3pcII/AAAAAAAAAhY/8EWmpZzyIow/s400/pairProgramming.jpg

Pair  Programming  

eXtreme  Programming

Lean  Software  Development

Apply  Lean  thinking  in  software  development

7  WASTES

1.  Extra  Features2.  Handovers3.  Task  Switching4.  Work  in  Progress  5.  Failure  Demand  6.  Delays7.  Defects  

Read  more:  http://www.hanoiscrum.net/hnscrum/learning/168-­‐agilemethod3-­‐lean-­‐software-­‐development

7  principles1. Eliminate  Waste

2. Create  Knowledge

3. Defer  Commitment

4. Deliver  Fast

5. Respect  People

6. Build  Quality  In

7. Optimize  The  Whole

Agile  methodologies

Source:  VersionOne

Generalization  |  Unique

Image:  Hendrik  Kniberg

BEHIND  THE  SCENES  ...

Agile  ManifestoWe  are  uncovering  better  ways  of  developing  software  by  doing  it  and  helping  others  to  do  it.  Through  this  work  we  have  come  to  value:

Individuals  and  interactions over  processes  and  tools

Working  software over  comprehensive  documentation

Customer  collaboration over  contract  negotiation

Responding  to  change over  following  a  plan

That  is,  while  there  is  value  in  the  items  on  the  right,  we  value  the  items  on  the  left  more.

Source:  AgileManifesto.org

Just-­‐in-­‐timeDaily  update

Daily  Standup

Plan,  responding  to  change

Where’s  Agile  used?

Where’s  Agile  used?

Why  Agile?

Agile  now!

Agile  now

Each  team  has  2  people:-­‐ 1  controls  with  commands:  GO,  STOP,  TURN  LEFT,  TURN  RIGHT-­‐ 1  follows  another’s  commands  

è Goal: In  30  seconds,  make  highest  number  of  “high  quality  steps”.

Why  Agile?

As  in  US  law  

100%

projects  of  Ministry  of  Defence  must  

use  Agile!

42%

49%

9%

Successful  projects

Thành  công Thử  thách Thất  bạiSuccessful Challenged Failed

Why  Agile?

-­‐ Significant  experience  in  usage  of  modern  PHP  frameworks  (Yii,  Zend ...)-­‐ Professional  knowledge  of   JavaScript  /  Jquery/Ajax,  CSS,  XML,  HTML,  CMS.-­‐ Magento,  Drupal,  Zoomla experience  is  preferred.-­‐ Experience  of  web  development.  UI  and  usability  understanding.-­‐ HTML5  is  a  plus-­‐ SEO  experience  is  preferred

Source:  http://www.vietnamworks.com/senior-­‐php-­‐software-­‐engineer-­‐based-­‐hcmc-­‐401465-­‐jv

Source:  http://www.vietnamworks.com/php-­‐developers-­‐with-­‐good-­‐front-­‐end-­‐skills-­‐html-­‐css-­‐js-­‐400081-­‐jv

-­‐ Read  and  understand  requirement  specification-­‐ Create  Detail  Design   independently  -­‐ Create  System  Design with  instruction   from  Team  Leader/  Senior  Team  Leader-­‐ Do  coding and  unit  test-­‐ Do  reviewing source  code  &  design  documents

Lean  Startup

Assumption,   experimental

Feedback  data

Problems?

Solutions?

Build-­‐Measure-­‐Learn

Minimum  Viable  Product

Product  has  minimumfeature,  fast  release• No  extra  features• Optimize  from  feedback  data

Build

Read  more

49

Resources

• HanoiScrum.net

• AgileAtlas.org

• ScrumAlliance.org

• AgileAlliance.org

• Các  hội  thảo  Agile  Tour,  ScrumDay…• Tool  Vendors  (MSDN,  IBM,  VersionOne…)

Communities

http://hanoiscrum.net  

http://www.facebook.com/groups/cocodojo

http://scrumday.vn  

http://tapchilaptrinh.wordpress.com

Thank  you!