verified Verified Information • Last Updated Mar 2026

Design Patterns

This course extends object-oriented analysis and design by incorporating design patterns to create interactive applications. Through a survey of established design patterns, you will gain a foundation for more complex software applications. Finally, you will identify problematic software designs by referencing a catalog of code smells. You will be challenged in the Capstone Project to redesign an existing Java-based Android application to implement a combination of design patterns. You will also critique a given Java codebase for code smells. After completing this course, you will be able to: • Demonstrate how to use design patterns to address user interface design issues. • Identify the most suitable design pattern to address a given application design problem. • Apply design principles (e.g., open-closed, dependency inversion, least knowledge). • Critique code by identifying and refactoring anti-patterns. • Apply the model-view-controller architectural pattern.
Duration 6 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 $187
Total Est. Investment $187

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

Academic Trajectory

Program Outcome

Graduates of the Design Patterns 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