FCS : The Efficiency Catalyst
home | about us | news & events | contact us | login | fcs corporate site   
Product Support 24/7 Heading
Link to Domain Expertise Section Link to Technologies Section Link to Process Section Link to differentiator Section Link to Delivery Section

 

Search:
 
Process

 

 

 

 

 

Process Heading
 Process Heading
 

 

Virtual Teams
 

One of the latest developments in the world of IT, helped by the advancements in Telecom, that has made geographical separation a boon rather than a hindrance, is the concept of ‘Virtual Teams’. This concept has actually enabled IT companies to use geographical separation to their advantage in terms of cost and time to market.

In the Virtual Teams concept, geographically distributed teams and experts work in tandem from multiple locations worldwide. This facilitates the utilization of expertise available across global locations for the benefit of the project. Besides, the usage of geographically spread technical expertise this concept also allows for the optimization of cost (by leveraging lower cost locations) and reduction in time to market (by leveraging the time difference between various locations). This concept enables the IT companies operating from cost areas to setup an extended team at a location that gives them a cost advantage and this extended team uses the same development environment to work on the project.

In a typical scenario, a virtual team consists of an onsite team (the client’s team) and one or more offshore teams (working from remote locations). All these teams necessarily work on the same development environment. The offshore team(s) is/are remotely connected to the onsite team through dedicated Virtual Private Networks (VPN). The VPN provides reasonable level of security through the use of firewall and other tools. This enables the onsite and offshore teams to access remote environments on both sides, thereby providing a seamlessly integrated development environment. There is day-to-day interaction between the teams through phone lines, chat or mails for a coordinated approach to the project.

This setup also involves an extensive usage of project management tools, configuration management tools (like VSS, Perforce, etc) and collaborative tools (like SameTime, etc). An online project management tool is important for the requests to be logged and tracked. The client representatives post their requests into the project management tool along with the tentative due date for completion of the request. They also upload a detailed spec for the request in the tool and provide notes and references for the request. The onsite and offshore teams then work in close coordination to work on each of these requests till their closure with its status being updated in the tool at every stage. The configuration management tools are necessary as there are multiple teams working on the same piece of code and access to the code has to be controlled. These tools enable the proper version control of the code and eliminate duplication of effort to a large extent. The collaborative tools provide an interactive platform for discussions as well as providing access to a common repository of project-related information thus enabling sharing of documents across multiple locations avoiding duplication and multiple versions. Also these collaborative tools also help in trouble shooting with the help of features like desktop sharing.

This concept is extremely advantageous for Software Product companies who have to keep working on new enhancements, bug fixes, customization and technical support for their products. For these companies to take care of the above-mentioned functions, maintaining a dedicated software development team becomes a necessity. Having this team onsite could prove to be a costly proposition keeping in mind the costs involved in maintaining infrastructural resources, human resources, etc.

The Software Product companies can effectively make use of this concept and have a co-development environment in which a smaller onsite team works in coordination with a much larger offshore team. Typically under this arrangement the function of the onsite team gets reduced to requirement analysis, integration testing and minimal coding. The rest of the work, requiring larger pool of resources, is shifted offshore. There is a Program Manager representing each of the teams for coordination and knowledge sharing.

Many advantages that the Software Product companies can obtain out of this concept include:

Cost Savings

  • This arrangement enables the clients to transfer majority of the work offshore enabling them to maintain a smaller team onsite providing substantial cost savings.
  • There is a substantial reduction in the infrastructure costs as the remote teams can directly access the clients’ servers for testing and integration.

Control

  • Since there is a smaller team to manage onsite the clients can put more focus on analyzing their exact requirements and not worry about its execution.
  • The client can easily monitor the project progress and quality on a daily basis.

Time-to-Market

  • The time zone differential between the different locations can be utilized by the teams to ensure rapid completion of the task thus reducing the time-to-market.
  • Depending on the requirement of the client the offshore teams can be rapidly ramped up and down thus saving on the costs and time.
  • In the same cost the client can have a much larger resource pool working on the project thus reducing the turnaround time.
  • Since the remote teams have access to the client’s test environment, which is close to real-time customer environment, this helps a lot during system testing thus indirectly reducing the time to market.

High-Quality Products

  • Since the clients’ representatives now have better control on each stage of the project and they are aware of the movement of the project, it helps in requirement validation on a regular basis thus improving the quality of the product.

Some of the most important factors for a successful onsite-offshore setup are:

  • Transparency – This signifies a transparent communication with the client. The client should be aware of the status of each request, the problems being faced by the developers on the request, the chances of the due date being missed and the reason for the same, etc. This helps the client also to take necessary steps in advance and be prepared for any eventuality.
  • Time – Time is the most critical factor here. The teams have to be managed in such a way that even during the peak times the teams are able to deliver the requests on time.
  • Teamwork – Good teamwork between the onsite and offshore teams is of utmost importance in this scenario.

 

 
 
Daily Build Process

VPN Setup & Version Control
Virtual Teams
Quality Assurance & Testing Process