Mini Map
Search
⌘ K
Log In
Software Architecture in Applications*
0%
1.
Getting Started
The Blueprint of Software
Why Architecture Matters
The Cost of Correction
The Waterfall Flow: Requirements
The Waterfall Flow: Design
The Waterfall Flow: Implementation
Evolution vs. Prediction
Agile Architecture
Cloud-Native Pillar
Cross-Platform Pillar
Performance Pillar
Old vs. New UX
Knowledge Check
Architecture Recap
2.
The Architecture Meta-Frame
The Architect's Compass
The Architecture Meta-Frame
Vague vs. Testable
The Reality of Constraints
Constraint A: Responsiveness
Constraint B: Security
The Trade-off
Quick Check: QAs
Choosing the Vehicle
Cross-Cutting Concerns
Visualizing Auth Flow
Architecture Recap
3.
Architectural Styles and Strategies - I
Software Architecture 101
Three Ways to View a System
Who's in Charge?
The Single Point of Failure
The Layered Cake
Presentation Layer
Business Layer
Data Layer
Open vs. Closed Layers
Layers vs. Tiers
Client-Server Dynamics
MVC: The UI Standard
How MVC Works
The Controller
The Model
The View
Enter MVVM
MVC vs. MVVM
Peer-to-Peer (P2P)
Architecture Recap
4.
Architectural Styles and Strategies - II
The Connection Chaos
Enter the Broker
Step 1: The Request
Step 2: The Handoff
Step 3: The Response
Why Use a Broker?
The Assembly Line
Inputs Become Outputs
Real World Filters
Event-Driven Paradigm
Source, Bus, Sink
Publish and Subscribe
Pattern Check
Architecture Recap
5.
Architectural Styles and Strategies - III
The Core Logic Problem
Ports & Adapters Explained
The Core Domain
The Ports
The Adapters
The Monolithic Standard
Monolith: Good or Bad?
Breaking the Monolith
Microservices Ecosystem
Independent Services
Own Database
API Gateway
Architecture Check
Micro-Frontends
Why Split the UI?
Going Serverless
The Serverless Trade-off
The Migration Reality
Migration Strategy
Architecture Recap
6.
Scalability
The Growth Challenge
The Scalability Toolkit
Load Balancing
Caching
Asynchronous Processing
Scaling Up vs. Scaling Out
Visualizing Strategies
Horizontal Scaling
Vertical Scaling
Hybrid Scaling
The Bottleneck Effect
Monolith vs. Microservices
The Serverless Advantage
Scalability Recap
7.
Availability
What is Availability?
Why Systems Crash
The Safety Net: Redundancy
Adding the Spare
The Failover Switch
Data Replication
Traffic Control: Load Balancing
Strength in Numbers: Clustering
Availability Check
Keeping it Alive
8.
Load Balancing
The Traffic Cop of the Internet
How Load Balancing Works
The Request
The Distribution
Redundancy
Hardware vs. Software
The Internet Phonebook (DNS)
DNS Load Balancing
Strategies for Fairness
Round Robin
Weighted Round Robin
Least Connections
The Memory Trick (IP Hash)
Scenario: The XYZ Crash
Fixing the XYZ Crash
System Balanced!
9.
Security
Auth vs. Auth
The Secret Code
Plain Text
Encryption
Decryption
The Human Weakness
Talking to Databases
Traffic Jam Attack
Identify the Threat
Robots vs. Humans
The White Hat
Risk Strategy
Avoid & Accept
Transfer & Reduce
Security Recap
10.
Caching
Why We Need Caching
The Caching Lifecycle
Step 1: The Request
Step 2: Cache Miss
Step 3: Populate & Hit
Three Big Wins
Knowledge Check
Strategy: Cache-Aside
Lazy Loading
Best Use Case
Write-Through vs. Write-Back
Caching Scenario
Caching Recap
11.
Web Architecture
How the Web Works
Evolution of Architecture
Microservices
Serverless
REST API Basics
Speaking the Language
POST & PUT
DELETE
Test Your REST
The Formal Protocol: SOAP
SOAP vs. Modern Web
Real-Time WebSockets
Custom Card
Pull vs Push Updates
Architecture in Action
The Magic of Ajax
jQuery in One Line
Web Architecture Recap
12.
Case Studies
Case Study: Collaborative Docs
The Core Requirement
Solution: Publish-Subscribe
The Publisher Role
The Topic Repository
Subscribers Stay in Sync
Why Publish-Subscribe?
Case Study: The CRM System
The Data-driven Process
Solution: Pipe and Filter
Where Data Starts
Filters Do the Work
Reaching the Sink
Pub-Sub vs. Pipe-Filter
Key Takeaways
13.
Conclusion
The Architect's View
The Meta-Frame: Inputs
The Meta-Frame: Qualities
The Meta-Frame: Structure
Decision Making
Key Takeaways
Home
Courses
Software Architecture in Applications*
The Trade-off
We'll cover the following...
This component is not supported in the current context
...