Time passes and we get closer and closer to our vision. As we move these boundaries, the picture becomes clearer .
Something more about contexts
Let me repeat something. We are enabling you to run multiple applications in the same context. By context we mean the security context as well as the workflow context. When we talk about the security context, this is everything that has to do with users and roles. The workflow context takes care of the tasks, cases, processes start, workflow documents, signals and much more.
Application as technical boundary
The applications are becoming more and more technical boundaries for developers whereas the security context and workflow context serves as the business context for the end users. Let me explain. Applications are some composition of Ivy projects. How they are put together doesn't matter - the developer can decide that and this composition can change at any time and has no impact on the users. Preferably we put things together that belong together - feature driven. This in turn also leads to working with small independent release cycles.
For example this will be the door opener to define per application which Primeface version you want to work with. This will be a powerful feature for all those migrating. You don't have to migrate everything at once, you can upgrade the engine and the existing apps will continue to run. Then you can migrate app by app if you need to.
Security and workflow context as business boundary
The end user only wants a unified task and process start list. It does not matter to him from which application the process start comes and in which application he has to process the next task - this is completely transparent for him. He only has a view over all technical compositions - the applications.
In the following picture you can see an engine with two contexts (default, test). Where in the default context three applications are installed:
The portal application as it is already delivered today. The finance and hr applications only contain small processes. Whereby each app still defines the role (as of today). Users act across the context - no need to duplicate users if you want to work with multiple apps.
On every Axon Ivy Engine there is a pre-installed context, the default context. All applications always end up in the default context - unless you reconfigure it. We believe that most engine installations will never run a second context. This way you have to configure less.
I really like this change. This will give us so much more flexibility and can play a very important role for more reliability and development of applications for the ivy platform 🍀.