verified Verified Information • Last Updated Mar 2026

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.
Duration 4 Months
Institution University of Alberta
Format Online

Eligibility Criteria

school

Academic Foundation

A recognized Bachelor’s degree or high school equivalent required for admission into University of Alberta.

language

Language Proficiency

English proficiency required. IELTS, TOEFL, or standard medium-of-instruction certificates accepted.

Detailed Fees Breakdown

Base Tuition Fee $153
Total Est. Investment $153

Scholarships and early-bird waivers may apply. Contact admissions for exact institutional fees.

Academic Trajectory

Program Outcome

Graduates of the Software Architecture program at University of Alberta are equipped with global perspectives, ready to excel in international markets and top-tier career opportunities.

headset_mic
Get In Touch