1. OutSystems Official Documentation
"Designing the architecture of your OutSystems applications
" Section: The 3 Layers of the Architecture Canvas. It states
"Foundation modules are libraries that provide reusable
non-functional and functional assets to be used across multiple applications... They provide a solid and generic foundation for all your applications
promoting a high level of abstraction and reusability."
2. OutSystems Official Documentation
"Architecture Canvas
" Section: Foundation Layer. This section details that Foundation modules "implement the integrations with external systems or define widely used data models with the entities that are shared among many applications." This shared nature is the basis for its high reusability.
3. OutSystems Official Documentation
"Architecture Dashboard
" Section: Code patterns detected by Architecture Dashboard
Pattern: Incorrect Abstraction. The documentation explains that placing reusable logic in higher layers (like End-User) is an architectural flaw
reinforcing that reusability is a primary characteristic of the lower layers
especially Foundation.