Introduction

4WS.Platform community edition includes a large amount of features, available with the app designer and interpreter

The app designer is used to graphically define the functionalities. The whole system is based on the MVC paradigm: database tables and relations are mapped to models, these can then be showed through different kinds of views, such as grids, trees, detail forms, and so forth. Controllers can be defined to capture events and to manage actions linked to views.

The main features provided by the app designer

Definition of data models and relations
through the reverse engineering from database tables/CMS documents metadata. In the Community Edition, up to 10 objects can be created; the Enterprise Edition does not put limits in the number of objects that can be created.

Definition of business components used to fetch data from data models
according to specific filters, including documents fetching from a CMS and web service calls. In the Community Edition, up to 30 business components can be created, whereas the Enterprise Edition does not put limits in that number.

Definition of the application menu,
organized hierarchically in folders, submenus, etc.

Invocation of different features starting from a menu item
including: windows, web services, reports, shell commands (e.g. Batches).

Definition of different types of panels
including: editable grid, form, folders/subpanes, trees, charting, images and image gallery, google maps. In the Community Edition, up to 30 panels can be created; the Enterprise Edition does not put limits in the number of panels that can be created.

Grid columns and input controls definition,
with the support for the most common data types: text, textarea, number, data, time, datatime, check box, combo, code selector, image, file download/upload.

Panels can be combined together in any way
to create a complex window.In the Community Edition, up to 10 windows can be created; the Enterprise Edition does not put limits in the number of windows that can be created. Complex interactions among these components can be defined thanks to events and actions linked to them. In the Community Edition, up to 30 actions can be created; the Enterprise Edition does not put limits in the number of actions that can be created.

Custom extensions can be injected to components as well,
through events and actions, expressed using several formats: javascript, SQL, web services.

Complex windows can be defined by combining not only interpreted components
but also embedding custom panels defined through traditional coding, both on the web tier (javascript and ExtJS) and on the server tier (restful web services, EJB or Java Beans).

Authorizations include a series of powerful features
Roles (group of functionalities to enable, such as menu items, grids and forms to enable/disable in insert, update, delete mode). The combination role-grid functionality can optionally define which grid colums to show/hide, make editable in insert/update, column mandatory.

Association between a user and a list of roles

At grid level, it is optionally possible to store a user profile,
that is to say: columns positions, columns length, filters and sorted columns are stored and the same setting is then set next time the grid will be showed.

Multi-language support
According to the logged user, each part of the GUI is showed using translations related to the language associated to the user. Up to 50 languages can be defined. Data coming from the database can be read according to the user language as well.

Multi-database
Several DBMS are supported: Oracle, MS SqlServer, MySql, PostgreSQL. Moreover, for each defined application, it is possible to work with multiple database schemas, even related to different DBMS. In the Community Edition, it is possible to connect an additional schema of any database type, whereas in the Enterprise Edition there is not limit in the number of additional schemas that can be linked to the application.

Log & Diagnosis
A unique console to monitor your application, in terms of server-side logging, memory consumption, queues performance.

Enterprise level features

In addition to what provided with the Community Edition, there are also enterprise level extensions:

Authentication module based on the LDAP protocol
this sub-system can synchronize with and LDAP server to copy users and roles to the local tables, so that authentication and roles definition are always up to date with the ones defined in the central LDAP server.

Authentication module based on the Google SSO
this sub-system can synchronize with a Google Domain and inherits all user accounts defined within it. Users are imported into Plaform and authentication is forwarded to the Google SSO.

Scheduler
in order to automatically run business components or commands to execute from the shell. Scheduling can be defined through several settings, including frequency, activation date and time, input parameters. Email notifications are also supported, according to the process exit code. Process execution history is also available and automatically cleaned up over time.

BPM integration
Through the BPM graphical designer it is possible to define workflows and use them within the application, for instance to execute complex business logic at certain application events, such as before or after an insert/update/delete of a data object. This feature avoids the need for custom code to implement complex logic, that can be realized by means of a business process withing the BPM engine.

Docx template reporting
a module that simplifies the creation of reports starting from a template created using Microsoft Word or Open Office; basic skills are required when creating the template, thanks to the user of widespread tools. Once deployed the template into Platform and mapped values to fill in, the report can be attached to any part of Platform, such as a menu item or a grid or form.

Google Collaboration
which is composed of a series of plugins able to connect to Google Mail, Calendar and Drive, starting from a Google Domain.

Enterprise Content Management
which consists of a layer able to communicate with Alfresco ECM; in this way, it is possible to enhance Platform capabilities by including document management features such as documents search, setting metadata, upload/download/preview, lock/unlock and document versioning/tagging/rating.

Embedded Document Management
which consists of an embedded document management system, without the need for external systems to maintain, providing basic features such as documents search, setting metadata, upload/download/preview, document versioning, bulk import.

Mobile interpreter
a mobile native app for Android and iOS platforms, which is able to interpret the metadata defined through the app designer and create mobile apps that are deployed through AppStore or GooglePlay once, and then easily updated any number of times, through the synchronization process supported by 4WS.Platform, which allows the transfer of metadata and data to make the mobile app always up to date.

No SQL Plugin for Google Datastore
Google Datastore is the Google NO SQL solution on the cloud. Platform can connect to Datastore and manage entities and queries to create highly scalable web applications.

No SQL Plugin for Mongo DB
Mongo DB is one of the most popular and powerful NO SQL databases available at the moment. Platform can connect to Mongo DB and manage collections and queries to create highly scalable web applications.

Custom fields module
which allows to include additional database fields and consequently additional columns and controls in the same application, with management and visibility defined at tenant level

Data audit
automatic recording of user writing operations, in order to trace over time data changes at user level

Lotus Notes Migration Tool
This tool helps organizations having developed Lotus Notes applications over time to migrate data structures, data, files and applications to a modern architecture, as the one provided by Platform.

Life cycle management & Jira integration
Manage projects, releases, epics, sprints and user stories thanks to Jira Software and Platform, which are strongly integrated in order to provide a great solution to manage the life cycle management within Platform as well as using Jira.

Machine Learning
This A.I. tool is based on Google Tensor Flow module, through which it is possible to define predictive models, train/test and use them to make predictions. This module can be particularly helpful in those scenarios where there is a large amount of data available but it is hard to figure out behaviors hidden on that data: a prediction model can identify a model behind data and use it to classify data e make decisions based on such classification.

High scalability using Platform for GAE – an ad-hoc version of Platform for Google AppEngine, an high scalable web engine able to manage web services with very high volume of requests

Available on the Cloud as SaaS, thanks to Google cloud services

Do you want to try 4WS.Platform?

Try it for free for 6 months!