ELMA BPM Basics
Unfortunately, ELMA documentation is not enough for correct and complex implementation
- when users and the customer are satisfied
- if the implementation lasts more
than 2 months, the implementation is complex.
In human language, I will talk about the basics of ELMA BPM - only partially touching on what is described in the knowledge base
- there is no point in repeating the documentation
- There will be links to the ELMA BPM knowledge base
Before starting training, you should be familiar with ELMA and already:
- installed Elma BPM and tried to solve a couple of combat tasks
- Read the official documentation
- How ELMA BPM works
- What is bpmn 2.0 and read the course
At the same time, learn in practice the basics of programming that you will soon need (so as not to make crutches)
- Learn the basics of C# - to write clear and reliable code in the ELMA designer ( I hope you are already familiar)
- If you plan to develop web modules or change web forms (in processes or the application itself) - learn the basics of ASP.NET MVC 4
Let's get started
ELMA system architecture
The architecture of the ELMA system is built on a three-level model, in which three layers are distinguished:
- data layer – provided by a file server and a database server; logic layer – provided by the application server. Thanks to ELMA WebAPI, the logic layer can be supplemented by interacting with external systems; display layer – provided by client software.
Based on this, the ELMA system consists of the following set of programs:
- ELMA Server (Application Server); ELMA designer; External applications.
The ELMA server (application server) interacts between system components:
- Databases Web applications File server, etc.
The ELMA server is the root element of the system. To start working with the server, you need to register it.
ELMA Designer is an application that is installed on the user’s computer and provides a convenient interface for modeling processes, describing the company’s organizational structure, and creating configurations.
ELMA Designer is also used to perform a number of other tasks. To work with ELMA Designer, you must first register it.
ELMA BPM Core
.NET 4.0 C#
— the platform on which the C# code runs
.NET Framework
provides language and platform capabilities.
Can:
- use standard functionality
- connect third-party libraries and use the functionality (for example, this one )
But don’t reinvent the wheel an ELMA-shaped truck will rest on your bike
- Reuse ready-made ELMA solutions
- if it’s not enough, modify ELMA correctly. (more on this next time)
Autofac
— IoC container for inversion of control and dependency injection — in other words, for convenient work with services and extensions
- serves services - other services, for example, the entity manager - a rights checking service is needed, this service will be prepared and given to him by Autofac
Where it is used:
- Registration of internal services (entity managers, working with files)
, extension points
(document generator functions) - service locator - needed to obtain application services - working with files, entity managers, settings -
can be obtained through the locator - Extension points are interfaces (a description of what a class that supports this interface can do).
By implementing an extension point, you can add new functionality to ELMA
(for example, a new function to a document generator
)
- for example, when reassigning a task or saving an entity
You can study it in detail yourself
without documentation
- The only caveat is that modern Autofac does not recommend the locator pattern - the services needed for operation are prepared in advance in the constructor, and services are not registered during system operation
ELMA technical support
The ELMA company provides technical support for the ELMA system to its clients. There are 2 types of support for ELMA software:
Warranty support is provided to the system buyer for 6 months from the date of signing the license agreement. As part of warranty support, the User can create requests of the following types: “Error message”, “Suggestion for improvement”, “Question about system operation”. The user can receive system updates for free. All consultations are provided on weekdays from 9-00 to 17-00 Moscow time. Licensing and technical support – can be purchased in addition to Warranty support. Licensed support is the provision of services for the transfer of all new versions of a software product released during the validity period of the support agreement. Technical support is the provision of services to provide access to the technical support site and resolve requests of all types within the time limits established by the contract, during the validity period of the support contract.
The process approach is applicable in many areas of business. Below are the most popular use cases.
Automation of individual business processes based on ELMA - in this use case, the system allows you to organize launch, execution, monitoring, integration with external systems, execution control and documentation of the process. In this case, it is necessary to configure the interface of each user so that he sees all the information he needs on the automated process, disabling access to unused functions. Corporate portal - this scenario involves the widespread use of interaction tools, such as a calendar and message feed, as well as the use of tools for working with documents and functionality for issuing and monitoring the execution of orders. Depending on the user's role in the system, a wide variety of design options for the pages displayed to users can be used. Service catalog is a set of service process outlines. Each structural division of a business provides a set of services that it provides to other divisions, and the head of the department monitors strict compliance with the terms of service provision. Priority areas are execution and control of processes. Integration and documentation take a backseat. Integration of the company’s IT systems – the essence of the approach comes down to:
- each application provides a set of services to the outside world; The BPM system acts as a transport of information between services; The BPM system creates a clear pattern of information flow between different applications; in cases where it is necessary, the BPM system turns to a person to make a decision; The BPM system allows you to see at any time what stage a process instance is at.
Object-oriented BPM - this scenario assumes the need to regulate actions with some object.
The object can be a Document, Contractor, Project or other business object. Choosing a BPM system as a tool is beneficial when the requirements are dominated by the functions of information flow between process participants. For a number of objects, the ELMA system has already implemented applications that allow you to organize the movement of information without programming. The use of scripts allows you to significantly expand the list of objects whose work processes can be automated. Several use scenarios can be implemented within one system.
Due to its large volume, this material is placed on several pages: 1 |
Working with the database
ELMA BPM supports databases:
- MS SQL
- Oracle
- Firebird
- PostgreSQL
For this, an ORM layer is used:
Nhibernate
- (ported from Java - hibernate) - allows you to not think about the database and write code until a certain point.
Where it is used:
- ELMA Entity Manager - simplifies working with objects, is responsible for creating, updating, deleting and searching for objects. An ELMA entity is an object that is stored in a database.
- Creates and edits tables, connections, working in ELMA you may not know that there is manual intervention (for example, in some systems they write a migration - create a table and connections)
- in ELMA, for this, entity attributes and its own description in the form of an md (metadata) file are used (modified by the ELMA team)
- for example creating indexes, stored procedures
Nhibernate has its pros and cons:
pros
- Easy to use with the entity manager
- Easy to set up
- Has enough strings for customization
Minuses
- Slow on some operations
- Does not allow you to relax if something more difficult happens than usual
Editions (versions) of the ELMA system
ELMA software is supplied in 3 editions. The editions differ both in the supported functions of the system logic level and in the list of supported DBMS and Windows system functions:
ELMA Express is a fully functional version of ELMA. The free FireBird database is used as a DBMS. This version is very easy to install and maintain - all components necessary for the system to operate are included in the program. This version is applicable for no more than 30 system users. ELMA Standard (ELMA Standard) – this version of the ELMA system is suitable for companies that need to organize a large number of workstations and ensure stable system response time, with a large number of concurrent users. MS SQL Server is used as a DBMS. This version is applicable for no more than 150 system users. ELMA Corporate (ELMA Enterprise) – this version is suitable for companies that require increased fault tolerance and performance. The corporate version uses a distributed server structure, thereby allowing you to increase the number of concurrent users and increase the fault tolerance and scalability of the system. ELMA Corporate can use Oracle® Database 10g and Oracle® Database 11g or MS SQL Enterprise Edition as a DBMS. This version is applicable for more than 150 system users. A distinctive feature is the use of a competitive method of licensing users.
Web part
On server
ELMA is an ASP.NET MVC application - a pattern in which
- data model is what is passed from the controller to the view for rendering
- view - draws the model ( Razor markup language - a mixture of html and C#)
- controller - responsible for the logic on the server, receives the request and passes the model to the view
This is good - but is gradually becoming outdated
Big cons
- Page reloads frequently
- Part of the logic is executed on the server (in ELMA this is a separate topic..)
To manage the portal, ELMA uses Orchard CMS ~ version 1.0
- Digging into the SDK with a decompiler you will find direct references to it
If you install Orchard CMS, the structure of the ELMA application and the web part are similar.
Nuance
ELMA is a modular application and you can expand it as much as you like
But you won’t be able to turn off the modules —even your own.
- Because the changes have already been applied to the database
A serious problem is to turn off a module if you have already changed the module entities in the designer. (this need will arise during the update)
- This is a feature of ELMA modification through the designer
- Therefore, be careful with modules not from ELMA
I’ll tell you separately
- how can I turn it off
- how to install so as not to be afraid of ELMA updates
In the browser
ELMA uses old but proven technologies
First jQuery
- old library and old version 1.6.4
If you are going to embed, for example, a JavaScript library for charts, make sure that
- It didn't depend on jQuery
- Or supported version 1.6.4
Otherwise, you will have to manually add the missing methods and check that the rest of the system is working
will thaw.
(Here is an example , verified)
Secondly Telerik
- old version, but it's enough
The library consists of two parts - server and client, simply in the browser
- buttons
- tables
- input fields
- and other controls (control elements)
- This is telerik.
In order not to reinvent the wheel, there are many ready-made functions (write in the elma and see what it tells you)
High Music Resolution
Price – 457,000 rubles.
In a polarized market in which some players are innovating on file, personal and wireless themes, while others are helping vinyl catch up after years of lying in the oven, the compact disc continues to play an important role, including in the activities of high-end companies. For example, the Norwegian Electrocompaniet, which convincingly shows that the “Red Book” format is far from the Red Book, and 16/44 is, although formally not fashionable today Hi-Res, but still... Hi-Res. Not so much on a formal basis (on the front panel of the EMC 1 Mk IV CD player you can read “24-bit High Resolution”), but on the ear.
The very presence of the Mk IV suffix in the name of the Electrocompaniet CD player indicates the successful market fate of previous iterations of EMC 1. In general, in the brand’s catalog you can find many models with similar markings, which indicates the Norwegians’ preference for an evolutionary development path - a revolutionary one. Manufacturers love to award their equipment with the epithet “legendary,” but it should be noted that its use in relation to generations of Electrocompaniet EMC 1 has more justification than in many other cases. So, the fourth version of the legendary model, released at the end of the last millennium - in 1998. The Hi-Fi.ru laboratory has a fresh, one might even say, the freshest new product.
The designers provided five different sub-cases to shield the transport, transformer, digital, analog and control circuits from external radio frequency and electromagnetic radiation.
Based on the information provided by Electrocompaniet itself about its new player, we can conclude that it is structurally significantly different from its predecessors. Which is understandable, because for the digital era 30 years is the same as for the analogue era - 100 (events in the AV world are unfolding today like music in a virtuoso play by Liszt: “fast”, “faster”, “even faster”, “fast” , as soon as possible”, “even faster”...) Obviously, the focus on the highest design and sound level remains unchanged for Electrocompaniet. The EMC 1 Mk IV features a new optical transport engine, high-quality sample rate converter, fully balanced DACs and discrete analog circuitry. The company does not specify which transport and DAC are used here.
Serious measures have been taken to protect the optical assembly from vibrations that can cause degradation of the fine structure of the music signal. The company itself is proud of its Electromechanical cancellation system, emphasizing its great and positive contribution to high-quality sound. The vibration isolation of the entire structure is facilitated by the special design of the legs - modified SoundCare Superspikes are used as supports. The designers provided five different sub-cases to shield the transport, transformer, digital, analog and control circuits from external radio frequency and electromagnetic interference, as well as to minimize the mutual influence of parts of the structure on each other. Digital and analog circuits are powered by separate toroidal power transformers - a normal solution for a high-end device. The significant weight of the player (18 kg) is noteworthy - the EMC 1 Mk IV is heavier than many integrated amplifiers of the same class on the market.
The presence of coaxial electrical and optical outputs indicates the player’s readiness to function as a transport, in conjunction with an external converter. There is a 12-volt trigger input for centralized power management and an RS-232 port for software updates and integration of the player into a home system. Analog outputs are implemented on RCA and XLR connectors.
Electrocompaniet has not changed its signature sound style, which is characterized, first of all, by a slightly cool tonal palette and high transparency of the musical image.
The device looks solid; the original and strict design of Electrocompaniet is instantly recognizable. On the left side of the front panel of the player we see a convenient information display with large blue symbols that are easily readable from afar - on the display of the previous version of the player the symbols were not so large and, therefore, less visible. The device as a whole has become more ergonomic. On the right is a group of four buttons for controlling sound reproduction; The Power button is located in the center. The four corner screws have the same gold finish as the buttons. Compared to a player with a non-standard design, the included remote control looks simple: a plastic case, nothing remarkable... Discs in the EMC 1 Mk IV are loaded from the top. You need to manually move the door back (its movement is impeccably smooth), install the plate on the spindle and press it with a nice magnetic clamp. After closing the bootloader, Loading appears on the display for a few seconds, after which the device is ready to produce music.
The first impressions allow us to judge that Electrocompaniet has not changed its signature and very attractive sound style. The sound of previous versions of the player featured analog plastic, so beloved by audiophiles. We can note the continuation and even strengthening of this valuable trend in the EMC 1 Mk IV. In this regard, it is worth noting the naturalness, sophistication and subtlety of musical design characteristic of vinyl and EMC 1 Mk IV.
The player's signature is characterized, first of all, by a slightly cool tonal palette and high transparency of the musical image, especially in the upper middle and upper register. For the author of this test, the sound of Electrocompaniet evokes a “national” association with the fresh and clean atmosphere of the Norwegian fjord. The pleasant light warmth of the middle register seems to indicate the breath of the Gulf Stream. One way or another, the component presents music very delicately, without missing out on important timbral, dynamic and spatial details. With Electrocompaniet, the individuality of both the music itself and its performance is always well felt, and the concept of the sound engineer is clearly readable.
During the sound examination, we were able to conduct an interesting experiment in combining an Electrocompaniet turntable with a Van den Hul Black Hole power supply filter. Tests with repeated introduction and removal of the filter from the tract showed that with it the sound becomes even more interesting. Black Hole, as it were, contributes to the detailing of timbres, filling intersonic spaces with information and identifying intonation connections that are important for the manifestation of musical expression. At the same time, the filter does not transform, but, on the contrary, emphasizes and sharpens the basic character of Electrocompaniet. With it, high-frequency details are presented even more accurately, graphically and, moreover, completely comfortably, and the bass line is a little more prominent. In short, the Electrocompaniet EMC 1 Mk IV provides consistently high musical resolution when playing any music. The partnership between Electrocompaniet and Van den Hul must be considered interesting.
Measurement results
The nonlinearity of the amplitude-frequency response and channel imbalance in the audio frequency range of the Electrocompaniet EMC 1 Mk IV player are negligible (0.06 and 0.03 dB, respectively) (Fig. 1). The output impedance is stable and is 150 Ohms (unbalanced output). The products of nonlinear (Fig. 2, 1 kHz -3 dBFS) and intermodulation (Fig. 3, 19+20 kHz -6 dBFS) distortions are clearly visible in the graphs, but their amplitudes are small and the calculated values of THD and CII do not exceed 0.005% and 0.007%. It is not possible to isolate the signal interpenetration between channels from the noise level even in the high-frequency region. The signal-to-noise ratio in the audio range is at least 120 dB. The maximum output signal level is 2.3 volts. The device does not invert the signal.
How to test yourself
This and the following lessons will consist of
- Articles you need to read (about ELMA and what is connected with it, not always mine)
- List of homework to choose from - you need to complete one of the tasks and explain what and how. (you will need to choose in advance)
Examination
To check there will be
- Test for 10-20 questions. (50% success)
- The task (one of the homework ones, I’ll choose which one) - you can use anything to solve it. (second 50% success)
You will have 1 hour to decide.
License types
Depending on the selected version, the system may be supplied with the following types of licenses:
Floating user licenses are non-personal rights to use software. Such licenses are not associated with the name of a specific employee and have a limit on the number of simultaneous connections to the database. At one point in time, as many users can work with the ELMA system as there are competitive licenses purchased. At the same time, the validity period, as well as the maximum number of workstations on which the system can be installed, are not limited in any way. This type of license is available only in the Corporate version. Named user licenses are purchased for each user of the ELMA system and are “assigned” in the system to the name of the employee and the name of the company in which he works. It is necessary to purchase as many registered licenses as there are users who will work with the system. This type of license is supplied in all versions of the system. Server licenses – purchased for a server with the ELMA system. This type of license is supplied in all versions of the system.