Device Setup and Configuration

Building a Device Lab
Copyright © 2015 Destiny Montague & Lara Hogan

The configurations of your lab’s devices is integral to the accuracy of your testing environment and success of your lab’s users. It’s important to replicate real-life user scenarios in your lab, and you certainly don’t want to start with a device that’s buggy or doesn’t have the right software for testing. When you get a new device for the lab, clean it up and install the right apps for easy use by your device lab’s users. Over time, you may want to invest in a mobile device management (MDM) solution.

Initial Setup

When you purchase a new device for your lab, it’s important to give it a blank slate, especially if it’s a used device. This way, you can be sure that you know exactly what condition the device is in, what apps it has, what network it chooses, and how prepared it is for your device lab’s users to pick up. Start with a factory reformat to clean the device and get it ready for all of the awesome testing that’s about to happen.

All devices have a way to reset them to factory standard. You can usually do this from the device’s settings menu, or through a wired USB connection to a computer, depending upon the operating system and its version. A factory reset will delete all data and apps, and will also help you bypass any existing lock codes that any previous user configured. We won’t go into the specifics of device resets here because they are unique to each brand of device, but resets for various device types are easily-Googleable, and you should have no trouble finding the right one for each device in your lab.

App configurations

Once your device is a blank slate, it’s time to configure its apps. You want to have only the apps necessary for testing on your device, and you’ll want to configure these apps to give your lab’s users as few problems as possible.

Start by turning off any auto-upgrades and auto-updates on applications and the device’s operating system. This is especially important to do if you want to maintain a specific operating system version or a particular app release for testing and reproducing bugs. We’ve seen lots of our lab’s users go ahead and upgrade the system or apps when they’re prompted to do so on the device; this can cause maintenance problems down the line. So turn off system update notifications so that your lab’s users won’t be tempted to upgrade the device for the lab. On iOS devices, it’s particularly difficult to return to previous operating system versions; prevention is key! When possible, also turn off devices’ ability to sync to computers. Again, we’re optimizing for maintenance of the lab over time, as well as consistency of the testing experience across devices in your lab.

Let’s start installing extra apps for basic testing needs, like your company’s apps and any standard mail clients for testing newsletters. At Etsy, we install our Buyer and Seller apps on all devices for easy testing, in addition to mail apps like Gmail (we talk more about configuring email in the next section). We also install Adobe Edge Inspect on all of our devices, which lets us test on the web across devices from a central browser. Examine what browsers your users are using; install them (such as Chrome or Opera Mini) as well.

When it comes to configuring browsers, setting up a few defaults can be key to making the testing process simple. At Etsy, we set the default homepage to etsy.com in each device’s web browser so that the lab’s users can quickly test how the site looks on a mobile browser. We also install security certificates to make sure that any images, CSS, JS, or other assets served from development environments will automatically load if someone tests a page from their virtual machine on which they are building a new feature.

After completing app configurations, make use of your devices’ wallpaper to aid in the device lab workflow. We use our devices’ wallpapers to share at-a-glance information about device lab policies, as well as an indication of who to email with questions about the lab. Constant reminders really come in handy. To keep your devices a little safer (but still just as intuitive to use for testing), set up a common passcode across them. This prevents just anyone who walks by from using the device, but still allows your co-workers to easily remember how to access each of the devices.

Device wallpaper
A device's wallpaper can showcase reminders for lab users.

Consistency is key across your fleet of devices. The more that you can standardize which apps are installed, how browsers are configured, and how they’re used for testing, the easier it will be for your device lab’s users to do their work. A confusing or frustrating lab will turn them off from testing their work; putting in the effort to keep each device clean and their workspace intuitive will pay off.

Email

For consistency and ease of use, assign a single email address for all device lab setup and testing. This email address can be used for downloading apps from the native app stores and syncing those purchases across devices (making it much easier to make your devices consistent across platforms). Also, some apps need an email to login and use them for testing; having a single email address makes this easy to remember.

Figure out which major email apps your users use to open your newsletters, then set up the same apps on all of your devices. You can set them up using a central email address (it can be the same as your main email address for the lab!) on all these apps. This way, you can test HTML newsletters by sending one email to that address and see it populated across devices and their various mail applications.

Identification

Once you’re done setting up the software on each device, it’s time to set them up in the lab itself.

If you have more than a handful of devices, it can be confusing for users to figure out where to return them in the lab after they’ve been using them. It can also be a challenge to remember which devices have which versions of operating systems. By assigning a unique name or number to each device, you can start organizing the lab and keeping better track of your assets.

Assign a unique identifier
Assign a unique name or number to each device, and adhere matching labels to the device and its place in the lab.

Affix an asset tag or some physical identifier to the back of each device. This will make it easy to identify which device is which when a lab’s user is returning it, and it also makes it much easier for you to keep track of what’s what in the lab. Read more about our labeling system in Chapter 5 – User Experience.

This LG Optimus has a scannable asset tag – 2386. Note that it matches up with the label on the shelf. This makes it easy for us to track devices, but also easy for the lab’s users to match a device back up to its place on the shelving. It also helps to differentiate multiple devices of the same make and model. If it’s possible to change the default device name in its system, give it a name that will be easy to identify on a network. Up-front organization is key to saving you a ton of headaches down the road.

Device management over time

Now let’s level up our device configurations game! With so many people sharing a single device for testing, it’s pretty likely that someone will accidentally install or upgrade something that breaks the device or reduces its usefulness. If a device’s software gets changed or broken, you’ll want to have an easy way to get it back to its original configurations. The more devices you have, the more time consuming this becomes if you’re doing it by hand, one at a time.

You’ve got a few options for non-manual-device management. If you primarily have iOS devices, Apple offers Apple Configurator for free in the App store. Among other things, Apple Configurator allows you to essentially take a snapshot of an existing configurations, and then apply that image en masse to other iOS devices. From a Mac, you can use the app to:

This solution still requires you to physically plug in devices to a computer and use the program.

If you have a more diverse fleet of mobile devices (as you should!), you may want to consider remote device management.

Mobile Device Management (MDM) Systems

For roughly the first year of our device lab, we configured and administered all of the devices manually. As the device lab grew, so did the amount of (wo)man hours needed to manage our fleet. We looked for a more automated solution – something that would allow us to save time by centrally controlling and monitoring all of our devices – and Mobile Device Management (MDM) software appeared to be the answer. Though MDM software is costly and can be time- intensive to set up, it may be an overall more efficient solution for you if you are managing a larger device lab.

MDM products can be used to monitor, manage, and otherwise support devices across multiple service providers and platforms. Many MDM products support BYOD, short for Bring Your Own Device, which means you can manage company data and network security on the personal devices of employees. Some of the features we use in our lab are: installing and updating applications such as our internal app builds, applying network configurations settings, and requiring a lock screen passcode. Instead of manually setting up and maintaining devices, you can have an MDM do all the work over-the-air, removing the hassle of connecting a physical cable to each device. Switching to an MDM probably saved us days of work per month in device lab maintenance.

There are many MDM providers out there. We won’t be recommending a particular solution, as they’re not one-size- ts all. But let’s go over the most important features you’ll need to pay attention to when choosing your solution.

Scalability: Does this MDM solution have location-specific options? Does it have failover capability, or load balancing?

App management: Does it let you push app configurations? Can you pull app feedback/data from the devices? Can you separate managed and unmanaged data?

Admin console: What type of admin console does it have? Look for something that is cross-platform so that it’s easy to access from the places that are crucial to your workflow. Maybe you need something web-based or desktop-based; maybe you want to manage your lab from an iOS device. Figure out which solution best offers you easy access.

User experience: Are the tools and interface intuitive? Can you see a demo and play around to make sure that the options and configurations are easily understandable?

Security: What happens if a device with private data gets into the wrong hands? Can you remotely wipe or lock a device? Does it have geofencing capabilities, such as the ability to trigger alerts if a device leaves a certain defined area?

There are many different MDM options out there, so we encourage you to do your own research to see what best fits your needs. If you have the time and budget, we do recommend investing in setting up an MDM, which will save you a ton of manual labor in managing the devices in your lab.

Now that you have your devices in hand and configured, it’s time to connect them to a network for testing. There are some nuances and potential pitfalls in this step, so we’ll dig deeper into network configurations best practices in the next chapter.

Chapter Summary

Usability tips

Budget tips