Practicing Agile in Offshore Environment

Preview:

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

Practicing Agile In Offshore Environment

By: Imran & Himanshu

AGENDA

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

challenges.

Distributed Agile Challenges

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

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

Steps in an Iteration and the Tools that Help

Iteration Steps

Feedback

Test

Develop

Planning

Planning

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

Iplotz, etc)• Any low-fidelity tool

Balsamiq

Iplotz

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

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

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

functionality• QA Server• Deployment Scripts

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

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

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

Mindset

Seek Feedback Don't try to perfect things before taking

feedback Open and direct communication Transparency with the client

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/

Questions

( if you are still awake ;) )

Thanks...

Recommended