Back to Software Architecture
University of Alberta

Software Architecture

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.

Status: Software Documentation
Status: Software Design Patterns
IntermediateCourse10 hours

Featured reviews

DS

5.0Reviewed Jan 24, 2021

Great Content and useful Information to get Started with Software Architecture, I need to deep-dive now :)

ZH

5.0Reviewed Jul 14, 2021

This is a very very excellent course of which I've ever taken & would like to recommend it to my friends to expore.

OS

4.0Reviewed Jul 22, 2018

Very comprehensive course, but in my opinion it lacks some updates in terms of new concepts like serverless architecture and cloud in general.

GC

4.0Reviewed Jul 22, 2020

I felt the material was very shallow. I had to go and refer to YouTube videos to clarify understanding on few.

SM

5.0Reviewed Sep 11, 2019

The concepts taught in this course helped me apply them in practice during the development of projects at work. Highly recommended!

AN

5.0Reviewed Jan 10, 2021

This was a very insightful and interesting course which gave a deep and thorough knowledge of all aspects of Software architecture. Very well designed. Thanks

AM

5.0Reviewed Oct 9, 2020

A great course that gives a good introduction about software architecture , architectural models , architecture evaluation and ATAM

ZX

4.0Reviewed Apr 16, 2018

It's introduction of software architecture, mainly focus on basic concepts, lack of practical examples.

AP

4.0Reviewed Feb 21, 2021

Very interesting course, although it'd be nice to spend more or longer lessons on some relevant and central topics (e.g., ATAM).

SO

4.0Reviewed Oct 29, 2020

It was definitely interesting at first, but later modules were quite boring as they went into philosophical level. But overall it was good experience, thanks.

AB

5.0Reviewed Dec 28, 2020

The contents of the course is quite information. Plus the assignments gives the learners more practical insight and how to deal with real life situations.

NG

4.0Reviewed Aug 17, 2020

This course is very useful, but i think intructor need add more example in presentation.I support student easy make assigment.Thank you!

All reviews

Showing: 20 of 216

Bruno Toffolo
3.0
Reviewed Jan 20, 2018
Xavier Jefferson
2.0
Reviewed Jan 31, 2018
Marton Alexandru
4.0
Reviewed Dec 18, 2019
Kamil Kranc
2.0
Reviewed Jun 11, 2019
Igor
1.0
Reviewed Feb 25, 2020
Osmar Silva
4.0
Reviewed Jul 23, 2018
Renato Martellini
3.0
Reviewed Oct 22, 2018
Cullen Sun
3.0
Reviewed Jul 8, 2018
ABHIJEET THAKURDESAI
2.0
Reviewed Feb 26, 2018
Michael Neradkov
3.0
Reviewed Jan 20, 2020
Genís Torrents Verdaguer
1.0
Reviewed Jul 26, 2019
Shachaf Atzitz
1.0
Reviewed Jun 11, 2019
Christopher Sasven
5.0
Reviewed Dec 24, 2019
David Zeindler
5.0
Reviewed Feb 11, 2019
Gowtham P. S.
1.0
Reviewed Oct 23, 2023
Anushree Nandi
5.0
Reviewed Jan 11, 2021
Zaman Monir
5.0
Reviewed Apr 5, 2020
Mia Anaya
5.0
Reviewed Jul 21, 2021
Ioan Lazar
5.0
Reviewed Apr 9, 2019
Santo Leonardo
5.0
Reviewed Sep 20, 2020