Volume 8, Number 6

Web-based Management Tool is Essential for Reducing Risks of Offshore Software Development

By Sid Mookerji


By any measure, software development is a very complex process requiring rigorous discipline from many participants. Multi-location software development, such as in the offshore environment, adds an extra layer to the software development life cycle, making the work even more complicated. With its perceived lack of control, offshore development also makes the final delivery more uncertain in the eyes of the customer.

Yet, when integrated and managed correctly, the use of offshore resources can reduce costs, as well as increase levels of delivered quality. So, how can IT managers achieve this dual benefit when augmenting a team of professionals with members located on another continent, in another time zone, and of a foreign culture?

A Web-based enterprise management tool that is integrated into the development process and embraced by all project stakeholders offers a unique way to manage multi-location development projects, while minimizing risk, maximizing visibility, and helping to deliver on the promise of offshore development.

Inherent Uncertainty
What are the inhibiting factors for companies looking at trying offshore development? An analogy might be useful. Consider the similarities between executing an offshore project and building a new house. For the latter, the homeowner provides the builder with detailed specifications, and then visits the job site every week to monitor the progress. However, regardless of how specific the instructions are, at the end of the day there will always be problem areas that require changes or fixes, some of which can only be detected through direct observation. If the changes aren’t completed correctly and in a timely fashion, the house will not meet the homeowner’s satisfaction or pass inspection, and could possibly delay the family from moving in as scheduled.

Developing a project offshore or across multiple locations follows a similar philosophy in that constant re-evaluation is required to ensure progress proceeds according to plan. The difference with offshore development is that face-to-face interaction is absent. In essence, customers are contracting for houses they will never see until completion, using builders they will never meet.
This scenario can introduce a tremendous amount of uncertainty among customers when they consider the potential difficulties of turning to outsourcers for multi-location offshore development projects. Network failures… productivity issues… uncorrected errors and cost overruns—all are potential events that may be occurring without their knowledge, and over which they have no control. Managers might easily envision an approaching time when they are supposed to deliver a mission-critical application—and yet they have no assurance that this will happen as scheduled.

On the other hand, in a traditional development environment, the close proximity of the project management function to the development resources somewhat alleviates this problem. Meetings can be scheduled as frequently as needed to discuss inconsistencies in status or inherent risks, or project managers can literally peer over the shoulder of developers to see how they are doing. But there are still tremendous deficiencies in this reliance on a single project manager to coordinate all details among the various resources and maintain and distribute status information using Microsoft Project or other project management software tools. There is simply too much information to distribute.

‘Push and Pull’ Information Transfer
Typically, the majority of project data is transferred using a “push” mechanism (face-to-face, e-mail, and phone). Project managers provide status updates daily, weekly, or as frequently as needed. However, push technology is not very efficient because it limits the amount of information that can be delivered, and also is entirely dependent on the skills and capabilities of the project managers.

What is missing from the development process is a common repository that provides all project stakeholders with consistent and complete information, which they can retrieve and act upon at their own convenience. An ideal situation is to employ a combination of push and pull in delivering information: Push mechanisms for project managers to circulate out weekly/monthly status reports and notifications of risks and unresolved issues to key stakeholders; and pull or drill down information that grants access to minute details that are critical to specific stakeholders.

The Need For Collaboration
Another bottleneck in the traditional development process occurs around collaboration. Often an individual in one location is responsible for requirements, a second person elsewhere does detailed design, and yet another performs the coding. Ideally, to save time, the design and development should happen collaboratively. This cannot happen efficiently in a traditional environment because of accountability. There has to be an owner for every requirement document, and this can only happen sequentially, with sign-offs occurring via e-mail.

Compounding this issue are the twin requirements of identifiability and traceability required in any software development environment of reasonable quality. At all points in the software development life cycle and later, throughout the useful life of the work product, it is important to be able to easily identify the individual responsible for performing each individual task, should questions arise about the work. Additionally, one should be able to identify the specific functionality to which a deliverable (e.g., a design document) is linked. Conversely, the methodology employed should make it reasonably simple to trace all deliverables for any given functionality. If traditional methods are used in a multi-location, offshore development environment, such rigor can be achieved only by expending considerable resources and time.

A better solution would be to provide linkage between modules to enable full coordination of projects among project managers located onsite, software developers located offshore, and management in the United States.

The Value of Web-based Enterprise Management
All this helps build the case for a Web-based enterprise management tool that provides a window to all stakeholders, allowing for total transparency in the offshore software environment.


Sample Project Web Report

Such a Web tool affords the customer control and ownership of projects by providing a single repository for project documentation, design, and implementation requirements, including budget tracking, reporting, and communication between the client and the offshore developer.

For example, any project stakeholder, including customer representatives, can at any moment see who is working on what task and when, what are the outstanding issues and bugs, as well as what risks have been encountered. This visibility alleviates many of the concerns surrounding lack of control over the development process.

The infrastructure is designed based on multiple stakeholders (with different access rights and process responsibilities) operating at locations all over the world. Keeping that in mind, a sophisticated IT infrastructure must encompass a robust interconnection among all locations, using private lines and over the Internet, and multiple networks containing hundreds of desktops and servers.

Collaborative Project Management Environment
Web-based enterprise management also puts in place a much more efficient collaborative project management environment. Team members working in multiple locations and functioning in multiple roles can collaborate effectively, resulting in successful execution of complex tasks.

Instead of assigning single person responsibility for ensuring accuracy of information, everybody is participating in providing firsthand input into the project management process. Obviously, there are rules and instructions put in place as to who has responsibility for what tasks, which is further tracked for accountability by electronic signatures. Electronic signatures can be used to track day-to-day project activities, such as issue creation and resolution, storing of project-related meeting minutes, and task creation and updates, as well as to achieve true collaboration in requirements gathering, design, and development.

The stored information is not only used to generate reports, but is also shared among all employees through an advanced search engine, which is a part of the system.



Sample Metric-based Report

Project Portal
The central launch point for utilizing the various features of the project management system is the Project Portal. The portal is customized depending on the type of stakeholder and the type of information he or she desires.

From this screen, a user has access to advanced project management functions, such as deliverable/ milestone management, task management, issue management using electronic signatures, status updates, meetings management to track project-related communications, resource management, document management with check-in/check-out and versioning, risk management, time sheet and expense management, Critical-To-Quality (CTQ) metrics, as well as a full-fledged requirements gathering and design tool.

Metric-based Reports
Reports are geared towards metrics-based thinking. The Critical-To-Quality metrics report is used to capture the “voice of the customer” in determining what constitutes quality in order to ultimately improve the quality of project outcomes—in terms that are important to the customer. The use of such reports helps customers to directly gain from such quality implementations and thus enhances quality gains into real, perceptible benefits for all parties involved.

Reports can contain productivity, efficiency, quality, and planning information in addition to project status reporting at various levels (e.g., time, expense, variances, critical task and exception reporting, etc.). Information is also used to serve as a knowledge base, as well as a tool to improve turnaround times and reduce the time required to ramp up.

Data mining capabilities let customers explore historical data, drill down across various dimensions, and investigate patterns, spikes, and dips in key parameters such as productivity, efficiency, and defect removal.

Reports are delivered using both push and pull mechanisms. Most of the information is available from easy-to-access wizards and portals. Critical information, such as task and resource allocations, occurrence of risks, and periodic statuses, is distributed via e-mail to relevant stakeholders.

When a problem arises or a deviation from the project schedule occurs, all concerned parties are notified. Hence, immediate action is taken and necessary decisions are made without any delay to bring the project back on track. Even though the system does send out critical information in the form of e-mails, the content, styling, frequency, and recipient lists are standardized to make the messages a lot more predictable and consistent.

Conclusion: Changing the Rules For Offshore Development
Web-based enterprise management has the potential to change the rules for offshore software development and convert ubiquity of knowledge into a powerful management tool. By combining project management and collaboration, the solution promotes easy understanding of project status and progress. The tool allows project teams around the world to develop efficient project plans, design and implement software projects, improve interaction between team members, and provide status updates to managers and clients on a regular basis. With around-the-clock, 24/7 feedback on their projects, customers, developers, and managers can follow the progress achieved on their projects, make changes as needed, and generally mitigate the concerns that they might otherwise have had about offshore development.


About the Author
To meet the challenge of successfully executing offshore-based projects, Sid Mookerji architected and guided the construction of a sophisticated Web-based project management system such as described in this paper. He has more than 15 years of IT experience, primarily managing large projects—many of which have involved multi-location, multi-stakeholder environments—from inception to implementation. Sid is co-founder and currently serves as CEO of Software Paradigms International (SPI), an offshore software development firm. Sid can be reached at sidm@spinc.org.

Do you have concerns about workplace or technology issues? The MATRIX Essentials White Paper series includes more than 20 relevant topics to help you better manage your business—from comprehensive staffing strategies, to the latest market trends in VMS and Managed Services, and key factors affecting IT project success. View our entire list of White Papers for the topics that interest you.

ATLANTA
770-677-2400

CHARLOTTE
704-426-1100

HOUSTON
713-622-8383

PHOENIX
602-522-3300

BIRMINGHAM
205-314-5200
DALLAS
972-778-1800
NEW JERSEY
908-719-8960
RESEARCH TRIANGLE PARK
919-653-1500