Software Architecture Foundations
Offered By: LinkedIn Learning
Course Description
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?
- 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
- 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)
- Requirements gathering: Problem statements and user stories
- Narrowing: Vertical vs. horizontal splitting
- Identifying bounded contexts and entities
- System vs. enterprise architecture
- Design patterns
- Monoliths
- Microkernel (plugin) architecture
- Message-based architectures
- Microservices and miniservices
- Reactive and choreographed systems
- Next steps
Taught by
Allen Holub
Related Courses
Pattern-Oriented Software Architectures: Programming Mobile Services for Android Handheld SystemsVanderbilt University via Coursera The Caltech-JPL Summer School on Big Data Analytics
California Institute of Technology via Coursera Automated Visual Software Analytics
openHPI Software Architecture & Design
Georgia Institute of Technology via Udacity Software Architecture for the Internet of Things
EIT Digital via Coursera