But why 1 week sprint?
I was suspicious whether 1 week iteration would be successful. It works this way, end of every one week development team has to show running and production deliverable code and so on, until the final iteration, when client team(Product Owner(s)) says, that this is the product I want.
Advantage is, the client team have much closer look what functionality they want and they get, so they can ask development team to implement those functionality which are more of client's interest. Every week they can prioritize the items and development team work on high priority items only.
And how Ruby On Rails fit in this picture?
I did not realized this until the last 4-5 sprints, when all of sudden our client team said that they want to modify the core business logic. I thought, is it possible to implement the change when everything is developed and software is 90% ready? And then, we relied upon unit testing with Rspec (see Behavior-driven testing with RSpec) and functional testing by Rspec stories(see telling stories by Rspec).
With unit testing in place covering more than 85% code, we were assured that the changes will go smoothly. Rspec stories on the functional side, assured us that business logic would be as per the client team's need.
Learning & Best Practices:
In the retrospective of the project, I noted following things which can be useful for other projects:
- Even if teams are in different location(can be tried with different time zones if possible), they should reserve team hours and should be in conference call. It is not necessary that team members should talk during this call, they can work on some other stuff, but if someone call your name in the conference, and say, "Hey Gourav, could you change this text or could you take a look at business logic?", then Gourav should respond to that.
- Everyday team should meet for 15 mins, everyone should join that meeting, to say what I did yesterday and what is the plan for next day.
- Developers should show and explain the functionality they have developed to the client team. It's win-win for both. Developers will get nods and appreciation of their work, which is better for the motivation of team and for client team as well, to get quick demo of the functionality they get, to provide quick feedback to development team.
- Team gets speed when dedicated UI developer joins the team.
- Team should have dedicated tester, otherwise it puts more burden on BA(Business Analyst)
2 comments:
My cousin recommended this blog and she was totally right keep up the fantastic work!
Ruby Development
I am glad that you like it :) By the way are you using Agile/Scrum?
Post a Comment