Mastering ODC Architecture: Everything You Need to Know

ShubhamSharma2528 94 views 27 slides Mar 10, 2025
Slide 1
Slide 1 of 27
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27

About This Presentation

This session is your ultimate guide to OutSystems Developer Cloud (ODC) architecture, providing insights into every critical aspect of the design process. Learn how to:

Disclose: Identify and analyze business requirements, processes, user stories, personas, and roles.

Organize: Group concepts into...


Slide Content

Basics of Architecture in ODC

I N T E R N A L U S E O N L Y Applications Software that can run on all browsers or mobile devices Web app, Tablet and Phone App Contains : Understanding Apps? Screens, Blocks and other UI related elements Timers Client Actions, Server Actions, Service Actions, and Integrations Entities and static Entities

I N T E R N A L U S E O N L Y What is available in App? Events Interface Logic Data Screen Timer Service Action Entity Client Action Server Action Rest Expose Entity Diagram Static Entity Rest Consume Exception Role Client Variable Structure Settings Resource Image Theme Script External Site Block

I N T E R N A L U S E O N L Y Role of Libraries A Library is an app that other web apps or libraries reuse Set of UI and logic elements that can be reused Library contains : Blocks and other UI related elements Client Actions, Server Actions, and Rest Consume Static Entities Libraries

I N T E R N A L U S E O N L Y What is available in Library? Processes Interface Logic Data Screen Timer Client Action Server Action Entity Diagram Static Entity Rest Consume Exception Service Action Rest Expose Role Entity Client Variable Structure Settings Resource Image Theme Script External Site Block Element can be reused in other applications or libraries

Reusing Elements Across Apps and Libraries

Reusing Elements Across Apps and Libraries

Architecture Design Process

Architecture Design Process

What are the business concepts relevant to our use case? What is the organizational structure? Who are the business owners and sponsors? How do these stakeholders relate to the different business contexts? How can we ensure that teams can work independently and maintain a steady delivery pace? Finally, what are our non-functional requirements, reusable components, and external system integrations? Gather and understand the requirements by interviewing stakeholder Interviewing Stakeholder

NFRs Interview Non functional requirements discovery interview: Sample Questions NFR Question Answer Do we require any integration with external identity provider? ... Is there a need fo generate PDFs or any other kind of reports? ... Is it required to integrate with external systems? If yes, which systems? What are the authentication requirements? ... Is there any need to integrate with external databases? ... Are we foreseeing the need to use custom code? ... What are the security related concerns? ... Are we using a mobile app? If yes, do we have requirements for the mobile app that will translate into the usage of native plugins? ...

Disclose

Identify the application concepts by covering the following Identifying the Concepts Business requirements, processes, user stories, personas and roles Information architecture Non-functional requirements, integration technologies User experience expectations

Application Concepts Personas Roles Business Concepts NFRs

Concept Type of Concept Description Customer Persona/Role/Business ... Agent/Broker Persona/Role/Business ... Claims Business ... Risk Business ... Payment Business ... Customer Business ... Quote Business ... SAP Integration ... Guidewire Integration ... Application Concepts - Example

Application Concepts - Example

Organize

Identify your bounded contexts by grouping concepts using the following criteria: Grouping Concepts Domain expert boundaries Business process steps, data flow, and ownership Dependency clustering and concept cohesion Ubiquitous language

Organize

Assemble

Strive for team independence and autonomy in release cycles, ensuring clear ownership and manageable complexity. Assemble Understanding of your organization, including its teams, business owners, and sponsors. Release cycles independence (developing, testing, deploying) Reduce complexity

Prevent mixing business owners to ensure clear ownership Scenario 1 Scenario 2 Scenario 3 Scenario 4 Business Owners

Prevent mixing business sponsors with different paces to ensure release cycles independence Scenario 1 Scenario 2 Scenario 3 Scenario 4 Business Sponsors

One Application should not have more than one owner team Scenario 1 Scenario 2 Scenario 3 Scenario 4 Product Teams

Assemble

Architecture Blueprint

I N T E R N A L U S E O N L Y Thank you!
Tags