Alyvix – Visual Synthetic Monitoring and End User Experience
Alyvix is a synthetic monitoring system based on computer vision. It is an open source module for Python. Alyvix is open source because the purpose is to create a community and to innovate faster. In fact, everyone can see the source code and can participate in modifying or improving it, according to the specific needs.
Alyvix monitors critical user transactions of any application. Therefore, the result is that it is possible to understand the visual perception of the end user and to monitor the end user experience. Our solution automates any application, interacting with any GUI exactly as a human would do. It measures how long application transactions take and visualizes their performances in monitoring systems. Moreover, Alyvix reports HTML pages containing the details of each test case step. It also certifies that users are able to successfully complete a certain application task, in a given moment and location, with a certain quality of service. IT operation teams can modulate infrastructure resources. Clients of IT companies can check the SLA with providers.
Alyvix monitors the End User Experience by automating and testing the graphical user interfaces. It uses OpenCV functions and an enhanced version of Tesseract and algorithms to recognize application objects like buttons, input boxes, dropdown lists and icons. Alyvix is able to detect the exact position of all recognized objects. Moreover, Alyvix provides methods to interact with the recognized objects (e.g.: clicking on an object, inserting text into an input box).
Using Alyvix’ graphical interface, which is integrated into the IDE of Robot Framework, we can easily design test cases.
Running these test cases allows to automatically test each type of application. The determined performance data can be archived in Nagios format and sent to monitoring systems (Nagios, Icinga, Shinken, and NetEye).
ALYVIX TRACKING AND MEASUREMENTS
Alyvix measures application availability and responsiveness of business-critical application, no matter if there is an Internet connection – or not. Examples are desktop, web and emulated mobile applications. Moreover, it continuously tracks performances of applications from different locations. Ongoing time series charts highlight downtimes and latency spikes. Reports and notifications keep you up-to-date about critical events. Therefore, Alyvix assesses the quality of service perceived by customers trying to complete tasks on applications (e.g. online booking, shopping, and banking). It quantifies the lost time employees spend waiting for application responses (e.g. data entering, loading, saving).
With Alyvix you can monitor test cases on popular applications like Word, Outlook, PowerPoint, Excel, Dynamics CRM, AX, NAV, SAP, also if virtualized through Citrix or RDWebAccess.
Alyvix can monitor test cases on applications for which APIs are not available or on applications built with unknown technologies. Moreover, the same test case can be distributed on multiple cloned machines. In this way, it is possible to continuously monitor the same test case from different locations of the network.
Real-User Simulations: Alyvix’ ability to simulate real-user transactions allows testing all business-critical IT-services (e-shop, ERP, CRM,..).
Early Error Detection: Alyvix provides a proactive monitoring approach, so performance issues can be detected before they occur avoiding impacts on the applications. The quality control of a certain application must always be done by considering end users’ point of view.
IDE: the integrated development environment (IDE) allows test case creation even without having extended Python knowledge. The integrated debugger examines the generated code and highlights eventual programming errors.
Integration: the obtained performance data can be sent to all current monitoring systems to be analyzed (or to trigger alarms etc.)