Business Process Automation with AI for Software Development

pull requests and code reviews

Pull Requests And Code Reviews

There are two words that will help open a lot of doors in life. Push and Pull. Here, we’re going to talk about Pull Requests. Pull requests have since become a standard part of the software development process and are closely associated with code reviews. Code reviews involve teamwork and collaboration on code and serve as one of the four main drivers of software development, alongside speed, quality, and efficiency.

Read More »

By GITENTIAL TEAM

The Business Process Automation (BPA) market is valued at ~$13 billion globally and is expected to maintain a 12.2% CAGR through 2026 to nearly $20 billion. Here, we’ll take a look at what BPA is, the benefits it brings to software development, and some use cases. AI and Automation deliver exciting benefits to nearly all software development stakeholders for optimizing work processes, team structure, cost performance, and more. 

Business Process Automation should be of special interest to engineering managers, team and tech leads. But CxOs, BI specialists, and HR teams have a lot to gain by putting BPAs to use, as well.

What is Business Process Automation?

Business Process Automation, also referred to as Intelligent Process Automation (IPA), is the use of AI and ML-powered software to automate complex sequences of tasks without human intervention. BPA systems are capable of making “intelligent” decisions using advanced forms of analytics, including predictive and cognitive analytics. They also tend to connect with many other enterprise software systems. In software development, this includes Git Repositories and project management software like JIRA. 

It differs from Robotic Process Automation (RPA) which serves to automate specific, repetitive tasks requiring little or no decision making. These “rules-based” tasks can be integrated into and managed by BPA systems. BPA systems can make use of structured and unstructured data and handle exceptions, while RPA systems can only handle structured data.

BPA for Software Development

A wide variety of BPA systems are used in most industries today, from retail and manufacturing to healthcare and finance. They help automate processes and optimize workflows for onboarding employees, processing service requests, and even automating inventory tracking and replenishment. 

But how does it work for software development? There are arguably four main areas where BPA systems are being put to work:

  1. Continuous Integration, Delivery, and Deployment
  2. Finding and Fixing Bugs 
  3. Security and Vulnerability Testing
  4. Team and Vendor Cost Performance Management

Gitential focuses on the last of these. Originally designed to provide engineering managers with software delivery performance analytics, we’re now integrating an AI-powered Digital Assistant. 

While many of our customers have found analytics very useful, they’ve noted and we agree with them that manual investigation of data is time-consuming. As many other industries are moving to AI, automation, and real-time decision-making capabilities, we’re set to do the same.

The Four Main Challenges in Software Development

Successful software, at a minimum, is delivered on schedule, on budget, and according to specifications. Specifications include functionality, performance, and quality – or free from excessive and critical defects. Unfortunately, most (~60%) of software projects are challenged on at least one of these three criteria. Another 20% miss all three, failing outright.

There are really four main “interconnected” categories of problems in software development – and Gitential’s upcoming BPA and AI-powered Digital Assistant is capable of addressing them all:

  1. Developer & Team Skills – Less skilled or experienced developers may be “budget-friendly” at face value, but ultimately contribute to more process bottlenecks, defects, and delays that can threaten your budget. Conversely, hiring too many specialists and senior developers can hurt, your budget, too. To optimize, you need the right mix of junior, mid-level, and senior developers. This extends to vendor management, as well.

  2. Budgets – No money = no software development. Simple as that. To reduce waste and improve ROI involves two things. First – optimize tasks around your best teams on the basis of cost and performance. Second – actively help other teams to improve their performance, while tracking their responsiveness. The global shortage of IT specialists is a major issue even if funding is not.

  3. Software Quality – Numerous issues come into play here – shoddy specifications, inexperienced developers, hiring too many developers, inefficient team sizes, ambiguous tasks, and tasks not optimized for developer expertise/experience. Defects usually translate to delays and cascade into budget problems.

  4. Delivery Schedules – Parkinson’s Law says, “Work expands so as to fill the time available for its completion.” We can skip a few non-critical deliverables and assume them as technical debt. That’s fine to a point. Missing the delivery schedule will hit the budget, can result in contractual penalties, upset clients, and missed opportunities.

Exactly How Are These Challenges Interconnected?

Software development is complex and expensive. The average base wage for a US-based software developer is $53 an hour. As many companies now work remotely and employ hybrid teams – in-house, freelancers, contractors, outsourcing agencies, etc. on an international basis, actual costs can vary quite substantially (from $20 to $200+ per hour).

The Time-Cost-Scope Triangle shows directly how everything is so interconnected:

Endless Modernization by the Standish Group asserts, “The root cause of software project failures and challenges is slow decision latency.” This is backed up by ScrumInc and Monday.com. According to them, teams with an average decision latency of 5 hours succeed with their projects just 18% of the time. When decision latency is reduced to just one hour, success rates swell to 58%. Slower decisions equate to delays and compounded costs owing to more rework.

Making faster decisions is important, but optimizing the other ~40% requires making smarter decisions, which we’ll get to shortly.

Examples of BPA Benefits in Software Development

  • Dramatically reduce Decision Latency – the #1 threat to successful software delivery.
  • Improve Decision Quality – “Fail fast and frequently” might work for finding product-market fit, but has no place in software development. 
  • Help predict and proactively mitigate or avoid risks to delivery.
  • Select the right mix of senior and junior developers with the right skills for new projects.
  • Accelerate team cross-functionality and training of newly promoted leads and managers.
  • Help teams achieve organization-wide alignment on critical KPIs.
  • Optimize work around best performers and project value to improve profitability.
  • Reduce waste and improve ROI by improving efficiency, speed, quality, and teamwork.
  • Identify best practices to help lower-performing teams come up to par. 
  • Identify developers at risk of leaving or burning out to improve retention.
  • The list goes on.

BPA for Engineering Managers, Team, and Tech Leads

Most of the research that goes into team management and improving team performance is automatable. Manual analysis for individual developers, not to mention teams, is a tedious, time-consuming task. Moreover, determining the issue with the greatest impact requires significant experience and complex calculations. Even then the remedies may not be entirely clear. 

These processes can take hours, days, and sometimes weeks, and are prone to miscalculations and misinterpretations of the data. While AI cannot replace human decision-makers, it completes these processes with greater precision, exponentially faster – on-demand in real-time. 

Customizable dashboards provide every stakeholder with the critical information they need to see at a glance. It helps to highlight the team’s greatest, current challenge and the Next Best Actions to help resolve it. 

In effect, AI tracks team performance data, analyzes it, identifies what issues have the greatest impact on performance, and prescribes appropriate corrective actions for them. It’s then up to the manager or team lead to evaluate if the diagnosis is logical and applicable. 

Implementation of any decision follows conventional Agile best practices and processes where the information is shared and discussed in activities like:

  • Standup Meetings and “Tips of the Day”
  • Sprint Planning and Retrospectives
  • Resource Library Examples
  • Optimizing Code/PR Reviews and Mentors
  • Walkthroughs and Reverse Walkthroughs
  • One-on-One Meetings
  • Objective and Key Results Meetings
  • Continuing Education and Training

The Simple ROI of BPA for Software Delivery

The next question that’s often asked is whether it’s worth the time and effort to integrate a BPA into a company or team’s work processes. It’s always a good idea to follow the money.

For starters, let’s simplify calculating the ROI to one hour of research time – before adding complexity.

  • Let’s say one hour of manual research analytics by an engineering manager helps a single developer gain one hour’s worth of productivity each month. With wage differential, that’s a 1,000% ROI. 

  • With the help of AI, the manager could reach the same insights within five minutes. With a team of five developers, they could research two issues and still have time for a ten-minute break. That’s time to ask a question, review, and take notes on the answer to share with the developer in their next one-on-one meeting. This posits a 10,000% ROI. 

A manager or lead may spend between 30% and 70% of their time working on team improvements. Much of the balance is spent in meetings – one-on-ones, sprint planning, standups, retrospectives, plus other team, staff, and OKR meetings.

Other ROI Factors

A BPA’s impact on ROI does not end there, but calculating it gets much more complex for many and varied reasons. Larger teams equate to more meetings. Fast-growing companies advocate for more frequent meetings – weekly instead of bi-weekly one-on-ones, for example. 

On top of all of this, organizational alignment generates a sort of compounding interest. This takes root when every stakeholder from the CEO to the individual developer is focused on helping all other stakeholders. 

While teams can only ever achieve 100% efficiency, there is no ceiling on productivity – especially for teams applying CI/CD. But, as improvements are made, the relative impact of further improvements will decline over time (Law of Diminishing Returns). 

However, teams and projects change. Some developers will leave for new jobs or get promoted. New team members will be added. Companies will adopt new tools and technologies. For maximum ROI, continuous improvement remains constant.

Improve Decision Quality

We’ll say it again, Silicon Valley’s mantra of “Fail Fast and Frequently” may work for finding product-market fit. But, it’s the last thing engineers want to do when it comes to software development. We want to use the data that is available to make smarter, more accurate decisions. 

Even the most experienced managers may miscalculate or make wrong decisions. They can overlook the need for decisions about numerous subtle delivery and team-related issues in both planning and execution. Turnover, promotions, and adding new developers complicate matters further. 

Decision quality is important for all stakeholders, but there are some interesting points with respect to project managers. Standish Group’s “2020 CHAOS: Beyond Infinity Report” finds that Agile software projects led by experienced project managers are just as likely to fail as they are to succeed, 18% vs 20%. 

One caveat involves a distinction between an “experienced project manager” and a certified Project Management Professional (PMP). Certified PMPs are known for having comparatively high project success rates (and salaries).

But, the net effect is still the same. The Project Management Institute with over 1 million certified PMPs observes there will be a need for 20 million more project managers by 2030. It adds to the pervasive global shortage of qualified IT specialists with higher-end skills and experience needed for today’s software projects.

Achieving Quality Decisions with Next Best Actions

Next Best Actions (NBAs) can be likened to Insights On-Demand. Instead of tapping Uber for a ride, stakeholders can ask Gitential’s AI for action plans to improve performance. It will respond with four pieces of information in plain English that even non-technical users can easily understand:

  1. The data – with visualization aids like charts and graphs
  2. An explanation of each data point
  3. A summary analysis of what the data means and its potential impact
  4. Primary and Secondary “Next Best Actions” for how to improve the issue

Here’s an early beta example of how questions are answered:

More About Business Process Automation

For more about how BPA systems are being used by different industries and the benefits they bring, check out the following:

About Gitential

Gitential is an Analytics and Engineering Intelligence service provider bringing visibility and optimization highlights on teams’ productivity. Our mission is to enable faster, data-driven decisions to continuously improve software delivery team cost performance and proactive risk management.

Ready to explore different ways to improve your software projects’ efficiency? Schedule a meeting and we will be happy to listen to and discuss your needs.

Have a project but are not quite ready to contact us? See if Gitential is a fit for you!

FREE TRIAL FOR LIFE
for up to 5 repos, 10 devs and 3 months of data

Post updated: February 08, 2022

pull requests and code reviews

Pull Requests And Code Reviews

There are two words that will help open a lot of doors in life. Push and Pull. Here, we’re going to talk about Pull Requests. Pull requests have since become a standard part of the software development process and are closely associated with code reviews. Code reviews involve teamwork and collaboration on code and serve as one of the four main drivers of software development, alongside speed, quality, and efficiency.

Read More »
The Gitential Guide on How to Reduce the Size of Your Git Repository

The Gitential Guide on How to Reduce the Size of Your Git Repository

Unfortunately, there are no easy ways on how to reduce the size of your git repositories. However, there are quite a few ways to keep your repositories down to an efficient and easily manageable size. Many of them are fairly simple and can be set up fairly quickly. But, they probably won’t help you if you are already exceeding your repository cap on Bitbucket, Github, Gitlab, or Azure DevOps. For this scenario, we can help you identify what to target when it becomes necessary to deal with a large repository.

Read More »

Did you like our content?

Spread the word

Subscribe to Our Newsletter

Don't miss our latest updates.
All About Software Engineering Best Practices, Productivity Measurement, Performance Analytics, Software Team Management and more.

Did you like our content?

Spread the word

Subscribe to Our Newsletter

Don't miss our latest updates. All About Software Engineering Best Practices, Productivity Measurement, Performance Analytics, Software Team Management and more.