In this Section of the Site the personnel operating procedure is described, so that the way we produce our high quality work will become apparent. Let us remind you that our Company has a distributed structure and comprises the teams located in various cities in Russia, Ukraine, Belorussia and certain other countries. Central Moscow Office coordinates the operation of all teams. The Company has also offices in London and San Francisco that are specialized in client relations. You can view our structure in more detail at the page Our Structure.

There are three key approaches used in our Company operation that ensure very high level of work process organization:

  1. Detailed documentation. iDeveloperNetwork has a very detailed documentation that fully describes all employee responsibilities, their interaction, the requirements for the work process, etc. Therefore there is no lack of coordination for the work of personnel.

  2. Hierarchical structure. Currently the Company employs about 50 people located in 15 separate cities. Our company has a strictly hierarchical structure (specialist -> group leader -> Central Office manager) where the same hierarchical level employees interact only with their peers and with their direct supervisors. Given the distributed nature of the Company, this approach makes it possible to expand the personnel without causing overload for the Company Management.

  3. Daily reports. The basis for mutual interaction within the Company is the daily reports that every employee sends to his/her direct supervisor. Therefore, the Central Office receives the complete report on the current situation for each project of the Company daily. Such approach makes it possible to find and correct the development problems virtually at the initial stage.



Company Documentation

iDeveloperNetwork has extensive documentation, where the personnel working rules and interaction rules for the different parts of the Company are formalized (between workgroups and the Central Office, between workgroups and Software Testing Department, etc). The documentation is very detailed and includes the recommended procedures for all standard situations that may occur in the operational process. The documentation is constantly improved and upgraded. Some examples of these structuring documents are provided below:

  • Operating Rules for the Company document describes the general rules to be obeyed by all personnel (work schedule creation, general accounting rules, work payment procedures, etc.).

  • Interaction of a Project Leader with the Central Office document is accessible to the Company Project Leaders only. This paper fully describes the interaction between the Central office and a Project Leader (version delivery, reporting, group work assignment, actions required in non-standard situations, etc.).

  • Project Documentation Paperwork document is accessible to the Company Project Leaders only. This document describes the rules for producing the documentation being created during the project software development phase (specification, estimate, time schedule, architecture description, source code description, etc.).

  • Testing Methods and Procedures document describes the interaction procedures within Software Testing Department (between a Department Head and the testers) and also provides general recommendations for the testing of various products (based on the Company 2 year testing experience).

  • In total the internal documentation of the Company comprises more than 30 documents. In addition to the organizational documents it includes the Coding Standards (for C++, Java), etc.



The Interaction between Software Development Departments

The Company includes three software development departments: Software Development Department, Internet Development Department and Web Design and Development Department. These departments include separate workgroups. Each workgroup implements one or more projects.



Workgroup Operation Organization


Workgroup Operation Organization


A workgroup performs all the work for a project. In case of need, other specialists from Subsidiary Departments (Graphics and Design, Software Testing, etc) are enlisted. Each workgroup includes a Team Leader who is responsible for the project technical management, for workgroup control, and for interaction with the Central Office in Moscow and with the employees from other departments. A workgroup also includes workgroup developers (Software Analysts, Software Developers, Software Engineers) that do active work during the whole software development lifecycle. Besides, a workgroup may include Software Testers and QA Engineers, artists, designers, technical writers, etc.
All the members of a workgroup are located in the same place (they usually work in the same office). Thus the best workgroup operation organization is achieved.

The inter-member interaction in a workgroup is based on the daily reports. A Team Leader distributes the tasks between workgroup members. After each working day he/she receives a detailed report on the work assignment progress from each member of a workgroup. This information is used as a foundation for the summary daily project report to be sent to the Central Office. This daily accounting procedure makes it possible for the Central office to receive the complete daily information concerning all the projects being implemented by the Company. Therefore the Central office is able when necessary to supply a client with the current detailed information on all the projects.

Team Leader prepares a work schedule for each workgroup member. Each discrepancy with such schedule becomes apparent right away because of the accounting system (reports). Each employee is personally responsible for fulfilling his tasks with adequate quality and in time. A Team Leader bears personal responsibility for the whole project.

Team Leader is responsible for delivery of product versions (intermediate and final) in accordance with the time schedule for project implementation. Before being delivered, an intermediate version passes two testing phases:

  1. Internal version testing by the developers within a workgroup (1-2 days). After correction of all errors found at this stage, the version will pass to the second phase.
  2. Version testing by the specialists from Software Testing Department (1-4 days depending on particular project). After fixing of all bugs found at this stage, the version will be delivered to the customer.

Therefore, even at the stage of intermediate versions the clients receive a well-tested product.

Final versions undergo the additional third testing stage (5-15 days depending on product complexity), where many Software Testers and QA Engineers from Software Testing Department participate. Such approach makes it possible for us to deliver the final product versions of such quality that the clients cannot usually find any bugs at all.

During product testing by the specialists from Software Testing Department, a Team Leader receives the updated list of errors daily. At the active testing stage the product updates with corrected errors are produced each 1-2 days and sent for testing to Software Testing Department. An update includes a document for testers, where the corrected bugs, new functional elements, developer requests, etc. are described. This approach makes it possible to quickly fix all product bugs.

Software Testers not only search for the update bugs, but also correct errors scheduled to be fixed in the current version update. A bug is considered to be fixed only when the specialists from Software Testing Department confirm the error correction.

Workgroup members actively interact with each other, with the result being the quick formulation of the optimal decisions, fast implementation of the required product functionality, etc.



Interaction within Subsidiary Departments

The Company comprises three Subsidiary Departments: Software Testing Department, Graphics and Design Department. These departments combine specialists responsible for a certain service. Software Testing Department includes Software Testers and QA engineers; Graphics and Design Department includes designers, graphic artists, animators, etc.

These departments provide two types of services:

  1. Assistance for the projects being implemented by the workgroups from Software Development Departments (e.g. product testing, project graphics design, etc.). In this case the specialists from Subsidiary Departments, engaged in the project, interact with a Team Leader of the workgroup that implements the project.

  2. Provision of services to the Company clients (testing of a product being developed by iDeveloperNetwork client, separate graphics design for certain clients, Web site promotion, etc.). In such case the specialists from Subsidiary Departments interact with the Central Office managers, who, in turn, interact with the customer.

Subsidiary Departments has a simpler structure than Software Development Departments. Each Subsidiary Department includes a Department Head and department members. A Department Head distributes the work between department members and monitors the implementation quality. Subsidiary Departments also use the daily accounting: at the end of each workday every department member sends a report and work results to his Department Head, and the Department Head processes this information and sends a summary report to the Central Office.

As a rule, Subsidiary Department members are located in various Russian cities. Nevertheless, they actively interact via Internet (e-mail, real-time chat, FTP/Web, etc.), resulting in a well-coordinated performance. The system of daily reports provides for a complete control of employee activities, despite the geographical distance from a Department Head and the Central Office.




If you have additional questions, we would be glad to advise you personally. Our contact information can be found at our page Contact Us.

See also:



 flash media server development  software outsourcing  software links
 offshore outsourcing  web development  Ruby on Rails development

Copyright © 1998-2005 iDeveloperNetwork - USA / UK / DK .   All Rights Reserved          Hosted by Dyntex          
software outsourcing, outsourcing software development

   

iDeveloperNetwork Homepage
Information about Company
Our Expertise Software Development Services Our Representative Projects Our Customers Our terms and conditions Contact Information
Our Operational Procedures

Information About Company
Our History
Client Interaction Procedures
Our Structure
Our Operational Rrocedures

Our ExpertiseCompany CustomersCompany Projects Our terms and conditionsBonuses for our Customers
Site Map
Articles

Request a quote