An OutSystems application is an assembly of modules (eSpaces and Extensions), defined in Service Studio. An application constitutes the minimum deployment unit among environments in LifeTime.
Understanding the dependencies among applications is also key to design a correct architecture. Even if you have a correct module architecture, the wrong application composition can result in:
Applications not being able to evolve independently (different life cycles).
Applications that impact each other unnecessarily. Deploying one application may result in having to take all other applications with it to Production.
Check the complete guide on how to design your application architecture in Designing the architecture of your OutSystems applications.