July 15, 2024

IN THIS ARTICLE
2024 Software Developer Salary Guide

We’ve been building teams overseas for over a decade. Download our definitive guide to hiring international software developers.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

If your organization is developing a native mobile app, at some point you’ll likely need to leverage real devices for testing and debugging. While simulators and emulators will always have their place in development environments and for initial rounds of testing, real devices give teams a true sense of how a new build of their app will perform in production.

For teams with smaller user bases that only use a few common types of phones, a few physical devices in a developer’s drawer may suffice for awhile. As a user population expands and dozens of device & OS configurations need to be accounted for, deploying a device cloud or building an in-house device lab is more of a necessity.

In this article, we’ll compare and contrast the two approaches. We’ll review questions your team should ask when evaluating options and also share starting points for providers that can streamline the process. You’ll also find examples of use cases that make more sense for device labs rather than device clouds, and vice versa.

Before we dive in, it’s important to clarify there’s no right or wrong answer for all teams and use cases. The real objective is to decide which approach is right for your team.

Decoupling the “Device Layer” and the “Software Layer”

When discussing mobile device labs and device clouds, it’s worth noting they both intend to serve the same  fundamental purposes. Both give an organization access to a shared pool of devices that should be accessible from a web portal. And both give teams the means required to more effectively develop, test, and debug their mobile app against real devices. However, there’s a clear distinction to make before we continue.

As we refer to a device lab, it entails hosting all of the infrastructure (racks, servers, devices, etc) AND the software that users leverage to interact with the devices - all within your organizations premises. This gives an organization almost total control over devices, which would allow you to swap phones and tablets as you see fit. Still, this also places the burden of ongoing maintenance on the shoulders of internal teams. Luckily, providers like Kobiton, HeadSpin, and TestGrid provide packaged device labs that can be more easily deployed than building a lab completely in-house.

When referring to device clouds - Kobiton, HeadSpin, and TestGrid also provide a hosted version of their solution to remove the maintenance burden. Providers like SauceLabs and BrowserStack do this as well, but it’s worth noting they don’t provide options for going on-premises.

Regardless, all of these vendors have designated teams that manage highly secure datacenters where devices are stored. They also have engineering teams responsible for hosting and investing in continual improvements to the ‘software layer’ - which their customers use to test against the devices. This would eliminate the need for your internal staff to otherwise build and maintain these systems.

Top 5 Questions to Ask When Evaluating Device Clouds vs. Device Labs

When evaluating what path to take, consider the following questions:

  • First, is there a case for hosting the devices and infrastructure within your organizations walls (and do we have the resources to do so)?
  • Second, is there a meaningful reason for hosting their software on your servers?
  • Third, how sophisticated are your QA or development team’s needs?
  • Fourth, how much budget can you realistically invest into a solution?
  • Last, do any vendors have a reasonable chance of meeting your requirements?

These questions will help guide your decision-making process and help ensure you ultimately choose a solution that best fits your team's specific needs.

Understanding Mobile Device Labs

Building an in-house mobile device lab without a 3rd party vendor requires a significant commitment in terms of time, resources, and ongoing maintenance. This is also a more complicated endeavor that’s outside of the scope of this article. For this article, we'll keep the focus on providers that offer device labs rather than discussing how to build a device lab in-house.

Providers for Mobile Device Labs

Before we dive into a more detailed comparison, here’s a quick look at 3

  • Kobiton: Offers on-premise device labs that allow organizations to maintain control over their devices while providing the software needed for integrated workflows, test automation and debugging.
  • TestGrid: Provides device labs with a focus on ease of deployment and integration with existing development processes.
  • HeadSpin: Offers device lab infrastructure that emphasize high performance and extensive device coverage, along with powerful analytics tools.

Ideal Use Cases for Mobile Device Labs

To make things a bit more relatable, here’s a number of examples that are ideal candidates for device labs:

  • Mobile Gaming: Studios that focus on developing mobile gaming apps need precise performance testing along with complete control over their testing environments.
  • Government: Government entities that need to abide by strict security measures and compliance requirements.
  • Banking, Insurance, and Financial Services: Financial institutions that require high compliance and security parameters.
  • Telecommunications: Telecom providers needing to test device behavior under various network conditions.
  • Quick Service Restaurants (QSRs): QSRs that are using tablets for point-of-sale and kitchen processing systems and have complex end to end testing flows

Device Labs: Weighing Benefits vs. Drawbacks

Benefits

  1. Total Control Over Devices and Infrastructure:
    • Customization: Organizations can tailor the lab setup to their specific needs, selecting devices, OS versions, and configurations that are most relevant to their user base.
    • Integration: Seamless integration with existing internal systems, development environments, and workflows, allowing for more streamlined processes.
    • Performance: Higher performance and lower latency for device interactions, as the devices are directly accessible on the organization's network.
  2. Enhanced Security and Compliance:
    • Data Privacy: Sensitive data remains within the organization’s firewall, reducing the risk of data breaches and ensuring compliance with stringent security standards.
    • Regulatory Compliance: Easier to adhere to industry-specific regulations and standards (such as HIPAA for healthcare or PCI-DSS for finance) since the organization has full control over the security measures.
  3. Customizable to Specific Testing Needs:
    • Flexibility: Organizations can swap out and reconfigure devices as needed, supporting specific testing scenarios and custom requirements.
    • Dedicated Resources: Devices are reserved exclusively for the organization’s use, reducing the risk of resource contention that can occur in shared cloud environments.
    • Advanced Testing Scenarios: Enables more complex and thorough testing scenarios, such as network condition simulations and testing under various controlled environmental conditions.

Drawbacks:

  1. High Initial Setup and Ongoing Maintenance Costs:
    • Capital Expenditure: Significant upfront investment in purchasing devices, setting up infrastructure, and acquiring necessary software licenses.
    • Operational Costs: Continuous expenses related to power, cooling, physical space, and replacing outdated devices.
    • Maintenance: Regular maintenance and updates are required to keep the devices and infrastructure operational and relevant.
  2. Requires Significant Internal Resources and Expertise:
    • Specialized Staff: Need for skilled personnel to manage the lab, handle hardware and software issues, and ensure smooth operation.
    • Training: Ongoing training for staff to stay current with the latest technologies and testing methodologies.
    • Resource Allocation: Diverting internal resources from core development activities to lab management and maintenance.
  3. Potentially Slower to Scale Compared to Cloud Solutions:
    • Scalability Limitations: Scaling up requires purchasing additional hardware and infrastructure, which can be time-consuming and costly.
    • Physical Constraints: Limited by the physical space available for expanding the lab and the logistics of managing a growing number of devices.
    • Procurement Delays: Delays in procuring new devices can impact the ability to quickly respond to new testing requirements or market changes.

Exploring Mobile Device Clouds

Device clouds are typically easier to provision and often cheaper than building and maintaining a device lab. They provide flexibility and scalability, making them an attractive option for many organizations who are ‘graduating’ out of using a few physical devices locally.

Providers for Mobile Device Clouds

Several providers offer robust device cloud solutions:

  1. Kobiton: Provides a cloud-based device testing platform with extensive device coverage and integration capabilities.
  2. SauceLabs: Offers a comprehensive cloud testing platform with support for a wide range of devices and browsers.
  3. BrowserStack: Known for its extensive device and browser coverage, BrowserStack is a leading provider of cloud testing solutions.
  4. HeadSpin: Also offers a cloud-based solution with powerful analytics and extensive device support.

Ideal Use Cases for Mobile Device Clouds

Device clouds are particularly well-suited for the following industries:

  • Startups: Organizations with limited budgets and resources that need to quickly scale their testing capabilities.
  • Enterprise Mobility: Large enterprises that require extensive device coverage and easy scalability.
  • Continuous Integration/Continuous Deployment (CI/CD): Teams needing to integrate testing into their CI/CD pipelines for fast feedback loops.
  • Remote Teams: Organizations with distributed teams that need centralized access to testing resources.
  • E-commerce: Retailers that need to ensure their apps work seamlessly across a wide range of devices and operating systems.
  • Healthcare: Medical app developers requiring testing on various devices to ensure compatibility and compliance.
  • Education: EdTech companies developing learning apps that need to function across multiple devices used by students and teachers.

Device Clouds: Weighing Benefits vs. Drawbacks

Benefits:

  1. Lower upfront costs and easy scalability: Device clouds typically involve subscription-based models, which can be more cost-effective compared to the high initial investments required for setting up in-house labs.
  2. Reduced maintenance burden on internal teams: With the infrastructure and software management handled by the service provider, internal teams can focus more on testing and development activities.
  3. Quick setup and provision of devices: Device clouds allow for rapid provisioning of devices, enabling teams to start testing almost immediately without the logistical challenges of setting up physical labs.
  4. Global accessibility: Team members from different geographical locations can access the device cloud, promoting collaboration and efficient use of resources.
  5. Up-to-date devices and software: Providers often ensure that their device pools are updated with the latest models and operating systems, offering more accurate testing environments.

Drawbacks:

  1. Less control over the physical devices: Organizations may have limited ability to control or customize the devices and configurations as per specific requirements.
  2. Potential security concerns: Depending on the provider's data protection measures, there might be concerns about the security and privacy of the data being tested.
  3. Ongoing subscription costs: While initial costs are lower, the subscription fees can add up over time and might be more expensive in the long run compared to a fully depreciated in-house lab.
  4. Possible latency issues: Depending on the network and the provider's infrastructure, there might be latency or performance issues that could affect testing efficiency.
  5. Dependence on the provider: Any downtime or issues on the provider's end can directly impact the testing process, leading to potential delays.

Final Considerations

When deciding between a mobile device lab and a device cloud, consider your team's specific needs, budget, and long-term goals. Both solutions offer unique advantages and potential drawbacks, so the best choice will depend on your particular use case. By carefully evaluating your requirements and the capabilities of each approach, you can make an informed decision that supports your development and testing efforts effectively.

If you’re looking for support in requirement gathering and evaluating providers, feel free to start a conversation with our team here at Perform. You can use the link below to book a Mobile Strategy Session with one of our solutions architects along with a member of our client strategy team.

SCRAP

Exploring Mobile Device Clouds

[Need a paragraph that acknowledges that device clouds are easier to provision and are often cheaper, but

Providers for Mobile Device Labs

[Include a list of providers and short descriptions - include Kobiton]

Ideal Use Cases for Mobile Device Labs

[Intro sentence to lead off]

  • [Provide a list of 5-8 industries and use cases]

Device Labs: Weighing Benefits vs. Drawbacks

[In bullet points, summarize 3 key benefits vs. drawbacks]

Final Considerations

[feel free to brainstorm where we should go from here]

Detailed Industry Use Cases

To better illustrate how different industries can benefit from either device labs or device clouds, let's look at some specific use cases.

Retail: A retail company launching a new mobile app to enhance customer experience can leverage a device cloud to perform comprehensive testing across various devices and operating systems. The flexibility and scalability of device clouds enable quick adjustments and updates without significant upfront costs. For instance, during peak shopping seasons, the ability to scale testing efforts ensures that the app can handle increased traffic and usage seamlessly.

Gaming: A gaming company developing a complex mobile game with high graphics and performance requirements will benefit significantly from a mobile device lab. This setup allows for thorough testing on high-end devices, ensuring the game delivers a smooth and immersive experience. Moreover, having physical devices on hand enables the development team to quickly troubleshoot and resolve performance issues, which is critical for maintaining player satisfaction.

Banking: For a financial institution, security and privacy are paramount. A mobile device lab provides the necessary control and customization to meet stringent security standards and regulatory requirements. By maintaining physical control over the testing environment, the bank can ensure that sensitive data remains secure and that the app complies with industry regulations.

Healthcare: Similar to banking, healthcare applications require high levels of data protection and compliance with regulations such as HIPAA. A mobile device lab allows healthcare providers to conduct extensive testing in a controlled environment, ensuring that the app meets all security and privacy requirements. Additionally, the ability to customize the testing setup helps address specific use cases, such as telemedicine features and integration with medical devices.

Quick Serve Restaurants and Airlines: Both industries rely on mobile apps to enhance customer experience and streamline operations. Device labs offer the control and customization needed to test features such as mobile ordering, loyalty programs, and real-time updates. By simulating real-world scenarios, these businesses can ensure that their apps perform reliably under various conditions, providing a seamless experience for customers.

Key Factors to Consider

  • Use Case:
    • Assess the specific needs and requirements of your industry and applications.
    • Consider whether your use case requires high security, customization, or specific performance needs.
    • Determine if your use case is better suited for a device lab (e.g., gaming, banking, healthcare, quick-serve restaurants, airlines) or a device cloud (e.g., retail).
  • Cost:
    • Initial setup vs. ongoing costs.
    • Budget constraints and ROI considerations.
  • Scalability:
    • Future growth and scaling needs.
    • Ability to handle varying testing loads.
  • Security and Privacy:
    • Handling sensitive data.
    • Compliance with industry standards and regulations.
  • Control and Customization:
    • Need for specific configurations.
    • Flexibility in setting up the testing environment.
  • Accessibility and Convenience:
    • Remote access needs.
    • Geographic distribution of teams.
  • Performance:
    • Testing speed and reliability.
    • Impact of network latency on testing.

Case Studies and Examples

Device Labs:

  • A leading financial institution implemented a mobile device lab to ensure their banking app met stringent security standards. By controlling the testing environment, they could safeguard sensitive customer data and comply with regulatory requirements. The bank reported a significant reduction in security vulnerabilities and an improved user experience, leading to higher customer satisfaction and trust.

Device Clouds:

  • An e-commerce giant opted for a device cloud solution to test their mobile app across a wide range of devices and operating systems. The scalability and flexibility of the cloud allowed them to quickly adapt to changing market demands and release updates faster. As a result, the company saw a decrease in app crashes and an increase in positive user reviews, driving higher sales during peak shopping seasons.

Making the Decision: A Practical Guide

When deciding between a mobile device lab and a device cloud, follow these steps to ensure you make an informed choice:

  1. Evaluate Your Needs:
    • Assess the specific requirements of your app and industry.
    • Consider the importance of security, customization, and performance.
  2. Analyze Costs:
    • Compare the initial setup and ongoing maintenance costs of both options.
    • Factor in the potential ROI and long-term benefits.
  3. Consider Scalability:
    • Determine your future growth plans and how each option can accommodate scaling needs.
  4. Assess Security and Privacy:
    • Evaluate the sensitivity of the data your app handles and the regulatory requirements.
  5. Test Performance:
    • Consider how network latency and device availability might impact testing efficiency.

Conclusion

Choosing between a mobile device lab and a device cloud is a critical decision that depends on your specific business needs and circumstances. By carefully considering factors such as use case, cost, scalability, security, control, and performance, you can make an informed decision that optimizes your testing strategy and enhances the quality of your mobile applications.

If you’re looking for support in optimizing your mobile testing infrastructure, feel free to book a call with one of our experts at Perform. We can provide personalized guidance and help you navigate the complexities of mobile device labs and device clouds.

Dev

teams

love

Perform

“Perform helped MHE build out new teams, supplement existing teams, and improve our overall performance testing posture”.
Shane Shelton

Sr. Director

Application Performance and Development Operations, McGraw Hill Education

totalperform logo

Founded by engineers - for engineers.
Expert consulting and staffing for software engineering at scale.