Global Software Development: Managing Virtual Teams and Environments / Edition 1

Global Software Development: Managing Virtual Teams and Environments / Edition 1

by Dale Walter Karolak
ISBN-10:
0818687010
ISBN-13:
9780818687013
Pub. Date:
01/10/1999
Publisher:
Wiley
ISBN-10:
0818687010
ISBN-13:
9780818687013
Pub. Date:
01/10/1999
Publisher:
Wiley
Global Software Development: Managing Virtual Teams and Environments / Edition 1

Global Software Development: Managing Virtual Teams and Environments / Edition 1

by Dale Walter Karolak

Paperback

$111.95
Current price is , Original price is $111.95. You
$111.95 
  • SHIP THIS ITEM
    In stock. Ships in 1-2 days.
  • PICK UP IN STORE

    Your local store may have stock of this item.


Overview

Over the last several decades, improvements in software development tools and methods have allowed geographically and culturally diverse groups to come together in global software development teams. Team members bring diverse expectations and goals that make the task of virtual product development considerably more complex than the most complex in-house projects.

Global Software Development covers the delicate tasks of managing diverse cultural expectations, establishing responsibility, implementing accountability, and defining process and product ownership. Subtle changes in the cost, schedule, and quality issues involved in normal product delivery are also examined. Although focused on global development projects, the book discusses issues that apply to most distributed software development environments.

Following the life cycle of a typical software development project, the text examines the growing need for global software development and the foundations of its strategy. From setting up the initial environment and project team, the book progresses through every development stage emphasizing the differences between traditional and virtual management. The final chapter presents three case studies illustrating the principles and activities described in the preceding chapters.

Dale Karolak's goal is to make it easier for managers to understand what to consider when managing a virtual project and offers a broad spectrum of information that enhances the reader's understanding of global software development.

Product Details

ISBN-13: 9780818687013
Publisher: Wiley
Publication date: 01/10/1999
Series: Practitioners , #31
Pages: 174
Product dimensions: 6.02(w) x 9.06(h) x 0.45(d)

About the Author

Dr. Dale Walter Karolak is an engineering director at TRW Automotive Electronics, where he is responsible for product development for domestic and international customers. His previous positions include software and systems engineering manager at ITT Aerospace/Communications, and software engineer at GTE Communications Systems R&D Laboratories. He is the creator of the Just-in-Time software developing methodology, holds a patent on the Communications Management System Architecture, and has three patents pending in software architecture and communication.
Dr. Karolak has headed virtual software development ventures worldwide, including the US, Europe, and the Middle East. His projects typically involve domestic and international companies and project teams of from 10 to 70 members. At present, he is assessing a joint US-European project to produce an automotive safety-critical product, and is currently conducting a series of joint design reviews.
Dr. Karolak received a PhD in software engineering from Union Institute, and MBA from the University of Phoenix, and a BS in computer science from Central Michigan University. He is the author of the IEEE Computer Society's bestseller Software Engineering Risk Management and developer of SERIM, the product that evolved from the book. Dr. Karolak is a frequent speaker at international conferences and has published widely in software management, metrics, reliability, quality, testing, and architecture. He is a member of the IEEE, IEEE Computer Society, ACM, and Society of Automotive Engineers.
Dr. Karolak can be contacted at dkarolak@ieee.org

Read an Excerpt

Global Software Development

Managing Virtual Teams and Environments
By Dale Walter Karolak

John Wiley & Sons

ISBN: 0-8186-8701-0


Chapter One

What's Driving Global Development?

If you're reading this book, you're probably at least mildly interested in global software development. You may have some notion about it and be wondering if it applies to your organization. You may be anxious, having heard some claims of spectacular successes and some rumors of spectacular failures. You may believe you can avoid it altogether. You may have even asked one of these questions when debating the usefulness of global software development:

Can't we just work harder and get better tools to lower the high costs of developing software in house?

Won't that 200K of legacy Cobol running the company's accounting department be around for another 10 years?

Why do we need to learn another language? Isn't English always the universal business language?

Won't a product marketed overseas sell just as well as it has in the US?

Can't the staff use e-mail to coordinate this cutting edge project and be just as successful not working with the guys across town, on the other coast, or in another country?

All these questions have one thing in common. The answer to each is a resounding "no."

For better or worse, times have changed, and so has a large part of software development "tradition." To keep their market edge, organizations cannot rely on the same software-engineering management skills they use for in-house development. Managers must update their skills in managing people, workflow, and technology.

Industry Drivers

Why is this trend emerging? One reason is that the software-development industry itself is changing.

Supply and Demand

The demand for software services has historically outpaced the supply of people who perform them. As microcomputers and controllers proliferate, the demand for software continues to increase at a faster pace than the supply, as Figure 1.1 shows.

Until the early 1980s, approximately 75 to 80 percent of the world's software was being produced in the US, and most of the supply was met with people who lived there. By the mid-1990s, however, the need for these professionals had increased to the point at which there were not enough resources to meet it. Labor costs escalated as companies competed for resources. As equivalent resources became available at a lower cost-especially overseas-work started to migrate outside the company. In essence, the supply and demand of software professionals was driving costs, which in turn was driving the migration of software development outside company walls. Today, many companies are finding it economically attractive to outsource or codevelop software overseas. The current market for outsourcing software outside the US is estimated between $200 million and $50 billion and it is still growing.

Global Market

Another industry driver is the shift from a predominantly US to a global market. Although the US is still the largest software manufacturer (and yes, software is becoming "manufactured" as the industry matures), the global market is estimated to be more than $120 billion. Microsoft, for example, derived 55 percent of its sales from outside the US. Other software producers, on average, derive 58 percent of their sales from outside the US.

Moreover, the market for software development and products will increase faster outside the US than within the US. The reason is the increase in price-performance ratios of computers, a trend shown in Figure 1.2.

Computers, especially lower end types like PCs, are less expensive, contain more computing power, and include more features and functions than they did even one year ago. There has been a proliferation of these less expensive, more powerful computers, and the rest of the world is catching up to the explosion in US computer sales over the last decade. The electronics industry as a whole has seen this trend in televisions and VCRs, for example. However, unlike its predecessors, computer hardware can be upgraded piecemeal and software is upwardly compatible with the new hardware. This characteristic plus the ability to load multiple programs on a machine is making software development a very competitive and profitable business. For those who produce software, this means they can no longer pass off a product with poor quality or average performance. It is no longer a seller's market. Customers will start demanding software that meets more of their particular needs, as Figure 1.3 shows.

Indeed, in the US, the industry has already seen this trend realized in software packages such as word processors, spreadsheets, and computer-aided design packages: the software has experienced a market shakeout driven by price and how the products met customer needs.

Business Drivers

Global software development is also occurring because of certain business arrangements, such as strategic partnerships and joint ventures. It may also be required because your company is already competing in a global market.

Strategic Partnerships

Companies are relying more on strategic partnerships to develop and promote their software products-generally to gain market access. In these situations, a product may exist but needs market channels through an established vendor in the new market.

A strategic partnership, or alliance, may require that an existing product be modified or supported by companies other than the one that developed it. Often, interfaces between customers and feedback on how the software meets customer needs are divided among the partners. Occasionally, one partner may be responsible for development and maintenance; the other for working with customers. Figure 1.4 shows how responsibilities could be divided. The more shared responsibilities (overlapping area in the figure), the more complex the alliance.

Given the depth of responsibilities in the partner companies and the importance of software to products and business operations, it is almost inevitable that companies will deal with some aspects of global software development.

Joint Ventures

Most joint ventures result in a separate company being formed that has fiscal responsibilities to the joint venture partners. Figure 1.5 shows this relationship. The establishment of a separate entity is the main difference between a strategic partnership and a joint venture.

How much of the joint venture each partner owns determines its influence and activities. One partner may bring working and equipment capital, while the other provides technical resources. One partner may bring expertise in one type of technology, such as graphical user interfaces, while the other brings another technology, such as database management.

Joint ventures may be legislated by the country in which the partners want to do business. They tend to have more financial pressure to succeed and thus more frequently aim to develop software at the lowest cost. This makes them more open to the global development option.

Global Companies

Your company may already be performing business on a global scale. If so, global software development may be a joint product development between two divisions, the same division in different locations, or two companies under the parent holding company.

Some global companies treat subsidiaries as isolated profit centers-the success of that company or division is measured in terms of how much profit it returns to headquarters. This tends to inhibit joint efforts between companies or divisions if the risks and costs are higher than for in-house developments or a short-term return isn't projected or demonstrated.

Recently, more global companies have opted to synergize their diverse capital and human assets. There are several advantages to this:

The market network and presence of an existing product can help a new product (even an unrelated one) because the personnel know the customers and are familiar with the support facilities.

Uniting diverse technologies and expertise allows them to compete in larger markets and provides needed resources that can meet demand at a reasonable cost.

Each location can focus on a particular technology or part of the customer base.

They can merge divisions or companies and still keep separate locations.

They can acquire other companies and their products and technologies to complement their business strategy.

They can migrate or establish a technology center at a different geographic location.

What Will Change?

As these global development drivers show, software development managers are facing more complex environments-strategic partnerships, joint ventures, joint development with other divisions within a global company-each with its own set of needs that require unique methods of organization and control. In-house environments are also changing.

In each of these scenarios, except in-house development, software is produced in geographically dispersed locations. In all cases, the common thread is the virtual software development team. In the next chapter, I describe the characteristics of that team.

Strategic Partnerships

Strategic partnerships usually don't require a large capital investment (such as purchasing the same software development tools), but require more integration of structures and practices. This means blending sets of management practices, development practices, tools, and configuration management systems. Even with secrecy or nondisclosure agreements in place, however, partners may be reluctant to share technology. Management must be able to recognize this environment and work effectively within it.

Joint Ventures

Joint ventures, on the other hand, involve a unique entity, so less blending is required. However, there will be some cultural adjustments-everyone must understand what the parent companies bring to and expect from, the new company. Technology innovations and sharing are also more straightforward.

Global Companies

Global companies already have diverse management philosophies, software development practices, tools, and so on, among their divisions. Joint software development management skills must be applied to overcome these differences, and if divisions are in different countries, to overcome cultural differences. Technology sharing issues are usually dealt with at the corporate level.

In-House Developments

In-house development, always an option for software projects, will continue to evolve to meet the company's business or product needs. As is true today, shared capital investment and technology will often be needed to make the project successful. Organizations will need to keep pace with the rate of technology change to remain competitive.

Key Thoughts

Global software development is inevitable because of both industry drivers, such as the supply and demand of technical resources and the increasingly global software market, and business arrangements, such as strategic partnerships, joint ventures, and global companies.

Each of these has its own focus for joint development, but all require new skills in information transfer, adjusting to cultural and philosophical differences, and technology sharing. All require managing a virtual software development team.

(Continues...)



Excerpted from Global Software Development by Dale Walter Karolak Excerpted by permission.
All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.
Excerpts are provided by Dial-A-Book Inc. solely for the personal use of visitors to this web site.

Table of Contents

Preface.

1. What's Driving Global Development?

2. Introducing the Virtual Software Organization.

3. First Steps.

4. Dividing the Effort.

5. Responsibility and Accountability.

6. Effective Communication.

7. Managing the Pieces.

8. Integration.

9. Maintenance.

10. Three Case Studies.

11. Epilogue: The Virtual Future.

A. Tutorial on Intellectual Property Protection.

B. What Happens When?

C. Major International Software Quality Standards.

List of Figures.

List of Tables.

About the Author.

Index.
From the B&N Reads Blog

Customer Reviews