18
Succeeding with FOSS and Agile Hanoi, 15-9-2012 Dương Trọng Tấn FPT Education & Hanoi Scrum

FOSS and agile software development

Embed Size (px)

DESCRIPTION

Short presentation at Software Freedom Day 2012 at Hanoi University of Sciences, 15-9-2012.

Citation preview

Page 1: FOSS and agile software development

Succeeding with FOSS and Agile

Hanoi, 15-9-2012

Dương Trọng TấnFPT Education & Hanoi Scrum

Page 2: FOSS and agile software development

2

About

● Works for FPT Education

● Develops Hanoi Scrum community

● Agile experience: XP, Scrum, Lean

● FOSS experience: Linux (Desktop & Server), OpenOffice, FireFox, Moodle, SW dev. toolshttp://vn.linkedin.com/in/tandt

/duongtrongtan

Page 3: FOSS and agile software development

3

In this presentation …

● On software development models● Right approach, right process and tools● ASD applied in FOSS● FOSS in ASD● How do we use FOSS in development

Page 4: FOSS and agile software development

4Source: “The New New Product Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986. 4

Development Models

Page 5: FOSS and agile software development

5

Popular Methods

Source: Forrester Research, 2010

Page 6: FOSS and agile software development

6

• Set of methodologies• Follows “Agile

manifesto”• Iterative &

incremental• Adaptive• Embrace changes• Value-oriented

What is Agile Software Development?

Lean SwDevelopment

Agile UP

6

ScrumExtreme

Programming

FDD

Agile Manifesto

See more: http://en.wikipedia.org/wiki/Agile_software_development

Page 7: FOSS and agile software development

7

Agile Manifesto

7

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

Manifesto debrief: http://msdn.microsoft.com/en-us/library/dd997578.aspx

We are uncovering better ways of developing software by doing it and helping others 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

Page 8: FOSS and agile software development

8

12 Principles

1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout the project.

5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

7. Working software is the primary measure of progress. 8. Agile processes promote sustainable development. The sponsors,

developers, and users should be able to maintain a constant pace indefinitely.

9. Continuous attention to technical excellence and good design enhances agility.

10. Simplicity--the art of maximizing the amount of work not done--is essential. 11. The best architectures, requirements, and designs emerge from self-

organizing teams. 12. At regular intervals, the team reflects on how to become more effective,

then tunes and adjusts its behavior accordingly.

8

http://agilemanifesto.org

Page 9: FOSS and agile software development

9

Same work, organized differently

Page 10: FOSS and agile software development

10

Right approach, right results

Page 11: FOSS and agile software development

11

Project Values

Page 12: FOSS and agile software development

12

Mark Shuttleworth, Founder of Canonical

Image: http://www.thevarguy.com

Agile+Open Source=Developer Success

See more: http://goo.gl/BEur6

Page 13: FOSS and agile software development

13

Agile and FOSS share …

See more:http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/And http://c2.com/cgi/wiki?OpenSourceAsAgileProcess

• Release early, Release often• Listen to your customers• Test, test and test• Energy levels or enthusiasm of the team members• Delegate everything you can,• Be open to the point of promiscuity• If you have the right attitude, interesting problems will find you.• Throw away code, if you don't feel good about it• Simple Design & minimum-effort path• Debugging is parallelizable• Perfection is achieved not when there is nothing more to add, but rather

when there is nothing more to take away

Page 14: FOSS and agile software development

14

FOSS for ASD

● Platform● Languages● Tools (all phases of SDLC)● API & Frameworks

Page 15: FOSS and agile software development

15

HudsonContinuous Integration

GlassFish

FOSS at ScrumLab

Page 16: FOSS and agile software development

16

Ideas

● Build-in integrity, continuous integration

● Built-in quality every build● Community collaboration● Tracking bugs, features, progress

Page 17: FOSS and agile software development

17

Join Agile Community NOW!

• Monthly Talks, localized materials, training courses, and more…

• Website: http://hanoiscrum.net • Discussion group: HanoiScrum Exchange

(http://www.facebook.com/groups/394651407217065/)• Email: [email protected]

Page 18: FOSS and agile software development

18

Q&A