Categories
Insights

When is a low-code platform right for your business?

In June 2014, ‘low-code went mainstream. Forrester researchers formally announced the arrival of ‘low-code platforms in their paper ‘New Development Platforms Emerge For Customer-Facing Applications’. While the idea of visual development and configuration instead of hand-coding existed since long before, Forrester’s report marked the time when global enterprises began taking low-code as a serious alternative to their current methods. And it has grown significantly since. 

Gartner predicts that by 2024, over 75% of large enterprises will use low-code development tools, and over 65% of all application development will be done with low-code tools and methods. Confirming these hard stats, low-code proves to be worthwhile because: 

  • It can make development up to 10x faster, as Forrester’s John Rymer argues.
  • It can help your application deployments achieve first-time-right. 
  • It can enable generalists to perform specialized coding tasks, optimizing investment in people.
  • It can improve your governance initiatives and security posture, and prevent shadow IT, through a unified platform.

The real question about adopting a low-code platform is: When is a low-code platform right for your business?

In order to help you gauge if low-code is right for you, in the present, we’ve identified specific situations in which enterprises see great benefits from low-code, across three dimensions — your business landscape, preparedness for low-code, and technology position.

Business landscape

When you need to ease your digital transformation journey

Enterprises on a digital transformation journey realize soon enough that their business landscape is evolving faster than their transformation initiative is moving. They need greater speed in their application modernization endeavor without sinking more investments in additional resources/tools. Low-code can enable this.

When you need to close the business-IT gap 

The visual approach of low-code simplifies the application development process — it abstracts complexities of integration and configuration, somewhat reducing the intimidating aspects of hand-coding. This allows business users and professional developers to collaborate more meaningfully. With visual prototyping, business users can play with the feature, facilitating earlier validation, reducing rework and cost overruns significantly.

When you need to deliver fast with limited resources

Be it market pressures, compliance needs, or competition, businesses from time to time come under pressure to deliver fast. And hardly ever has an IT leader said, “we have all the people and budgets we need to accelerate”. More often than not, IT teams are left to find innovative, yet cost-effective ways to deliver fast. And low-code is exactly that.

Low-code platforms enable enterprises to use their existing teams to perform complex development tasks with minimal upskilling. With visual prototyping, they provide a common ground for business users and developers to collaborate, without yet involving IT or DevOps. They automate coding, saving time and energy for engineers, which they can then leverage to innovate at scale. It ensures that you have standardized and consistent code, in spite of different developers working on it, eliminating shadow IT and facilitating better governance.

Preparedness for low-code

When you know exactly what you want from your low-code platform

As you identify and explore low-code alternatives to traditional development, you will develop organizational know-how about how it works, how it fits into your existing systems, etc. In such a situation, you might be in a great position to identify the perfect use-cases for adopting low-code — say, while modernizing legacy applications. 

In such a case, where you’re already up the learning curve, low-code can generate incremental benefits for you.

When you have identified the right people who will maximize the benefits using low-code tools

We’ve seen that early adopters and power users of low-code tools tend to be technically-inclined business users. For example, a business analyst who has a clear understanding of data organization / logical flows and a strong product point of view can leverage low-code for configuring and setting up the reporting software themselves. Or generalist developers who need to perform specialist roles as part of their job — say a backend developer needing to do the UI design. 

When you have identified the specific person who can leverage low-code because it fills a specific gap, it can work wonders.

Technology position

When your app requirements are varied 

Enterprise applications can sometimes be labyrinths of layers, held together by loosely defined integrations. When different teams within an enterprise come to the developer with different business requirements, a working reconciliation of them all can be daunting. With low-code, you can build custom apps specific to the requirements of each business team, without wrecking the foundations of your application. 

When you have high expectations of tech innovation 

In a world where every business is a tech business, every enterprise faces pressure to innovate. This can be even more demanding in a tech-heavy industry.. Low-code helps developers build features faster — with the visual interface — and also gets feedback quicker from business users. 

When you already have IT support for application integration 

Existing development teams often have a conceptual understanding of the application architecture and underlying infrastructure, which enables them to integrate and deploy their code. Adding a low-code platform to accelerate development brings an additional layer, which also needs to be integrated. On the other hand, enterprises might still need IT support to integrate the code written using the low-code tool into the larger application codebase. Often, enterprises shy away from adopting new tools for fear of this integration.

If you have an existing IT support team that can facilitate a low-code platform’s integration into the application landscape, you are in a better position to adopt low-code and reap its benefits.

Low-code as a practice and low-code platforms as tools can help application development teams across a wide range of functions. Whether you’re just considering modernizing your legacy systems or are at the cutting edge of tech innovation, low-code can help accelerate your digital transformation journey.

Categories
Insights

How Low-code Helps CIOs Accelerate Digital Transformation

CIOs need to embrace low-code as it can help accelerate digital transformation and application development demands

TGI Fridays recently introduced Flanagan, an AI mixologist. It is an app and chatbot that creates personalized drinks based on customer flavor preferences and moods. In another side of the marketplace, Nissan integrated Microsoft Office 365 to bridge silos, unify business units, make them “mobile-enabled”, and to create a “digital workplace”. This is the age of the “future-forward experience”. As many companies and brands are working towards delivering experience, the key enablers are emerging technology and modern software applications.

Technology plays an important role in this age of the experience economy. The workplace is transforming, aiming to become more optimized. The workforce is evolving, where employees are now working beyond boundaries and using technology to collaborate and communicate in productive ways. Customers are becoming more demanding, expecting exceptional experiences. Reflecting these changes, enterprises and businesses are modernizing their processes and systems.

Along with the evolving workplace, workforce, and marketplace, the role of IT leaders and CIOs is also transforming. With the demanding need to adapt to a highly-optimised and hyper-connected world, CIOs are nudged into taking a strategic role. They are now expected to be change agents, responsible not only for managing IT budgets but also to identify revenue streams and create business value.

As digital transformation has become the main agenda, CIOs are using technology strategically and leveraging digital opportunities. The fact that in 2019, 40% of technology spending (more than $2 trillion) is estimated to have been assigned to digital transformation initiatives, adoption of emerging technology has become the biggest objective for enterprises. The app economy plays a crucial in driving digital transformation and business innovation. CIOs have to consider the people, platforms, and processes that will cater to the increasing demand for modern applications.

The increasing demand for enterprise applications has led to the increasing adoption of low-code platforms in the Application Development & Delivery (AD&D) market. Enterprises are working towards leveraging agile practices and incorporating development techniques to create a minimum viable product (MVP).

CIOs and IT leaders have to determine what practices, what type of technology and the skills required to achieve modernization. Here’s how emerging technologies such as low-code platforms help CIOs drive digital transformation ROI.

How CIOs can leverage the potential of low-code platforms to drive digital transformation ROI

● Align goals with people, processes, and platforms — Digital transformation goals need to be aligned with the business strategy and the culture. Senior IT leaders and CIOs need to communicate the goals and ensure that their workforce is tech-savvy to deliver digital transformation objectives. Alignment of strategies with business needs and expectations will provide CIOs with a better opportunity to succeed in implementation.

Emerging technology such as low-code platforms provides IT leaders with the potential to bridge silos, streamline processes and enable teams to collaborate and focus on core innovation. Using rapid application development tools, CIOs have been able to accelerate their revenue-generation and digital transformation initiatives.

● Get equipped with a modern technology stack — Before beginning the journey of digital transformation, CIOs need to identify legacy systems that need to be modernized. Incrementally modernizing traditional systems can allow stakeholders to witness the benefits and ensure wider adoption in the enterprise. By introducing a modern technology stack, enterprises can also involve and engage employees to upskill and learn about new technologies.

What low-code platforms provide is the potential to modernize applications without rebuilding older applications from scratch. The agility and speed to develop enterprise applications make low-code platforms a preferred choice.

● Accelerate time-to-market delivery of applications — The hyper-demands of the marketplace put much pressure on enterprises to deliver more with less. Accelerating time to market of product delivery needs to one of the main objectives of transformation and modernization.

Time being of the essence, IT leaders are widely adopting low-code platforms because they enable developing applications faster. Rapid application development reduces time spent on design and coding while improving developer productivity. By advancing the ‘speed to market’ metrics, CIOs using low-code platforms can achieve a higher return on platform investment.

● Develop custom applications to deliver user experience (UX) — While time is of the essence so is the experience. When introducing new technology and applications, user experience (UX) has become the core objective. IT leaders need to focus on the purpose of developing new applications. The objective must revolve around the needs of the users and how emerging technology can help them improve collaboration, communication, productivity, and performance. Ideally, application development strategies need to revolve around the ethos of users.

With low-code platforms, custom-built applications can be developed based on user preferences with agility and speed. They enable IT leaders to create enterprise apps that are designed to adapt to experiences instead of devices. By improving the usability metrics, emerging technology like low-code platforms has higher adoption rates and better opportunities to deliver business value.

● Choose the right platform and technology — Given the increasing demands of the digital marketplace, modernization and digital transformation initiatives require IT infrastructure to be agile, flexible, scalable and cost-effective. By supporting the development and delivery of custom applications on-time, low-code platforms ensure enterprise agility efficiently and cost-effectively. With many players in the AD&D market, CIOs need to wisely choose the right low-code platform.

Platforms offer ready-made application infrastructure, improve usability with rich user interfaces, enable full-stack development, give access to the best-of-breed technology stack, enable API-driven integration and encourage business user participation. Ideally, the chosen low-code platform should firstly serve a particular business need. It should allow for code reusability, improve agility, ensure faster time to market, and make integration and deployment easier without vendor lock-in.

Now is the time for CIOs to consider digital transformation

Enterprise-wide digital transformation is all-encompassing. It affects all stakeholders and requires revamping processes, upskilling people, integrating modern technology and changing the culture. As change agents, IT modernization and digital transformation can be a challenging feat for CIOs and IT leaders. Emerging technology such as low-code platforms acts as a catalyst to change, providing CIOs with a great opportunity to accelerate modernization and support digital transformation initiatives.

As the hyper demands of the enterprise continues to increase, the technology that delivers innovative solutions needs to be identified. The strategy, approach, and technology that CIOs and IT leaders choose will be the factors that determine the rate of returns on platform investment. The faster the informed decision is made, the sooner the benefits will be evident because the market waits for no one.

Originally published in Information Age by Vijay Pullur, CEO, WaveMaker.

Categories
Enterprise Application Development

Micro services Architecture in Greenfield Projects – WaveMaker

Launching a new business or project means that everything has to be built from the ground up, from defining services, functions, and product range, to deciding the technology, infrastructure, and resources required. Enterprises, to serve the evolving demands of customers and add business value, are looking to develop new applications faster with minimal resources and cost.

In greenfield development projects, the new applications built either solve unaddressed business challenges or entirely replace an existing inadequate system. Consider this example of a new start-up company that is going to launch an online, product range. The primary focus of the company is to build a minimal viable product (MVP) with the ability to make product improvements from customer responses. Without existing systems or architecture in place, the company plans to build a suite of applications to serve various business needs, add new functions, provide an uninterrupted online presence, and ensure scalability based on changing customer demands.

The company, with the absence of an existing legacy system, is weighing out the option of adopting microservices. If they choose microservices architecture, this would involve defining service boundaries (which need to be dynamic) and deciding the technology stack for each microservice. It would also include rethinking operations, creating a scaling strategy, provisioning infrastructure required for elastic scalability, and configuring and maintaining monitoring solutions.

While it is a relief not to inherit technical debt from legacy systems, there are many aspects to be considered when adopting microservices architecture for a greenfield development project.

Define your domain or service boundaries

When developing greenfield applications, defining service boundaries could be tricky. Before trying to categorize your system into different services, ensure you know your domain. For instance, you define that service A is responsible for doing a particular function. What if this changes or if you realize the function needs access to service B.

Before separating functions into microservices, you need to understand and have clarity about the dependencies they have. Only after some time would patterns emerge from which you can identify the functions and services and the problems they can solve. However, there would be apparent functions such as login or profile services that could be carved out into a microservice straight away.

Decide on the technology stack

The technology stack used with microservices in greenfield projects is diverse. You can combine multiple programming languages, frameworks, and data storage technologies. However, standardization becomes an issue with different teams using an entirely different technology stack. Low-code platforms offer one point of control for application updates and maintenance to overcome technology diversity. With a centralized repository for version control, multiple developers can collaborate and merge changes.

Achieve a minimum level of operational readiness

To start a greenfield project using microservices architecture requires a minimum level of operational readiness maturity. Operational readiness in terms of ensuring there is access to a deployment environment and building continuous delivery pipelines where services are created, tested, and deployed. Whether it is identifying and provisioning infrastructure requirements, scaling strategy, and service discovery, you need to have a plan to address the operational complexities that could occur when adopting a microservices architecture.

Low-code platforms simplify application development, deployment, and delivery. They use Continuous Integration (CI) tools like Jenkins to provide a continuous delivery pipeline and provide an automated containerization workflow. Low-code platforms transform the way enterprise applications are developed and delivered.

Reorganize development, DevOps and IT teams

To ensure every microservice is managed independently, you would need to reorganize your teams and maintain a balance of resources. It is not productive to have engineers working on multiple microservices; neither is it feasible to have one person for each unique role. For instance, a DevOps engineer can manage dual roles of development and operations, or a full-stack developer can manage the entire application development lifecycle. Ideally, every team should have a balance of expertise which could comprise of developers, testers, operations engineers, database administrators, UX designers, and in some instances, even product managers.

With the rapid increase in opportunities applications have to serve customer needs, development teams are under pressure to deliver at a fast pace with tight turnaround times. Added to that, the shortage of skilled professionals is hindering rapid application development. Here is where low-code platforms help by providing a user-friendly interface and a development environment where teams can collaborate on modules with efficiency.

Ensure microservices implementations do not turn into distributed monoliths

There are whispers about how most greenfield microservices implementations turn into “distributed monoliths.” By taking a monolithic codebase and spreading it across a network, the benefits of microservices architecture fade. For instance, when making changes to business logic in a shared library, if you need to synchronize the deployments of multiple teams, it reflects the inability to deploy changes in isolation. When building a new system, it is a huge advantage to have a single, non-distributed codebase.

In greenfield, microservices-based implementations, low-code application development platforms provide business agility by automating systems and ensure data security, integrity, and compliance with IT governance and standards. However, before going all in to adopt a microservices architecture, it would be useful to be clear about the fundamental aspects mentioned earlier about service boundaries, infrastructure, technology stack, resources, and team organization.

Categories
Enterprise Application Development

Beware of Afterthought Low-Code Platforms from BPM Vendors

There is a new sense of urgency in modern enterprises, to drive mobility and agility, and to deliver more, faster. The expectation from modern-day application development revolves around delivering quick and agile releases, multi-channel applications, availability, and scalability.

The formula for quick release is quick development along with continuous integration and delivery. Quick releases = Quick development + CI/CD

Quick Development is where Low-Code Development vendors are providing superpowers to accelerate development and delivery. CI/CD challenges are already addressed to a great extent. Docker, Kubernetes on the cloud, and other CI tools can be configured with Jenkins to achieve integration and delivery. Considered to be a standard in the industry, most companies are already using CI tools and low-code to drive quick releases of applications with agility.

The underlying challenge is that majority of the vendors are BPM (Business Process Management) vendors who generate applications originally created for business users. As complete application development is not feasible without IT, BPM vendors are calling themselves low-code platforms. The applications they develop are an afterthought and are invariably reflected in the quality and maintainability of the application.

BPM modified solutions are not bendable

BPM tools primarily cater to BPM types of applications and other facilities are normally added as an afterthought. By using tools to quickly generate process-based applications, technical business users and citizen developers fall short of taking application development all the way. Typically standalone applications, core business applications, mobile applications, dashboards, API mashup applications, and chatbots are not optimized by the tools provided by BPM vendors.

The challenges professionals developers face when using BPM tools

Professional developers are a different breed compared to citizen developers. While business users can create intricate wireframe diagrams, not many are proficient in understanding the code that goes behind a single box in a diagram. The task of wiring code into wireframes can only be performed with the help of professional developers and their role typically involves (not limited to):

  • Writing custom business logic
  • Using custom or external widgets
  • Styling the application their own way
  • Testing applications for security and vulnerability
  • Deploying applications on the IT approved infrastructure
  • Delivering applications on different devices and channels
  • Managing application maintenance

When using custom BPM tools, professional developers face several challenges. They are unable to follow the popular agile methodology in the same way. BPM tools typically use complicated and proprietary technology and are based on older UI technologies like JSP/JSF, making it difficult for professional developers to work with. Moreover, BPM applications are not normally based on modern, microservice architecture, making multi-channel delivery a challenge. Added to this, professional developers are unable to use their favorite IDE, which can be demotivating and constrictive to the value they would like to bring.

Supporting professional developers may seem to be an ordeal, although that’s a price worth paying for high-quality, enterprise application development. Fortunately, low-code tools have proven to take the load off professional developers by doing the heavy lifting and enabling them to deliver more with less.

Taking app development all the way. How low-code empowers professional developers 

Rapid application development platforms are designed to provide a frictionless environment for professional developers to learn and evolve. Low-code platforms compared to BPM tools, help professional developers meet their expectations from the development process. Expectations such as:

  • Using modern architecture with modern technologies.
  • Delivering the application fast with Microservices-based delivery.
  • Integrating multiple devices and channels using API-based development.
  • Creating and using standard code so it is readable and maintainable.
  • Using agile methodology (not a modified agile or BPM methodology).
  • Using their choice of CI/CD tools as these technologies are already being used.
  • Using their preferred project management tools with no overpowering process from low-code tools.
  • Creating and capturing repetitive business logic that can later be re-used and expanded.

Rapid Application Development and low-code Platforms help produce ready-to-deploy applications. Combining code generation features with an integrated development environment (IDE), low-code includes the entire application technology stack, UI, middle-tier, and back-end. Here are examples of how low-code platforms development provides accelerators for development and delivery instead of imposing new practices:

  • Reusable widgets that can be designed and configured
  • Reusable styles and a provision to create custom styles
  • Reusable templates to cut the intense styling
  • Easy to connect external services and systems like REST APIs, SOAP APIs, and WebSockets without additional coding.
  • Auto-generates APIs wherever possible to avoid boilerplate code
  • Integration with the existing CI/CD and version control of choice
  • Provides accelerators for devices and channels
  • Out of the box configurable security like SSO, AD, and LDAP

There is a change in the pace of enterprise demands and delivery. With a critical need for rapid application development, more often than not BPM vendors are mistaken for low-code platform providers. Choosing the right Low code Platform could ensure you empower professional developers to deliver more, deliver fast, and deliver better. Because enterprise application development is more than an afterthought.

Categories
Insights

Shift from Working in Silos. Achieve Agility Using Low-Code Platforms

Here’s a thought. Every minute, more than one person in the workplace is using an application to connect, communicate or coordinate. More than one person is responding to emails from their smartphones, digitally updating a sales opportunity, virtually conducting a project meeting or collaborating to update workflows and tasks.

Welcome to the hyper-connected workplace, a complex ecosystem where people, devices , and applications interact.

Be it an HR application, an instant messaging application, a task management tool, a virtual meeting or a team coordination application, core business applications have become the lifeline of enterprise operations.

As enterprise applications become easier to develop, everyone in the workplace wants to develop an app for their specific business needs. An app to interact with other peers, to collaborate and share work, for leave management, IT support, project planning and management, content management, resource management, learning and development, the list could be endless. But what about the stamp of approval from IT? What about security and agility? Are Lines of Business (LoBs) working in silos?

LoB Apps – Fighting Functional Silos of Teams Within Teams 

When LoB units, with teams within teams, decide they need a software application to solve a business need, it leads to the development of innumerable enterprise applications.

While this system may solve individual business unit requirements, a need will arise to interact and connect, securely and seamlessly. With this hyper-connectivity comes the need for agility and security, and here’s where the technical challenge arises. The ground reality, however, is that LoB units within themselves and IT are working in silos, while in fact, they need to complement each other.

As digital businesses today need faster release cycles and agile development, ensuring tools, processes, and knowledge skills are established early in the development lifecycle is needed. To bridge silos and improve the performance of application development, a new approach of Agile Operations must be embraced.

The Winning Agile Approach for LoBs in the Application Economy 

Go beyond “Keeping the Lights On”. The core focus of LoB managers is on improving the quality and performance of applications. Maintaining the balance between “keeping the lights on” or reducing operational expenses and innovation will result in operational excellence and internal competency. Adopting an agile approach gives LoB leaders to streamline processes to achieve competency and optimize resources.

With agile development techniques, LoB and IT functions can be connected. IT is part of every business function. With more freedom for developers and LoB managers to develop applications independently, the bottleneck arises when it has to be vetted by the IT team for security and viability. To ensure better collaboration between IT and LoB, and accelerate project delivery, enterprises are embracing agile development practices.

Using Low-Code Platforms to Achieve Agility and Shift from Working in Silos 

A ‘not so secret’ ingredient to achieving agility is connecting people, devices and applications seamlessly. Each line of business require various types of applications specific to their business needs and as LoB applications store valuable data typically in legacy databases, integration with other systems is complicated.

Moreover, LoB apps are built by mainstream developers than business users. For them, innovation and code control are important factors in their development process. Here is where low-code platforms positively impact professional developers to build and maintain LoB applications. low-code platforms provide agility to LoB managers and team members by:

  • Streamlining the process of collaboration and developing solutions to connect business units seamlessly.
  • Enabling the reuse legacy functions, integrations and scripts, therefore empowering LoB app developers to rapidly develop and deliver responsive apps.
  • Providing visual tools that team members can use to communicate and collaborate better.
  • Enabling them to handle technology requirements to process data, develop shared repositories, automate workflows and create dashboards without writing a line of code or visiting the IT team.
  • Enabling better collaboration between  LoB and IT to drive real-time, data-driven decision making.
  • Creating customized applications that provide a functional technology solution which drives specific business goals faster.

21st-century LoB leaders understand the importance of achieving agility. Low-code platforms empower professional LoB app developers to develop new apps to meet functional needs and bring LoB into the mainstream. In this hyper-connected workplace, low-code makes it possible to connect, communicate and coordinate, seamlessly.

Categories
Insights

Becoming a Platform: What it Takes

In the SaaS world, branching out to a platform business is fairly common. It’s not a surprising move anymore, given the huge benefits of owning the building blocks of other businesses, as we talked about in the first article of this series. Since building a thriving platform ecosystem doesn’t happen overnight, in this follow-on piece we’ll explore the steps for implementation.

In this era of digital platforms, there is no limit to the number of customers you can reach out to. McKinsey noted recently that “companies pursuing offensive platform strategies yield a better payoff in both revenue and growth”. Looking at this, one might think the sky’s the limit for digital natives having an army of tech-savvy professionals. But this might be generalizing a bit. Incumbents can command a 20 percent share of digitizing markets, compared to only 5 percent for digital natives. But only 3 percent of incumbents have adopted an offensive platform strategy.

Though adoption is low, a growing phenomenon indicates that companies are transitioning from a product-based to a platform-based business model. Technology is at the core of this transition. Cell phones, which were once just typical products, have now become platforms offering a plethora of functions besides only making telephone calls. This is bringing subscribers together with application developers.

According to Harvard Business School, a successful platform strategy involves three components –

  • Connection: how easily users can get access to the platform to share and transact
  • Gravity: how well the platform attracts participants, both producers, and consumers
  • Flow: how well the platform fosters the exchange and co-creation of value

Example of a product organization supporting multiple products sharing components of the same platform – by Wyatt Jenkins

If you are considering branching out to a platform business model, the following steps may help in your implementation approach –

  • The foundation: It is critical to establish the core services that your platform will provide its users. From an IT perspective, a platform provides a complete environment for developing and deploying applications that can speed time-to-market and generate revenue when reused. As the platform grows, you can add more features or services depending on the needs identified by the platform users themselves. For example, LinkedIn’s initial offering to users was creating a profile page. Then they realized they needed to add more features to encourage active participation and added discussion groups followed by recruitment and advertising functions and finally letting users publish their content – turning the professional network site into a publishing platform. At this stage, IT can start to make build vs buy decisions.
  • The model: Adopting a hybrid model is useful when approaching platform-based business, as it can help enterprises create and capture value to attract new users without abandoning the existing ones. Let’s look at this example for better clarity. When computer game developer Valve came up with its first video game called Half-life, it became a sensation. Soon hackers were developing their own modifications to change the gameplay, creating barriers for those who wanted to play against each other. When Valve realized that there is a demand for an alternative to Half-Life, they hired those hackers who created the best-modified version and turned it into a second game called Counter-Strike. This way Valve turned the threat into a new business opportunity. But as a growing number of versions started creating problems for Valve users, the company created an online software channel in 2003 called Steam to distribute patches. As the number of users increased, Valve transformed Steam into an online platform that allowed developers to distribute their software titles instantly at zero marginal cost — a lucrative proposition for both gamers and game producers. The availability of more games attracted more customers to the platform, including new ones who were now downloading Steam and buying various games. Although Valve continues to sell its own software, today it makes more money by charging a percentage of every sale by other developers. Another example – Qihoo, one of China’s most successful internet firms, started as a security software product that cross-subsidized the development of a new platform with products that they gave away for free, creating more value in the end for the entire platform.
  • The demand: Creating a demand for your product involves attracting a number of users. This can be done in phases like Makerbot, the 3D-printer developer, did. They approached a group of devoted product fans to make desktop 3D printing accessible to all. To expand this group and build momentum for this product, Makerbot conducted a series of projects, conferences, and events. For example, many of the product fans helped build printers for Makerbot when demand started exceeding their production capabilities. The company then turned this enthusiastic group into early adopters of the platform which propelled the growth of Thingiverse – an online platform where makers can post designs and users can download them to print. With the platform in hand, Makerbot then leveraged the efforts of their early adopters to create more features for their platforms. Makerbot’s cultivation of its users as it moved from product to platform was immensely successful.
  • Provide adequate value: To create a demand for your platform, your platform should also create new value for your customers to use it. Valve’s Steam and Lego could both do it. But not SF Express, a leading parcel delivery service in China. In 2014, SF Express launched an e-commerce platform connecting third-party merchants to their customer base. They also opened many physical stores from where shoppers can order products using their tablets. Once ordered, SF Express would deliver the products to the customers who could try it and return back immediately if they wished. But this ‘try and buy’ concept did not attract the users as they were already getting this facility from Chinese retailers for goods purchased online.
  • Internal team: It is important to align your internal team and stakeholders to establish roles and responsibilities to ensure a smooth transition from product to a platform. For example, the IT team can develop the base services of the platform, and business units can develop applications using these services and infrastructure. Accordingly, funds can be distributed so that each unit can succeed. Apart from having a good internal team, companies can also benefit from including outsiders in the process. A Stanford graduate student opened up the code for Lego’s Mindstorm robots to create a platform, effectively transforming a toy into an educational tool for schools. Lego benefited by hiring an external agent and created new value for their product through a platform.

A mindset change

Shifting from a product mindset to a platform mindset can be downright counterintuitive—indeed, many firms discovered new platform opportunities almost by accident and in spite of their own missteps. But, like many transformational strategic moves, the successful transition from product to platform should happen in stages that demand flexibility. Platforms are at the core of the successful businesses of the future. By adopting platform thinking and new technology, any business can evolve to join the platform economy.

Categories
Insights

Branching out to a Platform Model

Building something valuable isn’t a one time process anymore, it is a continuous process and requires you to enable a network of people both inside and outside your company with the right building blocks

What’s common between Facebook, Twitter, Amazon, Airbnb, Uber and Apple? Of course, leave aside the success part! They all conduct their business on a scalable online platform that connects producers and consumers. They create value by facilitating exchanges between two or more interdependent groups bringing in tailored products to the market faster and with less investment. By using the platform model, these companies have grown in leaps and bounds to grab greater market share from well-established firms.

The difference between platforms and traditional business models lies in the way they create value. With producers at one end and consumers on the other, the latter model transfers value along a linear pipeline. The platform model creates value by connecting producers, consumers, and the platform itself. Platform companies have now become the major drivers of innovation as they are setting the standards for digital transformation. As platforms have become the new normal in how leaders are conducting business, enterprises must make the most out of this opportunity.

 

Enterprises can bring their core value unit to the platform and customers can extend the product by adding features relevant to their business

Go figure!

A 2016 survey by Accenture says, “81% of executives say platform-based business models will be core to their growth strategy within three years”. Let’s look at some figures to find out how much popularity platform business has gathered in the business-to-consumer (B2C) context. Almost 80% of China’s e-commerce market is controlled by Alibaba. WeChat messaging platform by Tencent, Asia’s most valuable company, has nearly 850 million users and according to some estimates is the largest gaming company in the world. In the early 2010s, BlackBerry Limited (formerly RIM) and Nokia lost huge market share to Apple and Google because they were acting as product companies in a world speedily embracing platforms.

We’re not even fighting with the right weapons, … The battle of devices has now become a war of ecosystems

This is spurring the investors to put in more money into platform business than in their linear counterparts. The S&P 500 shows platform businesses have an average revenue multiple of 8.9 while for linear businesses, it’s two to four times more revenue on average.

Platform business is also making a lot of noise in the business-to-business (B2B) world. PingAn, an insurance company in China, is an example of how a traditional corporation transformed its business model. Reframing itself as a technology company, PingAn created a portfolio of platform businesses related to insurance in different verticals – connecting doctors and patients in healthcare; purchasing and selling cars in automotive and even in the entertainment industry. Five years into this transformation, PingAn is now the world’s most valuable insurance company.

Let’s loop in South Africa as well. Naspers, a 100-year-old company printing newspapers, transformed itself into a platform company in five years, built global online classified business OLX and acquired food delivery startup Delivery, Hero.

What’s fanning the transformation?

Why are established companies conducting business in traditional ways thinking of disrupting their operations and going bonkers about platforms as a business? These benefits of offering a platform over a product might make for a strong case –

  • Instead of bringing complete products to the market, businesses can be set up around extending the core product. This can reduce the need for capital, manufacturing capabilities, and building the product from scratch. Through documented APIs and SDKs, developers can add features to the product using the platform.
  • Though a product might support limited use cases, a platform can be leveraged to support a wider set of use cases, broadening its market space. Vendors can also reuse the platform for their own benefit.
  • Companies marketing products with limited use cases are less likely to keep customers for long. Platforms on the other hand are deeply integrated into the business architecture and are not easily replaceable. This means that customers will think twice before discarding it and instead adapt it to their needs over time.
  • The value of a platform business increases with more people using it. The examples that we talked about at the beginning – all rely on a large number of people using their platform to interact. This increases the value of the platform over time.

A promise of growth

At times, when there is increasing pressure to build and market something new, a product platform strategy can be the perfect solution. This is because a healthy network of producers will allow the platform owner to reach out to more customers and have a flourishing business. This network becomes more valuable when the platform fosters distributed innovation and each player can grow faster than they would on their own.

Categories
Insights

Role of Governance to Make Low-Code Platforms More Productive

Most organizations implemented low-code tools to speed up the application development process. From $4.32 billion in 2017, the low-code development platform market size is expected to grow to $27.23 billion by 2022. This technology is gaining popularity, not only as a means to transform legacy applications, but also for building customer-centric mobile and web applications.

The ability of low-code platforms to speed up the process of application delivery and deployment enabled enterprises to respond in time to demands for business software. It caught the attention of professional developers when they used it to build complex applications with multiple functionalities used across the enterprise and not just for one department. Add to that, access to cloud services via self-service interfaces compelled AD&D leaders to adopt low-code platforms to innovate and deliver.

Implications of Wide Low-Code Adoption

The idea behind adopting low-code platform is to use a minimum of coding and more visual modules to build applications, whether for user experience or data modeling purposes. According to a Forrester survey, large enterprises are among the biggest adopters of low-code platforms. This has helped to quell the doubts of developers who believed low-code platforms are not meant for building large scale complex application. Using low-code tools, developers found that they can create applications that once took months.

Yet in cases with no proper governance in place, it can become a technical burden for the company as the cost of maintaining such applications can escalate when using closed low-code platforms.

Know Your Users

Before putting any governance in place, it is important to know who the prime users of low-code platforms in an enterprise are. Primarily, professional developers, dependent on coding, are the first-level users of these platforms. They have an intimate understanding of application design, performance, maintainability, and reliability. Then comes business experts or citizen developers who also contribute to building applications by bringing in the knowledge of what the market needs are and how the application can best serve those needs. Depending on who is working on the platform, a sort of control mechanism can be established to ensure that users can get the most out of these applications.

Pitfalls of Lack of Governance – Shadow IT

No-code platforms have a strong appeal for non-technical users. They can rapidly create a business application using the visual tools of the platform without writing any code. In a few years, there will be thousands of such apps performing even mission-critical tasks. Completely independent of IT intervention, it will soon become another instance of Shadow IT. Although these shadow apps improve productivity in the short run, it may compromise IT security in the long run as they are not protected with firewalls and security systems. Also, when these shadow apps fail to deliver certain functions, the cost of rebuilding them using technology approved by the IT often increases the cost to the organization. It may also need to hire external developers who can implement applications in accordance to their IT policies.

When shadow IT is becoming the alternative to traditional ways of delivering applications, it becomes a monumental task to do away with it. But there are ways to realize the benefits of these shadow apps built with tools like low-code platforms, without compromising on IT security and governance. Open-standards-based low-code platforms are widely available and conform to the guidelines of IT security, enabling developers to build customized applications according to their business needs. Using proven rapid application development platforms, shadow apps can be liberated from proprietary technologies that often becomes a roadblock to innovation.

Collaborate Securely to Improve Efficiency

To mitigate the risk of shadow IT, developers want to work on secured platforms that help them build custom applications with minimal coding and in less time. Whether working on a large project or many small projects, enterprises rely on a global team of developers. These developers have varied levels of skills and roles to play. Platforms with comprehensive role-based access control features will allow enterprise application development teams to collaborate better and create applications faster without the risk of project governance issues. It is based on the principle of allowing the least level of access to perform tasks with full efficiency.

Conforming to Governance Rules Made Easy

Today’s government regulations like the Health Insurance Portability and Accountability Act (HIPAA) or European Union General Data Protection Regulation (GDPR) place strict requirements on enterprise databases and their use. Keeping this in mind, logging data changes in a database has become a common requirement of enterprise applications. This involves additional effort during the application development process. Instead, an in-built functionality for data auditing will allow developers to concentrate more on the business logic than handling history logging needs. Platforms that enable seamless integration of such functionalities into applications will automatically become the preferred choice of enterprises to meet compliance needs.

Not All Rules Are Meant to Be Broken!

Rules, standards, and governance help to not only decide what apps are to be created but also how they will be written. Good governance policy is one of the secrets to successful low-code implementation. In the absence of it, an enterprise may end up with thousands of low-code applications in dire need of IT intervention.

Originally published by Rooplekha Poddar in DZone.com

Categories
Insights

RAD Definition is Changing

Rapid Application Development (RAD), also termed low-code development, is a visual approach to creating apps that enable greater developer efficiency. However, what started as technology to help the masses address the speed of basic development has since matured so RAD definition is changing.

RAD platforms started out as tools for citizen developers without substantial technical knowledge of coding, who could use intuitive “out of the box” features to create applications suited for simple departmental and experimental needs. While these early RAD platforms (not this “rad”) brought basic coding capabilities to the masses, the applications created were short-lived and unable to evolve and scale with changing business needs. To address this gap in enterprise IT, RAD technology transformed to meet the needs of developers looking to efficiently undertake more sophisticated legacy app modernization projects, end-user customer experience updates, and long-term digital transformations.

Gone are the days of non-responsive front-end technology, cumbersome integration approaches, and non-standards-based widget and page development. The RAD platforms of today are far more nimble – they’re capable of leveraging millions of APIs and the most advanced open-standards-based technology stacks while maintaining enterprise-grade security and end user experience. As a result, IT teams can tap into these functionalities to execute large-scale digital transformation and modernization projects faster than ever before. The technology enables a higher degree of coding intermixed with visual development, facilitating the creation of long-standing and flexible enterprise-grade applications (see Figure 1).

While there’s no question that low-code platforms have transformed over time to become the advanced, high-impact digital tools of today, the enterprise IT environment continues to evolve as user expectations and preferences shift over time. This dynamic begs the following question: where is RAD headed next?

The future of RAD platforms

Increased usage – As technology further matures and encompasses professional developers’ needs, RAD technology will become the de-facto productivity platform for professional developers executing long-lasting enterprise IT modernization and digital transformation projects.

Enhanced enterprise-grade applications – Over time, professional developers will continue to push the boundaries of RAD as they bring best practices in app development, deployment, and DevOps from their vast experiences into every stage of the application lifecycle. Enhancements will span a range of capabilities, including cloud deployment, real-time integration, and increased developer collaboration.

A central hub for app development via integrations – With increasing API adoption and service consumption, RAD platforms will continue to become the central hub for application development via lightweight integrations to external services. The integration model will redefine the user experience and will serve a specific use case. Examples of such integrations include RPA, BPM, cloud services, SaaS services, IoT, AI, analytics, etc.

Emphasized digital experiences – The customer/user experience will only grow more important as enterprises compete digitally. As a result, RAD platforms will increasingly cater to building highly user-centric digital experiences with clear customer touchpoints.

Long-lived applications – With serious professional enterprise application developers using flexible RAD processes, the future will hold increased development of mainstream business applications that prevail for many years (long-lived applications) and continually serve organizational needs.
RAD platforms have come a long way since their inception, and time will tell exactly how citizen and professional developers will leverage this approach in the future. Regardless, the IT community can count on the fact that as enterprises’ digital needs continue to develop, RAD platforms will continue to be a high-impact tool for modernizing years of legacy applications and creating digitally agile business infrastructures.

Categories
Insights

Agility Outsourcing

When it comes to Outsourcing Business / IT applications, there are 2-3 models that CIOs and IT leaders are most accustomed to.  These models are so well entrenched, that stakeholders seldom look for a better model.  It is not just IT leaders who are pushing these models, the entire IT Services industry continues to push these older models as they are profitable for their own businesses.  Given the rapid pace of change in the Software / Tech industry, it is now time to rethink established Outsourcing models that Enterprises have relied on for years (decades really).

First, the basic definition of Outsourcing. By this, we clearly mean Outsourcing the development of business applications (could also be legacy migrations, data management, and many more projects).  Once stakeholders have determined that a project needs to be outsourced, it then becomes a question of finding the right vendor, timelines, and budgets to get them executed.   Here I will not go into the details of coming up with Business Requirements, Requests for Proposals,s and sourcing vendors, but focus more on Outsourcing as it relates to methodology, technology, timelines, and budgets.

The most dominant models today are a) Fixed-cost model b) Time and Material model and c) Staff Augmentation model. The Fixed-cost model is easiest to grasp by business sponsors. They allocate budgets for different projects and assign project managers to execute on those.  While this model is tried and tested, there are many downsides.  Many of the details around project execution including architecture, technology stack,  development methodology, and deployment practices are left to the vendors. The further downside to this model is you have to work with vendors’ change management processes.  Not paying attention to these downsides, would result in increased TCO over the long term.  

The Time and Material model of Outsourcing is also very well tested.  While difficult to get upfront estimates around total costs for their projects, it would at least give flexibility around change management.  However, all other downsides from the Fixed-cost model still apply here.  The third model is simply Staff augmentation.  You would bring in technology consultants and put them under existing teams to speed up project execution. This is Outsourcing to the extent you don’t have to bring in people on a full-time basis and is closer to the Time and Material model and it also comes with the same set of downsides.

To address shortcomings with the above models, there is a better model that I refer to as “Agility Outsourcing”.  This model is in part based on the best practices seen in Software companies to build their own products coupled with solutions to meet budgetary and time constraints of Enterprise Outsourcing.

Here are the key underpinnings of Agility Outsourcing:

  • Agile Development: Start with prototypes and continue to build on them.  Project features are released every 3-4 weeks (aka Sprints). Create a feedback loop from business users to continuously improve the project
  • Using Low-code platform:  Software companies rarely build anything from scratch. They leverage existing “libraries” and open-source software to build their products. With a Low-code development platform, you only need to “compose” your application from existing widgets and connectors and finally auto-generate code for your projects
  • Application Architecture:  It is super important to have a micro-services-based architecture that is API-driven to reduce maintenance costs in the long run. Loosely coupled as opposed to the tight coupling of various systems
  • Open Source Software: Use of freely available software and avoiding proprietary technologies that increase licensing costs in the short and long term
  • DevOps: Having Continuous Integration and Deployment (CI/CD) allows developed projects to be current and up to date all the time (no more launch dates)
  • Cloud Deployment: A considerable amount of savings is possible when your projects are deployed to either Private or Public Cloud

Business benefits of Agility Outsourcing:

  • Budget: This model should result in over 40%-50% cost savings over traditional Outsourcing. Most of the savings come from the use of a Low-code platform for development and maintenance and the rest from underpinnings stated above
  • Timeline: Projects in this model would be executed 2x faster than existing models as this model is designed from the ground up to be very iterative with a continuous feedback loop from business stakeholders

The way to structure the Agility Outsourcing project is to have a Statement of Work for the entire project with a plan for monthly Sprint deliverables and payments. Vendors who offer Agility Outsourcing should be able to give an estimate for the total cost of the project if they have reviewed the project requirements.  With this model, sponsors not only have an overall estimate for the project but also get flexibility if business needs change.  The real gain here is all the best practices and technologies used by Software Industry, benefitting outsourced projects.