Necessity is the mother of invention. Or in my case, pain is the mother of invention! I have roughly 50 QA devices I am responsible for maintaining. This means ensuring we have the right devices, on the right OS versions, available to people when they need them. If you’ve ever had to manage physical testing devices, you know it can be time-consuming and/or frustrating. Making sure devices get checked out and checked back in, plugged in to make sure the next person has battery, and making sure the devices don’t go mysteriously missing, is all a part of daily life as a test lead or manager.
My team has tried several “self-service” methods. Originally, we employed a Google spreadsheet where the tester would be responsible for checking their devices in and out. That was a mess because we had little visibility into what was being updated unless you took time to go search and look. People would show up at the device cart to grab a device and we’d just trust they followed the check-out process correctly. That wasn’t always happening. Thus, we ended up with our spreadsheet being outdated very quickly. We migrated that to a Confluence page, a similar process to the spreadsheet, but it was hooked up to Slack so we got a notification when someone was updating it. That helped a little, but the notification still didn’t detail what they updated, just that an update was made.
From there, the idea was born: What if there was a way to manage all of this via Slack? Slack is the tool we use day in and day out. It’s accessible, Slack contains other workflows for us, and it would be easy to train others on. Here were my requirements:
- Able to visualize what devices we have; both checked in and out
- Able to visualize what OS and hardware version each device is on
- Ability for each person to check devices out
- Ability for each person to check devices in
- Admin ability to update device details as things like OS version changed
- Admin ability to delete devices as they become outdated
- Admin ability to create new devices as needed
Thankfully, I have a super smart and motivated team and a guy that loves making life easier for engineers. He set off to make our dreams come true, and this is where we landed. I hope this helps others out there better manage their devices, especially those that don’t have the means to go get a third-party tool to manage this process.
How Does This Work?
He created an App in Slack called the QA Device Stables. I’m using dummy data to showcase this work.
This app contains multiple options:
- My Devices: This will be unique to each user and show the devices they have checked out. From this tab, the user can select the Check In button to check the device back in.
- iOS Devices: This will show a list of all iOS devices in our inventory. In addition, it will show the OS Version, Model, and Device Passcode. From this tab, the user can select the Check Out or Check In buttons.
- Android Devices: Similar to the iOS Device tab, just showing Android devices. From this tab, the user can select the Check Out or Check In buttons.
- Update a Device: This is an admin-only tab where we can update an existing device. Think about needing to update OS versions as they increase over time. You can Update or Delete a device from this screen.
- Create a Device: This is an admin-only tab that allows us to add new inventory.
- Notifications: Anytime a device is checked out or in, a notification goes to a specific Slack channel. This detailed message allows us to know exactly who checked a device in or out and what device it is. We have each device labeled with an ID that corresponds.
When I say I’m excited about rolling this new tool out to my organization, I mean that! Having a tool that remains self-service, but also allows my team to more effectively manage devices, is huge! For us, Slack made sense because it’s where we all work. I hope you enjoy this take on device management! Feel free to drop your comments or questions below.