Sourcingmag.com Homepage



BLOGGERS
 
Dian Schaffhauser [737]  RSS  Dian Schaffhauser's Biography
Nari Kannan [137]  RSS  Nari Kannan's Biography
Karen Watterson [70]  RSS  Karen Watterson's Biography
Zinnov [43]  RSS  Zinnov's Biography
Emmy Gengler [26]  RSS  Emmy Gengler's Biography
Jason Creighton [19]  RSS  Jason Creighton's Biography
Vinod Kumar [16]  RSS  Vinod Kumar's Biography
Staff [16]  RSS 
Peter Allen [14]  RSS  Peter Allen's Biography
Brian Dear [13]  RSS  Brian Dear's Biography
Glen Stidolph [9]  RSS  Glen Stidolph's Biography
Rajesh Dhuddu [9]  RSS  Rajesh Dhuddu's Biography
Stephen Guth [6]  RSS  Stephen Guth's Biography
Ravi Datar [5]  RSS  Ravi Datar's Biography
Nipun Sehgal [5]  RSS  Nipun Sehgal's Biography
Akshay Upadhye [4]  RSS  Akshay Upadhye's Biography
Bob D'Amico [3]  RSS  Bob D'Amico's Biography
Uttiya Dasgupta [2]  RSS  Uttiya Dasgupta's Biography
Michael Young [1]  RSS  Michael Young's Biography


CATEGORIES
 
ADM / IT [22]  RSS
BPO [107]  RSS
Call Centers [80]  RSS
Companies [62]  RSS
Cool Tools [58]  RSS
F&A [13]  RSS
General [994]  RSS
Globalization [122]  RSS
HRO [19]  RSS
Jobs [8]  RSS
Offshoring [164]  RSS
Research [112]  RSS
The Buzz [28]  RSS
The Funhouse [13]  RSS


RECENT ENTRIES RSS
 


BLOG ARCHIVE RSS
 



LATEST COMMENTS
 
 


 Ad Links
 
iSixSigma Live! Save up to $700
 

6 April 2007 by Nari Kannan
Printable version  |  Email to a friend

Outsourcing Web 2.0 Types of Software Development

Sandeep Sood in the comments to my previous blog entry : Importance of Iteration in Process asks a very important question:

How do you use Iterative software development methods, a la Agile Methodologies, in outsourced efforts such as Web 2.0 kinds of software development?

Excellent Question!

The first roadblock to cross is the cultural difference between a software engineer in a startup company that engages in such development efforts in the U.S and a software engineer with the outsourcing vendor. These cultural differences can be rather stark in India, Israel, Romania or Chile, all different from each other. This should not be underestimated since these groups of engineers in other countries may not have the "same wavelength" of working as software engineers in the U.S. (especially in small startup companies where a lot of these kinds of work is done rapidly with requirements changing daily)! This is what Sandeep was driving at, I am guessing.

That said, there is an explosion of such startups in many other countries, especially in India. So finding engineers to work on such projects may become easier as time goes on and they get experience working on such projects.

Assuming that this roadblock is crossed, in many cases, we still find that the Waterfall Model of software development TAIL is wagging the PRICING MODEL DOG in Outsourced Software Development. Requirements-Design-Development-Testing-Delivery model is chosen and so a Fixed Price Contract. Everything needs to be specified upfront clearly, and any changes go through Change Requests that will be priced individually and tacked on to the original contract.

There are a number of outsourcing service providers that offer "Managed Teams". These are mostly smaller and nimbler vendors that will create a team for you that you manage daily, remotely! You pay for them on a monthly basis for X number of people but it is your responsibility to manage them remotely and guide them in their day to day development activities. A lot more work on your part as the buyer of such services, but may be very suitable for highly iterative development projects.

If anything, I would say that web-based, Browser accessible software development is a lot more easier to create,manage and use than traditional client software. As many of you already may be doing, in such cases the production system, the staging system and the development system servers are separate from each other and all available on the web, whether the developers are here in the U,S or in India. Ideas are tried out on the development system server, tested on the staging system server and once approved for release, put on the production server. So location really becomes a non-issue when software that is hosted on web servers are developed. If anything, time differences may allow two groups of developers contribute "round the clock" to interesting experiments!

Combining the right kind of pricing model can make even highly iterative software development projects feasible for outsourcing. As I said before, the key dependency is , Can you find people with the service provider that can work in the same fashion as you? Trying out new ideas, scrapping those that do not work and adopting those that do.

O wonder! How many goodly creatures are there here! How beautious mankind is! O brave new world! That has such people in’t! - The Tempest - William Shakespeare

 
BPO , Cool Tools , General , Globalization , Offshoring , Research
posted by Nari Kannan  at  3:36 PM ET | comments [2]


BLOG COMMENT

posted by  Sandeep Sood  [ http://www.bcmdigital.com/o2 ] 8 April 2007 at 8:50 PM ET
Thanks so much for the direct response to my question - I appreciate the answer - very well thought out.

I think you capture most of the equation very well, specifically mindset & business practice.

Mindset: As you say, you can either find a team with an existing iterative mindset or train a team to think this way. Cultural differences often
 


posted by  Sandeep  [ http://www.betterlabs.net ] 8 April 2007 at 8:59 PM ET
hmmm...having trouble with the comments - here goes again:

Thanks so much for the direct response to my question - I appreciate the answer - very well thought out.

I think you capture most of the equation very well, specifically mindset & business practice.

Mindset: As you say, you can either find a team with an existing iterative mindset (try www.betterlabs.net) or train a team to think this way. Cultural differences will recede when efficiency increases to such an extent, at least that's what I've found in my experience.

Business Practice: And, as you mention, web software has the greatest potential to bring iteration and outsourcing together. Exposed dev/test/production environments and general attitudes towards web development really facilitate this. The ability to employ a dedicated team also creates the collaborative environment necessary for this to take place.

However, I still see the need for the daily practice of outsourcing to change...I mean at the granular level...the actual style and practice of the offshore project managers in the US & in India. The tools, the style of communication, the involvement of the full team, the process, etc. Until you effect change at this level, you are usually just left with very fast waterfalls, not true iterative development.

14 waterfalls don't make a river...just a lot of noise.

I post more about this here:
http://www.bcmdigital.com/O2/?p=48
 



Comments currently disabled on this Blog system. We're sorry for the inconvenience.