Categories
Blog

Composable architecture with WaveMaker low-code

Imagine your enterprise architecture, not as a collection of disparate business processes with some loosely defined interdependencies, but as a neatly fit, well composed, well maintained, synchronized set of autonomous and API-driven Packaged Business Capabilities (PBC). Each process fitting into another like a well-thought-out jigsaw puzzle. What’s more, the scope for adding more such processes is unlimited and the pieces to the puzzle are interchangeable. Such a modular architecture makes it possible for each of these PBCs to have separate life cycles of its own which can then be deployed, tested, and reused causing minimum disruption.

composable-architecture

If this visualization evokes your interest, welcome to the world of  ‘composable architecture’.

PBCs are in fact, products by themselves either built in-house or by SaaS vendors or best of breed application factories. According to Gartner, by 2023, 30% of applications will be sold as PBCs.

Why compose?

A composable approach to application development helps businesses deliver the needed solutions at the pace of modern business change. - Louis Vistola, Devops.com

CIOs are using composability to tackle disruptions – pandemics, natural disasters, market fluctuations, and changing customer needs. Composable architecture brings several benefits to the composable enterprise concept, specifically the agility and innovation to respond to changing business needs. It reduces the need to build configurability reducing complexity and thereby reducing the QA cycles. Other than the possibility of unlimited scaling, it also focuses on shortening the gap between IT and business, bringing deep personalizations based on roles, and the ability to build new business models.

Role of low-code platforms in the
journey to being composable

As organizations move towards digital transformation, the low code plus composable combination offers maximum flexibility, delivering value at greater speed. - Elizabeth Wallace, RTInsights.com

Low-code is built on the premise of visually composing applications and services with the help of built-in components. Therefore, a low-code platform like WaveMaker becomes a plausible choice for the rapid development and integration of PBCs. However, where, in the journey of building a composable architecture does a low code platform play its part?

Depending on the size and affordability of the enterprise, a low-code platform can don many hats.

  • Use it to build new PBCs
  • Democratize application development
  • Increase collaboration with IT and business users
  • Use it as a business capability development tool
  • Define new user experiences and customize your applications
  • Utilize low-code as an aggregator/ integrator of various PBCs
  • Provide a visual abstraction over complex API calls

The list is exhaustive.

A low-code development platform like WaveMaker comes with an innate plug and play approach, and can do a lot of heavy lifting for an organization looking at composability. Let’s see how.

API-driven approach: The API Designer

Application Programming Interface (API) management market size is set to
grow from USD 1.2 billion in 2018 to USD 5.1 billion by 2023

Application Programming Interfaces(APIs) are the catalysts in creating a well-composed architecture. PBCs expose their functionalities using APIs. When all processes within an enterprise are API-enabled, developers and business collaborators can access them seamlessly to suit their needs resulting in faster delivery and increased composability. All communication across enterprise applications is streamlined with the help of APIs.

WaveMaker enables an API-driven app development approach. The platform extends its capabilities beyond just publishing, wrapping, and sharing APIs within the enterprise, by also enabling partners and third-party developers to consume APIs vital to their business. Representational State Transfer(REST) APIs are autogenerated for any application that is created on the WaveMaker low-code platform. For every service that is imported on the platform whether it be database, Java, SOAP, or a third-party service, an API is auto-generated. This enables easy composability of critical services like databases and third-party functionalities into the application canvas and the larger ecosystem of applications. The platform has a feature called ‘API designer’ where all APIs available to the application can be viewed, tested, and customized.

Wavemaker is also OpenAPI Specification 2.0 (OAS) compliant and extends the functionality of OpenAPIs by integrating REST endpoints in a Web/Mobile application. Once a REST endpoint is generated, it can be easily integrated with any of the 100+ UI widgets available on the platform without the hassles of hand-coding. What’s more, applications within the enterprise can talk to each other.

All platform-generated APIs deliver enterprise-grade security, OAuth capabilities, and users are provided with fine-grained control over the usage of APIs.

Reusable software components: Prefabs

Within the WaveMaker studio, “Prefabs” are customizable, reusable, distributable, components/widgets that help in accelerating digital app development. ‘Prefabs’ are the building blocks that enable composable architecture through WaveMaker. These groups of components are gathered in the Design-Toolbox within the WaveMaker Studio. More than 100 prefabs covering a wide range of features cater to different use cases throughout the product. Every enterprise customer owns an artifact repository of components that can be as granular as a UI widget or an entire workflow such as a Loan application microapp.

Similar to an application, prefabs have their own development cycle – a prefab is developed, tested, and deployed independently. Additionally, it can be retrofitted to suit varying business scenarios and repurposed. In fusion teams, Prefabs can be created by developers and can be consumed by non-developers (business users and citizen developers) to exponentially accelerate development. WaveMaker users can just gather (drag and drop) the necessary prefabs from the enterprise repository and then compose an entirely new application with the centralized built-in module.

You can find a detailed article on prefabs here.

Microservices

“The golden rule: can you make a change to a service and deploy it by itself without changing
anything else?” - Sam Newman, Building Microservices

Microservices are known for their composability, but are microservices akin to PBCs? A PBC is composed of several microservices and in some cases, a microservice can act as a PBC providing a tangible business capability. Therefore, the ability to support microservices is a crucial tenet for a low-code application development platform that enables composable architecture.

Since REST APIs are auto-generated in WaveMaker, Microservices are inherently supported. Some of these APIs are available for further customization based on the app integration needs and as Sam Newmann says, the primary benefit of using microservices is that you can change and deploy a service with minimum disruption – An important principle when it comes to composability.

Integration of features and modules happens more often at the customer experience layer. Micro Frontends, in the microservices world, is a scalable design practice that enables users to produce composable independent modules which can serve in building a new app or progressively integrate features to an existing app. WaveMaker is the only low-code platform to support Micro Frontend modules extending rapid development benefits to Micro Frontend development. It adopts the runtime integration approach for Micro Frontends & works with the Single-spa framework.

WaveMaker also enables seamless deployment of business services into the choice of infrastructure. Enabling business services as individually versioned microservices makes the entire CI/CD process effortless leading to what we call Zero DevOps.

Low-code platforms and composable architecture share a symbiotic relationship. They have shared goals namely agility, velocity, collaboration, and the ability to build powerful applications that can be plugged into the enterprise ecosystem without disruption. Technical tools and platforms that allow enterprises to pivot and adapt rapidly are the need of the hour. Composable architecture requires the ability to utilize several modern technologies such as API enablement, reusable software components, support for REST and SOAP services, modern CI/CD technologies combined with microservices (Kubernetes), multi-cloud enablement, and data protection.

WaveMaker is an open low-code platform that delivers all these and more.

Categories
Blog

Plug and Play with Prefabs

Enabling composable architecture with custom-built software components

In WaveMaker, ‘Prefabs’ are customizable widgets that enable composable architecture. They are reusable, distributable, and independently testable micro applications that can be dragged and dropped into any WaveMaker project. They cover a wide landscape of operations and are present in the enterprise repository of every customer. As of now, the WaveMaker studio contains more than 100 different prefabs ready to be plugged into any application canvas of choice.

Prefabs can be rendered for diversely different business scenarios and can be reused by multiple teams within an enterprise. They can emulate commonly used components like ‘Location Indicator’ or can even abstract independent business workflows like ‘Account Management. Prefabs are ideal for blended teams consisting of business users and IT developers within the enterprise

Composable architecture through prefabs

Composable architecture is the ability to create applications with prebuilt software components. It is akin to creating a Lego model. Similar to the model, software components interlock with each other to create a larger artifact – the application. Just like a model, a singular component can be removed, repurposed, or fit elsewhere to suit the changing needs. What’s more, new blocks(read components) can be added to the model to make it larger and stronger. Prefabs are the Lego ‘building blocks’ of the WaveMaker platform. These components could be as fine-grained as a ‘list box’ or as macro as an entire workflow. What’s important is that these various components can be easily placed into the application canvas with seamless synchronization. Simply put, the components can talk to the application. Prefabs are not just abstractions in UI format, they are also components with characteristics and behavior. One that can be easily integrated with the help of exposed methods and events. This plug-and-play model of orchestration is made possible by their respective REST APIs. During application deployment, WaveMaker resolves all prefab dependencies and deploys the app as one single component onto a Docker container. As the application expands, further prefabs can be added to the canvas ensuring scalability and flexibility.

Easy API consumption

Prefabs can be effectively used to talk to complex API calls. This can be done by abstracting these calls with a UI layer in the form of a prefab. A business user then can simply drag and drop the prefab into their WaveMaker project and set custom properties to suit their application. Their behavior is invoked by the associated events or method calls. From OAuth APIs to third-party widgets, prefabs come to the rescue by encapsulating the complexity in a UI shell.

Prefab repositories

Developers can create custom component repositories solely for use in a single application (application repository). Additionally, an enterprise can create a custom prefabs repository, one that contains software components customized to their brand. Independent contributors can even publish prefabs to the general repository of the platform that can be reused across enterprises.

Third-party Widgets

Third-party widgets can be repurposed as prefabs on the WaveMaker platform. This can be done easily by just importing the widget-specific files to the platform and then abstracting it with a UI element to create a completely new component. They can further leverage the extended features of the external widgets to customize it even further. Popular prefabs like YouTube, GoogleMaps, Docusign, and QRCode ship with WaveMaker. Additionally, OAuth services for Facebook, LinkedIn, Instagram are rendered through prefabs on the WaveMaker platform. A similar repository for WaveMaker Online is currently being developed.

A multitude of benefits follows the usage of prefabs. Reusability, encapsulation of functionality, scalability, speed of composition, building blocks of composable architecture, and consistent quality are some of the given advantages. WaveMaker customers, especially ISVs and core software builders use prefabs for easy customization and faster implementations.

In the banking & financial software world, prefabs can be domain-specific and an extremely crucial asset to deliver differentiated brand experiences to banking customers. For instance, general workflows such as loan repayment, account management, transaction management, and user management can be developed as prefabs in the enterprise repository which can then be retrofitted into custom banking solutions.

At WaveMaker, we understand the dynamics of the market in terms of the need for speed and differentiated brand experiences. Prefabs enable composable architecture, faster go-to-market, and hyper customization to empower core software builders developing modern applications and platforms.

You can find a detailed guide to prefabs here.

Categories
Blog

The future of Low-code
is open

By Mayur Shah, Senior Director – Product Management, WaveMaker

The low-code market is seeing meteoric rise across the world, as companies try to keep up with digitization demands and shrinking IT budgets. Even as we witness increasing low-code adoption among professional as well as citizen developers, an intriguing question comes to mind – What lies ahead for low-code, and could it ever become a mainstream approach for modern development teams?

The answer may well be an open source, low-code platform that offers high productivity, while supporting seamless integration with the overall fabric of modern software development practices within an enterprise.

It’s feasible to assume that low-code will evolve to become open low-code, resulting in greater innovation and agility.

To further understand what this means, let’s dive deeper. What are open systems?

According to Wikipedia, open systems are computer systems that provide some combination of interoperability, portability and open software standards.

Over the years, the software industry has seen great benefits from designing, implementing and consuming open systems. TCP/IP protocol standards, UNIX systems, Web browsers, REST APIs – all of these are shining examples of open standards that went on to become highly successful and widely adopted. By remaining open, they enabled higher interoperability, streamlined development and fostered rapid innovation.

Low-code is now at a critical stage in its adoption curve. For the last few years, we have seen citizen developers successfully execute shadow IT with low-code and churn out applications at a breathtaking pace. Today, low-code platforms are hardened for enterprise use, are programmed to understand the scalability and security needs of a complex application and have integration capabilities mature enough to seamlessly fit in with existing tools and technologies. As a result, we are now seeing greater adoption of low-code within the professional development community, covering a diverse set of use cases from simple dashboards to complex applications. The natural next evolution of low-code is that it becomes mainstream within enterprise IT, and is used to build mission-critical applications and systems. So, how does this next phase play out for application development?

The Case For an Open Low-Code Platform

The approaches and techniques of modern software development teams has changed dramatically to meet the demands of modern, software-enabled business. Developer velocity and organizational agility have become key benchmarks for high performing software development teams, as those metrics have a direct correlation with software excellence and superior business performance. According to a research report by McKinsey, teams that belong to the top quartile with regards to developer velocity score have 60% higher total shareholder returns and 20% higher operating margins. Such teams can experiment faster and release code to production without delays.

As application teams continue to embrace low-code for mainstream development, it is vital that low-code platforms support developers so they are encouraged to employ modern application development and delivery best practices. Low-code should introduce minimal disruptions to a developer’s working practices and workflow. Also, it is important that low-code can integrate seamlessly with the fabric of the overall enterprise application architecture. This can happen if a low-code-platform is open standards-based and flexible so that the rest of the enterprise application infrastructure can coexist with it.

What Makes a Low-Code Platform Open?

Developer-Centric Features

Developers like control, flexibility and a unified experience. They find comfort in sticking to their preferred languages, tools and application development and delivery workflows. A low-code platform that offers productivity with equal flexibility, with a focus on building robust enterprise architecture, is bound to be the future of application development. Platforms should focus on providing a unified developer experience across concept, design, integration, development and deployment stages of the app life cycle, employing a technology stack that is modern, best-of-breed and cloud-native. It’s equally important to provide a way for developers to easily bring any external innovations into the low-code platform.

Visualization, Customization and Ownership

Many low-code platforms do not generate 100% of an application’s code. Also, most of the code generated by proprietary platforms is also proprietary, and quite often remains hidden and not easily accessible or extensible. A platform that generates open standards-based, real code is a great asset, especially for professional developers building complex applications that require extensive customization and deep integration with enterprise tooling (security, testing, debugging, integration etc.). The code generated should be based on developer-friendly, best-of-breed application stacks and standard design patterns. This way, application teams will have complete familiarity with and understanding of the code. Enabling full export of the code allows teams to own the code created by the platform.

Flexible Application Architecture

The application architecture should be loosely coupled, supporting microservices and micro front ends that can be independently built, deployed and scaled. This way, architecture can support cloud-native application development easily. Also, all other aspects of the application life cycle should allow for plug-and-play capability. This includes, but is not limited to, plugging in custom UI components (widgets, templates), custom security providers, custom back end code, logging frameworks, event driven systems, etc. A plug-and-play model ensures that development teams can integrate custom providers that are fine-tuned for the enterprise.

Modern Development Best Practices

Modern application development practices have evolved to allow teams to experiment faster and release code to production at a never-seen-before pace. Optimizations in performance and scalability have resulted in applications that can support millions of end users. As developers warm up to low-code, the platforms should align with and implement all modern development practices while building applications. The idea is to minimize friction in a developer’s journey towards low-code, so that they continue to leverage the same design principles, application tooling and enterprise integrations as they do in the complex programming world.

Infrastructure-as-Code (IaC)

Developers need a way to continuously deploy software so there is always a version of the application ready for production. Low-code platforms should support an IaC option, so code generated is always deployable seamlessly on the developer’s infrastructure of choice. Platform should integrate to build, test and release systems (version control systems, CI/CD, artifact repos, container image repos, Kubernetes clusters and public or private cloud instances, for example). This way, artifacts built by low-code are continuously integrated and deployed to the enterprise’s operational systems.

Low-code is at an inflection point within enterprises, as it becomes the platform of choice for digital transformation and application modernization. This is the opportunity for low-code platforms to become a key ingredient of an enterprise application architecture. An open low-code approach will allow application development teams to benefit from the underlying best practices prevalent within the organization.

Low-code is not merely a productivity tool; it has the potential to be a technological and cultural catalyst that drives enterprise innovation and business agility.

Originally published in DevOps.com

Categories
Blog

Java Spring Boot, Microservices, and Low-code – A formidable mix

“Because they are so long-lived, atoms really get around” says Bill Bryson in his book, ‘A Short History Of Nearly Everything.’

programmer from the 90s could say the same about ‘Java’.

Ubiquitous in its presence for nearly a quarter of a century, Java’s journey is one of many milestones. From its inception in 1995 as an unopposed ‘internet programming language’ to the’ de facto standard for Microservices’ today, Java has evolved to become an all-pervasive technology. Name any major product, and Java is behind the scenes. Google, LinkedIn, Uber, Netflix, Spotify – all have been built by Java. From mobile applications to desktop, embedded systems to web servers, scientific to business applications, there is a bit of Java in everything.

The same could be said about Java-backed architectures. Microservices is one such architecture of repertoire. Departing from complex monolithic systems, microservices are based on providing functionality in the form of decoupled services. These independently deployable services are in turn developed and maintained by small teams. The result is a framework based on independent but collaborating functionalities. Reusability, testability, maintainability, scalability, and easy deployment are key benefits of a well-defined microservice.

The Java ecosystem has well-established frameworks for developing microservices. Microservices demand modularized architecture and a lightweight messaging system for data exchange. Something that Java can provide easily.

Java’s foray into the world of microservices or to put things into perspective, microservices’ consolidation as an architecture of significance rose with the advent of Java Spring boot, Jersey, and Swagger.

Spring Boot- “Loose coupling and Tight cohesion”

Of the three, Spring Boot rules the roost when it comes to creating decoupled, independent, and interactive services. It helps in developing services rapidly because it follows a convention-based programming paradigm rather than a configuration-based one. Its purpose-built features make it easy to build and run microservices at scale. Coupled with Java Spring Cloud, administration and testing of applications becomes easier. Applications can start small and then iterate faster to scale up, that too on multiple platforms with reduced cost- One of the reasons why Java Spring Boot is considered the de facto standard for microservices.

Java Spring Boot has matured over the years. Being an Open-Source framework it is backed by a large community resulting in an extensive array of readily available expertise in Spring and all its components.

While we talk about Spring Boot and its natural fit in microservices, let’s talk about another enabler in terms of microservices – Low-code platforms.

Low-code platforms and microservices – An intersection.

Abstraction- A common goal for both low-code and microservices. How does a low-code platform aid in simplifying a complex solution?

While the services themselves aim to be simple, the architecture and interactions in a microservice can be complex. Low-code can help simplify these complexities. Low-code platforms such as WaveMaker can effectively model microservices by providing front-end visualization to the back-end complexity. In some cases, low-code can be used to add a layer of abstraction on top of the enterprise microservices to provide end-users with a clean interface. In other scenarios, it can act as an orchestrator between services created with different platforms. A low-code aimed at professional developers may also allow them to write custom code for services.

Continuous delivery, unwavering stability, and unhindered scalability form the ethos of microservices. Java Low-Code platforms enabled by Spring Boot offer these key advantages in the world of microservices. Let’s see how.

WaveMaker – Low on Code, High on Java

Aimed at professional developers, WaveMaker is a powerful, enterprise-grade Java low-code platform. Built on the foundation of sound Java pedigree, WaveMaker was launched as a multi-tenant cloud edition in 2015 by a team of middleware experts. WaveMaker uses a proven open standard stack – Java Spring, Bootstrap, Angular, and Docker to enable app development on the cloud.

It offers flexibility and speed with component-based microservices and auto containerized deployments to the cloud. The platform allows for one-click API creation, where microservices are auto-created and developers can use existing database logic and reuse existing Java code in IDE’s of their choice.

These APIs enable developers to write business logic or integrate with third-party libraries. How are these APIs generated?

For every Java Service created in WaveMaker, its REST API contract is auto-generated and is available for integration with the front end. But the developer only has to use the unique ‘API Designer’ present in WaveMaker. This API designer helps create custom API with auto-generated API endpoints. WaveMaker then uses the concept of ‘Variables’ to interact with the REST API layer to access the services.

All this while, the structure oiling the machinery is the Java Spring Framework. In fact, in WaveMaker, the Services Layer is auto-generated using Spring. Custom queries, procedures, and Java Services can further be used to extend the app functionality.

Scalability is another factor that WaveMaker caters to in the form of ‘Spring Sessions’. Since WaveMaker generates open standards code based on Spring for the back end, horizontal scaling for applications can be achieved using Spring Session Module. Java Spring best practices are ingrained into WaveMaker.

Built with Java and used by professional developers, WaveMaker is a common intersection point between Low-Code, Java Spring Framework, and Microservices. As Java continues to evolve and grow, WaveMaker follows a similar path emulating its success.

Categories
Blog

WaveMaker 10.7.0
What’s New?

WaveMaker v10.7 is here!

In this release, you will find capabilities and features that aim to empower professional developers to build complex and scalable applications using low-code. As always, WaveMaker aligns itself with the latest technology stack and industry best practices for modern software delivery.

With v10.7, WaveMaker continues to enable enterprise IT teams and ISVs to build faster and build better with low-code. Here’s how.

Multiple paths, one destination

Version control, Branching and Hotfixes Support

Do you have multiple teams working in parallel on different features and hotfixes? WaveMaker in its earlier releases provided support for an array of source code repositories like Git, GitLab, and BitBucket to support version control. WaveMaker 10.7 goes one step further. Software teams that have adopted Agile or Scaled Agile (SAFe) need to work on multiple streams of development simultaneously. To support this, WaveMaker creates a project workspace mirroring branches created in the corresponding Git repository. This allows them to deploy new features to production continuously and rapidly while teams work on the next version of the app. ‘Branching’ makes it easier to manage large-scale projects with multiple release trains and versions during its life cycle.

Where there is data smoke, there is business fire

— Thomas Redman

Database Integration: Support for AWS RedShift

Enterprises are leveraging data warehouses to examine and analyze petabytes of data and gain valuable insights. AWS Redshift is one such data warehouse of importance. If you are a low-code user interested in strengthening your data capabilities through Redshift, WaveMaker 10.7 is just right for you. Developers can now connect to the underlying RedShift database schema in a matter of minutes with a few clicks and create logical data models mirroring the Redshift data source. They can then proceed to leverage the 150+ UI widgets and templates that WaveMaker provides to rapidly visualize data from the RedShift data source.

Database Integration: Support for SAP HANA

Are you looking to create purpose-built applications to automate interactions that are tedious to achieve in SAP? Now you can import your SAP HANA database into WaveMaker and build that application without having to copy the data.

In Version 10.7, WaveMaker supports a native integration to the SAP HANA database as a primary data storage. Application developers can then easily model on top of the HANA DB with WaveMaker’s in-built visual tools and expand S / 4 HANA’s existing database. They can even build new web / mobile apps with the power of the SAP HANA database. WaveMaker facilitates developers to leverage the advantages of this in-memory cloud DBaaS (Database as a service) with just a few clicks.

In addition to these, WaveMaker now provides support for all new versions of existing databases such as MySQL, PostgreSQL, and MS SQL Server. To see a list of all the databases and their versions that we support, click here.

Keeping it within

UI Artifacts now published to NPM

Many Enterprises have strict guidelines on accessing private repositories for application build and dependency management. With this release, all UI artifacts required for generating the Angular app will be published to Node Package Manager (NPM) repository. This removes any dependency on external cloud servers (S3 or Maven providers). Additionally, customers currently integrating WaveMaker to their custom CI/CD pipelines can now pull the dependencies from standard npm repositories while pushing the application across the pipeline.

Safe and Secure

WaveMaker is now Veracode Certified

WaveMaker has strengthened its security credentials with the achievement of “Veracode™ Verified Standard (Veracode Seal)” for WaveMaker generated application code. Going beyond addressing OWASP’s top 10 vulnerabilities, Veracode scans run extensive checks on WaveMaker generated code and at all times WaveMaker comes out unscathed. This in effect, translates to faster and easier development because developers can now focus on building the software rather than worry about its security aspects. Apart from fortifying the platform, WaveMaker application developers can easily implement constraints on the number of concurrent logins that are allowed for their application users. WaveMaker supports myriad ways to integrate SSO into its application. In WaveMaker 10.7, the SSO flow is optimized to let application users log in automatically if their SSO session is still active.

Nothing but the best

Technology Stack Upgrades

WaveMaker continues to strive to provide the “best-of-breed” technology stack to all its users. With this release, WaveMaker-built apps can leverage newer versions of several open-source libraries including spring framework, spring-security, ngx-bootstrap, logging to name a few. The complete list can be found here. In addition to these WaveMaker 10.7 has added several features keeping customer requirements in mind.

Optimizing the queries that read the database metadata has resulted in faster import of the Database Schema. On-Demand pagination and Infinite Scroll support on table widget, the ability to group data shown in dropdown menus, search auto-complete widgets are some new enhancements to keep an eye out for. To see the complete list of new features, please read our release notes here.

With each release, WaveMaker strives to bring low-code closer to modern development teams building serious applications. Keep watching this space, there is a lot more to come.

Categories
Blog

Weaving security into low-code development

Categories
Blog

Can low-code help financial software builders focus on the ‘first principles’?

Enterprises, on average, use about 1000 cloud apps, even though CIO think it’s only 30-40. As one can tell, the enterprise software landscape is complex. Organizations work with a wide range of applications that don’t speak to each other, look/work very unlike each other, often unable to even exist in the same tech environment. 

This is especially true in the financial services industry, where banks and financial institutions are inching towards end-to-end digitization. COVID-19 has only hurried this digital transformation, forcing businesses to catch up or fall behind. In trying to balance the complexity and the hurry, organizations often lose out on building robust software. 

While handling the minutiae, they forget the first principles. 

In this article, we explore how low-code can help financial software builders focus on first principles to create robust, integrable and sustainable applications for their customers.

Software first principles

If you are building an enterprise application today, it must be: 

  • Built on a modern microservices-based architecture
  • Components-based
  • Cloud-native, containerized and deployable across multi-cloud environments
  • Device agnostic and omnichannel-ready
  • Easily integrable with Open APIs
  • Focused on code security

How low-code helps you focus on first principles

“I think [low-code platforms are] probably the most important technology tool that CIOs need to look at. We do not have enough staff and our staff who are strong at App Dev really need to focus on the customer-facing pieces that are going to move the needle”, says Issac Sacolick of Star CIO. The fundamental benefit of a low-code framework is that it abstracts and automates the programming process to accelerate software development. In doing so, it helps you create applications that are consistent, integrable, sustainable and secure. Here’s how.

Low-code opens doors to modern architecture

By 2022, 90% of all apps will feature microservices architectures that improve the ability to design, debug, update, and leverage third-party code.

IDC FutureScape

Development teams across the globe understand the advantages of microservices-based architecture, and are adopting it rapidly.  But, among traditional development teams, this can be a tedious process. Modernizing monolithic legacy software or building new microservices-based products involves not just changes to development processes, but also setting up DevOps teams, changes to organizational culture etc. 

Low-code systems can help leap past these obstacles. A robust low-code platform can help professional developers build microservices-based applications at scale.

Low-code enables reusability with components and prefabs

Developer time is wasted in repeatable processes. Be it basic UI templates or complex forms, tables and interactive charts, low-code frameworks can help automate parts of development. In fact, you can also generate from your own data model, and navigate through data and their relationships right from the low-code platform. This can come especially handy when ISVs need to rapidly customize their applications for each of their customers. 

A low-code platform can help accelerate development with out-of-the-box widgets, templates, prefabs and more.

Low-code is prime for building cloud-native apps

A robust low-code platform can take you beyond just ‘cloud-ready’ development. With zero DevOps, auto-generated APIs, auto-scaling, app-sizing, proactive monitoring etc. Cloud-native low-code application development is now possible without a bastion of cloud experts on your team. It can also enable one-click deployment across multi-cloud or hybrid-cloud environments.

A low-code platform can automate many of the development and operational aspects of building cloud-native apps.

Low-code accelerates the development of omnichannel apps

Omni-channel customers spend an average of 4% more each time in the store and 10% more online than single-channel customers.

Harvard Business Review

Financial software builders face pressure to build apps that offer a consistent and seamless omnichannel experience. Customers want to access information, make transactions, raise requests and speak to agents across their online banking, mobile banking and in-person channels. They want to have a continuous and engaged experience across them all.

To achieve this, traditional app development teams have a multi-functional team of mobile developers, web developers and core application developers replicating the application for each channel. Low-code tools eliminate the need for this, and create responsive applications by default. They also have built-in components and widgets that facilitate seamless engagement across channels.

By automating the adaptability and responsiveness of your app, low-code platforms accelerate superior omnichannel experiences, without corresponding investments.

Low-code platforms build integrable apps

Low-code abstracts a set of complex processes to accelerate development. APIs are an important part of that. They enable applications to access and consume vast amounts of data from multiple sources. They also integrate across upstream and downstream layers to connect information and application components. For instance, API helps banks or financial institutions to enable their services or share transaction data to a third party like Google Pay. It provides the flexibility of communication between two parties, increases workflow efficiency, enables real-time data sharing, and improves customer experience.

A low-code platform can help financial software builders make apps with composable APIs from underlying services and entities.

Low-code helps build secure applications from the start

The auto-generation of code in low-code tools brings with it security measures built-in at all application layers. With a good low-code platform, you can configure compliance levels, customize authentication and authorization, and even enable platform-driven automatic upgrades free from security vulnerabilities. 

For instance, code generated by WaveMaker, our low-code platform, is open standards-based. The platform enables secure coding practices making apps hardened for penetration testing and enterprise-grade security.  Given that it’s also ‘Veracode™ Verified’, WaveMaker drastically reduces the time developers spend in rounding off security for their apps. This verification covers third-party open-source libraries you use to generate code and all vulnerability checks listed in the CVE library. In all, it significantly de-risks application teams from compliance and security issues, without compromising on speed of delivery.

A low-code platform enables organizations to incorporate security at every stage of application development.

Choosing the right low-code platform for building
financial products

If you’re an independent software vendor developing software for the financial services industry, a robust low-code platform can accelerate your product development, and enable rapid customizations at scale. To gain maximum leverage from your low-code platform, make sure they empower you to focus on first principles.

  • Ensure that your platform is attuned to building cloud-ready apps. Look for a platform that can automate containerization, enable DevOps and ease cloud deployments.
  • Check the API capabilities of the low-code platform. Make sure it can enable integrations that are closer to business functions, giving standardized access to org data and services. 
  • Try the reusable components. 
    • Understand the limitations of the reusable components and prefabs included in the platform.
    • Check if compliant third-party components can be integrated.
    • Ensure you can create customized components and make them reusable within your organization.
  • Verify security standards. Test the credibility of the product by checking for  industry-standard certifications. Look for the protocols that govern authentication, authorization, protection against the 10 OWASP vulnerabilities etc.

For all these and more, consider WaveMaker.

Know more about WaveMaker’s banking & financial offerings

Categories
Insights

Banking on low-code: The secret sauce of digital banking systems that are crushing it

By Vikram Srivats, Vice President, WaveMaker

So far, the low-code bastion has been mostly custom applications (built by “citizen” developers) – which are, sort of, spectrally opposite to core software platforms built by professional coders.

The tide is now turning.

Software platforms, specifically in the banking world, are embracing – even infusing – low-code capabilities – either through build or buy (license, OEM) routes.

But first, the backdrop: It is no secret that banks – and all financial intermediaries in general – are rushing to digitally innovate their business and transform their technology. And we know that these interventions target both top and bottom-line impact, while purporting to deliver speed, agility and simplicity in operations. Add in a host of headwinds – pandemic induced credit losses, muted revenues in a low-interest environment, rise in challenger banks that are digital-only, and fintechs that threaten to drive new non-interest business models on a modern tech platform – and you have a real test of banks’ resilience over the next 4-5 years.

To make good on the digital innovation and technology transformation theme, banks must buy or build banking software (core and channel facing systems) based on 4 foundational pillars:

  1. API marketplaces – increasingly becoming the core of digital banks to expand the reach of their intellectual property, democratize access and cast a wide net.
  2. Cloud-native or Cloud-ready – designed or ported to the public Cloud; service mesh ready for hybrid or multi-Cloud environments.
  3. Component-based and customizable – address varied customer needs in an agile, low-cost and even self-serve manner.
  4. Enable ecosystems – for banks to stay relevant in the long run, embrace a world of co-opetition and lay the foundation for service offerings and business models that can drive new value.

With this backdrop, market-leading digital banking systems – cores and application portfolios – are increasingly turning to low-code capabilities (and third-party low-code platforms) as a significant intervention.

Here are 4 value plays that low-code drives for banking systems providers:

  1. Accelerate – using a homegrown or a third-party low-code platform, providers significantly accelerate the development of serious, Cloud-native modules, components and applications.
  2. Modernize – Leveraging an available API backplane, a low-code studio can generate consumer-grade, responsive front ends (UI/UX), enabling rapid modernization.
  3. Optimize – A low-code enabled (OEM version) or infused banking system allows banks themselves to configure, compose, extend or customize certain parts of a digital banking core or application portfolio – reducing/optimizing professional services effort from the provider and evolving the provider-client engagement to the next level.
  4. Proliferate – A custom low-code platform with industry-specific componentry can be offered as a layer in front of a banking API portfolio – to open up the ecosystem for the provider’s client and dramatically ease the process for third parties to use democratized assets to build a plethora of applications – very quickly.

In short, Low-Code + Banking Software = Results (digital innovation and tech transformation).

Temenos, a Swiss banking system provider, bought Kony (a digital banking SaaS company and a low-code platform vendor) for $600m in 2019. EdgeVerve, a wholly owned subsidiary of Infosys, a $14b IT consulting and services provider, has built-in low-code capability in its Finacle Digital Engagement Suite per leading analysts that profile digital banking systems. In mid-2020, new age composable banking platform provider, Mambu, partnered with Argentina-headquartered Veritran, an enterprise low-code platform provider, for the Latin America market.

Per Forrester, EdgeVerve and Temenos feature as Leaders in their Wave reports on digital banking platforms (processing and engagement) across 2019 and 2020. Mambu is a Challenger per Gartner’s Magic Quadrant for Retail Core Banking. Low-code capability infusion seems to be clearly correlated with leadership in the banking software domain. We should expect other leading players – TCS, Oracle, Finastra and FIS – to follow suit.

And future banking platforms with leaner digital cores will only serve to further drive the embedded adoption and proliferation of low-code capabilities – whether homegrown or licensed as OEM from third party low-code platform providers.

Epilogue:

A recent McKinsey report on the banking industry points out that the COVID-19 pandemic will cause $3.7 trillion of revenues – more than half of the total financial intermediation industry revenues – to be foregone and never come back. In that same scenario, return on equity would fall from 8.9% in 2019 to 1.5% in 2021, with North America bottoming out at -1.1%.

It is not all doom and gloom though.

The report points out that there is a hopeful picture – if banks do the hard work on productivity and capital management, their ROE can return to pre-pandemic levels by 2024.

What has all this got to do with low-code development?

(Hint: low-code => high productivity)

2024 awaits the resilient and transformed banking industry.

To futher explore banking solutions by WaveMaker, please visit:

www.wavemaker.com/banking-financial-services/

 Or, start a conversation with our expert consultants for solutions to your unique requirements.

 

Originally published in Finextra

Categories
Blog

Low-code for the banking and financial services industry

“One in four retail branches to close in Europe,” predicted a study mid-last year. This comes as no surprise, given the number of challengers that core banking systems of traditional banks face today. For instance, neobanks — mobile-centric retail banks, often without physical branches — have tripled in number in the last three years. Over 30 neobanks went live in the middle of a global pandemic, including niche ones like Daylight, a US bank for LGBT+ members. This isn’t euro-centric either; there is a significant boom in digital banking across Asia and Africa too.

As the pandemic forces customers to do as much interaction as possible online, “70% of account openings, deposits, consumer loans, and credit card applications will happen remotely over the next three years.” Enabling digital experiences of existing offerings is only one part of the story. To truly emerge successful in the 21st century, banks and financial institutions also need to devise innovative new offerings for the digital world.

More importantly, this needs to be rapid, agile, adaptable, and scalable. It is here that low-code software development will play a crucial role.

What low-code can do for banking and financial services

#1 Build new apps swiftly

Low-code accelerates the app development journey significantly, often by over 50%, while also reducing costs proportionately. This can be game-changing for banks and financial institutions that wish to offer innovative services to their customers.

Whether you need an app that lets users buy cryptocurrency or simply complete their Know Your Customer (KYC) compliance remotely, a financial services and banking low-code platform can help you develop and deploy it within weeks, if not days! In fact, that’s what a Fortune 100 insurance company did with WaveMaker. They used the WaveMaker platform to swiftly develop innovative applications, with 80% less coding than traditional development would have needed, and without any additional investment in skilled resources.

Low-code achieves this with:

  • Framework-driven approach: Component-based UI, prefabs, and repeatable templates ensure consistency, even at scale.
  • Seamless integration: APIs, connectors and CI/CD integrations enable new and existing applications to work together effectively.
  • Democratizing development: Banking Low-code eliminates the need for specialists, be it in design, development or DevOps; and saves businesses from outsourcing innovation/differentiated offerings.

#2 Modernize existing apps or refresh UI

One of the biggest costs associated with application development tends to be technical debt.

With rapid advancement in technology, banks and financial institutions are expected to deliver a sleek and enjoyable experience for the end user, forcing them to regularly modernize their applications. They must do this without compromise on the complex and highly secure backend technology that powers it.

low-code platform can help banks achieve this, while also minimizing technical debt in the long term. It does so with:

  • Cloud-native technology: Session-less architecture, decoupled front-end and back-end layers, and configuration-driven models make it easier to modernize legacy systems in small parts, without disrupting the business.
  • Performance and scalability focus: Auto-containerization, microservices architecture, and optimization for code assets boost application performance, bringing legacy apps to modern standards.
  • Adaptable integrations: SOAP and Java-based connectors offer custom integrations, that facilitate applications being modernized to function effectively with existing practices.
  • Reusable UI: Once designed, low-code allows users to reuse UI elements such as layouts, widgets, navigation, styles, etc., enabling consistent experience and performance across the board.

#3 Offer limitless personalizations

Studies show that “80% of consumers are more likely to make a purchase when brands offer personalized experiences.” The risk of not personalizing is high too: Gartner found that brands risk losing 38% of customers to poor personalization efforts.

Enabling unique, personalized digital experiences for customers will differentiate leaders from the laggards. Same goes for the various B2B customers of independent software vendors (ISVs) in the banking industry for core banking sofware.

Banking Low-code can make such personalization for the financial services industry not only possible, but also scalable and effective. For instance, a 65-year old, California-based credit scoring and financial data analysis company personalized the lending experience for over 1,500+ banks with WaveMaker. Low-code powers this with:

  • Powerful customization capabilities: Low-code vs. traditional development isn’t an either/or equation. A open standards-based low-code platform not only enables customizations, it also allows the application to accommodate developer-written code for complex functions.
  • End-user personalization: ISVs building financial platforms can offer their end-users (Banks) personalized user experiences based on markets, geographies, languages, accessibility needs, etc. with low-code development.

#4 White label low-code for custom solutions

Not all banks and financial institutions have the luxury of large in-house technology teams to build their applications. Several specialized ISVs who develop apps exclusively for the banking and financial services industry, are in need of efficient ways to build and reuse application components.

It is here that white-labeling of low-code platforms like WaveMaker can help. Low-code platforms can be customized for different user personas and can help by:

  • Empowering citizen developers: With drag-and-drop functions to build complex enterprise applications, business users can also contribute, without knowing to code.
  • Building differentiated applications: Templates, prefabs and reusable components ensure that the basic functionality exists, for developers to only work on personalization and feature extensions.

As we speak today, the financial services industry is going through a sea change. From being a supporting function, IT today shapes business models, operations and even service delivery entirely. And as PWC recommends, simplifying legacy systems, taking SaaS beyond cloud based core banking low-code, adopting robotics/AI, and preparing enterprise architecture to connect to anything — from enterprise databases and big data to IoT — will become top priority for global players in the financial services industry.

Banking Low-code can offer the speed, flexibility, and customizability needed to create personalized banking experiences for customers.

Explore WaveMaker use cases for banking & financial services

Categories
Blog

Speed, scale and savings: Three reasons ISVs must adopt low-code in 2021

In 2020, Forrester had predicted that 50% of developers will use a low-code product. And then the pandemic happened. Instead of derailing the prediction — like the pandemic did for most trends of last year — it accelerated it. So much so that Forrester predicts that the “accelerated adoption of low-code platforms will change how teams organize.”

Today, low-code is no longer one of the many tools that help development, but a strategic initiative that fundamentally shapes the way software delivery will happen. Enterprises already understand this. For independent software vendors (ISVs) though, this can be a different ball game.

Why were ISVs resistant to low-code

As a ‘software company’, most ISVs pride themselves on having excellent developers, building products that are robust, customizable, secure and scalable. For long, low-code development was seen as a means for citizen developers or business users to build prototypes, which then the ‘real developers’ built by hand. With reason.

Most low-code development platforms available today can not handle complex business logic or application requirements.

Until now.

What low-code can do for ISVs in 2021

If there is one change that 2020 has brought to the world, it’s the widespread acceptance of remote work. For employees to work remotely, enterprise software needs to work remotely as well. This shift to the cloud, and perhaps a SaaS model, requires ISVs to rapidly modernize their software. Low-code can enable that.

#1 Fuel rapid application modernization

Low-code can make software development faster by 10 times, as compared to traditional methods. Features like reusable elements, drag-and-drop and process modelling let individual developers or small teams release in days or weeks! Pair it with an agile-DevOps process, and it can modernize legacy applications to support enterprise needs of the future, without any disruption to current paying customers.

With low-code:

  • Existing teams need no reskilling. Developers and even business teams can be onboarded quickly and can use the product effectively.
  • Existing processes are not disrupted. A low-code platform like WaveMaker integrates with existing processes to enable modernization.

#2 Enable scale without compromise on customization

ISVs often maintain multiple implementations of their products for each customer. Even when on cloud, modernizing applications across these implementations — and their customizations — can be a complex endeavor.

Low-code platforms like WaveMaker leverage component-based models and micro-services with session-less architecture to build large, customizable applications at scale. With simple API integrations, ISVs can also ensure their applications work seamlessly with a wide range of other software that the client uses. 

With low-code:

  • ISVs get complete ownership of code that the platform generates. Any edits / customizations needed can be handled effortlessly.
  • Development teams get to choose and maintain their coding infrastructure.
  • There is no runtime dependency.

#3 Save costs

The biggest advantage of low-code development is that it doesn’t require ‘specialists’ for every function. A lean team of professionals can use low-code to build or modernize an entire application. With powerful abstractions over technical programming, low-code platforms can empower development teams, making it easier for non-specialists, junior programmers and even citizen developers to build software.

Low-code reduces expenses both for the ISV and their end customers. It also frees ISVs from the expense of regular maintenance, while reducing development costs multi-fold.

With low-code:

  • Dev teams can generate and maintain open standards based code, without needing specialists for each function.
  • The consistency of code generated ensures longer usability and easier maintainability.

WaveMaker for ISVs

Unlike most low-code platforms, WaveMaker is built to handle extreme customization, enterprise-grade security and scale, all of which are essential for ISVs.

  • Open-standards based code uses popular frameworks like Angular, Spring, Hibernate, Cordova, etc. to help modernize apps without full scale development.
  • WaveMaker’s Java-based platform ensures rapid development, easy integration, responsive design and scalable architecture.
  • It combines micro-services with session-less architecture and auto-generated REST API to build customizable cloud-native apps.
  • It keeps data secure with RBAC and protection against Top 10 OWASP vulnerabilities.

If you’re an ISV looking to leverage enterprise-grade low-code technology to modernize your application, get a demo or contact us here.