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.19%
- 4 stars21.33%
- 3 stars5.75%
- 2 stars2.35%
- 1 star2.35%
Absolutly Fantastic Courses!! Well Designed. I got what I was looking for. Using Andoid as a way to pratices is also a very good idea. Thank you very all of you.
This course can provide more practical assignments for students to master the concepts covered in lectures.
Content was well thought and prepared, though sometimes I would have appreciated a bit more practice/details on the topic then covered by peer-graded assignments.
I felt the material was very shallow. I had to go and refer to YouTube videos to clarify understanding on few.
关于 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.