How to architect for reuse in OutSystems

architect for reuse
If you’ve wondered what you can do with an enterprise-class low-code platform, then this series is for you. OutSystems creates five 29-minute demo's on some of the most useful and functional apps and use cases for a low-code platform. This blogpost is about how to architect for reuse in OutSystems. Everyone knows code reuse is the key to a well-architected portfolio of apps. This session shows how you can discover, reuse, and share UI, data, and logic in OutSystems.

Glenn Michiels, OutSystems developer at Providit, gives his view on the subject.

"Outsystems promotes a component-based architecture, meaning that you compose an app (mobile or web) of a number of independent components. One can compare it a bit with Lego blocks where the components, also called “modules” in OutSystems are the building blocks with which you built your application." This architecture has a number of important advantages. First of all, you only have to develop everything once. If you need a functionality, just reuse it. Second, in case of code changes, you only need to do it in one place since. Third, in a development team with multiple people, each can be responsible for a specific module, thus avoiding conflicts of more than one person working at the same time on the same code base.

But how can we, as developers, get the most of this architecture?

Fortunately, OutSystems has described best practices to follow. Below, I have listed some of those I find most important:
  1. Put the data tables of your application in a separate module. If you need to develop a web and a mobile application, both can, and should, use the same database module
  2. Make use of component libraries whenever possible. If somebody already developed a component you need, just reuse is. The best know component library is the “Forge”.
  3. Make use of web blocks. Web blocks are reusable visual building blocks. If customization is required, try to fit it in into the original component. Otherwise you’ll create as second code base.

Reuse the code

Once we have our modules built based on the above rules, we only need to select the ones we need and reuse the code. This is done by referencing the module and selecting the web blocks, actions, tables you want to use in your application. Now we have created a solid, maintainable architecture for the application. We can now with confidence built the application specific code. If you put in place the right foundations from the start, you’ll benefit from it during the rest of the development. The recording can be found here: https://www.outsystems.com/webinars/architect-reuse-demo-series/ Wanna know more about the Outsystems Platform? Check here! Read more

Can Low-Code Handle Workflow and Complex Logic? You Bet!

Can Low-Code Handle Workflow and Complex Logic? You Bet!
If you’ve wondered what you can do with an enterprise-class low-code platform, then this series is for you. OutSystems create five 29-minute demonstrations on some of the most useful and functional applications and use cases for a low-code platform.

Can Low-Code Handle Workflow and Complex Logic? You Bet!

Along with the visual point-and-click model for development, OutSystems has all the fundamental constructs to create complex logic and process flows. Didier Leroy, OutSystems developer at Providit, gives his view on the subject:
Having worked a bit with business processes before, I already knew that it was a powerful tool at our disposal. What I didn’t realize was how powerful it actually is. Features like Human activities, automatic email sending, dynamic logic, executing different processes in parallel and lots more really makes you understand “how powerful Outsystems actually is

Business Processes

Now what exactly are business processes? The demo showed an example of what you can use business processes for. They took a workflow in which a manager has to approve certain proposals. This use case was perfect to discover the possibilities of business processes within OutSystems. After a process started, several things can happen. A common one is that the flow is put on hold, awaiting a human interaction. Once the user does his work, the flow is woken up automatically and continues.

Logic

Next to that, we include a certain logic e.g. executing a database query and making our decision based on the output of the query result. Another common used widget in a workflow, is the decisions crossroads. Depending on the condition returning a true or false, the flow goes into a different logic branch.

Conclusion

The conclusion is that its fairly easy to create business flows with Outsystems. They are structured, very powerful and give a great visual view of the current flow. And finally, you find several plugins on the Forge like the Business Activity Monitoring plugin. It includes a number of process and human activity reports such as group and user load, process instance and activity inspection, SLA status, and load trends. Find out more here! Read more

Error handling like an OutSystems Pro

Error handling like an OutSystems Pro

March's Belgian Outsystems Community Meetup

Even the code of the best OutSystems developers isn't always perfect and might have a glitch. For any developer, in whatever technology they're working, it's not easy to write code that captures all possible exception cases. And we're not only taking about access errors, network issues, ... but also invalid inputs, incomplete or corrupt data, ... Fortunately, OutSystems already covers the basic error handling out of the box but a solid application needs more.
 
 

How to implement error handling

Duarte explained how to implement error handling for the different use cases. She showed that building a robust application that on the one hand give the developer enough information to find the root cause of an issue, and at the same time, alert the end user with a readable, non technical error message does require some thinking and coding.
Find the full presentation here  
  Read more

Solid governance for solid OutSystems applications

solid governance

Sure, working with OutSystems offers quick results. But Rapid Application Development is not synonymous with improvisation. Building applications on a strategic platform such as OutSystems requires a strict governance policy.

Low-code platform

As a low-code platform, OutSystems allows to visually develop applications. On top of that, you easily integrate them with existing systems and add new code whenever needed. But although deep technical development skills may not be required when starting out with OutSystems, there still is a need for governance. Especially when developing business-critical applications on the platform.

Architecture

We all know that an application’s success depends on various elements. Architecture indeed is a very important one. The application’s architecture defines if it will be secure, scalable, maintainable and available. In the ideal scenario, it is based on best practices and offers the desired level of performance. In order to check all those boxes, it is important to allocate the necessary resources to governance.

Plan ahead

Spending money and time on governance saves even more money and time throughout the application’s development and life cycles. Although OutSystems allows to move forward really quickly during the development phase, we advise to plan ahead and thoroughly analyze the project’s requirements before getting head-first into coding. What functionalities are needed? Which are the user profiles? What is the desired level of security? And what about hosting the application in the cloud? Which level of load balancing will be needed? And many more.

And yes, the development process is based on an agile approach. But then again, that doesn’t mean you don’t have to think everything through before you start working. Don’t assume the platform will generate whatever code you need – although it would – but try and aim for a first time right approach.

Investment with return

Agreed, it all sounds quite logical. However, in reality the combination of low-code and agile often leads to projects spinning out of control quite spectacularly. At Providit, we avoid that sort of drama. We prefer to cover the project’s entire scope: from infrastructure and architecture, to governance, application development, support and training. Obviously, application development is our main focus. But then again, that’s exactly why we know how important governance is for all the steps that follow in the process later on.

In the long run

Would you like to rely on OutSystems as a strategic platform for business-critical applications? Good plan! But it is absolutely essential to make that initial investment in governance. It allows you to lay the foundation on which you build robust applications. In the long run, the initial investment in governance leads to even faster development, with better overall results – and less costs – in terms of performance and maintenance.

Would you like to learn more about Providit’s vision on application development governance? Contact us!

Are you eager to know what we can mean to the digital transformation of your organization? Discover it here!

Read more

Integrating Javascript libraries into OutSystems Apps

Javascript libraries

On the web, you find a lot of Javascript libraries available nowadays. This makes the life of a developer a lot easier, as it provides him with a set of tools ready to use in his applications. In other words, it prevents him from reinventing the wheel and thus fastens his development process.

Advantages

Since OutSystems is all about speed, Niels explained how to take advantage of those libraries and integrate them into your OutSystems applications. He was able to achieve the same results in only a few minutes!

Data Range Picker

During our Belgian Community OutSystems meetup on January 22, he took a javascript library called ‘Date range picker’ available on http://www.daterangepicker.com/

Integrating with Javascript

Since reusability is one of the biggest strengths of OutSystems, Niels also explained how to turn it into a reusable component and make it available for everyone.

You find the full integrated version on the forge: https://www.outsystems.com/forge/component-overview/2252/daterangepicker

Using websockets in Outsystems

Have you ever heard of a dashboard where the page is automatically updates without the need of user interaction? Or did you ever have a project where real time data was a key functionality?

Then Websockets is the answer here! It allows interaction between server and client at any time without the client even requesting it. Niels explained us how to integrate this technology into the OutSystems platform. He used the firebase components available on the forge.

And of course, he showcased how to send realtime data to a specific user (or a set of users) regardless the platform (web or native mobile)!

In summary, please find the presentations below.

https://www.slideshare.net/Providit/outsystems-community-meetup-jan-2019-javascript-integration

https://www.slideshare.net/Providit/outsystems-community-meetup-january-2019-websockets

So, did we trigger you with our expertise? Contact us for a good chat!

Curious about what we can do besides showing our expertise? Discover it here!

Read more

OutSystems Developer Conference: Niels’ journey 

OutSystems Developer Conference: Niels’ journey 

In November last year, the entire Providit attended the OutSystems Developer Conference in Lisbon. The conference was dedicated to the development of mobile and web apps on the OutSystems low-code platform. The objective was to strengthen the bond among the team members and to learn new things about app developing with OutSystems. Niels, OutSystems Professional Developer and lead developer at Providit, especially enjoyed learning more about microservices, mobile applications, and the use of Microsoft Azure AI in Outsystems.

The Providit team travelled to Lisbon a day early, to have a day of team building. The team members visited the city center and had a good time together while sightseeing and having a couple of drinks at the terraces. After a relaxing evening on the coast, the team was ready for two days of dedication related to the OutSystems Platform.

Microservices

The first tech talk that Niels attended was part of the Architecture track. “It was a fantastic session”, he says. “Since OutSystems 11, the architecture to build applications has improved a lot. One of the cases on display was a back-end example with several applications using the same server actions. However, the code needed an update. Normally, this means that each application has to be manually updated and deployed. Microservices, a new approach, solves this problem by ignoring manual updates as the applications can use the new code automatically.”

Mobile applications 

Niels also learned something interesting during a tech talk about mobile applications. “I asked a question that had been on my mind for a long time: how to synchronize large pictures to your smartphone without impacting its performance? The answer was that it is important to compress the files so that they become small before synchronizing. In that case, it’s possible to keep working on your smartphone as the decompressed files are downloaded in the background. When you want to see a picture, the full file will be downloaded.” The goal for attending the sessions was hereby met: learning new things.

Microsoft Azure

A last tech talk that Niels attended was about Microsoft Azure on the OutSystems Platform. “The presenter explained how to integrate an online tire catalogue with the help of Microsoft Azure recognition software. The result is that customers now scan a tire with their smartphone and receive information about it such as type, width, wheel diameter, and price.” By combine OutSystems and the MS Azure recognition software, the presenter was able to create a great application in no time.

Niels is an OutSystems fan and regrets that he was not able to attend more tech talks during the two-day OutSystems Developer Conference. However, the good news is that all talks are now available on the conference website: https://www.outsystems.com/learn/techtalks/.

Developing apps with OutSystems at Providit feels like home to Niels. “We are a very close group of colleagues and are also friends. Our organizational structure is horizontal, and everyone’s opinion is appreciated. This is often not the case at big IT companies. Last but not least, at Providit I get the possibility to grow personally and professionally. That’s really important to me.”

Do you want to become an OutSystems developer and help organizations to develop better apps faster? Contact us via info@providit.eu

Would you like to know what we have to offer? Discover it here!

Read more

OutSystems 11 at the Belgium OutSystems Community meetup

OutSystems 11

OutSystems 11

OutSystems recently released its new version 11. To us the ideal moment to take a closer look at it during our Belgium OutSystems Community meetup of 13 November. Warm welcome!

Besides that he entire Providit team went to Portugal to discover its new features. But more on that trip in another blog post. Now, we would like to focus on the following three topics.

Service Modules, Service Actions and Screen Templates

First of all, Didier Leroy talked about Service Modules and Service Actions. Service Action allows, compared to Server Actions, to create a weak dependency between actions.

Next, Nick Vandebriel introduced the new Screen Templates to us. OutSystems took a close look at the market and created at least 50 templates. They cover most of the types of applications that have been built lately. Exactly what you would expect from OutSystems! Starting from one of the templates obviously allows you to develop the screens even faster. 

UI Components

And last but not least, Glenn Michiels demonstrated how UI Components are used to -again- increase the performance of the developers.

So, please find all the content in our presentations on:

1/ Service Modules

https://www.slideshare.net/Providit/outsystems-community-meetup-2018-11-service-modules-124969897

2/ Screen Templates

https://www.slideshare.net/Providit/outsystems-community-meetup-2018-11-screen-templates-124969893

3/ Reusable UI Components

https://www.slideshare.net/Providit/outsystems-community-meetup-2018-11-reusable-ui-components-124969891

Would you like to know more about us? Check us out here!


Read more

OutSystems 11, the latest version: what’s in it for you?

OutSystems 11
At the beginning of October, Outsystems organized its annual conference, NextStep 2018, in Amsterdam. During the conference, over two thousand participants witnessed the unveiling of OutSystems 11. OutSystems 11 is the latest version of the nr 1 low-code delivery platform. So, what benefits can new and existing customers expect from OutSystems 11? Let's have a look. 

OutSystems 11: what’s in it for you?

With previous versions of OutSystems, customers mainly focused on developing applications on top of existing core or legacy systems. For example, a contract management system on top of an existing customer management system or a new interface on top of legacy web services. But with OutSystems 11, you now have all the tools to start replacing those legacy core systems. The two most important new features to achieve this are low-code microservices and the support for deploying to containers. Let's focus on the first feature: low-code microservices. With low-code microservices, you effectively implement a full-fledged microservices architecture. Gone are the hours of validating and fixing cross-architecture impacts on complex sets of apps or large systems! You now safely create and change reusable services and applications fast and at scale. The second feature: containers. With containers, you take advantage of streamlined, lean operations and faster deployment, as well as increased scalability, resilience and portability. You're now able to deploy apps and services to leading container-as-a-service and platform-as-a-service providers, including Amazon, ECS, Azure Container Service, Pivot PAS and on-premises Docker container environments.

Artificial Intelligence, a look into the future

Outsystems has started a research initiative to bring Artificial Intelligence (AI) to low-code development. By leveraging the possibilities of machine learning, Outsystems AI predict the next steps in your business flow. By recommending the most likely options, it's not only increasing the development speed even further, it's also guiding the developer in making higher quality applications. Ar you curious how you take full advantage of the latest features in low-code development? Do not hesitate to contact us! Read more

Belgium OutSystems Community Meetup – 2 October 2018

Outsystems Platform
When developers think of OutSystems, they tend to not think any further than just the development tools and features. But the OutSystems Platform holds a lot more than that! In this meetup, we had a look at the infrastructure. What types of servers do you need and in which setup? MVP Kurt Vandevelde also explained the complete process of creating a new version of an application. Next to that, he showed how to perform an OutSystems platform upgrade without any downtime for the business users. The second topic was about CSS Custom Properties. Via a basic example, Arno Vandermeeren showed the different possibilities. And last but not least, Tim Timperman gave us a high-level overview of OutSystems version 11 that was released last week. OutSystems 11 delivers advanced capabilities specifically designed to address the challenges of replacing massive systems and large application portfolios. Delivering apps with a coordinated, modern look-and-feel that people can't wait to use is faster than ever. OutSystems 11 delivers what teams need to create and change code safely, even when their work spans multiple projects, groups, and organizations. As you can read, there's a lot more to tell about the OutSystems Platform! Are you eager to find out more? Check it out here! Read more

Join us at NextStep Amsterdam 2018 on 8 & 9 October

OutSystems 11
 

Packed with industry giants, forward thinkers and digital innovation stories, NextStep Amsterdam is definitely the IT event of 2018.

Low-code, machine learning and artificial intelligence

So, what are you waiting for? Save your space now for Nextstep Amsterdam 2018! Get ready to see how low-code digital factories are transforming traditional development. And learn how artificial intelligence, machine learning, and low-code make an unbeatable combination. On top of that, hear from OutSystems customers and partners who are crushing their digital transformation initiatives. And finally, geek out with IT leaders who share your passion for innovation. Just be there live as we unveil our biggest product launch ever!

Keynote Speaker

We warmly welcome JEREMY WHITE, Executive Editor at Wired. Wired is an influential technology and trends magazine which covers innovation and the businesses that are building the future. He especially analyzes and identifies the emerging trends and technological shifts that will impact consumers and businesses alike. From IoT to AI, smart homes to smart cities, flying cars to passenger drones, he has firsthand experience of trends. But he also has personal contact with the global business leaders driving them!

Analyst Speaker

With more than 35 years of experience in the application arena Andy Kyte, VP & Gartner Fellow, will take the stage for an unforgettable session. He has focused his research on the challenges CIOs and business management teams face when managing complex application portfolios. And besides that, are dealing with continuous demand for more application capabilities.

NextStep Amsterdam 2018

Join us on 08-09 October 2018 at Taets - Art and Events Park, which is called the creative hotspot of Amsterdam. This unique event venue is located on the magnificently beautiful national heritage site on the Amsterdam North Sea Canal.

Get your tickets now!

Read more