Title: How Did We Adapt Agile Processes to Our Distributed Development?
1How Did We Adapt Agile Processes to Our
Distributed Development?
2 Outline
- Introduction
- Solutions
- Emphasized on effective communication
- Building Trust with Remote Team Members
- Software Architecture, Tools
- Conclusion
3Introduction
University of Toronto ???? agile development??
Concord Consortium ???agile, ????????
University of California at Berkeley ??agile
development??
- eXtreme Programming
- Incrementally deliverable
- Test driven development
- Pair programming
-
Solutions Emphasized effective communication
Built trust with remote team members
Software Architecture, Tools
Most major releases occurred approximately every
two to three months using one or two iterations
during that period.
4Emphasized on effective communication
- Quick feedback (Overlapping work schedules)
- Time zone differences.
- Virtual pair programming by using desktop sharing
combined with video conferencing . - Email and audio reference quickly became
laborious.
5Emphasized on effective communication (cont.)
- Virtual stand up meeting is a good opportunity to
ask and answer questions. - Weekly meeting (involved customers) by using wiki
space to propose meeting agendas in advance.
6Building Trust with Remote Team Members
- First three months focused on acquainting with
each other. - No opportunity to meet in person.
- Each team also worked on other projects.
- Clear agenda and an expected duration time.
- Goal of meeting, IP address
7Building Trust with Remote Team Members(cont.)
- Short greeting period at the beginning of
meeting. - Information overload.
- Tense
- Frequently pausing for questions
- Network connection being slow.
8Building Trust with Remote Team Members(cont.)
- Short video conference
- Email and instant message composed without much
regard. - Messages were misunderstood.
9Software Architecture, Tools
Web services Concord Consortium XML based REST
Extend or re-implement University of California
at Berkeley Eclipse as IDE
Develop on Linux
Foundation(Default behavior) University of
Toronto Eclipse as IDE
10Software Architecture, Tools(cont.)
For University of California at
Berkeley StudentDetail getStudentDetail()StuID,
StuName
For University of Toronto StudentDetail
getStudentDetail()StuID
Concord Consortium
Foundation
Foundation
Foundation
Programming to interfaces and not to
implementations.
11Conclusion
- Use agile development
- Respond quickly
- Built strong working relationships.
- Delicate time and resources to ensure that we
were able to support each other.
12QA