Lifetime application dependencies

Hi guys,

I have a question, regarding arquitecture and lifetime. Imagine this:

You have an application APP_A with the eSpaces APPA_ES_A, APPA_ES_B, APPA_ES_C
APPA_ES_A consumes APPA_ES_B and C
APPA_ES_B consumes C

You have other application APP_B with eSpaces APPB_ES_A and APPB_ES_B

APPB_ES_A consumes APPB_ES_B
APPB_ES_B for a particular reason, needs to consume APPA_ES_C from Application APP_A

Now, if I develop new code in APPA_ES_B from APP_A, when I deploy the application APP_A to other environment, does lifetime advises or obligates to deploy also Application APP_B ?

In my opinion, it shouldn't because I didn't change the eSpace that application B is consuming from APP_A (which is the APPA_ES_C. And it shouldn't stay with different version either.

Do you guys know the answer for this? I need to have an official answer.

Thanks in advance!

Nelson Freitas

No one has any idea?
make an image of it an perhaps people understand it better.

but to be honest.
you should have AppA_ES_C as a different application, since it's being consumed by both appA & appB.


If I develop code in appa_core eSpace, in lifetime, when deploying to other environment, do I need to also deploy App B ? If not, will I have different versions or warnings? It shouldn't..

@J having that appa_shared_core in a different application wouldn't make that much sense, because its business only related to App A.

I did think about having REST apis in appa_shared_core so it wouldn't have direct dependencies, but in this way I would also lose track for where is a particular method being used, and the performance in run-time would deteriorate too...


Nelson Freitas

to answer your question, yes it will trigger to redeploy appB but Lifetime will take care of that.
that's why I am telling you the shared_core needs to be in a separate app.
Design-wise it also makes more sense, since 2 applications are having references to it.

@J having that appa_shared_core in a different application wouldn't make that much sense, because its business only related to App A.

untrue! because you are referencing it, so there is business relation to it from appB
furthermore, do not think applications in Outsystems are real applications, more in packages.

Hi @J,

yeah, I should say "because its business mainly related to.." instead of "only related".

And yes, I'm looking at the applications as they were real applications, for packages I look at solutions.

But maybe you're right, I should not look at it as applications...