Maximising Agile Development Through iPaaS: A Guide to Data Integration Using Low-Code Platforms

Abstract

This article explores the intersection of agile development practices and Integration Platform-as-a-Service (iPaaS) facilitated through low-code platforms. By analysing how the agile methodology synergises with the capabilities of low-code iPaaS solutions, this article aims to offer guidance on how organisations can navigate the evolving landscape of data integration.

Introduction

The digital transformation journey of many organisations includes a dual focus on agility and data integration. Agile development practices have revolutionised the software development lifecycle by encouraging flexibility and collaboration. Meanwhile, Integration Platform-as-a-Service (iPaaS) solutions have emerged as powerful tools for integrating disparate data sources and applications into cohesive systems. The advent of low-code platforms is adding another layer of simplicity and speed to this ecosystem. This paper explores how agile development methodologies can be adapted to manage iPaaS solutions effectively, particularly when implemented through low-code platforms.

The Promise of Low-Code iPaaS

Low-code platforms promise rapid development cycles and democratise the integration process by enabling non-developers to engage in building and managing integrations. This aligns with the agile ethos of collaborative problem-solving and cross-functional teamwork.

Navigating Challenges

Agility in data integration comes with its own set of challenges, such as security concerns, data governance, and the potential for “spaghetti” integrations. Adopting agile practices like iterative development, sprint planning, and regular retrospectives can aid in navigating these hurdles.

Agile Principles in iPaaS Implementation

Incremental Development

Rather than attempting to integrate all systems simultaneously, agile principles would advocate for incremental, iterative integration. This approach allows organisations to learn from each integration cycle, making adjustments before the next sprint.

Collaboration Over Silos

Agile development calls for intense collaboration between cross-functional teams. When applied to iPaaS, this principle means involving stakeholders from business, IT, and data governance right from the initial stages.

Responsiveness to Change

One of the core tenets of agile development is responsiveness to change, which can be beneficial when managing integrations in a low-code environment. As these platforms enable quick changes, an agile approach ensures that the system can adapt to new requirements efficiently.

Conclusion

The natural synergy between agile development practices and the capabilities of low-code iPaaS platforms offers a promising avenue for organisations seeking efficient, collaborative, and adaptable data integration solutions. By leveraging agile principles, organisations can navigate the complexities and challenges that come with modern data integration tasks.

References

  • Hyrynsalmi, S.M. (2022). The State-of-the-Art of the Integration Platforms as a Service research. [online] IEEE Xplore. doi:https://doi.org/10.1145/3524614.3528634.
  • AltexSoft. (2021). System Integration: Types, Approaches, and Implementation Steps. [online] Available at: https://www.altexsoft.com/blog/system-integration/.

Low-Code, No-Code, LCNC: The formal definition

Abbreviations

  • UI – User Interface
  • GUI – Graphical User Interface
  • CLI – Command Line Interface
  • SDK – Software Development Kit
  • IDE – Integrated Developer Environment
  • RAD – Rapid Application Development

Executive Summary

This document solidifies and defines the multiple definitions and sub-genres within the Low-Code and No-Code world.

No-Code – A visual software development environment where the user works only within a GUI. There is no programming or CLI involved. The system potentially allows plugins for added functionality.

Low-Code – A visual software development environment using a GUI and/or SDK. In addition to No-Code functionality, the user has the capability to also add programmatic code directly in the environment. The system potentially allows CLI and plugins for added functionality.

Low Code No Code (LCNC) – Low-Code and No-Code as a technology, referring to all or parts of a system.

Pro-Code – Single or multiple systems that are written in pure code, by a programmer in whatever language suits the task best.

Background

Low-Code and No-Code have been around for several years, and the genre was first proposed in the 1982, when James Martin argued in his “Applications Development Without Programmers” book that 4GL technologies (such as RAMIS and FOCUS) “opened up the development environment to a wider population and enable non-programmers to create applications themselves” (Sassi, R.B. (2021). A Brief History Of Low-Code Development. [online] Medium. Available at: https://betterprogramming.pub/low-code-history-b756c095494f). As a response to the Waterfall Model, RAD gained momentum in the 1990s when the concept of visual desktop tools like Visual Basic, Delphi, and Oracle Forms became popular. Low-Code and No-Code gained wider traction in 2016, after a publication by the Forrester Group that made the term Low-Code public.

Since then, Low-Code and No-Code applications have enabled skilled developers to work faster and citizen developers to work on tasks that do not require as much technical knowledge but were previously purely within the remit of developers.

However, the fluidity and misuse of terms and labels describing this technology has caused a lot of confusion. In specific:

  • Formal definitions of the differences between Low-Code and No-Code are sparse and no two people describe them in the same way.
  • Two other terms have appeared recently: LCNC and “Low Code No Code”, both of which appear to define different things.

LCNC has often been used by the Low-Code community to describe how all the platforms have evolved by adding UI for repetitive tasks, i.e. small areas of No-Code to their platforms. Many Low-Code platforms offer No-Code functionality as well, such as Appian, Mendix, Microsoft PowerApps, OutSystems and Salesforce Lightning.

 “Low Code No Code” has been used in the media to refer to all Low-Code and No-Code coding types as a whole (i.e. not Pro-Code). This phrase is mentioned as much, if not more than LCNC.

Solidifying the terms

In theory, the differences between LCNC and “Low Code No Code” are redundant and using an acronym of one term to mean something different to the expanded term leads to a lot of confusion. Therefore, we should have a single definition for LCNC and “Low Code No Code”, and only utilise LCNC as an abbreviation of “Low Code No Code”. Therefore “Low Code No Code” and LCNC should hereon refer to all Low-Code and No-Code coding types. This can apply to the entire application or part of it.

Despite the limited definition in the public domain for No-Code and Low-Code, we can lean on the two words “Low” and “No” to express pure UI drag ‘n’ drop interfaces vs GUI that also allow code (i.e. nearly No-Code).

So No-Code refers to applications that exist 100% in the GUI (drag ‘n’ drop and configuration). 

Low-Code also exists in the GUI, but it also allows the user to define code, either in the GUI, SDK or CLI. Low-Code is different from No-Code in that it is much more flexible, however you need developer skills to use it (though less than traditional Pro-Code, which is the ultimate for flexibility). Low-Code has an advantage over No-Code, in that it is much more flexible than No-Code and can be used by a Junior Developer to move much faster than a Pro-Code approach.

Formal definition

No-Code

A visual software development environment where the user works only within a GUI. There is no programming or CLI involved. The system potentially allows plugins for added functionality.

Low-Code

A visual software development environment using a GUI and/or SDK. In addition to No-Code functionality, the user has the capability to also add programmatic code directly in the environment. The system potentially allows CLI and plugins for added functionality.

Low Code No Code (LCNC)

Low-Code and No-Code as a technology, referring to all or parts of a system.

Pro-Code

A system that is written in pure code, by a programmer in whatever language suits the task best.

Links

Emerging new job titles in LCNC an indicator of profound change

What do we call the users of Low-Code or No-Code platforms that work for the IT dept?

Across the board, business and IT is seeing a transformation that is being driven by Low-Code and No-Code technologies. There is clear change in the job titles around development although the new terms have not yet stabilised.

Historically problems like this, are the indicator of genuine profound change!

Low-Code and No-Code is definitely not a replacement for developers or an IT department, and we will never be out of jobs (who will develop the Low-Code tools, who will design and build the surrounding complex architecture?). However, there are some great side-effects:

  • Business employees are learning the basics of
    • Development processes – the how-to and why they are beneficial, as Low/No-Code processes need to be constrained to stop ballooning and undocumented code.
    • Code and processes are more easily aligning with business processes.
    • Programmatic thought.

This is an exciting time, not only because we are seeing those at the forefront of the new technology explosion see their ideas come to fruition, but also because IT departments will see more understanding from business (as they learn more about IT as they onboard with the LCNC applications and processes), and this is driven by business and economics.

The language problem

Across many eras in IT there seems to be one thing that stands out about true – long lasting and permanent changes to the IT landscape break the language used in the current IT ecosystem. So any “language break-down” emerging is evidence of a strong of a probable trend being confirmed as profound change!

Some changes are fast and have “epoch moments”. Some are slow and creep up on us, leading us to say “this has always been known, but we never said it before in that way”.

Economists note that the one thing that stands out about genuine large scale change, is that the new activity will change what people do, how they are specialised and the job titles that describe it.

A good example of this is web-design. Initially we just had “web-designer”, before shattering that role into multiple disciplines, as we came to understand that improving the interfaces on a website was inherently complex, and architecture was only half the problem. We now have roles like (Sven Jenzer, 2023, Typical UX disciplines, [ONLINE] Available at: https://en.wikipedia.org/wiki/Parenthetical_referencing, Accessed 27 January 2023):

  • User Research
  • Information Architecture
  • Interaction Design
  • Usability Evaluation
  • Accessibility Evaluation
  • Visual Design

We need new job titles in development, so that Low-Code enabled developers can be classified in a way that reflects any extra value that they bring. While distinguishing them from citizen developers who, whilst they are not IT people, are doing ad hoc IT tasks to improve their role and also need a way of classifying their extra skills.

What is the solution?

Let’s look at the typical range of developer roles that we currently have:

  • IT Manager
  • Technical Architect
  • Technical Lead
  • Senior Developer
  • Developer
  • Junior Developer
  • Trainee Developer

We currently have no way of expressing the extra values that trained Low-Code developers and No-Code citizen developers bring. So, let’s break this down, essentially we are trying to express:

  • Experience level
  • Value to the business
  • Potential leadership role
  • Area of expertise

Using these taxonomies, we could potentially create new titles to express these, such as ApiOpenStudio Developer, Senior RapidAPI Developer, Junior Zapier Architect. However, this does beg the question, are users of Zapier or RapidAPI developers or architects? To be honest, not really, and they are definitely not architects. So this will not suffice.

I’m not posing a solution to this yet, and just want to open the floor to a problem that is likely to surface very soon, when those that have spent the time learning these skills want to express their new-found knowledge recognised by the business, or businesses want to find workers with the assets and skills that they want.

ApiOpenStudio Introduction Seminar (Rescheduled)

Add to Calendar

ApiOpenStudio will be holding our first Live Event with our Developer/Founder, John

This event has been rescheduled to:

  • Friday 4th of November at at 2pm AEST.

The topics include: an introduction to the product and a run through of all the basics of the technology, and where you save time and money.

Followed by Q&A on the Product and the Business Concept.

No need to register as we will be live on YouTube. However if you would like to register, we are offering a free 90 minute support package to anyone who registers.

To register, fill in the contact us form on the home page.

Low code trends and the new workflow management

The recent flood of articles discussing the way that Low-Code is changing the landscape of development have 2 key elements:

  • Low-Code is now clearly emerging as one of those enormous waves in tech, that will change the way that things are done across business and IT development moving forward. For both tech companies and non-tech companies (because everybody is technology driven).
  • In the future, it is really how these tools are used in unison with the company’s “Pro-Code” developers. Which is the real business problem to be riffed on and solved! 

What does the new development environment that includes “Citizen Developers” look like? How will they interact with IT Departments and the Pro-Code developers?

Will Low-code replace Pro-code?

Up front we’d like to point out the answer here is something we are sure of. This will in no way reduce the demand or work for Pro-Code developers.

There is compelling economic reasoning for this. As while it is true that all companies want to save costs, we are in an increasing world of digital transformation, where every business is in reality, a tech business. 

So the one area where you cannot start with cost saving, is technology. Companies will always be in a technology race to the leading/bleeding edge with their competition. That edge will always require having the best Pro-Code people you can get, as they provide the competitive advantage. 

Paradoxically this means if you have that, you also need the best Low-Code resources for two reasons:

  1. Low-Code enhances the output of your Pro-Code work force, doing vital but repetitive, non-challenging tasks. Speed means less hours, more output, and we all get that.
  2. These are considerable the other benefits, beyond cost savings. One of which is the morale & job satisfaction of the Dev team. Developers universally report that in their ideal work environments, they want to be working on important and challenging tasks. Where they have the best chance of learning things along the way.

So Low-Code can reduce the time they spend on these less interesting tasks. Because you can’t make the tasks go away. The answer is to use a tool that lets you get more done in less time.

More accuracy and happier teams

The hidden part of all this is the organisation’s abilities to utilise No-Code/Low-Code and adapt to it.

In terms of moral & satisfaction, there is clear evidence that the most onerous of tasks are the organisational ones. Like storing names & levels of permission on an API, in the case of ApiOpenStudio. These often have a high cognitive load because they require high concentration but they are in no way interesting. Low-Code solutions come with User Interfaces and Dashboards and these reduce cognitive load and risk in these tasks by making the tasks simpler and providing ways of validating your entries are correct and making the editing/deleting of changes easy. So there are huge benefits in day-to-day operations.

Learning a new technology and skill can also be fun. As we know, the primary driver for nearly all employees and their job satisfaction are:

  • Confidence in the leadership team.
    • Implementing Low-Code in a balanced way will demonstrate that the leadership have a forward-thinking mentality.
  • The employee is valued.
    • Providing training in the new technology and processes will show that the business wants to keep them and invest them.
  • Satisfaction with daily tasks.
    • The employee will feel more satisfaction through more responsibility and seeing their work being visibly used.
  • Learning and growth.
    • We all want to grow and extend out knowledge and usefulness, with the additional benefits of making us more desirable to employees.

(InfoSurv Research 2012, What Are the 4 Top Drivers of Employee Satisfaction in 2012?, viewed 17 October 2021, https://www.infosurv.com/what-are-the-4-top-drivers-of-employee-satisfaction-in-2012/):

Governance

With the decision to introduce Low-Code platforms, your first issue should be governance and compliance.

Your “Citizen Developers” and Project Managers should start to deepen their communication and feedback loops. Most importantly, non-technical people have to really feel they can come to the experts with the most basic questions, even if it is just to check they are on track. This is all new to them and they are not professionals in this sphere.

Because deep, first-hand knowledge of requirements is another advantage that citizen developers brings to the table. It’s worth noting that their approach will usually be decided on the functionality that they want. The effects on governance or the rest of the architecture are normally the furthest from their minds.

So from a Project Management perspective, clear leadership is needed right at the start in setting out the processes needed on the project. So that features and functionality are plumbed in properly.

Communication

There needs to be clear communication between the citizen and Pro-Code developers (usually via the Project Manager), but this can also be direct. This will ensure that any requirements between the two teams are met and no-one is adding useless things to the system, or features that will slow down the system performance.

Once you have initiated a communications format between citizen developers and the development team, then testing and documentation can be mapped out.

Documentation

A clearly written and easy to access set of documents will be required by both your citizen developers and all levels of the development team.

This will ensure that:

  • Onboarding is quick and easy for citizen developers and they can quickly find answers to any questions that they have, without feeling overloaded by technical answers.
  • Managers and project management have access to sources of truth that enable them to answer any questions.
  • The Pro-Code developers are aware of the Low-Code systems and how they interact with their work.
  • Leaders of the development team can easily find a broad overview of the different systems, the interaction between them and the processes that have been implemented to govern them.

Quality assurance

Depending on the complexity of the No-Code solutions and their impact on the rest of the technology, it is very likely that extra guard-rails will have to be introduced. This will probably involve QA (quality assurance), the ability to import and export configuration, and the release cycles.

Even if the output of the citizen developers is content (for example: pages in a blog or CMS), there should be systems in place to accomodate proof reading and validating the look and feel on different devices. There are additional complexities here, if the content that the citizen developers create is all in a database and cannot be imported/exported – where will this be tested, how will it be released? Although this issue is usually solved by that specific technology’s community, time should be spent looking at the different solutions proposed to find the best solution for your organisation.

In the case of complex No-Code solutions that interact with the output from the development team, then these need to go through the full QA feedback loop. QA can then validate that the existing functionality is not broken and that the new functionality works as expected and different systems interact as expected.

What is important, is that that the development team should reach out to the management of the Citizen Developers, so that they can have the discussion with them about compliance and governance & how they must comply with the IT departments direction (and vice versa). This is often an issue in companies, where people directly report in their department, and are in effect silo’d from the other departments.

Moving into the era of Low-Code/No-Code enhanced Companies. 

The organisations that are going to maximise the benefits of this new wave, should already be initiating broad company-wide conversations. These will range deeply across all levels of the organisation. From the way that Pro-Coder work days and productivity will be enhanced to evaluating the advantages and disadvantages of implementing Low-Code solutions for specific tasks.

This will even permeate as far as hiring & the HR Dept. As you look to harvest the advantages of onboarding people in traditional roles that have these additional skills, or incentives for current employees who wish to acquire No-Code or even Low-Code capability. 

This is the conversation of the future for all companies that will succeed in this new era!

Are you hitting the low-code sweet spot?

Low-code solutions, as part of your IT landscape, are clearly gaining continuous traction. Low-code now, actually has its own Gartner Magic Quadrant!

Whilst a survey by the other big gun: Forrester, has said that in 2019, 37% of developers in Forrester’s worldwide survey were using or planning to use low-code products. By mid 2020, they predict that this number will rise to more than half of developers.

Finally, to complete the trifecta, CapGemini have now included low-code in their “Top Ten Trends. So all three planets are aligned.

Forrester research found that 100% of enterprises who have implemented a Low-Code development platform have received ROI (Forrester 2019, Large Enterprises
Succeeding With Low-Code
, viewed 23 June 2021, https://assets.appian.com/uploads/2019/03/forrester-tlp-lowcode.pdf).

ButAs ever, a lot of what we read out there is a mix of genuine analysis and the marketing objectives of the company writing it. The question really becomes. Are your low-code strategy and applications hitting your “low-code Sweet Spot”?

What low-code solutions do you need & where? How big should you start with low-code? Who do they enhance? Also, importantly, where shouldn’t you use them?

It’s worth remembering that companies can go too far, trying to remove developer costs. Using low-code the wrong way or too widely can severely limit straight Jacket development options.

Developers and low-code

There is an ideal mix of 4 Key areas. That varies with each business & its development needs:

  • High level expensive developer talent.
  • Less experienced and lower cost developers.
  • The right people with skills to access low-code & no-code solutions.
  • What the industry is now calling “Citizen Developers” (keeping in mind they often know your business processes & requirements better than anyone).

Do you have the right low-code app in place? So your expensive front-end developers don’t have to hand the requirements of an API to an equally expensive back-end developer (who is juggling this with another task that is equally mission critical), even though the front-end Dev has little on that week & will move to lower value tasks.

Or to take advantage of the extra efficiency in the fact that they both no longer have to dedicate time to the communication of what the front-end developer wants?

Communications tasks are typically underestimated costs

With a low-code solution like ApiOpenStudio, front-end developers can go straight to API creation. This can be great if you need to even out the load in a team where they might otherwise be cooling their jets on less important tasks, where they have to spend time defining the API and then send it on to back-end developers to implement.

This flexibility and being able to quantify it is the key to tuning your low-code mix, as the team will become more efficient. 

Finally if they are both flat out, can a lesser developer or in the right environment a cross trained “Citizen Developer” with basic JSON or YAML skills be deployed? Ideally they should be close to the project and its requirements. 

Low-code enables members of the team closer to the requirements & product or project development to build and manage an API themselves. Using, and in many cases, replacing the time they would have used to communicate this to others with actually developing the product.

Equality does not exist in low or no-code

Low-code and no-code platforms exist on a spectrum. On one extreme, you have platforms offering very basic functionalities – i.e. simple form and logic creation, combined with rudimentary document automation capabilities. On the other, you have platforms allowing citizen developers to build large, end to end workflow solutions, encompassing features like e-signature integrations, multi-step approvals, email reminders and data management.

So time and thought needs to put into the use-cases that you want to address with low-code implementations. This will prevent you facing the, often frustrating situations that project or product managers, when developers reply “nope, that can’t be done” due to the limitations of the software.

The balance

Like just about all movements in IT that become long-term, there is still a lot more to it in terms of taking it to your business and marketplace than the initial Marketing Hype. The real sustainable change is almost always different and requires a deeper understanding of how things really work to make sure the rubber hits the road.

So what do you really need to consider to realise the value of low-code across an organisation? 

The fact is that low-code involves a trade-off, that is worth doing, but a trade-off nonetheless. 

On the one hand, low-code enables those closest to the product and business requirements to build what they need and build it faster. It eliminates layers of process and management… business units can, in the right environment, move forward without consulting IT. Low-code makes business Agility happen, as it changes how the business works with software.

HOWEVER…… 

The fact is, though highly effective for many businesses, with low-code, the MORE you use it, the more you straighten your development. That is the trade off. 

This is one of the reasons why pro-code (or pure developers) have little to fear from low-code. Though surveys show many of them fear this, it is not shown in the data. Particularly during the next decade, where Microsoft recently estimated that there would be a shortfall of one million developers in the USA alone. 

Being able to plan and resource your company’s low-code mix, as well as advise where it is not appropriate 
(like when your CFO thinks he can do all with low-code just to save money!!) is becoming part of the career skill set for professional developers.

How low can you go?

Low-code, by definition also enables Fast Followers. As they have a pathway to follow that is quicker and lower revalue. So I would think twice about ever letting your marketing dept tell the world how you got there.

We think it’s important to realise (after years of researching & discussing this market trend with stakeholders) 
low-code and pro-code do not cancel each other out. No organisation should aim to be one or the other.

So the “Democratisation of development”, like all of the most successful democracies… need good checks and balances. judges, oversight and impartiality in the execution.

Summary

So as you would expect, there are quantifiable :aspects to this:

Is it giving you enough power, while liberating you from increasing development cost? Due to the rising price of developers and the need for an increasing number of developers, as companies race to meet the demand for providing richer digital experiences.

Whole platforms for this is not the place to start, & may not be the place to go. But starting with something like API creation and management can reduce both cost of running the internal Apps, the outward business and web apps that the customer sees. In most cases, these apps will rely heavily on external feeds and there is a high benefit in the low-code approach to this.

WP Twitter Auto Publish Powered By : XYZScripts.com