A decade ago, offshore software engineering was a novelty looked upon with doubt. This and frequent technical problems, reliability issues, the high cost of traffic and artificial barriers to Internet access, had a considerable impact on the growth of offshore software development. Today, experience and technology, robust project management methodology, a knowledge management infrastructure, VPNs (virtual private networks) and IP telephony combine to make offshore software development a respected software development option for even the largest most sophisticated users.
In the early 1990s, offshore software engineering operations, the very idea of offshoring, was still a novelty that many corporate people looked upon with a shade of doubt. At the start of each new deal, providers had to provide some clear and convincing evidence demonstrating that the concept really works.
The initial attempts of the remote software teams based in far away places such as Russia were fraught with stress and sleepless nights. The programming skills of the Russian programmers were not in doubt. Quite the contrary, but in the beginning, with only a handful of employees and limited financial resources, and a pressing need to convince clients of the reliability of the services, the technical problems associated with the distributed software development model, could seem insurmountable.
In fact, the concept of packet switching, by then, was about thirty years old, and distributed computer networks already existed, not only in the United States, but even in such countries as India and Russia. However, their commercial globalisation was just beginning. There existed some email services, but there was no W3C consortium.
The TCP/IP, WWW and HTML concepts had been developed and had won recognition, yet there were no other important standards, such as XML; nor were there many business applications currently in wide use to support much distributed business. Actually, the first offshore software companies, which emerged in the early 1990s, had to build many custom applications themselves to perform their everyday activities.
The situation experienced by the offshore software development industry at that time was a vivid example of how specific technologies and scientific breakthroughs may influence the growth of particular segments of global business.
Frequent technical problems, reliability issues and the high cost of traffic (not to mention the artificial barriers to the Internet access set in some countries of the world) have had a considerable impact on the entire industry's pace of development.
The challenges were grave, especially if we take into account the social aspect of IT offshoring. Certainly, cost savings are among its core business benefits; high quality software development services offered at competitive rates, give our customers an undeniable competitive advantage. The offshoring industry, based upon the concept of global free trade, is an effective way to unite highly skilled intellectual labour from various regions of the world and cultural backgrounds to resolve common professional and, in the long run, social, challenges.
IP backbone for our operations
So, how do TCP/IP technologies influence business processes of companies engaged in offshore software development?
Today the business efficiency of offshoring depends on the possibility of using several distributed web applications to ensure smooth interaction between worldwide offices and, most importantly, between offshore teams and clients around the world.
Another requirement is providing employees with unlimited access to information and other useful resources. Both these tasks are successfully resolved with the help of a Project Management Centre, a mission critical web application, which supports daily business activities.
Effective planning and management are vital to the success of distributed onshore/offshore activities, and especially onshore/offshore software development and implementation projects. However, this would be impossible without TCP/IP networks that connect remote servers and bring together human capital.
Sure, people had accumulated a vast experience of managing large distributed projects throughout their history, long before computers, such as construction of Egyptian pyramids, the voyage of Columbus or the Manhattan project. What is important today is the ability to get results much faster, cheaper and safer.
Effective project management in a software development company implies:
- Management of the whole project lifecycle: from defining preliminary requirements to providing post-project support;
- Coordinating activities of a large number of people assigned an enormous number of tasks, the execution of which is strictly controlled and meticulously recorded (since the time spent on task implementation is the basic resource of software companies);
- Management of versions and provision of access to multiple types of documents;
- Prompt incorporation of customer feedback;
- Rigorous intellectual property protection and information security management;
- Guaranteed implementation of all formal procedures for quality assurance.
Each new project of greater scope and larger scale of distribution than the previous one tests managerial skills and the reliability of the infrastructure. For example, if you have to simultaneously deploy your custom business application in over 20 countries, with dozens of sites in each country, thorough project coordination is obviously a must.
Managerial mistakes can make the project unprofitable or lead its implementation to failure. Preventing such mistakes, and successfully completing complex customer projects requires a robust distributed projects management methodology and an underlying web applications and communication infrastructure.
Another crucial part of the infrastructure is a knowledge management portal. Software development is a knowledge-based industry; its methodology must be mastered, and it requires a high level of professionalism, a solid educational background and a mature business culture. Of course, there are traditional ways of meeting these requirements, such as continuous in-house training programmes; but a knowledge management portal is increasingly significant and plays a central role in project management practices.
From the technology point of view, a knowledge management portal is a typical portal application based on the accurate observance of data access, storage, presentation and mapping standards. The business value of a knowledge management portal is unrivalled. The portal should consolidate all the available materials and accumulated in-house experience, facilitate information storage and exchange, and group together specialist teams.
It can even have mechanisms for motivating employees to actively assist their colleagues throughout the working process and share with them their professional knowledge; this can result in the development of an enterprise-wide network of intellectual assets.
Among other IP technologies that enable the very functioning of offshore software development companies is VPN.
The absence of virtual networks would make the creation of the distributed company infrastructure much more expensive. Without them it would also be necessary to design complex custom solutions in order to enable interaction with customers within the framework of common project groups (when customer representatives have access to the internal resources of an offshore provider) or servicing customer systems by an offshore team (provided with a remote access to customer resources).
Last, but by no means least, it is IP telephony, which has become a widely popular means of arranging internal conference calls between geographically distributed offices, and negotiations with clients. It is no longer a wonder that experts based in, say, the United States, UK, Hungary or Russia can remotely discuss the ongoing technical and business matters with their partners from Ireland or customers from the US, Germany or Georgia, as if they were all gathered in one meeting room.
IP and global business environment
In many aspects, the 'global IP revolution' has stretched far beyond the corporate borders of individual companies, and has made an essential impact on the business climate at large. This impact is universally favourable for diverse industries that benefit from reduced tariffs on data, voice and image transmission.
In many professional domains, the Internet has also become an important marketing medium and an instrument for creating a global competitive environment. There are companies that receive 90% or more of new customer inquiries via their web sites.
At the same time, several aspects of the World Wide Web have influenced the software development industry in a more fundamental way.
Experience shows that large software projects, with considerably lower overheads, can be arranged via the Internet.
Even though some business people demonstrated a rather cautious approach to 'ideologically motivated' open source ventures, no one can deny the proven efficiency of GNU (Gnu's Not UNIX — A Free Software Foundation sponsored project) and Linux related initiatives that can be rightfully compared to the most prominent commercial software based projects implemented by large teams located at one site.
The Internet and, especially, professional communities occupying the Net, have brought to life a reasonable combination of licences and services for promoting and selling packaged software.
No off-the-shelf software application, in particular sophisticated enterprise tools, can now be a market success without a purposefully created ecosystem comprising a knowledge base, accessible from any Internet-enabled PC, interactive support and user groups. It is interesting to observe the growing sophistication of this approach adopted by a wide range of vendors, from Microsoft and Intel to SAP and Oracle.
There may be different views on specific professional tests, but it is hard to ignore the fact that, with the growing popularity of IT jobs, such services as BrainBench have given a strong learning impetus to programmers worldwide and furthered the gradual evolution of criteria for evaluating their professional level.
Web conferencing and teleconferencing systems, such as WebEx, along with IP telephony and distant learning software, help us to better reach mutual understanding with our customers and train highly skilled professionals for our industry.
Judging by the newly emerging Internet services, Google Earth for one, which have either direct or indirect impact on distributed work and services supply, new good surprises are currently looming on the horizon.
For the short term, it would seem that the concepts of Service Oriented Architecture (SOA) and enterprise services are the most fundamental innovations; these will provide customers with unmatched flexibility in choosing solution components, developers and deployment scenarios and, consequently, in drafting budgets.
For their part, vendors must flexibly adjust to the fluctuating market realities and select solutions from the full range of traditional and new business models and areas of specialisation — from an infrastructure platform supplier to a focused provider of a state-of-the-art enterprise service.
Even if a new distributed environment for enterprise services emerges within the years to come, it will still be largely based on the time-proven remarkable achievements of IP.