archITekt studio allows you to build solutions
visually – quickly and easily

It is an integrated low-code platform for software development. It consists of a set of tools, components and modules prepared in such a way as to be able to streamline and automate the process of developing business solutions. Individual modules of the platform cooperate with each other, are configurable, integrated and allow for integration with the environment.

Algorithms

The Algorithm module allows for simple and intuitive building of business rules, and then allows you to manage the rules in response to the emergence of new business conditions. Thanks to this, it is possible to easily adapt the system’s operation to the changing  needs over time. Building algorithms is done using a graphic designer. Thanks to its use, it is possible to model algorithms and parametric tables, controlling the system operations, by business analysts without the need for programming skills.

The module allows you to:

  • separate business rules from the rest of the system,
  • create and modify business rules using a graphical work environment,
  • verify the operation of rules while they are being designed – this is carried out by running the rules having provided input data and tracking the values calculated in individual steps of the algorithm,
  • analyse the effects of modification to business rules – this is carried out by enabling the automatic execution of a set of previously prepared business tests and comparing their results to the results of the previous version of the algorithm,
  • use the extensive configuration tables in the rules containing sets of predefined execution and operation parameters of algorithms,
  • break complex business rules into smaller elements and reuse them,
  • use the hierarchical data structures and lists in business rules,
  • publish business rules in the form of web services, which allows the use of defined rules by various systems, unification of rules in the organization and their centralized management,
  • quickly calculate the rules by compiling them to the object code.

Multiple implementations of the Algorithm Module confirm the high value of separating business rules from the rest of the system. The efficiency and effectiveness of business analysts’ work in rule management is ensured i.a. thanks to the unique functionality of business test execution, immediately showing the impact of the changes made.


Workflow designer

The workflow module enables creation, modification and management of processes occurring in a business solution. The business process is defined in the diagram with the use of sequential operations linked together. These operations represent i.a. business actions, decision points controlling the selection of processing paths and places of interaction with the user (e.g. forms presented to the user). The module allows you to quickly run processes in a synchronous (e.g. in response to the user’s actions) and asynchronous mode (e.g. longer-lasting processes that can be triggered by events occuring in the system). The module is a BPM (Business Process Management) class solution.

The Processes module allows you to:

  • design and modify business processes in the graphic environment,
  • construct processes using a range of universal process activities,
  • expand the range of available activities with business activities specific to a given system,
  • divide complex processes into sub-processes,
  • track the course of processes, both currently being performed and already completed,
  • access to the activity execution trace, containing detailed information about each of the activities launched,
  • extensively manage the process variables; determine the input and output parameters of the process, build processes that operate simultaneously on many data structures,
  • execute processes in two modes: synchronous and asynchronous,
  • control the way of executing and resuming processes, e.g. starting parallel sub-processes, suspending the execution of the process with defining the resuming signals (e.g. the user’s action, time elapsed, waiting for a signal from another component or system).

Workflow designer

The Workflow module enables creation, modification and management of  processes occurring in a business solution, using a graphic designer. The business process is defined in the diagram with the use of sequential operations linked together. These operations represent i.a. business actions, decision points controlling the selection of processing paths and places of interaction with the user (e.g. forms presented to the user). The module allows you to quickly run processes in a synchronous (e.g. in response to the user’s actions) and asynchronous mode (e.g. longer-lasting processes that can be triggered by events occuring in the system). The module is a BPM (Business Process Management) class solution.

The Processes module allows you to:

  • design, construct, modify business processes in the graphic environment,
  • construct processes using a range of universal process activities,
  • expand the range of available activities with business activities specific to a given system,
  • divide complex processes into sub-processes,
  • track the course of processes, both currently being performed and already completed,
  • access to the activity execution trace log, containing detailed information about each of the activities launched,
  • extensively manage the process variables; determine the input and output parameters of the process, build processes that operate simultaneously on many data structures,
  • execute processes in two modes: synchronous and asynchronous,
  • control the way of executing and resuming processes, e.g. starting parallel sub-processes, suspending the execution of the process with defining the resuming signals (e.g. the user’s action, time elapsed, waiting for a signal from another component or system).

User Interface builder

The User Interface module allows you to design and customize the application’s appearance according to the business needs. It allows you to configure the advanced user interface using a wide variety of controls.  It is possible to create new lists and forms and modify them in terms of appearance and content, which is presented to the end user. You can adapt not only GUI elements such as forms, lists or application menus, but also related data structures and dictionaries.

The module allows you to:

  • change GUI elements,
  • graphically create and modify forms and lists with the preview feature,
  • configure mechanisms for validating data entered by the user,
  • define actions that can be performed on the form,
  • use a rich set of components prepared for building advanced forms,
  • prototype and verify – while designing the user interface, it is possible to verify its appearance on an ongoing basis, thanks to which it can be tested in action, which allows you to avoid a number of errors.

Mass Data Processing

The Mass Data Processing module provides a wide range of possibilities for processing large sets of information and exchanging data with other systems. Using a graphical interface, the designer creates data processing packages and hierarchy of tasks, that control the course of processes. Processing packages work on tree data structures and enable the integration of information from many different sources and allows data to be transformed on the fly in a variety of ways. Processing capacity ranges from hundreds of thousands to even a million records per second.

Task hierarchies, in turn, control the steps in the processing flow and allow for it to be designed efficiently – so that some tasks within the hierarchy may be run in parallel. In addition, the module has a range of tools for collecting system operation statistics, analysis of correctness and performance, error handling, profiling and detection of bottlenecks. Thanks to this, building reliable, efficient and optimized systems based on the Mass Processing Module is extremely easy.

The Mass Data Processing Module allows for:

  • integration of data from many different sources: files (xlsx, xml, etc.), databases (MS SQL, Oracle, MySQL, PostgreSQL, etc.), calling external services and publishing own ones (REST, SOAP, POX, etc.)
  • advanced design of the logic of data processing packets: adding / removing / moving / copying any fragments of the data structure, as well as more advanced operations, such as joins, splits, normalization or rotations. Exactly the same mechanisms are available in the other modules of the platform – parts of solutions can be called up or transferred between modules,
  • convenient design of scalable systems even on very large data structures, thanks to helpful functions of the design environment: hints displayed on the basis of recognized schemas of databases, services, XSD, JSON schema, syntax suggestions for expressions, the ability to break processing packages down into sub-packages and reuse them as separate packages, subroutines or single mappings, the ability to create mock-ups of external databases / services for easy system testing,
  • creation of highly efficient systems thanks to the possibility of using concurrency, thread management, asynchrony and work in a cluster. High performance of the module is also due to compilation of key processing elements into the machine code, which significantly increases the speed of operation,
  • detailed performance analysis and efficient optimization of even large systems: keeping track of package processing steps in a graphical environment, profiling data processing at any stage and building automatic statistics of the amount of data flowing through individual steps of the package, measuring the efficiency and proper functioning of the production system and viewing the collected statistics in the form of graphs, which allows you to easily identify flow bottlenecks,
  • reliable operation of the system thanks to extensive error handling capabilities: handling of erroneous data along with the specification of acceptable levels of the number of errors that may or may not suspend further processing, automatic resumption of processing in the event of short-term loss of connection with external systems, manual resumption of the further processing sequence in the event of a technical error that cannot be handled automatically and removed.

Mass Data Processing

The Mass Data Processing module provides a wide range of possibilities for processing large sets of information and exchanging data with other systems. Using a graphical interface, the designer creates data processing packages and hierarchy of tasks, that control the course of processes. Processing packages work on tree data structures and enable the integration of information from many different sources and allows data to be transformed on the fly in a variety ways. Processing capacity ranges from hundreds of thousands to even a million records per second.

Task hierarchies, in turn, control the steps in the processing flow and allow for it to be designed efficiently – so that some tasks within the hierarchy may be run in parallel. In addition, the module has a range of tools for collecting system operation statistics, analysis of correctness and performance, error handling, profiling and detection of bottlenecks. Thanks to this, building reliable, efficient and optimized systems based on the Mass Processing Module is extremely easy.

The Mass Data Processing Module allows for:

  • integration of data from many different sources: files (xlsx, xml, etc.), databases (MS SQL, Oracle, MySQL, PostgreSQL, etc.), calling external services and publishing own ones (REST, SOAP, POX, etc.)
  • advanced design of the logic of data processing packets: adding / removing / moving / copying any fragments of the data structure, as well as more advanced operations, such as joins, splits, normalization or rotations. Exactly the same mechanisms are available in the other modules of the platform – parts of solutions can be called up or transferred between modules,
  • convenient design of scalable systems even on very large data structures, thanks to helpful functions of the design environment: hints displayed on the basis of recognized schemas of databases, services, XSD, JSON schema, syntax suggestions for expressions, the ability to break processing packages down into sub-packages and reuse them as separate packages, subroutines or single mappings, the ability to create mock-ups of external databases / services for easy system testing,
  • creation of highly efficient systems thanks to the possibility of using concurrency, thread management, asynchrony and work in a cluster. High performance of the module is also due to compilation of key processing elements into the machine code, which significantly increases the speed of operation,
  • detailed performance analysis and efficient optimization of even large systems: keeping track of package processing steps in a graphical environment, profiling data processing at any stage and building automatic statistics of the amount of data flowing through individual steps of the package, measuring the efficiency and proper functioning of the production system and viewing the collected statistics in the form of graphs, which allows you to easily identify flow bottlenecks,
  • reliable operation of the system thanks to extensive error handling capabilities: handling of erroneous data along with the specification of acceptable levels of the number of errors that may or may not suspend further processing, automatic resumption of processing in the event of short-term loss of connection with external systems, manual resumption of the further processing sequence in the event of a technical error that cannot be handled automatically and removed.

Dictionaries

The module allows to define data sets, i.e. dictionaries ready for use in various system modules. This allows for the business configuration elements to be extracted and easily managed from one place. With defined dictionaries, other elements, such as UI elements, processes, algorithms, mass processing packages, and more, use the same unified business data. The archITekt platform allows you to define dictionaries with a hierarchical structure. For each element of the dictionary, the platform allows for the definition of a number of attributes that store additional business and technical information. They can be then used in various areas of the solution in the context of a given dictionary element.

Data Structure

The Data Structure module allows you to create a data structure according to your business needs. It can be a data set describing a business object, along with defined parameters such as the type, name, and other type-specific properties.

The module allows you to:

  • create, modify and expand data structures,
  • determine relationships between data structures,
  • specify field attributes: default values, individual fields required, precision for numbers, number of characters for strings,
  • use the dictionary fields, lists and substructures,
  • document the designed structure in the form of adding descriptions to individual structure fields.

Data Structure

The Data Structure module allows you to create a data structure according to  your business needs. It can be a data set describing a business object, along with defined parameters such as the type, name, and other type-specific properties.

The module allows you to:

  • create, modify and expand data structures,
  • determine relationships between data structures,
  • specify field attributes: default values, individual fields required, precision for numbers, number of characters for strings,
  • use the dictionary fields, lists and substructures,
  • document the designed structure in the form of adding descriptions to individual structure fields.

Tasks Scheduling

The module allows you to automatically perform two types of tasks: tasks performed in response to events and recurring tasks scheduled in calendars. The task’s triggering event can be, for example, the appearance of a file in a directory. The calendar allows you to specify the frequency, days of the week or month and other parameters controlling the execution of the task.

The module allows you to set the tasks processing schedule, which has to be properly prioritized, and to take care of their launch in specific time frame. Processing packages of the Mass Data Processing module are the basic type of tasks run in the scheduling module. Additionally, tasks created in the code can also be run by the Scheduling Module. In this case, DLL files must be provided to perform a specific task for a given application.

The module allows to:

  • run scheduled tasks, tasks triggered by the appearance of a file (files) in the directory,
  • run mass processing tasks, tasks written in code,
  • batch-process files,
  • track, monitor and diagnose task performance.

Versioning

Configurable elements of the system, such as definitions of mass data processing operations, business workflows, forms, business rules are part of the system’s business configuration. It is stored in one place in the system and managed by the Versioning Module. The user can manage the configuration using the graphical tools available in the archITekt platform. This module allows for versioning changes to be made to the configuration. Thanks to this, you can track changes in the system, compare the changes between versions, and restore previous versions. The module also provides auditability of the changes and allows for team work support when different people configure the system at the same time.

The module offers the possibility of exporting and importing business configuration elements between different environments. Thanks to this, it is possible to easily manage several environments (e.g. development, test, production) and transfer the configuration between them. This allows for manageable implementation of tested, proven and approved changes to production environments. Configuration can be stored in both the Versioning Module – because the module has a built-in version management mechanism, as well as saved as a file in the indicated directory on the disk, so that then you can use an external version control system (e.g. GIT).

Versioning

Configurable elements of the system, such as definitions of mass data processing operations, workflow processes, forms, business rules are part of the system’s business configuration. It is stored in one place in the system and managed by the Versioning Module. The user can manage the configuration using the graphical tools available in the archITekt platform. This module allows for versioning changes to be made to the configuration. Thanks to this, you can track changes in the system, compare the changes between versions, and restore previous versions. The module also provides auditability of the changes and allows for team work support when different people configure the system at the same time.

The module offers the possibility of exporting and importing business configuration elements between different environments. Thanks to this, it is possible to easily manage several environments (e.g. development, test, production) and transfer the configuration between them. This allows for manageable implementation of tested, proven and approved changes to production environments. Configuration can be stored in both the Versioning Module – because the module has a built-in version management mechanism, as well as saved as a file in the indicated directory on the disk, so that then you can use an external version control system (e.g. GIT).


Documents Generation

The module allows you to design and manage document templates and generate ready documents based on the data collected in the system. It is also possible to complete the designed business processes by preparing documents ready for printing or shipping.

The module allows to:

  • define the content of the document using MS Word with all its editing options,
  • automatically complete the document with business data from the system using tags embedded in the document content,
  • insert multiple data: fill out data tables, complete lists in a document,
  • generate documents in the following formats: .docx, .pdf, .mhtml (the format used to create formatted e-mail content).

Users and Permissions

The platform has a central mechanism for managing user premissions – the Users and Permissions Module. Permissions may be granted both for the system management and administration functions and for the functionalities used by end users. An important feature of the Users and Permissions Module is the possibility of integration with the user management systems already in use within the organization (e.g. Active Directory). This allows for automatic synchronization of user accounts and their groups managed in other systems with the solution. Management of accounts and permissions of the system users can be carried out in the central place within the organization or in a business solution, depending on the requirements.