Hello All,
Can anyone tell what do we mean by spaghetti architecture in Outsystems?
Regards
Sanjay
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
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
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/