How GS Lab contributes

GS Lab uses processes that suit start-ups take products from prototype to launch and beyond. Development proceeds as:

  Requirement Scoping: This captures the problem the team solves. It defines the scope of the problem and standards to which the final implementation is held accountable.
  Definition: This stage technically defines the problem and breaks it into subtasks each achievable over multiple short durations. These tasks include the effort required to write automated tests for the features. These two steps are carried out with frequent interaction with the customer.
  Scheduling: Each of the sub-tasks is estimated and by analyzing the dependencies among the subtasks and development resources a schedule for implementation, which always includes time for required testing, is created. The schedule is conveyed to the client and is adjusted in accord to the feedback. This process is kept very efficient and the time spent in estimation and creation is kept minimal to enable rapid turn-around.
  Coding and Unit Testing: The implementation is carried out in this phase. Engineers are required to give daily status and very frequent milestones. Developers are required to write unit tests where possible as part of the implementation itself.
  Review: After code-complete stage, code review is carried out and the code is checked in by incorporating the review comments. This step is mandatory for each check-in.
  Integration Testing: QA team writes integration test cases and the feature is tested against those. GS Lab places a strong emphasis on automation of these tests.
  System Testing: Regression test cases for the feature are added into the framework and it is ensured that the feature when assembled.

For all the features in development, the matrix of feature against the phase with respect to the schedule time line is maintained and exchanged with the client frequently. All engineers are required to carry out these steps at a fine granularity to enable rapid development.

It is the Technical Manager’s (TM’s) primary responsibility to ensure that the GS Lab team’s speed matches that expected by the customer.
Communication model
Since the customer and GS Lab teams depend upon each other constantly to achieve progress, communication is the most important ingredient required for the customer’s success.

GS Lab has the following model:

  Two scheduled calls weekly with entire team with status exchange
  Separate scheduled QA/support calls once a week
  Separate weekly calls between subgroups during design phase for architecture and      design reviews
  Daily calls during release time
  Dedicated point persons with check-in responsibility within India team
  Dedicated point persons with communication responsibility within India team
  Daily calls between peers
  Daily exchange of build and regression results
  Multiple broadcast channels for ensuring everyone is in sync