Cheat sheet
OutSystems Associate Developer Cheat Sheet
UI Design
- 26% of exam
- Screen Widgets Blocks and Events List Form Block Event
Logic
- 22% of exam
- Client/Server Actions Form Validations Logic Flows Exception Handling
Fetching Data
- 20% of exam
- Aggregates Fetching Data on Screens Data Action REST Consume
Reactive Apps
- 12% of exam
- Client Variables Screen Lifecycle Debugging Service Studio
Data Modeling
- 12% of exam
- Entities Data Types Data Relationships Static Entity
Architecture and Security
- 8% of exam
- Modular Dependencies Role-based Security Lifecycle Roles
Quick Facts
- Exam Associate Developer
- Credential OutSystems Certified Associate Developer
- Time 120 min
- Questions 50
- Pass 70% (35/50)
- Platform Reactive Web Apps
- Cost $200 USD
- Validity 2 years
- Format Multiple choice
Block vs Screen UI
Block
- Reusable component
- Embedded in screens
- Has events
Screen
- Standalone page
- Navigable URL
- Has lifecycle
- Reusable vs standalone
Widget Picker UI
- Show record list → List ( repeat widgets )
- Edit a record → Form ( bound to entity )
- Conditional display → If ( boolean check )
- Group widgets → Container ( layout box )
- Reusable pattern → Block ( shared UI )
- Navigate away → Link ( screen transition )
Screen Widgets UI
- Screen UI page
- Block Reusable UI component
- Container Group widgets
- Placeholder Block content slot
- List Repeat records
- Form Edit record
- If Conditional display
- Link Navigate action
- Button Trigger action
Blocks and Events UI
- Web Block Reusable component
- Block Event Notify parent screen
- OnNotify Handle block event
- OnAfterNotify Post-notify handler
- Event Handler Respond to event
- Widget UI element
Action Hierarchy LO
- Data -> Server -> Client -> Screen
- Data: fetch Server: DB logic Client: browser Screen: UI event
Server Action vs Client Action LO
Server Action
- Runs server-side
- Can query DB
- Aggregates allowed
Client Action
- Runs browser-side
- No DB access
- UI manipulation
- Server DB vs browser UI
Action Type Picker LO
- UI event triggered → Screen Action ( browser-side )
- Fetch screen data → Data Action ( cached )
- Server-side logic → Server Action ( can query DB )
- Browser-side logic → Client Action ( no DB access )
- Long-running task → Process ( background )
- Scheduled task → Timer ( runs periodically )
- External API call → Server Action ( REST consume )
Logic and Actions LO
- Screen Action UI event handler
- Server Action Server-side logic
- Client Action Browser-side logic
- Data Action Fetch screen data
- Process Background task
- If Conditional branch
- Switch Multi-branch logic
- Assign Set variable value
Exception and Validation LO
- Exception Runtime error
- Raise Exception Trigger error
- Exception Handler Catch logic
- Try/Catch Handle errors
- Form Validation Validate inputs
- Required Field Mandatory input
Aggregate vs SQL FE
Aggregate
- Visual builder
- Parameterized safe
- Joins entities
SQL
- Raw SQL code
- Advanced queries
- Manual escaping
- Visual vs code query
Data Source Picker FE
- Fetch from entity → Aggregate ( visual query )
- Complex query → SQL ( advanced only )
- Enumeration values → Static Entity ( design-time )
- External API data → REST Consume ( server-side )
- Screen-bound data → Data Action ( auto-refresh )
- Runtime config → Site Property ( env-specific )
Aggregates and Fetching FE
- Aggregate Visual query builder
- Filter Condition rows
- Sort Order results
- Join Combine entities
- Computed Attribute Calculated field
- Max Records Limit result rows
- SQL Query Advanced data fetch
- Data Action Fetch screen data
External Data and REST FE
- REST Consume Call external API
- REST Publish Expose API endpoint
- SOAP Consume Legacy integration
- Site Property Runtime config value
- JSON Structure Deserialize response
- API Method Exposed server action
Screen Lifecycle RE
- Init -> Ready -> ParametersChanged
- Init: before render Ready: after display Changed: new params
Reactive vs Traditional Web RE
Reactive Web
- Browser-side logic
- Client Actions
- No full postback
Traditional Web
- Server-rendered
- Screen Actions
- Full postback
- Client vs server render
Service Studio IDE RE
- Service Studio Visual IDE
- TrueChange Real-time checker
- Integration Studio Build extensions
- Forge Component marketplace
- Toolbox Drag widgets
- Canvas Design surface
- Properties pane Edit settings
- Element tree Navigate hierarchy
Reactive App Concepts RE
- Reactive Web Browser-side logic
- Traditional Web Server-rendered pages
- Client Variable Browser-scoped variable
- OnInitialize Before screen renders
- OnReady After screen displays
- OnParametersChanged New parameters received
- Debugging Service Studio debugger
Relationship Rules DA
- 1:N = FK; N:N = Join
- 1:N: foreign key N:N: join entity FK: child entity Join: both IDs
Static Entity vs Entity DA
Static Entity
- Design-time records
- Enumeration
- Fixed values
Entity
- Runtime records
- Database table
- User data
- Enumeration vs data table
Data Types and Entities DA
- Entity Database table
- Static Entity Design-time enumeration
- Identifier Primary key type
- Text String data type
- Integer Whole number type
- Boolean True or false type
- Date Time Timestamp type
- Decimal Fixed precision number
Relationships DA
- One-to-Many Foreign key child
- Many-to-Many Join entity pattern
- Foreign Key Reference identifier
- Join Entity Links two entities
- Referential Integrity Auto-enforced constraint
- Index Auto-created on FK
Deploy Flow AR
- Personal -> Common -> LifeTime
- Personal: private Common: shared LifeTime: promote Prod: governed
1-Click Publish vs LifeTime AR
1-Click Publish
- Dev environment
- Service Studio
- Ctrl+P
LifeTime
- Cross-environment
- Promote apps
- Governance
- Dev iteration vs prod deploy
Lifecycle and Deployment AR
- 1-Click Publish Deploy to dev
- Personal Area Private dev zone
- Common Area Shared app zone
- LifeTime Cross-env deployment
- Versioning Track module versions
- Deployment Zone Target environment
Role vs Registered Role AR
Role
- Permission group
- Defined in module
- Screen/entity access
Registered Role
- Granted to user
- Runtime assignment
- Explicit enable
- Defined vs assigned
Roles and Security AR
- Role User group permission
- Registered Role Granted to user
- Screen Permission Role-based access
- Entity Permission Data access control
- Anonymous Role Unauthenticated access
Common Traps
Client Action vs Server Action
- Client Actions can't run Aggregates ≠ Server Actions can access database
Static Entity vs Entity
- Static Entity = design-time records ≠ Entity = runtime user data
1-Click Publish vs Production
- 1-Click Publish deploys to dev ≠ LifeTime promotes to production
Aggregate vs SQL
- Aggregate = visual, safe ≠ SQL = code, advanced only
Block vs Screen
- Block = reusable component ≠ Screen = standalone page
Personal vs Common Area
- Personal Area = private zone ≠ Common Area = shared apps
Last Minute
- 1. 50 Q, 120 min, 35 pass
- 2. UI Design = 26% (highest weight)
- 3. Logic = 22% (second highest)
- 4. Client Actions cannot run Aggregates
- 5. Static Entity = enumeration, design-time
- 6. 1-Click Publish: dev, not prod
- 7. Screen lifecycle: Init, Ready, Changed
- 8. 1:N = FK; N:N = join
- 9. Data Action fetches screen data
- 10. Server Actions can access database
- 11. Roles control screen and entity access
- 12. Reactive = browser; Traditional = server
OutSystems Certified Associate Developer
- Practice Questions 118 questions Study Guide 26 topics Cheat Sheet 83 facts Flashcards 50 cards Free CE Podcast
Same family resources
- Explore More OutSystems Certifications
- Continue into nearby exams from the same family. Each card keeps practice questions, study guides, flashcards, videos, and articles in one place.
OutSystems Certified Professional Developer
- Practice Questions 100 questions Shorts 1 short Free CE
OutSystems Certified Tech Lead
- Practice Questions 100 questions Free CE