2019: First project, big challenge. The Enel X B2B mobile application development.

We are an official partner of Outsystems! As certified partners, there’s an important and challenging project we’d like to share with you. Also, this has been our first coding journey with the most powerful low-code platform of the market. Check out our experience!

Thousands of customers worldwide trust OutSystems, the number one low-code platform for rapid application development. Engineers with an obsessive attention to detail crafted every aspect of the OutSystems platform to help organizations build enterprise-grade apps and transform their business faster. OutSystems is the only solution that combines the power of low-code development with advanced mobile capabilities, enabling visual development of entire application portfolios that easily integrate with existing systems. Headquartered in Lisbon, Portugal, and in Atlanta, Georgia, OutSystems has customers across 43 countries and 22 industries.

Contribution

Front-end OutSystems development
Back-end development

Technologies

OutSystems (frontend)
Salesforce (backend)
Conga (backend)
Datacentric (backend)
DOXEE (backend)
B2W (backend)

Team Rawfish

Length

9 months

The client

Enel X's mission is to find, nurture and develop innovative services and technologies that help people, companies and cities around the world to use energy in new ways, thus creating new value.

The project

The project, designed for a tablet app, has the purpose of facilitating the installation, maintenance and sale process of Enel X products. The brief required the application to be 100% integrated with the company's next internal tools.

Target audience & scope

The target audience is formed by the operators (installers, maintenance technicians, repairers) and sales managers. The app gathers all the work orders and the system creates tasks to be performed by the users. The user can view, modify and integrate tasks throughout the sales and billing processes.

“OutSystems, the #1 platform for low-code rapid application development with advanced capabilities for enterprise mobile and web apps.”

Federica

Rawfish Project Manager

The OutSystems Advantage

OutSystems platform simplifies every stage of the app development and delivery process. Visual modeling and an automated, one-click deployment approach to application delivery help reduce costs and enable continuous delivery without breaks in the life cycle. Developers and teams can provide apps the business requires at the speed the market demands with:

Rapid productivity
Create your apps and integrate in weeks, not months.

Speed and code
Improve efficiency and accelerate speed by developing in a visual environment while retaining complete flexibility to integrate custom code.

Multi-channel development
Develop an application that can run on any device or platform. Delivery time and risks are significantly reduced with error-free, automated deployments.

Open platform
Protect your investment in large back-end systems by integrating with existing systems of record and data sources.

Enterprise-grade platform
Build and manage very large portfolios of applications created by teams of developers just as easily and quickly as a single app.

“OutSystems is the only solution that combines the power of low-code development with advanced mobile capabilities, enabling visual development of entire application portfolios that easily integrate with existing systems.”

Project kickoff and creation of a dedicated team

We joined the Enel X project, already under development, in September 2019: our dedicated team spent 9 months full time on the development of the app.

The Rawfish team was composed of 5 developers with different roles:

1 Tech Lead
with the role of coordinator and supervisor of the technical choices with the other project areas, for the customer, Salesforce or the Ecommerce, and for the stakeholder.

3 Developer
mainly dedicated to the development of the sales flow of the app and the various project functionalities.

1 Developer
for the visuals and internal operations, who after the kickoff took on the role of direct accountant with the client which led him to present the pre-test development milestones in the Rome and Barcelona offices.
In addition, he also became the internal Project Manager for the assignment of tasks to the team, and the bug fixing activities following the scheduled tests.

Development Process

The initial phase included a learning period of the OutSystems platform to be able to tackle the project by aligning with the other departments.

The Team was tasked with continuing the OutSystems development of the application. The application was structured in different modules, in which the functional parts visible to the user were aligned. At the same time, the documentation was created which included: user journeys, functional flows, ppt (video tutorials and demos) etc.

The suite of solutions used for the front-backend development of the project included:

Outsystems (frontend + backend)
Salesforce (backend)
Conga (backend)
Datacentric (backend)
DOXEE (backend)
B2W (backend)

“We learned that OutSystems allows you to quickly adapt to constantly evolving flows and to easily manage even those very complex flows that require interactions between numerous and different external systems.”

Massimo

Tech Lead OutSystems

Work Order data collection

Img 1. OutSystems. Design of the specific algorithm for data collection.

Within this screen you can see the requests that are made to Salesforce which are used to view all the data of the Work Orders and their customers in the application.
Some of the Work Orders include questions to which the technician will have to answer during the execution of the Work Order with answers that are automatically generated based on the type of Work Order itself.

Collection of the technician's answers

Img 2. Outsystems. Design of the specific algorithm for collecting the technician's answers.

The technician’s answers are sent back to Salesforce with a custom structure, so the technician automatically receives the guidelines to proceed with the execution of the Work Order.

Update of the final status of the Work Orders

Img 3. OutSystems. Design of the specific algorithm for updating the final status of the Work Orders.

This screen concerns the update of the status of the Work Orders which is updated both in the local section and on Salesforce.

“The main advantages were the speed of development of the various functions and the ease of the deployments.”

Vlad

Rawfish OutSystems Developer

The team joined the project as the lead developer.

The team constantly supported the QA team in solving bugs and clarifying flows. In some cases there were also demos of some parts of the app.

Together with the development of the application we took care of the creation of the requirements documentation, presentations, and user manuals to support the end user in the use of the application.

In the following months, having acquired greater mastery of the OutSystems platform, “thanks also to “learning by doing”, the team was able to fully recognize the strengths of OutSystems.

“Applying this technology allowed me to understand the differences between native and low code mobile development. With OutSystems, there are several advantages such as easy implementation of third party libraries, graphic development and large-scale project publishing.”

Omar

Rawfish OutSystems Developer