68
Views
3
Comments
Solved
Spaghetti architecture in Outsystems?
Question

Hello All,

Can anyone tell what do we mean by spaghetti architecture in Outsystems?


Regards

Sanjay

2021-03-05 13-56-11
Ricardo Pereira
 
MVP
Solution

Hi,

Long story short, that is caused by bad design and, many times, just because someone tries to do something incredibly fast many times because (or the sponsor don't want to invest in someone with experience) and don't worry about scalability (or don't have enough expertise to predict what can be the result). When the things start to grow, grows wrong, taking in the future an huge amount of time in refactoring and re-engineering.

Most of times, the spaghetti is caused by violations in references, so, consuming modules that are consuming producers that are consuming consumers also, and, in the middle, consuming their own consumers (directly or indirectly).

You can take a look in those links to see the best way to avoid that kind of scenarios:

https://success.outsystems.com/documentation/best_practices/architecture/designing_the_architecture_of_your_outsystems_applications/application_composition/the_4_rules_for_correct_application_composition/

https://www.outsystems.com/forums/discussion/83946/architecture-violations-upper-and-side-violations-to-orchestrators-and-end-user/


You can search many other links about this topic, it's not OutSystems exclusive and the main idea is similar to other technologies.


Best regards,

Ricardo Pereira


UserImage.jpg
Alexandre Yip

Hi Sanjay, 

spaghetti architecture basically does not follow the best practices of outsystems architecture. 

Check out here this post 

https://www.outsystems.com/blog/posts/architect-developer-conference_modern-day-spaghetti-western/

and for architecture best practices

https://success.outsystems.com/documentation/best_practices/architecture

Hope that it helps you 

2021-03-05 13-56-11
Ricardo Pereira
 
MVP
Solution

Hi,

Long story short, that is caused by bad design and, many times, just because someone tries to do something incredibly fast many times because (or the sponsor don't want to invest in someone with experience) and don't worry about scalability (or don't have enough expertise to predict what can be the result). When the things start to grow, grows wrong, taking in the future an huge amount of time in refactoring and re-engineering.

Most of times, the spaghetti is caused by violations in references, so, consuming modules that are consuming producers that are consuming consumers also, and, in the middle, consuming their own consumers (directly or indirectly).

You can take a look in those links to see the best way to avoid that kind of scenarios:

https://success.outsystems.com/documentation/best_practices/architecture/designing_the_architecture_of_your_outsystems_applications/application_composition/the_4_rules_for_correct_application_composition/

https://www.outsystems.com/forums/discussion/83946/architecture-violations-upper-and-side-violations-to-orchestrators-and-end-user/


You can search many other links about this topic, it's not OutSystems exclusive and the main idea is similar to other technologies.


Best regards,

Ricardo Pereira


2023-02-13 15-34-45
BabyBear

Hi Sanjay

I think this is the best way to know about architecture in Outsystems. This guided path also talks about spaghetti architecture.

https://www.outsystems.com/training/paths/8/Architecting+Sustainable+Applications/

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.