📜 ⬆️ ⬇️

Why in the mobile development team appeared safe running Windows 10

image alt text


Hello! I want to tell you how we did the automatic issuance of 70 mobile test devices, and stopped wondering "who has the pink iPhone 6".


Previously, the test gadget had to be searched for in a notebook or electronic document, which is long and inconvenient. But we defeated the problem with the help of the application and a special cabinet with devices that has been successfully working for some time in the mobile development team. So it's time to share the recipe. Under the cut all the details and links to GitHub.


A little introductory: all devices are assigned to testers from the mobile development team. Now we have about 70 devices, their number is growing in proportion to the activity of manufacturers.


Automatic accounting and nothing personal


All test devices are now located on DIY racks in the cabinet. Each smartphone or tablet has its own numbered place and its charging cable. For accounting, the Windows 10 application is used on a tablet with a skip scanner connected.


In order to take / give the device you need:



After that, the gadget is assigned to the employee or detached from him in the case of delivery.


Convenient search for the desired smartphone - as a bonus.


image alt text


Thanks to the application, each employee can take the devices on their own, and we get up to date usage statistics. So it is easier to understand the workload of the stand and make a plan for the procurement of new devices.


image alt text


The latest version of the stand.


Of course, this was not always the case, and some year ago there was no automation and technical beauty in our pool of test devices.


Once upon a time, in a galaxy far far away ...


When the testing department was incomparably smaller, we had a notebook for self-recording: who took what for the test and when. The gadgets themselves were stored in a regular three-drawer cabinet — one per platform. This, in fact, the order and ended.


image alt text
Photoconstruction of old days.


Plus: accounting did not require any gestures from mobile development.


Minus: it is inconvenient to see how many devices are in the hands of colleagues, have you forgotten to return something.


Over time, devices and employees became more and more, and the usual notebook could no longer adequately respond to the challenges of the time and needs of testers. Therefore, it was digitized and transferred to a page in Confluence, where the real dictatorship of the tester proletariat began. If you want to take this smartphone, first find a free tester who will issue everything. In addition, each tester always has “Release is coming!”, And here they are also distracting.


But even if it was possible to find a person, the quest did not end. Often it turned out that the desired gadget is discharged or already busy. But if it was lucky here, the tester would add an employee’s full name to the Confluence page in front of the devices taken.


Plus: you can easily understand how many devices are used by colleagues from other departments.


Less: Testers spent too much time on such minor tasks as receiving and issuing and recording the status of each device.


But we are a dynamically developing company, so the stand with gadgets also received a dynamic development.


We are starting construction


What questions we wanted to solve:



Immediately, I note that the solution described in the article implies full confidence in the employee. That is, we did not set ourselves the task of somehow additionally protecting ourselves from theft or substitution .


Problem # 1 - charging


Ordinary USB hubs and hubs are not suitable for this purpose, because they have only 1-2 ports that can more or less normally charge devices. A separate plug for each device - ugly and uncomfortable.


But then, by the way, I found a suitable Anker production unit:


image alt text


This black bar allows you to simultaneously charge up to ten devices with a power of ~ 1.2A each, and the form factor is ideal for the location of such gizmos on the shelves. For example, on one of them we have 30 phones charging.


Problem # 2 - everything has its place


For a convenient arrangement, we ordered an iron cabinet with blinds doors “ DiKom ** KD-144 **” : it is locked, the doors-blinds do not interfere with anyone in the open state, and the small gaps between the shelves and walls allow us to conduct wires for charging It remains only to drill a small hole in the back wall for the extension cord.


But just putting the devices on the shelves is guaranteed to get a mess on the very first day, so for each of them you need to make a separate rack.


Successful racks turned out from a penoplex - it is rather dense, easily cut with a clerical knife and widely available. The first version of the rack successfully served a year and did not lose its properties.


Tip: it is better to buy penoplex 3 cm wide, then it is suitable for both phones and tablets.


What eventually happened:


image alt text
Neat rows of smartphones, each on the charge, there is no tangle of wires.


image alt text


Very soon, each device will have its own wire - we have already ordered them. And for the final fenshui, these clips with double-sided tape on the site came in handy:


image alt text
It is easiest to order them all at the Chinese trading floor.


As for the plans for improvement, a more solid design of the racks comes to mind, since initially we considered the penoplex as a temporary solution. If you have experience in creating such structures - please share in the comments.


Problem # 3, organizational accounting


We have divided this task into three subtasks:


  1. Identification of an employee using his badge . For this we bought a reader for passes: ST-CE01EM. The principle of the reader is simple: we connect it via USB to a laptop (the reader also works with Android devices via an OTG adapter), open a notebook, attach a badge, and the pass number is entered character-by-character. We can determine the user by entering his data into the database or through the API.


  2. Device identification For the pilot version, we chose QR codes due to the speed of implementation. It is enough to print and paste a QR code with the device identifier for each device.
    But QR codes in the process of use revealed several shortcomings. In our application, the user reads the code using the front camera of the tablet and may not notice the message that the device is added to the “basket” if it covers the screen with his hand. Our closet with mobile phones also stands near the window, so in the morning it can be difficult to scan QR codes if you do not pull the blinds beforehand. Therefore, now we are moving from QR codes to RFID tags with a sticky base - instead of scanning the code, it will suffice to attach the device to the pass scanner.


  3. Committing changes using a Windows 10 application in C #.

A UWP application runs on phones, tablets and a PC with Windows 10. By the way, we are planning to make a separate post about developing UWP applications for Windows 10. If this topic is also interesting for you - write in the comments.


How to stop being afraid and start using


All this sounds beautiful and looks, but surely many will want to repeat some elements of our stand, so as not to reinvent the wheel - for example, colleagues from another service are already using our solution in a similar situation. In general, welcome to the Yandex.Money repository on GitHub .


First of all, you need to make a fork on GitHub and build the project in Visual Studio 2017. Then you need to find a PC to start the application and a skip scanner, and also fill out the employee base.


Necessary equipment



Filling the database


The application database in the sqlite format is stored in the root of the TestStand project.


Filling Devices


Next, bold highlighted required fields in the table, the rest can be filled as needed. The fields not listed here are not necessary to change - they will be filled in automatically:



Fill in Employee


If you have the opportunity to receive data on the pass through the API, you can write an extension for the application. Vadim Novoseltsev has already written about extensions in detail in his article , for which he thanks a lot!


In our application, work with extensions is carried out through ExtensionsService.cs. The extension itself is used in EmployeeService.cs (default name: com.extensions.yamoney.teststand):



But if you have no such possibility, then you can fill in the table manually.


We are printing QR codes


The QR code should contain the device ID from the Devices table. Generate the code itself can be online , or pick one of the many utilities. Glue codes on gadgets - and you can use.


image alt text


And a month has passed


The application has been working in test mode for about a month, and the improvements in the work are noticeable to the naked eye. For example, more devices appeared in the booth - it seems to me that this is due to the fact that there is no need to keep the devices at home for several days. Easier and safer to return the gadget to the stand and take it in the morning again. But I want to believe that colleagues simply like to use the application.


The main advantage is that now we don’t waste time registering the devices themselves, but on the basis of the statistics obtained we can:


  1. See the load on the test bench. We understand which devices are most often used in other teams: with which OS and screen diagonals.


  2. Maintain the current range of test devices. From item 1, we have a rationale for the purchase of new devices.


  3. Collect detailed information about the use of each device, to always know who and when took the device, as well as to see its entire history of use. If the device is back with physical defects, then we can immediately understand whose hands it is.

There are a lot of plans to improve the stand in my head: for example, to make a physical blocking of devices or sound notification of a device being taken without authorization. I also want to try out the new technology of scanning the retina in the new Surface, as an alternative to passes.


If you have your own thoughts and know-how on organizing a stand for issuing devices or other equipment - be sure to tell us in the comments.


')

Source: https://habr.com/ru/post/324624/


All Articles