How OutSystems Facilitates DevOps to the Software Lifecycle
It has been more than 15 years since agile was born into the world of software development. Perhaps even more interesting is that it has taken this long for the philosophy and tenants of agile planning and development to seep into the world of operations, though perhaps that’s more a statement about adoption than it is of value.
The maturity of this concept of DevOps feels a little like agile did in its early days. The difference being, DevOps is less about a prescribed way of doing things (daily scrums, iterations, sprints, Kaizen, and so on) and more about an approach to increasing efficiency in IT as a whole through collaboration, continuous integration, and continuous delivery.
Recently, Gartner ranked OutSystems a “Leader” in its 2018 High-Productivity Application Platform as a Service Magic Quadrant, which included DevOps and the software development lifecycle as criteria for evaluation. Let’s dive into what those criteria mean and how they apply to our high-productivity, low-code application development platform.
DevOps needs a definition—a starting point from which we can say, “This is the beginning, and over there is where it needs to take us.” And from that, we can measure success. Unfortunately, definitions of DevOps include qualitative words like emphasize, adoption, and leverage, making it difficult to pinpoint success.
Gartner has a definition that feels as close to the truth as we can get right now, even if it, too, contains qualitative words and appears more descriptive than prescriptive.
“DevOps represents a change in IT culture, focusing on rapid IT service delivery through the adoption of agile, lean practices in the context of a system-oriented approach. DevOps emphasizes people (and culture), and seeks to improve collaboration between operations and development teams. DevOps implementations utilize technology—especially automation tools that can leverage an increasingly programmable and dynamic infrastructure from a life cycle perspective.” Gartner IT Glossary
But we have to start somewhere, and the industry long ago handed the mantle of “expertise” over to analyst firms like Gartner and Forrester, ranking their opinions just behind that of peer influence in terms of driving decision-making.
Based on Gartner’s definition of DevOps, it’s clear you can’t evaluate a company’s DevOps capabilities from the outside. For its Magic Quadrant, Gartner relies on a lengthy process of Q&A to answer questions dealing with things like collaboration between operations and dev teams or whether an organization’s solutions emphasizes people and culture. A lengthy process OutSystems was happy to accommodate because we firmly believe in our platform and its ability to fundamentally change the way organizations address developer and operations interoperability.
I mentioned the SDLC at the beginning of this article, and in Gartner’s report, SDLC is the 7th evaluation category right before DevOps in the 8th spot. Whether Gartner intentionally illustrated how the two fit together by listing them one after another, who knows, but it’s worth looking into.
Process Meets People: DevOps and the SDLC
If the software development lifecycle is a series of tangible goals and milestones, then DevOps is the marriage of people using technology to accomplish the same.
In fact, Gartner’s definitions of DevOps all start with “Support for.” Now that could mean support as in, “Hey that’s great, we’ll support whatever you decide.” We prefer to believe it means more like, “Before that new update goes live, OutSystems automatically verifies all code works as expected, so you don’t have any surprises in the production environment.” That kind of support.
Low-code rapid application development is the perfect “support for” DevOps. In fact, it could be considered the starting point. DevOps requires a tight-knit community of developers and operations staff. That can be difficult to accomplish in a traditional environment where development pushes out one big project and starts another before operations can finish evaluating the previous project’s impact on resources—and before marketing can determine if customers even like it.
With a DevOps approach, projects are necessarily smaller and delivery times shortened. This is important because it means that organizations can be much more responsive and nimble to the changing face of technology and demands from the marketplace.
OutSystems shortens development time by enabling efficient and rapid design, development, testing, and implementation. Meaning, organizations can make continuous updates and improvements to applications based on usability testing and customer input without overburdening operations teams. In fact, many organizations find that more frequent interaction between developer and operations teams leads to better communication and a greater appreciation for how each group does its job.
Next Steps: One, Don’t Pick Up a No-Code Platform
If your organization is using a no-code platform now, you are likely already seeing some of the benefits of visual development. You may also be hitting a wall as far as what you can do with the solution since no-code solutions don’t offer the customization and integration depth that OutSystems provides.
If you are just now starting your digital transformation journey, or you just need to develop a new mobile or web application, low-code can help.
Both citizen and professional developers pick up the OutSystems visual development environment very quickly, typically within a couple of weeks. In no time, you will start seeing time shaved off your projects thanks to customizable UI templates, reusable containers, and AI-assisted development that recognizes repeatable patterns during testing and debugging and flags them in real-time. Compare that to the lengthy development schedule and largely manual QA exercise each time a new patch or version is released in traditional development projects.
On the operations side of the house, hosting your applications on the OutSystems cloud means fewer headaches caused by ongoing hardware support and administration. From a security standpoint, OutSystems cloud hosting providers (AWS and Azure) offer some of the best security for even multi-tenant situations. And generally, better code means less overall resource requirements, which is also budget-friendly.
It may feel a bit amorphous now, but your DevOps chops will get progressively better as your organization naturally adapts to the new low-code norms.