Project Management Paper

Question:

Countries need to work together. This paper should consider different methods of international software development (including international joint ventures, outsourcing etc). Answer these questions:

  1. What the challenges and risks are in managing such projects including any ethical issues
  2. How the industry is addressing those challenges

Answer:

Title: Project management challenges in international software development

 

Contents

Introduction. 2

Methods of international software development 3

Intra-organizational approach or coordination between legally related companies. 3

Inter-organizational approach or outsourcing. 6

Non-organizational or Open Source Software (OSS) approach. 10

The challenge of collaboration. 13

Lack of support to new developers. 14

Users’ feedback. 15

Project management risks in international software development 16

Aspects of country-specific risks and ethical issues. 20

Conclusion. 21

References. 23

 

Introduction

International software development refers to software work undertaken at locations that are separated geographically across national boundaries through real-time (synchronous) coordination and asynchronous interaction. Some of the activities involved in this work include communication for exchange of information, coordination of groups and activities in a way that enables them contribute to the objective, and control of groups to ensure that they adhere to goals and policies. It also involves the control of various artifacts including quality, visibility, and management.

Today, international software development is a very common practice among large companies. According to Mohagheghi (2004), 40 percent of all Fortune 500 companies use international software development, also known as Global Software Development (GSD). Out of these, 185 have chosen to outsource their international software development to India alone (Mohagheghi, 2004). Moreover, more than 50 nations are involved in GSD (Carmel, 2001).

Order Now

Some of the internationally renowned companies that are famous for engaging in GSD include IBM, British Telecom, Alcatel, British Airways, and General Electric. Each of these companies has chosen to move certain aspects of their software development processes to countries like India and Ireland (Nicholson, 2001). To put this trend of international software development into perspective, it is also worthwhile to point out that 80 percent of the total output in the Irish software industry is exported (Carmel, 2001).

The aim of this paper is to discuss the various project management challenges and risks affecting international software development. The risks involved as well as the ethical issues raised in this practice are also examined. The thesis of the paper is that countries need to work together in order to succeed in the work of international software development. The methods of international software development discussed in this paper include intra-organizational approach, inter-organizational approach, and Open Source Software (OSS) approach.

Methods of international software development

There are three main methods of international software development. The first method is intra-organizational approaches, which also encompass ventures bringing together companies that are legally related. Examples of companies that have already engaged in this method include Lucent technologies, Siemens, Ericsson, and IBM. The second approach is outsourcing or inter-organizational development. This method entails the use of IT infrastructure, embedded software, maintenance, data centers, and software applications. Lastly, companies may prefer to use non-organizational or Open Source Software such as programs for programmers, and Operating Systems such as Linux.

Intra-organizational approach or coordination between legally related companies

For companies that adopt this approach, the objective is to derive success in complex software development projects while at the same time maintaining organizational cohesion. The organization tends to have a strong sense of ownership as far as the resulting software product lines are concerned. However, in this process, even in this environment of organizational proximity between legally related companies, the challenges involved are closely related to those of companies that engage in other approaches to international software development such as inter-organizational coordination. These problems are normally organized around organization, architecture, and process.

Challenges relating to efficiency and effectiveness are also common in the intra-organizational approach. These problems mostly arise because these companies tend to rely too much on integration-centric approaches (Larman, 2003). To deal with this problem, these organizations need to switch to composition-oriented strategies.

The intra-organizational approach is best understood in the context of the contemporary trend in which many companies are keen to develop a software ecosystem as a gradual replacement to the traditional software product-line in efforts to improve sustainability. For this ecosystem to exist, a platform for software development needs to be established. Internal developers use this platform to build products.

Additionally, the intra-organizational approach may also create room for a community of external developers operating outside the organization but with a legally-related corporate entity. These external developers build software products using the same platform in addition to extending the products the company releases. In this approach, a community perspective is adopted, whereby external developers, domain experts, and users get access to the platform. This requires a community-centric approach to collaboration and coordination. In this situation, whereas an intra-organizational approach is adopted in the software product line, the software ecosystem’s scope tends to be broader in the sense that external developers are involved, extensions are provided, and parties can provide contributions.

In distributed development being undertaken in an intra-organizational company context, one of the most critical factors for success in various projects is the presence of regular, informal communication (Komi-Sirviö, 2005). Regular, informal communication fosters the product development process by improving coordination and motivation. According to Lindqvist (2006), the leader plays a critical role in ensuring that transparent project priorities have been put in place. He also ensures that iterative development methods are being employed, complete with regular deliverables between production sites. These regular deliverables are viewed as critical elements of success in this approach.

One of the large corporations that have adopted the intra-organizational approach to software development is Ericsson Microwave Systems. Ericsson Microwave Systems is a subsidiary of Ericsson AB Telecom Corporation. The company has already established several sites both across Sweden and internationally. The largest site is Gothenburg, which has about 1600 employees (Lindqvist, 2006). Most of the projects that the company undertakes are complete in a co-located environment within this main site. However, in some cases, the projects undertaken are very large and involve more than 100 participants. Such large projects may be carried out in two sites.

In the intra-organizational software development approach, some of the critical factors in terms of the level of distribution include temporal distance, geographical distance, and social-cultural distance (Herbsleb & Moitra, 2001). When the temporal distance is low, no time-zone differences between various sites exist. Co-workers are able to work in flexible hours. At Ericsson Microwave Systems, co-workers enjoy the element of flexibility in work times even though the company has set in place recommended working hours (Lindqvist, 2006).

Geographical distance encompasses the distance between software development sites (Liang, 2007). Social-cultural distance refers to the extent to which two software development sites share social-cultural links. For example, sites that have been in existence for a longer time tend to have a richer social-cultural heritage. For this reason, they tend to assimilate smaller development sites (Lindqvist, 2006).

The culture of the organization greatly influences the challenges that arise. It influences the pattern of behavior of the people involved in the software development process, thereby affecting the overall effectiveness of the project. For example, the participants may be operating in a culture where phone conversations or decisions to make impromptu visits to the development site are relied on only when something is seriously wrong with the development process. In such an intra-organizational context, efforts should be made to ensure that there is constant communication at all times. This creates a situation in which the problems that exist at the organization are not underestimated. Without continuity in communication, the quality of the work may be poor, thereby jeopardizing the overall success of the project.

Inter-organizational approach or outsourcing

            Software development projects that employ a global inter-organizational approach are becoming common. One of the most critical elements of the inter-organizational approach is collaboration (Paasivaara, 2003). Companies that adopt the inter-organizational approach need to ensure that the practices and processes they have put in place support collaboration. According to Paasivaara (2003), some of the most common collaboration practices include frequent deliveries, creation of peer-to-peer links, and milestone synchronization.

A good example of an inter-organizational approach to software development is the one that was launched by Huawei in partnership with ChinaSoft International in April 2012 (PR Newswire, 2012). ChinaSoft International is China’s leading information service and software provider while Huawei Technologies is the largest supplier of telecommunications and networking equipment in China and a leading global provider of ICT (information and communications technology) solutions. This partnership led to the emergence of a joint venture company known as ChinaSoft International Technology Service Ltd (PR Newswire, 2012).

The joint venture comes at a time when the IT service market in China is experiencing major developments and expansion in the practice of service outsourcing. The promising developments are greatly influenced by China’s market circumstances that emphasize on brand, quality, and delivery capability (PR Newswire, 2012). This venture is an example of a new trend in which international outsourcing companies continue to emerge in order to exploit opportunities for outsourcing in the field of inter-organizational software development. It also demonstrates a new trend in which Chinese companies are making efforts to assert their position within the global software outsourcing industry.

Just like in the intra-organizational approach, the inter-organizational approach requires proper planning as far as the issue of problem-solving communication is concerned. Problem-solving communication is particularly important at the beginning of the project even though it tends to be ignored (Paasivaara, 2003). For inter-organizational projects to succeed, two-way communication is critical especially during project progress monitoring. Moreover, efforts should be made to build and maintain working relationships by frequently traveling to development sites, holding face-to-face meetings, and supply of organizational charts.

In most cases, international inter-organizational software development projects take the form of outsourcing, partnerships, and subcontracting strategies. Companies that adopt this approach normally perceive the need to seek advice on the best outsourcing practices as well as strategies for the acquisition of large systems with well-defined interfaces. However, many challenges tend arise in software projects involving the development of genuinely novel products.

One of these challenges is uncertainty regarding the requirements, partners, subcontractors, and implementation technologies (Ramingwong & Ramingwong, 2009). This uncertainty should be resolved long before the commencement of the inter-organizational projects. In projects of this nature, the parties involved normally find it difficult to receive clear specifications on requirements at the beginning.

It is also imperative for close cooperation between all the parties involved to be sustained throughout the project development process. This is mainly because the project developers continue to build a product while at the same time trying to understand what to build. In such an environment, problems are bound to arise simply because the processes and practices needed during the collaboration process are not well understood. Misunderstandings are likely to arise because of the fact that different organizations are involved in an interaction process that spans across distances.

In the inter-organizational approach that involves outsourcing, it is common for companies to underestimate the importance of collaboration practices in specific areas (Tafti, 2005). This challenge is common whenever projects run across geographical and social distances. In this challenge, the companies embark on the task of starting global inter-organizational projects before planning how they are going to work together as well as with various partners. This creates numerous problematic situations. It becomes difficult for various practices, processes, and cultures to be reconciled, thereby posing significant challenges to joint software development projects.

The available literature provides little help for managers who intend to plan and launch software development projects that are globally distributed (Tafti, 2005; Börjesson, 2005; Bakker, 2010; Sawyer & Farber, 1997). More research needs to be undertaken in the area of practices and processes that are really adhered to in various case projects. The studies should also focus on various inter-organizational aspects relating to international software development such as outsourcing and subcontracting. Focus should be not only on successful collaboration practices but also those that did not succeed with the aim of developing a framework for best practices. The empirically collected information would be of utmost importance in establishing successful collaboration practices that can be relied upon by international software developers in the future.

Hire This Writer

Even when the collaboration sites are situated within the same company, different development processes may emerge. This can become very problematic whenever efforts are being made to achieve close collaboration. Similarly, change management processes may be hindered by differences, thereby causing serious problems. These problems can become a major concern during the integration phase. One of the ways of dealing with these compatibility challenges is to force all development sites to adhere to the same development process. Alternatively, it may be prudent for every developer to be allowed to use process of his or her choice. This option is particularly attractive for those companies that do not intend to spend too much time in the planning phase of project development. However, it is important for efforts to be made to ensure that work is clear divided and specific roles assigned to each developer.

Process-related challenges are also common in inter-organizational software development approaches in the international context. A possible solution to these challenges is the adoption of incremental integration plans based on shared milestones and clusters (Mockus, 2001). The concept of incremental integration may be supplemented with that of frequent deliveries to create a core practice for use in all agile methodologies. The main problem at this point is that not much attention has been given to this practice as far as the issue of distributed development is concerned. According to Fowler (2004), success can be achieved in off-shore development projects using agile methods in the form of an iterative model. One of the benefits of this approach is that in distributed projects, there is increased visibility into the status of every project.

Communication is also a major problem in inter-organizational projects in international software development. One of the reasons why communication poses the biggest challenge is that it is always at the center of every collaborative undertaking in the software development process. Geographical distance creates the limitations as far as face-to-face communication is concerned. Similarly, time-zone differences make it impossible for the goal of synchronous communication to be achieved. Moreover, cultural and language differences cause frequent misunderstandings between participants.

Some of the solutions suggested to solve the problem of communication include the use of project liaisons and the use of cultural liaisons through which information is shared and contacts facilitated. Conference calls are also considered effective in efforts to solve the various problems that emerge during the software development process. In other instances, the strategy of rotation of management is used in the goal of coping with aspects of cultural diversity. In online platforms, it is also important for a project home page to be set up to provide a summary of project content and information on planning as a way of distributing information to all developers.

Non-organizational or Open Source Software (OSS) approach

Open source software are systems through which users get free access to source code as well as the right to undertake modification work. Examples of open source software include Operating Systems such as Linux and programs for programmers. In open source software, problems relating to distributed development are solved through very simple tools of communication such as newsgroups, email, and change management systems.

In non-organizational software development, one major defining characteristic is global access to software developers. One example is that of the Apache project, which entailed the development of the HTTP (Hypertext Transfer Protocol) Web server (Vujovic & Ulhøi, 2008). This project brought together volunteers located in different parts of the world including Canada, Britain, the US, Italy and Germany (Vujovic & Ulhøi, 2008). For this reason, this approach has many advantages. No explicit system-level design system is required. Similarly, there is no need for a project plan, list of deliverables, or schedule. Moreover, OSS projects are characterized by a rapid cycle time and more frequent releases.

Many small, medium, and large American organizations are resorting to the use of Open Source Software because of its overall value in addition to the fact that they have been proven to bring about cost savings (Noll, Beecham, & Richardson, 2010). The Open Source Software packages are seen to be more advantageous than commercial software packages. Other than cost savings, the companies also use OSS to deliver systems faster, and to enhance the security of these systems.

Although the value of Open Source Software has been proven to constitute a major positive factor, many organizations continue to encounter numerous barriers in this approach to international software development. One of the barriers takes the form of inability to reduce costs. For instance, many executives do not have sufficient knowledge regarding the benefits of OSS. They harbor fears that OSS will put the organization in jeopardy through poor quality and lack of support. Additionally, many companies face difficulties relating to legal and licensing requirements.

Another problem with OSS in organizations is that policies of corporate cost allocation fail to offer incentives to various business functions. For example, when commercial software costs are lowered, organizations cease to appreciate the value of open source alternatives. In this way, they miss the opportunity to procure additional open source systems that can be supported after the installation of the process has already been completed.

Although remarkable progress has been achieved in the realm of open source software, many challenges remain, particularly during the development process. Some of these challenges arise at the level of collaboration among developers and potential contributors. Difficulties also arise in efforts to bring developers and users together. Nevertheless, open source software development projects have in recent years received a lot of attention from researchers because of their success in areas where traditional developments have failed (Vujovic & Ulhøi, 2008).

In this approach, there are virtually no opportunities for face-to-face communication. Moreover, industry-style approaches are used to a very limited extent in areas of project management and coordination. This has not prevented the developers from coming up with reliable, widely used, and well-known open source software systems such as Mozilla browser Linux Operating System, and Apache web server.

The concept of ‘extreme distributed software development’ is sometimes used in reference to OSS (Mohagheghi, 2004). Those who participate in the development of software through an open source tend to interact primarily through platforms such as discussion boards and email, which provide asynchronous modes of communication in textual form.

Just like in the case of intra-organizational and inter-organizational projects, open source software development projects face challenges relating to collaboration. There is always a need for subsets of developers to work in a collaborative manner in order to come up with more effective software. Another challenge is that of supporting new developers. Similarly, the task of ensuring that a broader user community is supported is extremely difficult. This goal requires deliberate efforts to increase the level of awareness of the unique needs of all non-developer users.

The challenge of collaboration

The issue of collaboration keeps arising because software development is characterized by tight integration as well as interdependencies between various modules. Substantial coordination is required among developers in efforts to ensure that all the desired features are functioning in the right way. In OSS, the collaborative work is geographically distributed, meaning that communication between members of the team is significantly reduced.

One of the greatest challenges in distance collaboration arises from a reduction in the level of awareness of the activities taking place at the software platform. This reduction is sometimes unavoidable for participants who have to operate from remote locations. Reduced communication brings about a reduction in the level of awareness. This creates a scenario where crucial contextual information is missing or difficult to obtain. This is unlike in the context of co-located contexts, where such information would be readily available.

Unlike in the context of commercial environments, majority of OSS developers tend to operate in situations where they are relatively independent of each other. Therefore, it becomes extremely difficult for new substantial features to be added. This difficulty arises because of lack of proper coordination among the members of the software development team. Moreover, tension arises in a distributed environment because of miscommunication and misunderstanding. In such a situation, serious coordination problems arise during the integration stage. Through improved collaborative capabilities, developers might succeed in working together in an environment of greater effectiveness.

Another major challenge that emerges in distributed OSS development environments takes the form of difficulty in having access to and consulting experts who are situated in remote locations. For projects that are shroud in uncertainty, it is imperative for participants to rely heavily on informal communication. Incidentally, majority of OSS projects take the form of ‘uncertain’ software development projects. This is largely because the trajectories and objectives of different projects tend not to be properly specified.

The problem is that participants contributing to open source communities tend to shun informal communication. To deal with these challenges, efforts should be made to encourage participants to engage in informal communication (Vitharana, 2003). One effective way of fostering informal communication is by encouraging social interaction as well as providing support to social structures within the OSS community. This would create numerous platforms through which crucial information can be shared.

Lack of support to new developers

In many cases, OSS projects are primarily tailored to fit into the professional requirements and qualifications of core developers. New developers are left with no opportunity to contribute to various projects. Moreover, ‘peripheral’ developers find themselves in a position where they must understand a component of a specific software project well enough to succeed in making a meaningful contribution. Such developers operate from a position of disadvantage because they miss out on mentorship opportunities that would be available to them if they were operating in co-located contexts. In co-located contexts, the new developers get assistance through documentation, guides, and tutorials.

In large projects such as Mozilla, efforts are being made to provide to provide code documentation and community procedures. The main problem in this undertaking is that the process of creating and maintaining this documentation requires more resources than most OSS projects can afford. Moreover, new developers have to go through the trouble of understanding the culture and practices of a specific project environment in addition to understanding the code. One useful way of helping the new developers understand the culture of a new software project is through the establishment of social networks. Through such social networks, it becomes easier for new developers to be initiated into ongoing geographically distributed software development projects.

Users’ feedback

Another major challenge arises from the fact that project websites do not have much to offer to software users. This has even triggered speculation that open source development fails to be closely attuned to the various needs of the non-developer community of software users. For example, early Linux versions tended to be extremely difficult for the larger community of non-technical users to use.

Nevertheless, there are many opportunities for various communities of users to influence the course of the software development. If the intention of the OSS development initiative is to create software for the general user, it may be very helpful for more interaction among user and developer communities to be stimulated. Such interactions are necessary in efforts to increase the user community’s technical sophistication while at the same time heightening the developers sensitivity.

From this discussion, it is evident that open source software development projects pose different challenges. However, they all relate to the underlying issue of the need to ensure that the right information is provided to the right person for use in the appropriate task. In all these challenges, the information provided should be available in an understandable form for it to be usable. The implication in this case is a lot of focus should be on integration. Efforts should be made to ensure that information is presented in a form that addressed the various challenges arising in open source software development projects.

To enhance integration, social network visibility should be enhanced both among developers and among the wider community of users. Such interaction is necessary for enabling users understand how developers undertake their project development activity, thereby increasing their technical sensitivity. At the same time, it enables developers understand the changing needs of end users. For new developers, social interaction provides an informal context through they can be initiated into the culture of the project development initiative.

Project management risks in international software development

One of the main characteristics of the international software development environment is the presence of risk. The project management process is always a risky one particularly when the projects at hand are outsourced to different offshore locations (Ramingwong & Ramingwong, 2009). Incidentally, companies that outsource software projects do so with the expectation of deriving competitive advantages. Therefore, although some benefits come with this undertaking, managers of the international software development process should also be wary of the risks involved. In section focus is on the risks involved in international software development.

Offshore outsourcing has variously been criticized for posing risks relating to unemployment, low quality workforces, hidden costs, and cultural differences (Ramingwong & Ramingwong, 2009). Regarding costs, critics point out that while labor costs remain low in countries such as India, China, and Africa, companies have to incur many extra costs in the process of offshore outsourcing. These costs relate to travel, communication, and cultural training. Other costs include vendor search costs, post-outsourcing costs, transition costs, as well as costs extending beyond baseline services. Although the need to travel and engage in face-to-face communication has greatly been reduce by the advent of internet technologies, countries still face the need to work together in order to reduce risks.

Another risk that comes with international software development is unemployment (Heeks, 2001). Many jobs have been lost in the US because of outsourcing of software projects overseas (Heeks, 2001). This rise in the rate of unemployment puts organizations in a precarious position, where they have to address this new, hitherto unforeseen threat. In some countries such as the US, the risks posed to outsourcing of software development projects to offshore locations in the form of unemployment in various business sectors outweighs the benefits (Khan, 2010).

Another major risk takes the form of availability of skills. Although the world is full of highly skilled software developers, locating and hiring these developers is a highly risky venture. The skills and experiences of the overseas workforce that is readily available may be insufficient particularly when compared to those possessed by professionals from the home country of the software development company. This project management risk increases significantly when the company in question has invested heavily in offshore outsourcing only to fail in hiring the right people for the job.

Furthermore, the overseas workforce may be skilled only to be inconvenienced by cultural and language barriers. When the proficiency of specialists working from overseas locations is restricted by language and cultural barriers, the frequency of informal communication may be greatly reduced. Moreover, the software developers may shy away from participating in various social networks being used as a communication platform by developers from different parts of the world. To deal with this problem, countries need to work together in efforts to ensure that project management efforts in international software development are undertaken in a collaborative manner. One of the ways through which various countries can contribute to problem-solving is by launching long-term strategies of investment in skill development.

Another serious risk in international software development is posed by the time factor. Although round-the-clock operations may seem beneficial, they pose a major risk for the project managers who must shoulder the responsibility of ensuring that the outsourcing efforts are successful. The main reason why this round-the-clock operation is questioned is because it does not afford the participants any opportunity to engage in instant communication. Incidentally, instant communication is a critical element in all software projects.

Whenever the component of instant communication is lacking, the software project can easily end up in disaster. For example, a minor misunderstanding between programmers involved in designing and coding processes but operating in different time zones may lead to a delay of one day. This risk has led some researchers to suggest that this risk can be avoided through a practice known as near-shoring. The assumption is that near-shoring is better because it leads to real-time overlaps.

The strategy adopted in the implementation process can also have a great impact on whether time differences will bring about benefits or risks. In many cases, countries need to work together in providing the right environment for the adoption of appropriate strategies. At the organizational level, another alternative would involve hiring additional staff whose core responsibilities would be to coordinate tasks undertaken between shifts as well as facilitate the use of tools that enhance efficiency during job transition.

How Our Website Works

Quality-related risks are also a common phenomenon in the realm of international software development. There is no guarantee that products and services acquired through offshore outsourcing will be of high quality (Jiménez, 2009).  Poor communication skills in countries where outsourcing is increase the likelihood that misunderstandings will arise, leading to a significant increase in risk. Moreover, whenever delays occur, the organization may gripped by panic and fear of the unknown. Similarly, the geographical and cultural distance involved makes it extremely difficult for standards to be established.

It is not easy for the project management team to determine with certainty whether the overseas team working on the outsourced functions will deliver high quality work. The best that the company can do is to build rapport and trust, a process that is both time-consuming and very risky. To avoid this risk, software development companies start by outsourcing small tasks before moving on to outsource critical tasks. Once the result produced by the unfamiliar off-shore vendor is satisfactory, the company gains the confidence to assign large, more critical tasks to the same vendor.

According to Nguyen, Babar, & Verner (2006), countries have a critical role to play in efforts to establish and maintain trust in various software outsourcing relationships. Without trust, software outsourcing relationships become unmanageable. Countries may choose to shape the perceptions of outsourcing companies, vendors, clients, and software developers in a positive way by enacting proper regulations for governing the software development industry. It is also the responsibility of various countries to create opportunities for personal visits with the aim of creating cultural understanding among stakeholders in the industry. Moreover, at the national level, emerging vendor companies needed to be given opportunities to demonstrate their capabilities and credibility within an international platform.

Aspects of country-specific risks and ethical issues

In this paper, the thesis touches on the role of countries in promoting  international software development. Indeed, a unique type of risk is always posed by country-specific factors. The environment created in a specific country can greatly influence the success of software development efforts. It does this by dictating the nature of project management challenges to be encountered.

It may be argued that legal factors constitute the greatest country risk in the software industry (Kwak & Stoddard, 2004). National laws can affect software development efforts in a very significant way. In some countries, no national laws exist for protecting crucial corporate information. In such countries, project managers in the software industry face higher risks of losing crucial information to hackers without any legal recourse.

Another problem is that there is no uniformity in intellectual property laws within various countries. In some countries, IP is patentable while in others it is not. A slight information breach may cost a software company millions in losses. Moreover, some countries employ unscrupulous tactics of forcing business partners to release critical information for use by local low-cost manufacturers. This jeopardizes not only the future of outsourcing partnerships but also of best practices in software project management. Such a move would also raise serious ethical issues relating to the role of the state in ensuring the success of international software development.

Additionally, data privacy laws tend to vary from one country to the other. For example, EU laws tend to be more protective compared to US laws. On the other hand, the laws of India and China are less protective than those of the US. Even in the context of the US, variations tend to occur regarding the privacy laws that different states have enacted. For this reason, every software company should understand the laws of the target country before outsourcing any software development functions to that country. The company should especially put in place measures to ensure compliance with the pertinent legal requirements in all the countries where it operates.

In countries where the laws enacted protect data, less risk mitigation is required. In contrast, more risk mitigation is required in countries where national laws do not protect company data and critical information. In some countries, state agencies may be operating as perpetuators of unethical practices of illegally hacking into companies’ critical information within the objective of making it available to local competitors. Countries within the international community should work together to ensure that such rogue states are reprimanded and sanctions imposed against them.

Conclusion

This paper has examined the concept of international software development in the context of the various project management challenges encountered. In this paper, it was evident that there are different methods or approaches to international software development, including intra-organizational approach, inter-organizational approach, and Open Source Software (OSS) approach. In each of these approaches, focus was on the challenges and risks involved as well as how the software development industry seeks to address these challenges.

One of the challenges is the lack of constant communication in the context of distributed development projects. For projects that are characterized by uncertainty in the planning process, participants rely heavily on informal communication. Literature on international software development emphasizes on the need for developers in geographically and culturally distant locations to engage in constant informal communication, preferably through social networks. Such communication creates platforms for communication and sharing of crucial information.

Moreover, countries need to work together in addressing various challenges, risks, and ethical issues facing the international software development industry. National data privacy and intellectual property laws need to be reconciled into a cohesive international legal framework. This undertaking would go a long way in reducing risks and costs. Some of the risks that software developers have to encounter during international software development include high costs, unemployment, round-the-clock operations, and poor quality of outsourced work.

To address the risk posed by round-the-clock operations, the software industry is promoting the concept of ‘near-shoring’, whereby real-time overlaps are created to ensure there is the element of continuity in the development process even when miscommunication occurs among developers working in different time zone. Countries can contribute to problem-solving in this industry by working together to promote best practices in intra-organizational, inter-organizational, and Open Source Software (OSS) approaches.

Other than legal issues, different countries may come together to promote the Open Source Software method in efforts to do away with the numerous legal issues associated with commercial software. Moreover, Open Source Software systems enable organizations to save costs because volunteer developers are relied upon to undertake various critical tasks throughout the development process. With regard to these systems, the main challenges that different countries would need to address include establishment of support platforms for new developers, attention to users’ feedback, and the various difficulties encountered during the collaboration process.

 

References

Bakker, K. (2010). Does risk management contribute to IT project success? A meta-analysis of empirical evidence. International Journal of Project Management, 28(5), 493–503.

Börjesson, A. (2005) Improving software organizations: Agility challenges and implications. Information Technology & People,18(4), 359 – 382.

Carmel, E. (2001). Tactical approaches for alleviating distance in global software development. IEEE Software, 18(2), 22–29.

Fowler, M. (2004). Using Agile Software Process with Offshore Development. New York: Columbia University Press.

Heeks, R. (2001). Synching or sinking: Global software outsourcing relationships. IEEE Software, 18(2), 54–60.

Herbsleb, J. & Moitra, D. (2001). Global software development. IEEE Software, 18(2), 16–20.

Jiménez, M. (2009). Challenges and improvements in distributed software development: A systematic review. Advances in Software Engineering, 12(3), 101-168.

Khan, S. (2010). Critical Success Factors for Offshore Software Development Outsourcing Vendors: An Empirical Study. Lecture Notes in Computer Science, 6156(5), 146-160.

Komi-Sirviö, S. (2005). Lessons learned by participants of distributed software development. Knowledge and Process Management, 12(2), 108–122.

Kwak, Y. & Stoddard, J. (2004). Project risk management: lessons learned from software development environment. Technovation, 24(11), 915–920.

Larman, C. (2003). Iterative and incremental development: A brief history. Computer, 36(6), 47-56.

Liang, T. (2007). Effect of team diversity on software project performance. Industrial Management & Data Systems, 107(5), 636 – 653.

Lindqvist, E. (2006). Distributed Development in an Intra-national, Intra-organizational Context: An Experience Report. London: Heinemann.

Mockus, A. (2001). Challenges of global software development. Proceedings of the Seventh International Software Metrics Symposium, London, UK, April 4–6, 2001, 182–184.

Mohagheghi, P. (2004). Global software development: Issues, solutions, and challenges. Department of Computer and Information Science (IDI) University of Science and Technology (NTNU), Trondheim, Norway.

Nguyen, P., Babar, M., & Verner, J. (2006). Critical factors in establishing and maintaining trust in software outsourcing relationships. ICSE’06, Shanghai China.

Nicholson, B. (2001). Some political and cultural issues in the globalization of software development: Case experience from Britain and India. Information and Organization, 11(1), 25–43.

Noll, J., Beecham, S. & Richardson, I. (2010). Global software development and collaboration: Barriers and solutions. London: ACM Inroads.

Paasivaara, M. (2003). Collaboration Practices in Global Inter-organizational Software Development Projects. Software Process Improvement And Practice, 8(5), 183–199.

PR Newswire April 8, 2012. ChinaSoft International and Huawei formed joint venture, Aiming global IT service market. retrieved from http://www.prnewswire.com/news-releases/chinasoft-international-and-huawei-formed -joint-venture-aiming-global-it-service-market-146586375.html

Ramingwong, S. & Ramingwong, L. (2009). The paradoxical relationships of risks and benefits in offshore outsourcing of software projects. The Open Software Engineering Journal, 3(2), 35-38.

Sawyer, S. & Farber, J. (1997). Supporting the social processes of software development. Information Technology & People,10(1), 46-62.

Tafti, M. (2005). Risks factors associated with offshore IT outsourcing. Industrial Management & Data Systems, 105(28), 549-560.

Vitharana, P. (2003). Risks and challenges of component-based software development. Communications of the ACM, 46(8), 67-72.

Vujovic, S. & Ulhøi, J. (2008). Online innovation: The case of open source software development. European Journal of Innovation Management, 11(1), 142 – 156.

Get a 17 % discount on an order above $ 30
Use the following coupon code :
tpc17
Our Services:
  • Essay
  • Custom Essays
  • Homework Help
  • Research Papers
  • Argumentative Essay
  • Assignment
  • College Papers
  • Powerpoint Presentation
  • Dissertation
  • Thesis Paper
  • Dissertation
  • Editing Services
  • Review Writing
  • Lab Report
  • Book Report
  • Article Critique
  • Case Study
  • Coursework
  • Term Paper
  • Personal Statement
Order a customized paper today!