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.32%
- 4 stars21.20%
- 3 stars5.77%
- 2 stars2.28%
- 1 star2.41%
I have learnt many concepts such as various diagrams. Quality attributes and how to evaluate architecture.\n\nIt is outstanding course.
This course is very useful, but i think intructor need add more example in presentation. I support student easy make assigment.\n\nThank you!
This course integrates the previous courses (Object oriented design and Design patterns) and applies the knowledge taught in those courses to real life problems. Highly recommended.
This course can provide more practical assignments for students to master the concepts covered in lectures.
關於 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.