Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Rapid Application Development with OutSystems
Rapid Application Development with OutSystems

Rapid Application Development with OutSystems: Create applications with OutSystems up to seven times faster than with traditional technologies

eBook
$38.99 $55.99
Paperback
$69.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Colour book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
Table of content icon View table of contents Preview book icon Preview Book

Rapid Application Development with OutSystems

Chapter 1: Exploring the OutSystems Platform

After all, what is OutSystems?

We will provide a quick overview of what their components and tools are and how they work, as well as all the capabilities and potential of the OutSystems platform.

The OutSystems platform enhances and accelerates the development and delivery of enterprise-level web and mobile applications, always with the guarantee of following the best standards of security and performance available on the market.

All of this is possible because it is made available through low-code development environments, while code is generated that will be made available for an enterprise-level, full stack system.

The platform integrates with other systems in a very practical and simple way, namely, existing databases and legacy applications used by the companies themselves or even with existing code.

Out-of-the-box management and analysis tools regarding the applications developed and existing users are made available so that everything can work as expected.

In this chapter, we will have the opportunity to visualize the different features and capabilities of the OutSystems platform at a high level, as well as existing tools and built-in elements such as Service Center, LifeTime, Service Studio, and Integration Studio.

As expected, topics such as connection and integration with existing systems will be addressed using Service Studio, a modern development interface based on the Visual Code paradigm used to create applications in record time, or with Integration Studio, a great interface development that allows us to create our connections to external databases and create our native C#/.NET code to use services from legacy systems. After being created in this powerful tool, applications are then compiled based on standard and optimized code, such as HTML, CSS, JavaScript, and .NET.

These applications are made available on the different OutSystems environments in a continuous approach, following the best CI/CD practices. Code is constantly inspected and analyzed for impacts, and there is zero downtime when promoting applications to the next environment.

In addition to all this, the OutSystems platform can be deployed both in the cloud and on-premises, enabling the availability of applications in any type of infrastructure.

Are you curious? Do you want to take up the challenge? So, let's get started!

We will cover topics from the platform server to development tools, more specifically, the Service Studio and Integration Studio. The administration and operation tools of the framework will also be addressed, namely, Service Center and LifeTime.

As a bonus, we will provide an overview of OutSystems Forge and Community, helping to understand how these resources can be useful in application development.

So let's get started!

The following topics will be covered in this chapter:

  • Platform overview
  • OutSystems factory options
  • External tools, components, and support

Now let's dive deeper into the OutSystems platform and understand the capabilities and features provided by it.

Platform overview

First, we should realize that there are two possible contexts for working in OutSystems:

  • Personal Environment: OutSystems offers a small software factory free of charge (in the cloud) so that we can do our exercises, tests, and small applications without a productive context.
  • Enterprise: Licensed software factories for companies. It can exist in the cloud (AWS), private cloud, or on the company's own physical servers (on-premises). Enterprise versions can exist in different types of licensing and are paid.

We will be able to see this issue in more detail in Chapter 3, Starting Work with OutSystems.

All these tools exist both in personal environments and in enterprise factories. In personal environments, there is a set of restrictions and limitations of services and features, from the number of environments available and the space available in the database to the number of IT users allowed.

Whenever we think of an enterprise environment, we are aware that there must be non-productive and productive environments, the most common model being that of three environments:

  • Development
  • Quality Assurance
  • Production

All existing tools can connect to the environments that make up the OutSystems infrastructure, allowing you to perform any type of necessary task, without, in most cases, the use of external tools.

Platform server

The Platform server is composed of a set of servers (which can be installed both in the cloud and on-premises) that perform all the necessary operations so that the developed applications are available to users. These operations are as follows:

  • Compile
  • Deploy
  • Manage
  • Run
  • Monitor

To develop our applications, we can connect to the platform server using Service Studio and Integration Studio. After development, we can publish our applications, and the platform server handles the operations necessary to make the applications available to users.

When we publish an application, the platform saves the version of it in its database, thus creating a repository of versions and backups. During publication, the platform will compile, optimize the code, and make it available on the servers for use.

Application servers use traditional databases and conventional external systems to run applications, thereby ensuring uniformity and standardization.

The following screenshot shows the OutSystems environment ecosystem:

Figure 1.1 – OutSystems ecosystem

Figure 1.1 – OutSystems ecosystem

As we can see, the ecosystem has all the characteristics of a state-of-the-art model while maintaining simplicity for those who develop applications or manage the platform. To take advantage of this ecosystem, we need to have agile tools at our fingertips, both to develop applications and to manage them and the ecosystem itself. And that's what we've already followed!

Service Studio

Service Studio is the visual OutSystems IDE. Its use is related to the low-code paradigm, reducing the use of textual code as much as possible, reducing the error factor, and thus offering the opportunity for the developer to focus more on the business itself. Using this same tool, we can develop both our web and mobile applications.

This tool addresses four layers of application development:

  • Data
  • Logic
  • Frontend
  • Processes

In addition, it provides a section called TrueChange, where the entire analysis of the code is reported, providing detailed information on existing errors and warnings.

The following screenshot shows the look and feel of Service Studio:

Figure 1.2 – OutSystems Service Studio canvas look and feel

Figure 1.2 – OutSystems Service Studio canvas look and feel

OutSystems main application development tool manages to be super intuitive and provides us with numerous accelerators that we can take advantage of. However, this is not all!

Integration Studio

Do you need to create your own custom C #/.NET code? Do you need to connect with external databases? Do you need to create a connection with your legacy systems? Then this is your tool!

Integration Studio offers a set of accelerators to support our native C # code, as well as integrations with databases external to the platform, making these routines simple and easily scalable.

After creating our code and our integrations, Integration Studio, together with the platform server, creates its representations in the OutSystems universe, thereby being available for use in the same visual paradigm with which we develop our OutSystems applications.

The following screenshot shows the look and feel of Integration Studio:

Figure 1.3 – OutSystems Integration Studio look and feel

Figure 1.3 – OutSystems Integration Studio look and feel

With the tools presented, we found out which path to take to develop and make reactive web and mobile applications available at the speed of light. Now, how can we manage and operate the application server? With the next tools!

Service Center

Service Center is a web console that allows you to manage an OutSystems environment, including parameterization, the inspection of logs, and viewing existing applications and the current status of existing services, thereby facilitating the export of generated event reports. The following screenshot shows the look and feel of Service Center:

Figure 1.4 – OutSystems Service Center look and feel

Figure 1.4 – OutSystems Service Center look and feel

Service Center guarantees us a very practical control of each of our environments. However, OutSystems wanted to go further and complemented this tool with the one we'll demonstrate next, taking the power and ease with which we can master our platform even further.

LifeTime

We are going to visualize a kingdom, composed of several layers, and at the top there is someone on a throne. Is it displayed? Whoever is on the throne is called LifeTime!

LifeTime, also a web console, allows you to control, monitor, and configure the complete life cycle of our applications between the multiple environments in the framework. With this, this tool allows you to go further than we can through Service Center.

With this console, we are able to deploy the different applications existing in the OutSystems infrastructure, benefiting from multiple integrity checks to guarantee the stability and robustness of the environments. In addition, the deployments made by LifeTime guarantee "zero downtime," translating this into a better experience for the end user since, in this way, applications are never unavailable.

In addition, LifeTime allows you to track versions of our applications, and we can customize their tags at the time of deployment (if we do not, LifeTime does it for us).

Another fantastic feature that exists in LifeTime is the ability to manage the permission levels of each IT user and development team, thus ensuring the ownership of each of the existing workstreams.

The following screenshot shows the look and feel of LifeTime:

Figure 1.5 – OutSystems LifeTime look and feel

Figure 1.5 – OutSystems LifeTime look and feel

As we can see, OutSystems allows us, in addition to having great power and control over all aspects of the platform, to do so responsibly, with guarantees to maintain the correct functioning and abstracting from the high complexity that a system of this category has. Everything is much simpler, more practical, and more effective.

Next, we will analyze the functionalities and capabilities that the OutSystems platform makes available to us in order to facilitate and accelerate our work, thereby ensuring that we have a greater focus on the business and its needs.

With this information in mind, a pertinent question arises: How do we publish our applications to our servers?

Publishing an application

We know that if we want to have our applications fully available and make the most of our infrastructures, we will want to publish them on all our frontend servers to process all requests coming from browsers or mobile devices in an identical manner. In the example of three frontend servers, did we need to publish the application three times (once on each server)?

The answer is no! OutSystems tools such as Service Studio, Integration Studio, and Service Center provide the 1-Click Publish functionality, which basically triggers the action of publishing in the corresponding environment. In addition, this feature manages to do it in style: with so-called zero downtime! Applications are never unavailable during the publishing process, minimizing the impact on their users. This feature is achieved by publishing the necessary files in a virtual directory, and when the operation is complete, the old directory is replaced in its entirety by the new one. This whole process is called hot deployment.

To obtain this behavior, there is a server called Deployment Controller Server that has installed the Deployment Controller Service service (it does not need to be a dedicated server; this service can be installed on one of the frontend servers, assuming the same two roles) that communicates with all other frontends through their deployment services.

In summary, we press the 1-Click Publish button, which saves a new version of our module, generates and compiles optimized code and SQL scripts, and updates the database model until it finally deploys the application.

The following screenshot shows the application publishing flow from Service Studio:

Figure 1.6 – OutSystems application publishing flow from Service Studio

Figure 1.6 – OutSystems application publishing flow from Service Studio

The publishing flow of an application is done in a fully controlled way to ensure that everything is ready and without generating any issues regarding the use of our applications. Even so, it may be necessary to check events to ensure that everything runs smoothly. Monitoring? Logging? Of course these functions are available!

Monitoring and logging

The OutSystems platform provides an automatic monitoring service for our applications. This means that any event is recorded in databases so that we can search for them in the future. To this end, an asynchronous approach was applied to the writing of the logs. If they were recorded in real time, we would have a performance problem because we have lots of logs to be written simultaneously in the database, thereby causing delays and possible locks on the tables. We can imagine an application with hundreds or thousands of users at the same time… anything could go wrong (Murphy's law always comes up).

And how does asynchronous logging work? To this end, each frontend server has a logging service. The logs are transmitted to the Microsoft Message Queuing (MSMQ)by the service center of the respective server, and they are subsequently captured by the log service from time to time which, in turn, inserts the data in bulk (bulk insert) in the respective database tables. These same tables, to ensure the best possible performance in writing, do not use indexes (indexes are very useful and optimize performance in research, but slow down writing).

Well, throughout this explanation, we have already seen that there are several functionalities for writing data to the existing tables on the database server. For the better segregation of concepts, OutSystems makes it possible (only on on-premises installations, that is, on its own servers and not in the cloud) to create multiple database catalogs in order to facilitate the maintenance and segregation of databases. All of this can be done in a very simple way through the Service Center tool. It is not a topic that it makes sense to go into in too much detail since the focus of OutSystems is to orient the market to the future: the cloud (as a curiosity, OutSystems, when it received its name, did not have the term cloud in it because the cloud was not prevalent at that time).

The following screenshot shows the monitoring view (errors) in Service Center:

Figure 1.7 – Monitoring View in the OutSystems Service Center

Figure 1.7 – Monitoring View in the OutSystems Service Center

Service Center allows us to make the most of the platform's logs – practical filters, information details, exportability, and everything else – grouped by concept. This is proof that, in addition to OutSystems equipping us with tools, it does it the right way.

Distribution

Another functionality provided by the OutSystems platform is support for Content Distribution Network (CDN). What does this consist of?

Firstly, the CDN is located between the clients' browsers and the frontend servers (on farm installations, from the load balancer).

The CDN is used to distribute content efficiently among end users. Basically, the idea is that, instead of our environment doing the distribution of content for all requests made, there are servers in the various zones where applications are available that do this for them. With this, the distribution of cached resources such as CSS is much more efficient and faster, thereby freeing the environment for other tasks. Note that even with CDN, the frontend servers in our environments continue to process information requested by end users, such as the HTML of the web page for each request. That same HTML has references and links to CSS files, JavaScript, images, and static content, these being loaded from the servers made available by the CDN.

But how do these servers know whether the content should be updated? That is, if we publish a new version of our application with changes to the content stored on the servers made available by the CDN, they must be able to know that such an event has occurred. For this, the platform facilitates this operation with the simple suffix in the resources, and the servers can compare the same with the version existing in themselves. If the suffix is different, the servers obtain the necessary new content and update their versions. The browser's cache works in exactly the same way: if the suffix is different, even in cases of an aggressive cache, the browser obtains the new content from the frontend servers (if there is no CDN) or from the servers provided by the CDN.

Note

Throughout this book, the term CDN will be used to identify the functionality of the content distribution network.

The following screenshot shows an example of a CDN:

Figure 1.8 – General example of a CDN

Figure 1.8 – General example of a CDN

While it is difficult to accurately predict what the future of CDNs will be, one thing is certain: this industry will grow exponentially, which means that the technologies used to run them will evolve further.

Cache

The OutSystems platform provides built-in caching capabilities. With this, we seek to obtain substantial improvements in performance (long cache, normally associated with static content, similar to what we saw regarding the CDN) and the prevention of the so-called "peak traffic heavy load" (short cache).

Regarding the long cache, this is something automatic on the part of the platform. For example, if we inspect a web page of an application developed in OutSystems, we can verify in the properties of static content (as in the case of images) that the value of a month is set to a maximum age for cache control in response headers.

In the case of the short cache, it has this name precisely because its period of stay is defined in minutes, seconds, or milliseconds and serves to save computing time on servers. This functionality is used whenever it is guaranteed that the orders are identical and that their result does not vary, otherwise, that same cache would not be used, leading to computational reprocessing.

This short cache can be set to the following:

  • Aggregates and SQL nodes (used to fetch data in OutSystems code):
Figure 1.9 – Cache in minutes in Aggregate

Figure 1.9 – Cache in minutes in Aggregate

  • User actions and SOAP methods consumed:
Figure 1.10 – Cache in minutes in Server Action

Figure 1.10 – Cache in minutes in Server Action

The value of the cache time is defined in the properties section of each of these components, in the Cache in Minutes attribute. When defining the value of the cache, whenever the server is asked for a certain artifact from those mentioned above, instead of recalculating the request, the previously calculated value is returned and made available in the cache. Note the importance of the order having to be exactly the same as foreseen in the multiple scenarios. For example, if we cache an aggregate that has an input defined and is used in the filters, if the value of the different requests is different, the cache will not comply with the forecast, since the previously calculated value does not fit the order in question and it has to be recalculated.

Objectively, to use the short cache, we must carry out a careful analysis of the candidate elements to verify whether their use makes sense. Another scenario to consider, for example, a SOAP service that returns a list, is the fact that we must assess whether the fact that we use the cache and do not have the data in real time can affect the business.

SEO – Search Engine Optimization

The OutSystems platform is already prepared and provides features for the so-called SEOSearch Engine Optimization. But what is this?

Important Note

For Reactive web applications, these features are in Technical Preview, so they need to be activated in LifeTime. SEO is a set of techniques used to make web pages more easily indexable by search engines (such as Google). It often involves making the URL of the page more user-friendly or even changing the native URL. With these techniques, the URLs of our applications go up in the indexing ranking, gaining visibility. Basically, the idea is to make the URLs as similar as possible to the search strings entered by users.

Note

Throughout this book, the term SEO will be used to identify the functionality of Search Engine Optimization.

In the service center of each of the constituent environments of the OutSystems platform, four features are available to solve this problem:

  • Module Alias Rules: This feature allows you to give another name to the module that appears in the URL. For example, if the module is called AssetsManager and we want it to be simpler, we define a rule where the alias of that module is Assets. From that moment, in the URL, the part of the module no longer shows the initial value showing the value of the alias. With this, it is no longer necessary to rename our modules.
Figure 1.11 – Service Center view for Module Alias

Figure 1.11 – Service Center view for Module Alias

  • Redirect Rules: This feature allows us to define a URL that, when the call arrives at IIS, informs the browser to make a new request for a URL provided by it. For example, if we call the URL us.acme.com and we have a redirect rule defined so that it is redirected to www.acme.com/us when the call arrives at IIS, it will communicate to the browser to make a new order for this new URL. This is a widely used technique, including by Google.
Figure 1.12 – Service Center view for Redirect Rules

Figure 1.12 – Service Center view for Redirect Rules

  • Site Rules: This feature allows you to configure the root application for a given URL. For example, we have an application called Site and we set the URL www.acme.com so that, when called, this opens the Site application. This way, we can optimize the control of our domains in parallel with our applications without needing to access the URL built with the domain and the application to open a specific application. In addition, we were also able to define the locale parameter (very useful when working with multiple languages or when we have different versions of our applications based on the language).
Figure 1.13 – Service Center view for Create Site Rule

Figure 1.13 – Service Center view for Create Site Rule

  • Page rules: This feature allows us to configure the trailing part of the URL to be more user-friendly. With this, instead of having something like /CityBuses/SearchPage? From={From}&To={To}, we can have something more user-friendly: /CityBuses/From-{From}-To-{To} (the values between {} are the input parameters for the search). Recently, OutSystems made these settings available in a more understandable way, directly in the page properties in the IDE (Service Studio). With this, as we create and develop our application pages, we can immediately configure our page rules in a simplified and intuitive way. This is the technique that most allows good ranking positions to be achieved in search engines since the trailing part of the URLs is the one that is usually the least human-readable:
Figure 1.14 – Service Center view for Create Page Rule

Figure 1.14 – Service Center view for Create Page Rule

With this in mind, we realize that SEO allows us to obtain better results in search engine searches, much more attractive and user-friendly URLs, and a much more understandable use of our applications, always managed in a centralized and simple way.

OutSystems factory options

The OutSystems platform is quite adaptable to the needs of customers and can be configured and installed according to different standards and on different types of installations.

Derived from its construction on native technologies, the way in which all parts complement each other is robust, performant, and safe.

OutSystems platform deployment options

As an example, we will use a typical installation in an isolated environment.

The typical installation has two servers:

  • A frontend server, where our applications will live and which browsers will access to receive their pages and content.
  • A database server, where our application, system, and log databases will be housed. The OutSystems platform is natively prepared to work with SQL Server, Azure SQL Database, Oracle, and MySQL databases.

The frontend server communicates with the database server to obtain and create/edit/delete the data it needs.

The following screenshot shows the typical OutSystems environment setup:

Figure 1.15 – Typical OutSystems environment setup

Figure 1.15 – Typical OutSystems environment setup

The OutSystems platform supports horizontal scalability, that is, it allows having multiple frontend servers running simultaneously, and for this scenario, it is necessary to have a load balancer between the browsers and the frontend servers to distribute the charge by them. This same load is distributed based on algorithms such as round-robin or based on some type of metric or measurement.

For this purpose, a tool is used in the Windows environment of the server in question called Configuration Tool, where the ports and IP necessary for the correct functioning of the platform are configured.

Following the correct configuration of the frontend servers to the platform, they become visible in the configuration and parameterization console of the respective environment, as well as its services – the service center.

When a user browses our applications, they generate or modify session data. This data is stored on the database server centrally and in a catalog dedicated to that purpose. And this is because? Since requests made by the browser at different times can be processed by different frontend servers, the session data must be in a place that's accessible to all.

In this way, the configuration of the farm type platform (the name given to a platform with multiple frontend servers) becomes much simpler and more robust.

The following screenshot shows the OutSystems farm example:

Figure 1.16 – OutSystems setup farm example

Figure 1.16 – OutSystems setup farm example

The platform is designed to allow different installation and setup configurations in order to adapt to the infrastructure and response needs of the different scenarios imposed by customers. Also, the manner in which we can make these installations and setups is very intuitive, allowing us to have a platform ready for development very quickly.

To get the most out of everything we've seen, OutSystems provides a repository with various pre-designed tools and components, both by OutSystems itself and by members of the community. In addition, OutSystems provides support forums so that we can clear up our doubts and seek help among the members of the OutSystems universe. Let's see how.

External tools, components, and support

As expected, OutSystems offers an extremely attractive help and support ecosystem so that we can leverage our developments and unlock various doubts or problems: the OutSystems Community

In addition, there is a repository of components and plug-ins already built that we can download for free, and that allows us to take even more advantage of our OutSystems software factories: OutSystems Forge.

Forge and Community

Forge is a repository of pre-built components and plugins developed by OutSystems and several developers around the world. OutSystems applications are directly supported by the teams that developed them, making the process of using and optimizing them much easier. With this, we can avoid building something we need from scratch, instead reusing something someone has already done, thereby saving time and effort.

The following screenshot shows the look and feel of Forge:

Figure 1.17 – OutSystems Forge main page

Figure 1.17 – OutSystems Forge main page

The Community is a space for developers (and not just that; it extends to several roles within this huge universe) to share their doubts, help solve problems, and provide feedback and ideas, regardless of the degree of experience of each one.

The following screenshot shows the look and feel of Forums in the Community:

Figure 1.18 – OutSystems Forums (from Community) main page

Figure 1.18 – OutSystems Forums (from Community) main page

Community is very useful and always growing and evolving. Therefore, we can always rely on the fact that the OutSystems world is not static but dynamic, simple, fast, and efficient, just like the product available to us.

Summary

In this chapter, we have discussed the enormous size of the OutSystems ecosystem, its enormous potential, and everything we can rely on to ensure that we shine in the development of web and mobile applications.

Basically, the OutSystems platform provides a list of built-in features to help us develop faster, more securely, and with a very low margin of error, including horizontal scalability, hot deployment, asynchronous logging, bulk insert, multiple catalogs (only for on-premises installations), CDN support, traffic optimization, cache, and SEO-friendly URLs.

In addition, under the hood, the platform offers state-of-the-art capabilities, such as automated batch processing scaling, log tables rotation, database connections pooling, unused database connections unloading, optimized field fetching in aggregates, and optimized dataset memory loading.

In the next chapter, we'll take a closer look at the main components, tools, and capabilities used daily to develop our applications quickly, securely, and with high scalability. A work of art, in other words!

Interesting, isn't it? Well, we're just starting out...

Left arrow icon Right arrow icon

Key benefits

  • Discover strategies and tips for low-code and no-code development with the help of useful examples in this full-color guide
  • Build enterprise-scale reactive web and mobile applications
  • Explore the benefits of low-code development

Description

OutSystems is a software development platform that speeds up the build phase by abstracting code and making almost everything visual. This means replacing textual language with visual artifacts that avoid lexical errors and speed up code composition using accelerators and predefined templates. The book begins by walking you through the fundamentals of the technology, along with a general overview of end-to-end web and mobile software development. You'll learn how to configure your personal area in the cloud and use the OutSystems IDE to connect with it. The book then shows you how to build a web application based on the best architectural and developmental practices in the market, and takes the same approach for the mobile paradigm. As you advance, you'll find out how to develop the same application, and the great potential of reusing code from one paradigm in another and the symbiosis between them is showcased.The only application that'll differ from the application in the exercise is the one used in business process technology (BPT), with a focus on a common market use case. By the end of this OutSystems book, you'll be able to develop enterprise-level applications on the web and mobile, integrating them with third parties and other systems on the market. You'll also understand the concepts of performance, security, and software construction and be able to apply them effectively.

Who is this book for?

This book is for back-end developers, tech leaders, UX/UI developers, frontend developers, (in general, full-stack developers), tech companies, and enterprises looking to learn how to develop web and mobile software quickly and disruptively by leveraging OutSystems, one of the most low-code platforms in the market. An IT background is not mandatory; however, experience in SQL, JavaScript, HTML, CSS, and C# is required to get started with this book.

What you will learn

  • Get to grips with the OutSystems infrastructure
  • Develop reactive web and mobile applications in OutSystems using best practices in Service Studio
  • Define and design Architecture Canvas (3-Layer Canvas) for your applications
  • Integrate with external systems in OutSystems
  • Enhance applications with BPT
  • Manage and monitor your applications in the OutSystems infrastructure
Estimated delivery fee Deliver to Colombia

Standard delivery 10 - 13 business days

$19.95

Premium delivery 3 - 6 business days

$40.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jan 27, 2022
Length: 402 pages
Edition : 1st
Language : English
ISBN-13 : 9781800208759
Tools :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Colour book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Product feature icon AI Assistant (beta) to help accelerate your learning
Estimated delivery fee Deliver to Colombia

Standard delivery 10 - 13 business days

$19.95

Premium delivery 3 - 6 business days

$40.95
(Includes tracking information)

Product Details

Publication date : Jan 27, 2022
Length: 402 pages
Edition : 1st
Language : English
ISBN-13 : 9781800208759
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 148.97
Low-Code Application Development with Appian
$36.99
Building Low-Code Applications with Mendix
$41.99
Rapid Application Development with OutSystems
$69.99
Total $ 148.97 Stars icon

Table of Contents

20 Chapters
Section 1: OutSystems 101 Chevron down icon Chevron up icon
Chapter 1: Exploring the OutSystems Platform Chevron down icon Chevron up icon
Chapter 2: Components, Tools, and Capabilities Chevron down icon Chevron up icon
Chapter 3: Starting Work with OutSystems Chevron down icon Chevron up icon
Section 2: The Magical Path of the Backend Chevron down icon Chevron up icon
Chapter 4: Using Your Modules to Simplify and Encapsulate Your Code Chevron down icon Chevron up icon
Chapter 5: Modeling Data by Using Entities Chevron down icon Chevron up icon
Chapter 6: Server-Side Logic Chevron down icon Chevron up icon
Chapter 7: Exceptions Handling Chevron down icon Chevron up icon
Section 3: Create Value and Innovate with the Frontend Chevron down icon Chevron up icon
Chapter 8: Reactive UI Development Chevron down icon Chevron up icon
Chapter 9: Using Mobile Patterns for Fast Mobile UI Development Chevron down icon Chevron up icon
Chapter 10: Client-Side Logic Chevron down icon Chevron up icon
Chapter 11: Local Storage and Data Synchronization Chevron down icon Chevron up icon
Chapter 12: Debugging and Troubleshooting Mobile and Reactive Web Apps Chevron down icon Chevron up icon
Section 4: Extensibility and Complexity of the OutSystems Platform Chevron down icon Chevron up icon
Chapter 13: Designing the Architecture of Your OutSystems Applications Chevron down icon Chevron up icon
Chapter 14: Integrating OutSystems with Your Ecosystem Chevron down icon Chevron up icon
Chapter 15: BPT Processes and Timers – Asynchronous Tools in OutSystems Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Half star icon Empty star icon 3.8
(6 Ratings)
5 star 50%
4 star 0%
3 star 33.3%
2 star 16.7%
1 star 0%
Filter icon Filter
Top Reviews

Filter reviews by




PauloOliveira Feb 07, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I have 20 years experience in IT (just realised that writing this!) and recently I become aware of OutSystems and was curious about all the hype behind this platform.I consider this book a must have for curious like myself and also for people starting their "hands-on" OutSystems Development careers.I found the book easy reading, clear, with good examples.I now have a better understanding of the platform, for this reason the book completely accomplish my goal.
Amazon Verified review Amazon
Ed Sep 01, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
From the step by steps instructions, thru basic design architectures and even many advanced system options. Excellence general overview for developers.
Amazon Verified review Amazon
vhotraining Jan 27, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
First and foremost, the author and reviewers of this publication have extensive experience and credibility with the OutSystems platform. If you are new to OutSystems or an experienced developer, this book will be a great addition to your tech library. The book starts with a comprehensive overview of the platform and moves to the intermediate and advanced topics quickly. The publication comes with a link to download the finished code for the projects covered and the explanations are clear an concise. I have reviewed this publication from cover to cover and I have not found any errors or issues. If you want to learn OutSystems fast, I would highly recommend this book.
Amazon Verified review Amazon
Thomas Locke Oct 04, 2023
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
This book is good as a reference, not so much as learning device.The sections are more abstract and basically detail what's on each screen, rather than contextually introducing you to the system incrementally.Not 'bad', but less helpful than I hoped.
Amazon Verified review Amazon
Mark Adkins Dec 30, 2022
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
Purchased the Kindle version and have been walking through the exercises. The book is helpful for sure, but the Exercises skip important steps. For example, when creating the initial dashboard UI and attempting to publish there is an error "Can't identify 'Status' element in expression. But the Helpdesk_CS compiles and publishes just fine and there are only two drag and drop steps here, so what gives? I'd say the author has some work to do to go back and cleanup some of his exercises to make this a better book.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact customercare@packt.com with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at customercare@packt.com using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on customercare@packt.com with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on customercare@packt.com within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on customercare@packt.com who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on customercare@packt.com within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela