Creating an Effective App Strategy with DevOps and Low-Code
February 22, 2018

Dan Juengst
OutSystems

The number of apps needed to to fully embrace digital transformation is increasing each year, and organizations are relying on their IT staff to meet and support this need. However, IT isn't always equipped to handle this increased demand. According to the 2017 State of Application Development Report, 62 percent of IT managers reported having a large app development backlog, with some having more than 10 apps waiting to be developed. To get this issue under control CIOs must create a well-defined app strategy that includes providing the tools developers need and incorporates a DevOps approach.

The Insatiable Need for Apps

Gartner predicts that market demand for app development is growing at a rate that is at least five times faster than IT's capacity to deliver it. As this issue grows, organizations will need to be realistic about the apps they need versus the apps they want. Having a realistic strategy is one of the foundational elements of a successful digital transformation initiative.

Most organizations take more than three months to fully develop a new app. That's too long considering how many apps need to be built in a year. It's not just about how long it takes to build these apps — there are budget constraints, skills gaps, competing priorities, and an overall lack of developers to actually build the apps. Digital transformation is a worthwhile investment, but it's no small undertaking. It requires new tools, new processes and in some cases, new hires.

Speeding up Development with DevOps

According to Gartner, 32 percent of businesses say that they need weekly releases, and of those 48 percent say IT delivers more slowly than needed. Often, IT departments will have multi-skilled development teams each with their own specialized tools, frameworks and coding languages. This model results in team and project siloes and hinders collaboration that could make development more efficient.

DevOps is part of the answer to this issue. DevOps teams work together to accelerate delivery of digital solutions, without sacrificing quality. Adopting a DevOps approach involves changing up processes, integrating new technologies, and can't be implemented overnight. When tackling a DevOps transition, organizations must think about three important areas: people, process and technology.

People

Changing team structures is not simple and asking two teams to start working together means both teams must be involved in the planning phase. The teams must be aligned on goals and processes ahead of time. It's also important that Dev and Ops understand each other's roles and how they both contribute to their shared goals. Once teams establish mutual respect and an open a path of communication, approaching a joint endeavor will be easier, smoother and ultimately, more successful.

To stay in sync and keep the lines of communication open, Dev and Ops should have periodic cross-functional meetings, project aligned or cross-functional email lists, and interdisciplinary chats. Both Dev and Ops can use these channels to stay in constant communication to share information about the development status, test results, deployment stages, and production performance of application projects. Ensuring all team members have a complete understanding of the state of their work and how it fits into the larger teams assignments and initiatives enables more efficient development.

Process

As organizations adopt DevOps, it's important to establish processes to accommodate the new working relationship between process workflows. Over time, organizations will likely form smaller cross-functional teams established to tackle specific projects.

Like a cross-functional scrum team in agile development, these DevOps teams will have resources with both Dev and Ops skills and should be empowered to work closely together with a focused goal. The focus and communication on cross-functional teams is instrumental to one of the most important new processes that is foundational to DevOps: the implementation of continuous feedback loops for all teams and stakeholders.

The key to DevOps success is ensuring everyone understands the state of the application at every stage of the application lifecycle, including production. This requires implementing processes by which status information can be shared with the appropriate team. Sharing information on test results, deployment status, and runtime performance is key, but for it to be truly effective, there must be processes that support and empower team members to take action to resolve any issues as needed.

Technology

Over time, many organizations acquire different tools to support DevOps. They can end up with a complex variety of solutions for code validation, version control, continuous integration, automated deployment, test automation, and more. This level of ecosystem complexity consumes time and budget.

To maximize efficiency and reduce complexity, IT teams can bring in low-code development platforms. Low-code platforms can help with version control, collaborative development, build validation, testing and QA, and much more. Having all of these components in one solution can help dramatically increase the speed of DevOps teams.

Low-code can also help alleviate the growing skills gap and talent shortage, by giving aspiring developers the tools they need to build modern applications. These platforms also improve speed for all developers regardless of skill level.

As IT teams try to keep up with the ever-rising demand for apps within enterprises, they will inevitably turn to DevOps and low-code if they haven't already. As DevOps adoption rises, tools will evolve to enable even more efficient development. The backlogs may be long now, but the industry is quickly catching up.

Dan Juengst is Principal Technology Evangelist at OutSystems

The Latest

November 15, 2018

Serverless infrastructure environments are set to become the dominant paradigm for enterprise technology deployments, according to a new report — Why the Fuss About Serverless? — released by Leading Edge Forum ...

November 14, 2018

What to automate? Which parts of the delivery process are good candidates? Which applications will benefit from automation? At first, those sound like silly questions. Automate all your repetitive processes. If you think that you'll do the same thing manually more than once, automate it. Why would you waste your creative potential and knowledge by doing things that are much better done by scripts? Yet, an average company does not adhere to that logic. Why is that? ...

November 13, 2018

I'd love to see more security automation deeply integrated into the development process. Everybody knows since the 1990s that security as an afterthought just doesn't work, yet we keep doing it. The reason, I think, is because it's very hard to automate security ...

November 09, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 5, the final installment, covers deployment and production ...

November 08, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 4 is all about security ...

November 07, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 3 covers the development environment and the infrastructure ...

November 06, 2018

DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 2 covers the coding process ...

November 05, 2018

Everyone talks about automating the software development lifecycle (SDLC) but the first question should be: What should you automate? With this question in mind, DEVOPSdigest asked experts from across the IT industry for their opinions on what steps in the SDLC should be automated. Part 1 starts with by-far the most popular recommendation: Testing ...

October 31, 2018

Halloween is a time for all things spooky, but not when it comes to your mobile app experience. A poor experience can not only scare off your customers but keep them away for good ...

October 30, 2018

As organizations have embraced open source, they have become polyglot — using multiple programming languages and technology stacks to accomplish software and hardware related tasks. Enterprises are caught between the benefits provided by a polyglot environment and the complexities and challenges these environments bring. Ultimately, if the situation remains unchecked, polyglot will kill your enterprise ...

Share this