|
With the boom in the software industry outsourcing software development
has become a common phenomena, which encourages the internal growth
of the company’s management, design and other development activities.
DISL’s Off-shore Development service is a cost effective alternative
for companies who desire to build on their software needs.
Benefits
of Offshore Software Development :
- Cost
are reduced up to 40%.
Capital expenditures are not incurred.
A vaster range of skills are available taking into consideration
the presence of in-house and external professionals that help
the completion of project in time.
Wider base of technical resources that are otherwise scare due
to their high demand in countries like the US. .
Rapid deployment of contract resources to meet the peaks and valleys
of the project workload - less need for client resource smoothing.
Lesser
emphasis required on client management than for on-site/ in-house
projects.
Contractually committed to produce results.
Twenty-Four hour workdays are a practical possibility due to time
differences. In places where maintenance of an operational application
is constituent of the project, maintenance can be divided between
the offshore team and the client’s own staff, taking advantage
of the time difference between the two sites, and coordinating
efforts via FTP uploads and downloads, and version control software
(dual-site project).
Type
of projects suited for offshore development include :
-
Web based software development - e Commerce.
- Re-engineering
of existing applications for new environments.
-
Conversions and migrations to new platforms.
-
New software development - Software where the low level design
is already frozen.
-
Maintenance and minor enhancement of legacy applications.
Factors
to be considered during Offshore Development: The factors to be
considered during offshore development model are project characteristics,
project management and organization, project workflow and cost considerations.
The
project characteristics include functional requirements, technical
requirements, platform requirements, and schedule management.
Functional
Requirements :
The
functional requirements of the proposed project must be conveyed
to the offshore team clearly. Also information as regards the background
of the business and the purpose of the project must be communicated
keeping in mind what the client’s requirements are.
Platform
Requirements :
The
offshore project team must have relevant expertise in both hardware
and software platforms that are operational at the client’s site.
Both must possess the same versions of operating systems, programming
tools, database, etc. in both locations. Immense assessment is essential
to ensure platform compatibility with the outsource facility.
Schedule
Requirement :
The
schedule of delivery of both contract products and client reviews
should be established as early as possible and coordinated with
the management and staff of the offshore facility. Delivery of third
party software or client approval of prototypes is dependent on
schedule and must clearly be stated.
Project
Flow :
Project
Initiation : There does not exist much difference between the
Project initiation for an offshore project and an on-site project.
The various processes are :
The
offshore team before committing themselves to the project must determine
feasibility of all proposals.
The
main differences in starting an outsourced project as compared to
on-site project are :
Higher dependence on written, and especially electronic, communication
than on oral communication.
Allowance
for the offshore startup phase both in terms of schedule and cost.
Offshore
Startup :
Along
with project planning the main action undertaken for offshore startup
is the time consuming process of replication of the client’s current
platform (for maintenance or conversion projects), or of the client’s
target platform (for new development).
Prototyping
(for client/server and e-commerce projects) :
If
the application is prototyped before actual development activity,
this is conducted at or near the client site. If the product design
is evolving, prototyping requires frequent and intense communication
with the client project manager and also often with the end users.
Only if the functional and technical specifications are not ambiguous,
is the prototype developed at the offshore facility.
Project
communications and Issue Resolution :
Interpersonal
Communications :
The
differences in time between India and another country are beneficial
for technical communications. But the time differences are not favourable
for interpersonal communications through conference calls.
However, when the communication is through direct e-mail, the problems
posed by different time zones are reconciled.
Testing
:
Any
project must include a well-designed test plan, from unit testing
through final client QA acceptance testing. The failure of an offshore
development project is often due to lack of test data at the offshore
site. The required volume of test data has to be generated and installed
at the offshore facility to avoid errors as it can also lead to
conflicts between the offshore team and the onsite team.
SIGNOFF:
Client Acceptance and Turnover
DISL
trains the client staff in system operation and maintenance and
provide telephone or on-site support as required by contract. Client
acceptance testing, parallel testing and turnover are carried out
in similar manners for offshore and on-site projects. Technical
and user documentation is turned over for client review.
Project
Conclusion :
The
information and knowledge gained are recorded for guidance in future
projects. Key project metrics are generated and used to guide planning
and costing (cost) of future offshore projects.
Support
:
This
depends largely on the type of the project and the contract entered
into with the client. Offshore support is provided free of charge
for conversions, new developments, and Internet projects initially
and then a paid support program is designed based on the client’s
requirements. Usually any onsite component in this is billed to
the client on T & M basis.
Cost
Considerations :
The
main reason behind organizations opting for offshore development
is to save money, by reducing opportunity costs and enabling in-house
staff to be deployed on other beneficial projects. For savings to
be realized the project must be a large one. Savings can be high
if there are complementary concurrent projects (for the same or
different clients), or a series of projects for the same client
related by common target platforms and common technical standards,
thus leading to reduction in startup infrastructure costs.
The
client should conduct total risk analysis, as offshore or on-site
risk is a cost that must be included in the total project cost calculation.
The offshore team must be involved in this analysis.
|