3 Application Governance Tools to Keep You on the Right Development Path
Dan McNamara / September 6, 2018
Picture this: you have developed an amazing, innovative new product that consumes some of the most cutting-edge integration points available and leverages complex API’s that enable you to interact efficiently and effectively with your core systems of record. As your application becomes more and more complex, your testing backlog becomes flooded, feedback increases from your end-users for new updates and improvements, and your resources slowly begin to churn. You recognize the need to either replace product owners or add resources to keep up with the demand. Finally, once hired, those new resources enter unfamiliar development infrastructure and require time in order to understand the development patterns and practices used to construct the application to this point.
Quite a hypothetical, right? Actually, not at all. Anyone who has ever been attached to release engineering in the past is cringing at the frequency in which this scenario occurs given the epidemic of poor application governance that exists globally across all technical stacks.
With the model-driven approach that Mendix implements, development can happen at speeds never seen before; however, speed up front does not necessarily correlate to speed later on in the lifecycle of an application, regardless of the development framework you choose. Well, that is, except for Mendix.
Rather than allow you to go 1,000,000 MPH in the wrong direction, Mendix provides you with three unique tools directly within the platform to constantly shepherd you toward success: the Application Quality Monitor (AQM), Automated Test Suite (ATS), and Application Performance Monitor (APM). Each tool aligns itself with the ease of use that Mendix offers and caters to the terminology and skills of Mendix developers, creating an application governance experience with a minimized learning curve and immediate returns.
Application Quality Monitor Helps Avoid Technical Debt and Ensures Speed
Serving as the first line of defense in the Mendix application governance package, AQM is the only tool capable of providing static analysis for Mendix models. Built by SIG (Software Improvement Group), an independent expert of software quality assessment and trusted partner of Mendix, AQM leverages the Mendix Model API that exposes each element of a Mendix application as recognizable code and benchmarks the interpreted models against the ISO 25010 standard for Maintainability. This is crucial to note, as it demonstrates that AQM does not measure your application against Mendix standards, but rather a true industry standard for expertly defined best practices in the execution of your development.
Speed is a great solution to the increased demand that an IT organization may face, but quality and maintainability are what allow speed to exist beyond the initial development phase through churn of resources and increases in feedback and requests. According to Gartner, one of the top four mistakes organizations make when implementing bimodal is failing to maintain a disciplined focus on refactoring and managing technical debt. AQM provides you with the proper guardrails to protect against that debt and solidifies Mendix’s promise of speed throughout the entire life of your applications.
Automated Testing Suite Reduces Need for Testing Expertise and Shrinks Testing Time
Once you are assured that your quality is being appropriately monitored and your development is well underway, functional testing is the critical next step, and executing it simultaneously with development at each iteration is a must within a Mode 2 strategy.
Built by another trusted partner, Mansystems, ATS integrates seamlessly with the Mendix team server, exposing every user story that has been created and enabling organization of your functional tests for each story. What makes ATS truly powerful, however, is that it extends the speed and ease of use that Mendix provides. The ATS GUI sits on top of Selenium and utilizes its API to generate scripts through not code-writing, but keystrokes and mouse activity directly within the application. Users simply kick off a recording session in their browser via ATS, walk through the functional user story they want to test, stop and save the recording, and finally schedule that test to run at defined intervals as a constant check throughout the life of the application.
ATS is an amazing tool that not only reduces the need for testing expertise—enabling anyone to engage in the functional testing phase of development—but also reduces the amount of testing time by more than 50 percent.
Application Performance Monitoring Eliminates Search, Enables Optimization
The moment that your application is finally deployed, it is imperative to start tracking all of the critical statistics that will help uncover the necessary improvements that will take the application to the next level. Rather than relying on traditional troubleshooting methods like log and CPU Usage interpretation, with Mendix’s Application Performance Monitor, your development team can engage in a much more specialized monitoring experience.
Along with the traditional metrics that any average performance monitor provides, APM goes a step further and presents data to its users in a Mendix-friendly manner. As all of the executable business logic lives within the Mendix microflows, APM starts by tracking and displaying all major statistics surrounding each microflow (amount of times executed, average runtime, maximum runtime, and more). APM then offers a performance tool that expedites all additional analysis by allowing developers to capture a collection of statistics and then drill into each individual microflow activity (as well as the individual statistics and queries associated with even those low-level executables). The vast majority of troubleshooting comes in the form of the search for the problem and not the actual fix. With APM, Mendix has eliminated slow searching and enabled rapid optimization.
With these three convenient application governance tools, your organization can prevent the threat of technical debt, seamlessly incorporate testing in your application lifecycle that simultaneously cuts cost and reduces time spent on configuring and running tests, and build a high-performance application portfolio that proactively addresses performance and streamlines the discovery of issues to allow for immediate optimization. With this ease of mind, your organization can focus on developing valuable applications at unprecedented speed.