1. REQUIREMENT GATHERING
Functional Requirements
Features, Use Cases, Workflows → Define what the system must do from a business perspective.
Non-Functional Requirements
Scalability → Ability to handle growing workloads.
Availability → Percentage of time the system remains operational.
Reliability → Ability to consistently produce correct results.
Performance/Latency → Speed at which the system responds.
Security → Protection against unauthorized access and threats.
Compliance → Adherence to regulations like GDPR, PCI-DSS, HIPAA.
Cost → Budget constraints influencing architectural decisions.
Usability → Ease of use for end users.
Constraints
Budget → Financial limitations affecting solution design.
Timeline → Delivery deadlines and milestones.
Existing Tech Stack → Current technologies that must be considered.
Team Skills → Available expertise within the organization.
Regulatory → Legal and compliance restrictions.
Rate Residency → Geographic constraints on data storage.
Third-Party Dependencies → External systems impacting architecture.
Trade-offs → Balancing competing requirements.
2. HIGH LEVEL ARCHITECTURE
Clients
Web → Browser-based user interaction.
Mobile → Native or hybrid mobile applications.
Partner Apps → External applications consuming services.
IoT Devices → Connected devices generating or consuming data.
Infrastructure
CDN → Distributes content closer to users for lower latency.
WAF → Protects applications from web-based attacks.
Load Balancer → Distributes traffic across multiple instances.
API Gateway → Centralized entry point for APIs.
Core Architecture
Microservices → Independently deployable business capabilities.
Service Mesh → Handles service-to-service communication.
Messaging
Message Queue/Event Bus → Enables asynchronous communication.
Data Layer
Database → Persistent storage of business data.
Cache → Fast temporary storage to improve performance.
Object Storage → Scalable storage for files and blobs.
External Integrations → Third-party services and APIs.
3. DATA ARCHITECTURE
Storage
SQL → Structured relational storage with ACID guarantees.
NoSQL → Flexible storage optimized for scale and performance.
Modeling
Normalization → Eliminates redundant data.
Denormalization → Improves read performance through duplication.
Schema Design → Defines structure and relationships of data.
Indexing → Speeds up data retrieval.
Partitioning → Splits large datasets for scalability.
Availability
Sharding → Distributes data across multiple nodes.
Replication → Copies data for resilience and availability.
Read Replicas → Offloads read traffic.
Multi-Region → Supports global availability.
Backup & Restore → Protects against data loss.
Failover → Automatically switches during outages.
Advanced Concepts
CQRS → Separate read and write models.
Event Sourcing → Persist state changes as events.
Data Lake → Stores raw structured and unstructured data.
Data Warehouse → Optimized for analytics.
ETL/ELT → Data transformation pipelines.
Stream Processing → Real-time data processing.
4. DISTRIBUTED SYSTEMS
CAP Theorem
Consistency → All nodes see the same data.
Availability → Every request gets a response.
Partition Tolerance → System survives network failures.
Consistency Models
Strong Consistency → Immediate synchronization.
Eventual Consistency → Synchronization over time.
Transactions
2PC → Distributed transaction coordination.
Saga Pattern → Distributed transactions using compensating actions.
Outbox Pattern → Reliable event publishing.
Coordination
Leader Election → Selects a coordinating node.
Consensus → Agreement among distributed nodes.
Communication
gRPC → High-performance binary communication.
REST → HTTP-based resource communication.
Messaging → Asynchronous communication model.
Reliability
Idempotency → Safe repeated execution.
Deduplication → Prevents processing duplicates.
Ordering
Logical Clocks → Event ordering without physical clocks.
Vector Clocks → Track causal relationships.
Lamport Timestamps → Establish event sequence.
5. SCALABILITY & PERFORMANCE
Scaling
Horizontal Scaling → Add more servers.
Vertical Scaling → Increase server capacity.
Auto Scaling → Dynamic resource adjustment.
Elasticity → Expand and shrink automatically.
Stateless Services → No session stored locally.
Traffic Management
Load Balancing → Evenly distribute traffic.
Rate Limiting → Prevent abuse.
Throttling → Control request processing speed.
Backpressure → Protect overwhelmed services.
Queueing → Smooth traffic spikes.
Load Shedding → Drop non-critical traffic.
Performance
Caching → Reduce expensive operations.
Connection Pooling → Reuse connections efficiently.
Async Processing → Improve responsiveness.
Lazy Loading → Load data only when needed.
Batch Processing → Process records together.
6. RESILIENCY & FAULT TOLERANCE
Circuit Breaker → Stops repeated failures.
Retry Logic → Retry transient failures.
Exponential Backoff → Increase retry interval gradually.
Timeouts → Prevent indefinite waiting.
Bulkhead Pattern → Isolate failures.
Graceful Degradation → Reduce functionality during issues.
Fallback Mechanism → Provide alternate response.
Dead Letter Queue → Capture failed messages.
Idempotency → Prevent duplicate effects.
Compensation Logic → Undo failed business actions.
High Availability → Minimize downtime.
Redundancy → Duplicate critical components.
Disaster Recovery → Recover from major outages.
Self-Healing → Automatic fault recovery.
7. EVENT-DRIVEN ARCHITECTURE
Kafka → Distributed event streaming platform.
RabbitMQ → Traditional message broker.
SNS → Pub/Sub notification service.
SQS → Managed queue service.
Event Hubs → High-throughput event ingestion.
8. OBSERVABILITY
Metrics → Numerical measurements.
Dashboards → Visual system monitoring.
Alerting → Notify on issues.
SLA/SLO/SLI → Reliability targets and measurements.
Centralized Logs → Unified logging.
Log Aggregation → Consolidated analysis.
Tracing → Request journey across services.
Correlation ID → Track requests end-to-end.
9. DEPLOYMENT STRATEGIES
Blue-Green → Switch traffic between environments.
Canary → Gradual production rollout.
Rolling Deployment → Incremental updates.
Feature Flags → Toggle features dynamically.
Immutable Infrastructure → Replace instead of modify.
10. SECURITY & COMPLIANCE
Authentication → Verify identity.
Authorization → Control permissions.
OAuth2/OIDC → Modern identity standards.
TLS → Secure data in transit.
Encryption at Rest → Secure stored data.
Secrets Management → Protect credentials.
Key Rotation → Periodically replace cryptographic keys.
Zero Trust → Never trust, always verify.
11. CLOUD & DEVOPS
EC2/VM → Virtualized compute.
Containers → Portable application packaging.
Serverless → Event-driven execution.
Storage → Durable cloud storage.
Database → Managed data services.
Monitoring → Cloud observability.
CI/CD → Automated delivery pipeline.
Terraform → Infrastructure as code.
Docker → Container runtime.
Kubernetes → Container orchestration.
Helm → Kubernetes package manager.
12. AI & MODERN INFRASTRUCTURE
ML Pipelines → Automate ML lifecycle.
Vector Database → Semantic similarity search.
RAG → Combine LLMs with enterprise knowledge.
Model Serving → Expose models via APIs.
Feature Store → Reusable ML features.
GPU Acceleration → High-performance AI computation.
15–29 (Added Sections)
DDD
Bounded Context → Define clear business boundaries.
Ubiquitous Language → Shared business vocabulary.
Aggregate → Consistency boundary.
Entity → Object with identity.
Value Object → Object without identity.
Domain Event → Significant business occurrence.
Architecture Styles
Monolith → Single deployable unit.
Modular Monolith → Structured monolith.
SOA → Enterprise service integration.
Microservices → Independent services.
Event-Driven → Event-based interactions.
Serverless → Function-based architecture.
Integration Patterns
Request/Reply → Synchronous communication.
Pub/Sub → Event broadcasting.
API Composition → Aggregate multiple APIs.
BFF → Backend tailored for a client.
CQRS → Separate reads and writes.
Outbox → Reliable event publishing.
Anti-Corruption Layer → Protect domain boundaries.
API Architecture
REST → Resource-oriented APIs.
GraphQL → Flexible client-driven queries.
gRPC → Efficient binary communication.
API Versioning → Manage API evolution.
API Security → Protect API access.
OpenAPI → API documentation standard.
ADR
Context → Problem description.
Decision → Chosen solution.
Alternatives → Options evaluated.
Consequences → Expected impact.
FinOps
Reserved Instances → Lower long-term costs.
Spot Instances → Cheap spare capacity.
Rightsizing → Match resources to usage.
Cost Tags → Cost allocation.
Budget Alerts → Prevent overspending.
Multi-Tenancy
Shared DB Shared Schema → Maximum cost efficiency.
Shared DB Separate Schema → Better isolation.
Separate Schema → Stronger tenant separation.
Separate DB → Highest isolation.
Data Governance
Data Ownership → Accountability.
Classification → Sensitivity categorization.
Lineage → Data flow tracking.
Retention → Data lifecycle management.
Masking → Protect sensitive data.
BCP
RTO → Maximum acceptable downtime.
RPO → Maximum acceptable data loss.
Active-Active → Multiple active sites.
Active-Passive → Standby disaster site.
Disaster Simulation → Validate recovery plans.
Legacy Modernization
Strangler Pattern → Incremental replacement.
API Wrapper → Modern interface over legacy.
Data Synchronization → Keep systems aligned.
Decomposition → Break monolith into services.
Capacity Planning
QPS Calculation → Estimate request volume.
Storage Estimation → Forecast storage needs.
Throughput Estimation → Predict processing capacity.
Peak Load Analysis → Prepare for spikes.
Threat Modeling
Threat Modeling → Identify security risks early.
STRIDE → Structured threat analysis.
OWASP Top 10 → Common web vulnerabilities.
Secrets Rotation → Reduce credential risk.
Supply Chain Security → Secure dependencies.
Platform Engineering
Internal Developer Platform → Self-service engineering platform.
Golden Paths → Recommended implementation patterns.
Self-Service Infrastructure → Developer autonomy.
DevEx → Improve developer productivity.
Advanced AI Architecture
RAG → Ground LLM responses in enterprise data.
Prompt Engineering → Optimize model behavior.
Model Registry → Manage model lifecycle.
Guardrails → Prevent unsafe outputs.
Hallucination Detection → Identify AI inaccuracies.
AI Governance → Ensure responsible AI usage.
Stakeholder Management
Business Stakeholders → Define business outcomes.
Technical Stakeholders → Ensure technical feasibility.
Risk Assessment → Identify project risks.
Decision Workshops → Align stakeholders.
Communication Plan → Maintain transparency.