| Guidelines
for software development outsourcing |
 |
| To sustain
itself in the tough competitive field, businesses
need to be exceptionally good in quality,
promptness and accuracy; all the more in
the case of software outsourcing in India.
With the advent of Quality System Standards,
outsourcing firms as well as the outsourcer
have to accomplish different objectives
regarding the quality of the software. |
 |
(Like any
other business, software outsourcing in
India too has its risks.) |
 |
To provide
software development outsourcing one should
uphold the following views. |
 |
| 1 |
Needs of the
clients with respect to software quality,
accuracy and safety must be fulfilled. That
is the benefit of clients in software development
outsourcing in India. |
 |
| 2 |
Make the client
confident that the prescribed software quality
standards are met continuously during the
development process. |
 |
| 3 |
Be confident enough
about your software quality management and
accuracy maintenance. |
 |
| Usually
offshore software outsourcing in India consists
of: |
 |
| 1 |
Product component
outsourcing: Where a part or portion of the
overall system is contracted to be developed,
mainly when the client may neither possess
the skill nor the technology required for
the development process. |
 |
| 2 |
Process component
outsourcing: Where allowing a part of the
function of one or more of their process steps
or components is being outsourced. |
 |
| |
3 |
Total
outsourcing: Where each and every activity
related to software like design, development,
testing etc. are outsourced. |
 |
| Thus, offshore
software outsourcing in India is a contract
/ subcontract with an external service provider
for purposes like development of complete
or partial software products or projects and
the purchase of packaged or customized software
products. |
 |
| Advantages
of Software Outsourcing in India: |
 |
| |
1 |
Through software outsourcing in India, one
can make use of one's own valuable time by
concentrating on his / her core competencies. |
 |
| |
2 |
Software
outsourcing to India guarantees flexible technology
and service. |
 |
| |
3 |
Software
outsourcing in India allows you to adopt innovative
skills and techniques while financial risks
will be in the hands of the vendor. |
 |
| |
4 |
Software
outsourcing in India minimizes cost and facilitates
business transition. |
 |
| |
5 |
Joining
hands with the professionals skilled at software
outsourcing in India (like in a joint venture)
takes you to new markets and opens a new world
of profits with minimal effort. |
 |
| Guidelines
for software development outsourcing |
 |
| |
The
documents that are inevitable for a successful
deal in software outsourcing to India are
the following: |
 |
| |
1 |
Requirement
Specification documents. |
 |
| |
2 |
The Proposal Analysis document. |
 |
| |
3 |
The
Contract Execution document. |
 |
| |
4 |
The
Software Development Plan. |
 |
| 1 |
The Requirement Specification document for
software outsourcing to India contains, |
 |
| |
 |
The
aim: This document furnishes the basic objective,
along with details regarding the industry
& software development team. This facilitates
fast & simple inferences about your software
project to find the well defined offshore
software solutions required. |
 |
| |
 |
The
goals: Goals are set to bound a race. It is
actually a list of the required outcome to
fit various stages in the true solution and,
must be specified clearly. |
 |
| |
 |
The
consistency factor: Issues dealing with compatibility
has to be approached at the initial stage
of a project & steps are to be taken to
avoid complications. These issues come up
when the software that is under development
forms a part of the existing software or hardware
system. |
 |
| |
 |
Prominent
characteristics: The diversified features
involved in the projects must be identified
and defined, so that those involved in the
development process, will clearly understand
the various modules in the process. |
 |
| |
 |
Issues related to "look and feel":
The way in which the people visualize the
finished product is subjective and cannot
be well defined while developing e-commerce
solutions. The revival of user interface in
later stages will prove to be expensive, costly
and will cause delay in delivery. Therefore,
this must be clarified in the initial stages
itself. |
 |
| |
 |
Support
and maintenance: Round the clock support has
to be imparted to software applications that
are being developed as a part of the contract.
Your outsourcing company must be maintained
in such a way that its excellent communication
network is widely known. |
 |
| |
 |
Complete
Documentation: The whole development activities
involved, including logic & coding must
be documented. A detailed user manual has
to be prepared; if one is dealing with upgrades
of software applications. |
 |
| |
 |
Terms
and conditions: As this is a contract it is
necessary to furnish all terms and conditions,
lest it leads to controversies in future.
The people involved in this deal can make
inquiries in accordance with the completion
of the document. |
 |
| 2 |
The
Proposal Analysis document is actually a refinement
document usually proposed by the vendors of
India. This consists of the compromises and
fade-offs made, so that the final output comes
out in accordance with your requisites. Time
related matters like the winding time for
the project development are fixed begore the
commencement. This stage also witnesses, boith
parties making their views crystal clear to
each other, about their ideas, capabilities,
risks, etc. This document furnishes: |
 |
| |
 |
The
overall scope: This entails the picture of
your software applications from the service
provider's viewpoint, i.e. how he has perceived
your project and your requisites. It may also
contain the views, limitations and suggestions
from the part of the provider. |
 |
| |
 |
Payment
criterion: The payment amount depends on two
factors namely time and money. Our offshore
software development firm in India follows
these payment models: |
 |
| |
|
 |
In
India the provider charges for the man-hours
spent on software development. |
 |
| |
|
 |
Both
the outsourcing firm and the client agree
on bulk payment for the completion of the
entire application. Most of the firms handling
software outsourcing in India follow this
method. |
 |
| |
|
 |
Both
agree to pay at various deliverable stages.
|
 |
| 3 |
The
Contract Execution document |
| |
|
If
the proposal is accepted by the client, the
next step is to execute the contract. The
Contract Execution Document includes all the
details about the Intellectual property rights,
delivery date, deliverables, and responsibilities
of each party, terms and conditions concerning
nondisclosure, payment terms, and functional
specifications provided by the client. |
 |
| 4 |
The
Software Development Plan. |
 |
| |
|
The
project manager (preferably the vendors) maintain
the basic project development plan. Both the
parties must sign this document before software
outsourcing to India. This consists of three
steps which are explained as follows. |
 |
| |
|
1 |
Software
Development Outsourcing plan |
 |
| |
|
|
A
detailed plan of the offshore software development
outsourcing gives an indication that your
work is being executed finely. |
 |
| |
|
|
The
software development outsourcing plan may
contain the details of the human resources
involved, their skill sets and the time of
completion of work at each stage. |
 |
| |
|
|
This
software development outsourcing plan reveals
the complexities and basics that may occur
in the course of the project development and
will help corrective measures to be taken,
if required. |
 |
| |
|
|
Software
Development and Design Specification |
 |
| |
|
|
Software
development and design specification is peculiar
to software development outsourcing companies
in India. The vendor after creating a whole
range of diverse alternate sophisticated design
must, give the client an exposure to these
designs. Later the provider can carry on the
application design process and mould the design
specification. |
 |
| |
|
|
The
Software Design Specification followed by
the software development outsourcing firms
in India are discussed under the following
titles. |
 |
| |
|
 |
An overview |
 |
| |
|
 |
Requisites
for the system |
 |
| |
|
 |
Naming
conventions and Database conventions |
 |
| |
|
 |
Diagrams
and Parameter passing |
 |
| |
|
 |
Design
priorities |
 |
| |
|
 |
Programming
tools |
 |
| |
|
 |
Handling errors |
 |
| |
|
 |
Storage
and description of data records. |
 |
| |
|
All
the functionalities of Functional Specification
are included in this. |
 |
| |
|
Quality
Assurance Plan. |
 |
| |
|
The
quality assurance plan goes along cycles like
Alpha criteria, Beta criteria, Final code
submission criteria, Acceptance criteria and
Alpha entry. Some of the salient points of
the Quality assurance plan are as follows. |
 |
| |
|
 |
The
vendor agrees on an alpha entry criterion
|
 |
| |
|
 |
The
vendor supplies quality assurance for Alpha
submission |
 |
| |
|
 |
The
QA engineers follow the acceptance test plan
and report bugs to the software development
engineers. |
 |
| |
|
 |
QA
engineers further continue regression testing
to ensure fixing of bugs |
 |
| |
|
 |
The incorporation of minor feature enhancements
in the software, as agreed by the client and
the vendor is done. |
 |
| |
|
 |
Final Code Submission,
where both client & vendor agrees up on
the final code submission |
 |
| |
|
 |
Acceptance testing,
the client performs acceptance testing of
the software as specified by the QA test plan. |
 |
| |
|
 |
Operation guarantees
the client a warranty period of technical
support, which depends on the size of the
project (normally 30 days). |
 |
| |
|
 |
Maintenance -
Separate contracts are given for fulfilling
requirements of the software application development
like |
 |
| |
|
|
 |
Adding features
|
 |
| |
|
|
 |
Fixing bugs |
 |
|
|
|
 |
Giving technical support to
the client. |
 |
| |
Project
plan revised : The project plan is being
revised in accordance with the needs that
arise out of the design specification and
Acceptance plan. |
 |
|
|
|
|
| |
|
Terms
& Conditions |
 |
| |
|
Ensuring that both
the parties involved in the contract have
agreed on the conditions & nothing remains
unclear between them. |
 |
| |
|
Communication
|
 |
| |
|
The
IT industry is more dependent on the transfer
of information and communication, than any
other industry in India. The software development
outsourcing companies in India are keen about
maintaining a healthy communication with their
clients. Barriers of any form that threaten
to hamper the smooth flow of information at
any stage can be disastrous to the whole outsourcing
process, which may in turn lead to unnecessary
negotiations and modifications. |
 |
|
|
|
|
|
| |
|
The
major medium used for the transfer of information
in outsourcing includes Internet, e-mail,
chat, videoconferencing, collaborate tools
& project management software. |
 |
|
|
|
|
|
| |
|
Analysis
has to be done by the client and the vendor
for the following. |
 |
| |
|
4 |
1 |
Functional
Specification, made by the vendor and signed
by both parties must containl; |
 |
| |
|
|
 |
A description
of all the components & deliverables |
 |
| |
|
|
 |
Acceptance
criterion |
 |
| |
|
|
 |
Main objectives
& special system requirements |
 |
| |
|
|
 |
Overview
of the application/system |
 |
| |
|
|
 |
Client-vendor
communication interfaces/protocols |
 |
| |
|
|
 |
A method
for negotiating specification changes. |
 |
| |
|
|
 |
Responsibilities
of parties, terms, conditions, and assumptions. |
 |
| |
|
5 |
The Initial Design a. High-level
design of application / system as a whole
b. Description of user-interaction,
data flow & data storage. |
 |
| |
|
6 |
Development Proposal |
 |
| |
|
7 |
Final version of analysis proposal and |
 |
| |
|
8 |
The Executive contract |
 |
|
|
2 |
Risks
Involved in offshore software development
outsourcing. |
 |
| |
|
1 |
Misunderstanding can arise between the vendor
and the client if the discussion regarding
the software application is not based on the
final document. |
 |
| |
|
2 |
Misunderstandings may also arise, if the vendor
representative and the client are not close
to each other, as it is virtually impossible
to explain all the finer details during the
course of the conversation/discussion. |
 |
| |
|
3 |
The possibility of cultural clashes between
most of the offshore professionals who are
in the East and clients in the West, cannot
be overlooked. |
 |
| |
|
4 |
The
difference in the time zones between that
of the vendor and that of the client could
be yet another barrier. Mutual adjustments
have to be made in such situations. |
 |
| |
To
delete ‘RISKS’ in software development
outsourcing. |
|
 |
| |
Before
software outsourcing in India, the client
and Vendor should sit for an open talk, stating:
|
 |
| |
|
5 |
The original objectives and proposed solutions
|
 |
| |
|
6 |
Organization and method of the project |
 |
| |
|
7 |
Comparison of estimates and actual results
|
 |
| |
|
8 |
Successful
aspects of the software application |
 |
| |
|
9 |
Problems involved and suggestions to avoid
them in future. |
 |
| The
guidelines for software development outsourcing,
documents required, risks involved, etc,.
has been discussed above. For further technical,
professional aid and software outsourcing
in India; do get in touch with us. At ITOI,
we are eager to be of help to you. |
| |
| Whether
you need a cool Cold Fusion dynamic web site,
an ASP auction portal, a PHP shopping cart
or a Lotus Notes-Domino application or your
MS SQL database needs optimization we have
the necessary skills. Call us ! |
| |
| |