Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

3D Printed ‘UFOs’ For Developers

DZone's Guide to

3D Printed ‘UFOs’ For Developers

Helps DevOps teams visualize the health of deployment pipelines.

· DevOps Zone
Free Resource

“Automated Testing: The Glue That Holds DevOps Together” to learn about the key role automated testing plays in a DevOps workflow, brought to you in partnership with Sauce Labs.

Dynatrace announced the release of UFO; a device that lights up when issues are detected in application code. The UFOs are aimed at companies with distributed teams, to help regulate quality and improve inter-company communications at every stage of the development process.

Dynatrace’s UFOs – aptly named due to their quirky spaceship-like appearance – are attached to department ceilings and connect with digital performance monitoring platforms, giving visual status updates on the quality of code both in development and in production. When all is well, the UFO lights green, moving to red as problems are identified to warn engineers of code degradations that could impact the user experience or increase operational costs. All lights must be green before the code can be advanced to the next level of the development pipeline, helping to ensure the quality of code is reinforced at every stage of the development process. Also, as the UFO is highly visible to the whole office, everyone in the business can look to the skies to gain an update on the status of a project.

Andreas Grabner, Technology Strategist, at Dynatrace, explains the rationale to the innovation; “I think of development a bit like a car on a conveyor belt; you might have one team working on the doors, another on the engine, but at the end it all needs to assemble and work. It’s the same for digital services – if you are making an online banking app, one team will work on the log-in, another on the account look-up, and so on. If each team is using a UFO, then the assembly line works much more smoothly; there is a guarantee of quality at every stage, as code can’t be progressed until it is perfect. Having this visual cue makes it much easier to protect digital performance, as it ensures that only quality code makes it into production.”

The UFOs visualize quality at every stage of the development process, with a separate device for each application or feature team. The top ring of LEDs monitors the ‘trunk’, i.e. the performance of the application as it moved through development. The lower ring monitors the ‘current sprint’, showing the status of the application once it is in production. If there are issues that impact digital performance, the LEDs turn red, alerting developers to problems that need to be corrected to protect the user experience. As the UFO alerts engineers in real-time, issues can be resolved quickly to ensure that code quality is maintained throughout the development lifecycle.

“The whole ethos of DevOps is based on collaborating and sharing, so we wanted to find a way of fostering this spirit,” explained Andreas Grabner. “Businesses often have huge development teams, spread across floors and departments, so it’s hard for them to connect – how can you know if people are struggling or feeling frustrated if you can’t chat across the desk? Our UFOs help distributed teams communicate because a quick stroll through the office, or a glance to the other side of the room, can alert you to problems. Collaborating is the DevOps way, which is why we have released designs for the UFO so developers can build their own – assuming they have a 3D printer. It is also vendor-agnostic - a cool DevOps mechanism that we think everyone will love.”

In the spirit of DevOps and collaboration, Dynatrace has designed an open-source version of the UFO which can be printed on a 3D printer. It’s available at: https://github.com/Dynatrace/ufo


Learn about the importance of automated testing as part of a healthy DevOps practice, brought to you in partnership with Sauce Labs.

Topics:
devops

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}