Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

LinkedIn Learning

Software Architecture Foundations

via LinkedIn Learning

Overview

Learn how software architecture can help you build better software. Review the role of the software architect, key theories and concepts, and common architectural patterns.

Syllabus

Introduction
  • The importance of software architecture
  • What you need to know
  • What is software architecture?
1. The Software Architect
  • What's the job? Traditional architects
  • What's the job? Modern architects
  • A day in the life of an architect: Morning
  • A day in the life of an architect: Afternoon
  • From developer to architect
2. Thinking Architecturally
  • Conway's law: Architecture and organizational structure
  • Incremental vs. big up-front design
  • Top down vs. bottom up
  • The role of the domain (bounded contexts)
3. A Design Process: A Brief Introduction
  • Requirements gathering: Problem statements and user stories
  • Narrowing: Vertical vs. horizontal splitting
  • Identifying bounded contexts and entities
4. Categories of Architecture
  • System vs. enterprise architecture
  • Design patterns
5. Broad Architectural Patterns
  • Monoliths
  • Microkernel (plugin) architecture
  • Message-based architectures
  • Microservices and miniservices
  • Reactive and choreographed systems
Conclusion
  • Next steps

Taught by

Allen Holub

Reviews

4.7 rating at LinkedIn Learning based on 2278 ratings

Start your review of Software Architecture Foundations

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.