20
Practicing Agile In Offshore Environment By: Imran & Himanshu

Practicing Agile in Offshore Environment

Embed Size (px)

DESCRIPTION

Presentation given by Himanshu and Imran at AgileNCR 2010 on "Practicing Agile in Offshore Environment". Presentation also covers the best practices/tools/processes that has worked for IntelliGrape for successful Agile implementation.

Citation preview

Page 1: Practicing Agile in Offshore Environment

Practicing Agile In Offshore Environment

By: Imran & Himanshu

Page 2: Practicing Agile in Offshore Environment

AGENDA

• Challenges of distributed agile• Tools and processes to overcome these

challenges.

Page 3: Practicing Agile in Offshore Environment

Distributed Agile Challenges

• Client availability• Timezone differences• Cultural differences• Client feedback• Lack of transparency• Lack of trust

Page 4: Practicing Agile in Offshore Environment

Distributed Agile Challeges (contd..) Integration Issues Challeges faced by any other agile team

Page 5: Practicing Agile in Offshore Environment

Steps in an Iteration and the Tools that Help

Page 6: Practicing Agile in Offshore Environment

Iteration Steps

Feedback

Test

Develop

Planning

Page 7: Practicing Agile in Offshore Environment

Planning

• Communication tools like Skype, Yuuguu• Wiki• Screencasts• Mock-up building tools (Balsamiq Mock-ups,

Iplotz, etc)• Any low-fidelity tool

Page 8: Practicing Agile in Offshore Environment

Balsamiq

Page 9: Practicing Agile in Offshore Environment

Iplotz

Page 10: Practicing Agile in Offshore Environment

Development • Frameworks that facilitate RAD. • IDE : Support for language and framework • Continuous Integration Environment• Issue/Task tracking tools like Trac, Assembla,

PivotalTracker, JIRA etc.• Source Control : SVN, GIT.• Operating System: Ease with using the OS

Page 11: Practicing Agile in Offshore Environment

Testing • Automated Testing Frameworks• Test Driven Development• All requirements converted into Test Cases• Continuous Integration(CI) Environment • Tools that integrate with CI to generate cool/

useful reports like code-coverage, Build-trends, etc

Page 12: Practicing Agile in Offshore Environment
Page 13: Practicing Agile in Offshore Environment

Client / End User Feedback• Quick /Short feedback cycle • Integration Server• Client can give immediate feedback on the

functionality• QA Server• Deployment Scripts

Page 14: Practicing Agile in Offshore Environment

Notifications

• Every check-in• Task is created or modified in Issue tracking

system• Build failures• Build successful after a failure• New code pushed on Integration Server• Changes made on the Wiki

Page 15: Practicing Agile in Offshore Environment

Summing it up...

Feedback

Test

Develop

Planning

- Skype

-Yuuguu

-Wiki

-Screencasts

-Mock-up builders

-CI Environment Hudson CruiseControl

-Issue Trackers Trac Assembla Jira PivotalTracker

-Automated Testing Frameworks

Junit HTMLUnit Selenium

-TDD

- QA Server- C I Server

Page 16: Practicing Agile in Offshore Environment

Also ...

• Continous learning programs:– Weekly 2 hour sessions– Fortnightly full-day workshops

• An outlook/ inclination towards automating repeatable tasks.

• Process to set-up new server also scripted

Page 17: Practicing Agile in Offshore Environment

Mindset

Seek Feedback Don't try to perfect things before taking

feedback Open and direct communication Transparency with the client

Page 18: Practicing Agile in Offshore Environment

References http://skype.com http://yuuguu.com http://trac.edgewall.org http://hudson-ci.org http://pivotalTracker.com http://iplotz.com http://assembla.com http://www.balsamiq.com/products/mockups http://subversion.tigris.org/ http://atlassian.com/software/jira/

Page 19: Practicing Agile in Offshore Environment

Questions

( if you are still awake ;) )

Page 20: Practicing Agile in Offshore Environment

Thanks...