Crowdsourcing for Application Development - a Viable Option?
#DXC #Application Development

Crowdsourcing for Application Development - a Viable Option?

Crowdsourcing is a sourcing delivery option that utilizes cloud technology and models to leverage the collective skills and knowledge of a broad network of people (the "crowd" — a group of self-nominated individuals vying for opportunities to work on crowdsourced challenges or contests) producing solutions to IT and business problems. This offers an interesting alternative to using in-house resources, outsourcing or staff augmentation. In doing so, the organization has not limited itself to specific vendors, knowledge and skill sets. In this model, remote location becomes an advantage rather than a problem. In fact, crowdsourcing essentially functions much like cloud services, in that it's adaptable to an organization's changing needs.


Sourcing managers need to be experienced and knowledgeable about crowdsourcing as a viable effective outsourcing option for application development work in their organization, as interest in this approach has grown quickly over the past couple of years. This knowledge and experience will help fulfill application development demand, and the expectation that the sourcing and IT organization will deliver more value to the business — by increasing innovation and reducing costs. This knowledge and experience should include the ability to identify and mitigate any potential risks of using crowdsourcing, since most organizations do not understand how it can be utilized effectively with minimal risk.


There are several benefits (namely, innovation, lower cost, faster development time) by using crowdsourcing as a delivery model for application development; but there are also risks. These risks include security, legal issues, quality, scheduling and support. To avoid failure, sourcing managers will need to document, mitigate and communicate the specific risks associated with the crowdsourcing initiative to the appropriate stakeholders. Experts predict that over the next two to three years, crowdsourcing will no longer be optional, but necessary to achieve IT sourcing and business success. Through the use of effective crowdsourcing and by carefully balancing benefits with risks, organizations seeking support for application development have unlimited access to a global pool of potential cost-effective, innovative resources with scarce skills much in demand, such as mobile application.


Advantages:

  • A crowdsourcing community can provide access to skills that are hard to find or where there is a temporary need for a particular specialized skill set. Skills such as performance and functional skills in mobile apps are scarce simply due to the speed of change in today's digital world and the wide range of devices, communication protocols and security requirements. The need for these skills is typically very short term in duration, sporadic and often unpredictable — but the need must be filled quickly due to the high demand for rapid deployment.
  • Access to scarce and specialized skills. 
  • Ability to test in various geographies, with different languages, on different devices, platforms, and within selected demographics or target markets. 
  • Payment based on what you use, bugs found, test cases executed, devices verified or outcomes produced.
  • Flexibility, speed and scalability. 
  • Measuring real or at least realistic consumer experience and satisfaction.


Limitations:   


  • Security and IP ownership. 
  • Intensity of the governance and management of the crowd. 
  • Integration of crowdsourcing results across multiple contests and assignments and with other applications or environments. 
  • Compared to traditional testing offerings, there is less automation, a lack of common toolsets, a lack of reuse and a potential lack of continuity in resources working on projects.


Key Challenges


  • Crowdsourcing is a viable option for innovative and cost-effective application development. However, most organizations do not understand how it can be utilized effectively with minimum risk. 
  • The breadth of the crowdsourcing firms in this market space is limited; their maturity is varied. Few of these firms are able to deliver professional capabilities and support for application development across the full software development life cycle (SDLC) or provide end-to-end services. 
  • Crowdsourcing will magnify issues for organizations with poor project management, application development competencies and processes, increasing the probability of failure, poor integration, and increased security risk.



Recommendations


Sourcing managers should: 

  • Create a structured planning process when using crowdsourcing for application development work, especially for well-scoped, opportunistic, innovative and "greenfield" application development projects.
  • Utilize an experienced team (for example, external crowdsourcing company and internal crowd curators) that have a deep understanding about the targeted platform and can deliver and support crowdsourced community-based services. 
  • Understand and mitigate specific project risks associated with crowdsourcing, such as intellectual property (IP) ownership, security and integration before adopting this new delivery option. 


Utilizing Crowdsourcing for Application Development Requires Diligent Planning

Application development projects generally require significant planning to ensure success. One of the key steps in the planning phase is to determine the right sourcing options that will help deliver the project on time and at the expected level of quality. Sourcing managers, working with their counterparts on the application team, evaluate external delivery options for application development projects. This team examines traditional options (such as internal development and outsourcing) as well as crowdsourcing, to determine the best model for the work to be accomplished. Ideally, crowdsourcing is used in the design, coding and testing phase of the software development life cycle (SDLC) as shown in Figure 1.

Using a structured and repeatable process ensures good planning and execution when utilizing crowdsourcing. Table below defines typical steps taken during a crowdsourcing process. End users either directly control a crowd, or deploy crowdsourced community-based services — the basis for crowdsourcing application development services. A crowdsourced community is a group of individuals selected (from a crowd) by means of a contest, under the control of a crowdsourcing firm. Both methods are forms of crowdsourced application development, yet only experienced end-user organizations should consider the use of a crowd under their direct control. The steps, as defined in Table below, support this position.

Identify and Mitigate Risks Associated With Crowdsourcing

Like any application development project, there are risks associated with crowdsourcing projects as well. Regardless of the crowdsourcing method used — specifically a task-based versus a contest-based project — teams should assess the risks and develop mitigation plans. Vetted crowdsourcing communities poses less of a risk compared to unvetted; thus sourcing managers, along with their stakeholders, must assess the criticality of the code development to an organization and select the appropriate amount of risk acceptable. Some of these risks include:

  • Reputation — poor results, development quality, and disgruntled crowdsourcing community members can negatively affect the organization's reputation and results from future contests (projects).
  • Security — vulnerabilities in the internal code of the winning submission/s where a malicious "back door" has been included in the solution code.
  • Confidentiality — unauthorized access to proprietary and confidential data provided as part of the project by nonparticipants and competitors.
  • Intellectual property — unapproved reuse or ambiguous ownership rights of intellectual property and winning solutions in future contests.
  • Warranty — lack of warranty and legal protections from crowdsourcing company. 
  • Integration — the "winning" solution does not integrate with existing application portfolio.


Sourcing managers and stakeholders should develop a risk mitigation plan (just as they would for other projects) to identify risks and alleviate them. Some crowdsourcing companies have the expertise and tools to assist organizations in executing their risk mitigation plans. Although well-designed crowdsourcing platforms and contracts can help to mitigate some of these risks, the distributed nature of crowdsourcing makes enforcement of contractual terms difficult.

Recommendations:   


Sourcing managers, in collaboration with the application owners/stakeholders should: 


  • Use security scanning tools to check for "back doors" in the winning submissions selected.
  • Ensure the crowdsourcing platform has been tested and access to data is only provided to the participants of the contest.
  • Ensure boilerplate language regarding intellectual property ownership and confidentiality is used consistently.
  • Substitute alternative domains or data for confidential ones to mask the real use and intent of the solution.
  • Plan for the risk that contracts and controls will not prevent certain members of the crowdsourcing community to misuse organization-provided information/data and winning solution code for future contests with other organizations (including competitors). Extremely sensitive information, data and application projects should not be used for crowdsourcing. 

To view or add a comment, sign in

Insights from the community

Others also viewed

Explore topics