Chevron Left
Back to Software Architecture

Learner Reviews & Feedback for Software Architecture by University of Alberta

780 ratings

About the Course

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. In the Capstone Project you will document a Java-based Android application with UML diagrams and analyze evaluate the application’s architecture using the Architecture Tradeoff Analysis Method (ATAM). After completing this course, you will be able to: • Compare and contrast the components, connections, protocols, topologies, constraints, tradeoffs, and variations of different types of architectural styles used in the design of applications and systems (e.g., main program and subroutine, object-oriented, interpreters, pipes and filters, database centric, event-based). • Describe the properties of layered and n-tier architectures. • Create UML ipackage, component, and deployment diagrams to express the architectural structure of a system. • Explain the behaviour of a system using UML activity diagrams. • Document a multi-application system with a layered architecture....

Top reviews


Dec 23, 2019

This is a excellent course for Software architects, addressing all key areas needed in the field. Good content, definitely recommend this course for anyone aspiring to be a Software architect.


Jul 21, 2021

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.

Filter by:

51 - 75 of 172 Reviews for Software Architecture

By Fabrice L

Apr 26, 2020

By Eduardo I

Mar 26, 2019

By Filippo C

Feb 16, 2021

By Skalmantas O

Oct 30, 2020

By Peter C

Jun 21, 2018

By Nguyễn H G

Aug 18, 2020

By Attilio P

Feb 22, 2021

By Girish C

Jul 23, 2020

By Liu Y

Feb 14, 2021

By Zhou X

Apr 17, 2018

By Gabriel J Z Z

Feb 6, 2021

By Kuei-Chin H

Apr 25, 2020

By Dr. T J H

Nov 8, 2020

By Cássio R S S

Jan 15, 2019

By Zayar T (

Feb 1, 2019

By Alexey P

Mar 19, 2019

By Yevhenii M

Apr 27, 2020

By Aurel M

Apr 4, 2020

By Mutasem E

Jun 7, 2020

By Reza A

Dec 29, 2017

By Loi N

Apr 19, 2021

By Ahmed A A M

Oct 10, 2020

By Zhao H

Jul 15, 2021

By Deepak S

Jan 24, 2021

By Cristóbal A S V

Apr 27, 2020