The way that software components — subroutines, classes, functions, etc. — are arranged, and the interactions between them, is called architecture. In this course you will study the ways these architectures are represented, both in UML and other visual tools. We will introduce the most common architectures, their qualities, and tradeoffs. We will talk about how architectures are evaluated, what makes a good architecture, and an architecture can be improved. We'll also talk about how the architecture touches on the process of software development.
UAlberta is considered among the world’s leading public research- and teaching-intensive universities. As one of Canada’s top universities, we’re known for excellence across the humanities, sciences, creative arts, business, engineering and health sciences.
- 5 stars68.40%
- 4 stars21.15%
- 3 stars5.75%
- 2 stars2.27%
- 1 star2.40%
This course can provide more practical assignments for students to master the concepts covered in lectures.
I felt the material was very shallow. I had to go and refer to YouTube videos to clarify understanding on few.
Combining practical knowledge with the information from this course i succeed to see the big picture of software architecture. Nice work.
The concepts taught in this course helped me apply them in practice during the development of projects at work. Highly recommended!
关于 Software Design and Architecture 专项课程
In the Software Design and Architecture Specialization, you will learn how to apply design principles, patterns, and architectures to create reusable and flexible software applications and systems. You will learn how to express and document the design and architecture of a software system using a visual notation.