Monday, November 24, 2008

Agility needs ownership

With most of the companies offshoring their IT work, I keep thinking about the ownership of the application. You don't want to clean someone else's house because its not yours.. Ownership is the most important factor in caring for something...

With offshoring ownership is an improtant factor to think upon.. With agile methodologies picking up, ownership further becomes more improtant.

1. Agile expects you to change frequently during the project lifecycle. You need to build the app as requested by the business owner
2. Requirements chgange with the busines priorities
3. With the onsite - offshore model, geographic distance leads to time lag in passing the information.
4. Key decisions are taken at onsite with the client and communicated offshore
5. The team engages in building the app as early as possible to gain customer delight

During this it is improtant that we do not compromise on quality. Quality assurance needs to be inculcated in the team.

Engineering practices should be followed that ensure quality.

Above all, there should be some attachment and a sense of responsibilty towards the app.
Though you work for the client, the developers should have a sense of ownership towards the app.

All in all, to me it seems that Ownership, Communication and Quality are the three most important aspects required in the team in an agile project

...and the release went well

Back again..much relieved and satisfied. The app release went really well though with some minor hiccups on the way...
We all take porecautions and follow processes before a production release, some of my key takeaways -

1. Ensure that the QA environment is EXACTLY as production
2. Perform multiple dry runs ahead of the release
3. Perform at least one dry run by refreshing the QA database with production data just a couple of days before the actual release
4. Decide upon a medium (sametime, netmeeting, phone, etc) by which the team would be connected during the release
5. Ensure that all kinds of testing (performance, resilience, coexistent, etc) are performed during development
6. Share the results, best practices, etc with the different teams or mentors early on during the project lifecycle for early feedback
7. Do not try and fix the last minute bugs. Add them to your list of items with highest priority..and schedule a hotfix after the release
8. Ensure that you have someone from the Product Owner team to test the app after the release

Thursday, November 20, 2008

Pre production release jitters

This is my first public post and would like to write about my journey till now.
I work on a enterprise web collaboration website built on Drupal. It must be sounding as if its absolutely no big deal.. but thats not true..this website has been through a lot over the past few years.
When we started there was just one application providing wikis, another application for blogs which was built on b2evolution..
and multiple community sites.. all on their own databases..
Gradually we have come to a point where we have brought all under one umberella using one database and single copy of Drupal code..

The site is much more maintainable now..

In the process, we have developed quite a few custom modules for drupal and improvised them...
The latest change which we have been working on is the upgrade to Drupal 5.7 ... this is not the first release of the project .. it has had multiple major releases.. i have been through it all..
but over this period... i have created a bonding with this app.. its my baby. i am very emotional when the site faces any issues.. and its time to move on.. i have decided to work on ruby on rails next..
and now i have realized..that when such a bond is created.. learning has stopped somewhere..
But, even today i am getting those pre production release jitters.. how will it all go ? will i have to rollback.?
At the top of my head, I am very sure its all going to be fine. I have done it quite a few times and am able to control the situation...but then why the jitters.. huh

I have my fingers crossed and am hoping for the best..

I will post more after the release over the weekend.