CMPUT 301

Software Engineering

All articles

CMPUT 301 Course Fall 2021

CMPUT 301 Course Outline

General Information

Term: Fall 2021 Number of credits: 3 credits

Lecture (E)A1 Date and Time: Monday-Wednesday-Friday 11:00-11:50 MT Location: CCIS L2-190

Labs start in the second week of classes.

Lab (E)D01 Date and Time: Tuesday 17:00-19:50 Location: CSC B-10

Lab …

CMPUT 301 Course Fall 2021 Old Lab Recordings

You must be authenticated with your @ualberta.ca Google account to access the links.

Fall 2021 Lab Recordings

Fall …

CMPUT 301 Course Old Project Problem Descriptions

You are to design and implement a simple, attractive, and easy-to-use Android application to satisfy the follow goals. Your design must be flexible enough to allow future developers to extend or migrate it.

To assist in meal planning, we want a mobile application that allows one to track their food …

CMPUT 301 Course Old Project Problem Descriptions Fall 2024

Warning: This is subject to change!

QR Code Event Check-In System

You are to design and implement a simple, attractive, and easy-to-use Android application to satisfy the following goals. Your design must be flexible enough to allow developers to extend or migrate it.

Description:

Create an event management system where …

Old Lecture Recordings Fall 2020

Old Lecture Recordings 2020 Fall

Old Lecture Recordings Fall 2021

Old Lecture Recordings 2021 Fall

Course Outline Winter 2024

Lecture, Labs, Contact Information, Lecturer, Teaching Assistants, Course Content, Course Description, Prerequisites, Objectives and Learning Outcomes, Course Topics, Learning Resources, Course Schedule, Required Textbook and/or Other Major Course Materials, Recommended or Optional Learning Resources, Course Fees, On-Line Homework Disclaimer, Academic Success Centre, Faculty of Science Student Services, Grade Evaluation, Letter Grades, Statement of Expectations for AI Use, Re-Evaluation of Term Work, Re-examination, Past or Representative Evaluative Material, Labs, Participation, Policies for Late and Missed Work, Late Policy, Non-medical Protected Grounds, Missed Term Work: Assignments, Labs, Quizzes, Project Parts, Midterm Exams, Missed Term Work: Participation, Deferred Final Examination, Required Technology, Labs Assignments and Project, Lecture Participation, Remote Delivery Considerations, Technology Requirements, Recordings of Synchronous Activities, Home-Based Lab Activities, Student Resources for Remote Learning, Student Responsibilities, Academic Integrity and Student Conduct, Contract Cheating and Misuse of University Academic Materials or Other Assets, Contract Cheating: CS Courses, Academic Integrity Issues Related to Minor Formative Assessments, Appropriate Collaboration, Citation, Solo Effort: Participation Exercises, Quizzes, Exams, Confidential: Exams, Consultation: Assignments, Labs, Teamwork: Group Projects, Intellectual Violence, Exam Conduct, Lecture Conduct, Students Eligible for Accessibility-Related Accommodations, Recording and/or Distribution of Course Materials, On-Campus Computer Labs, Recording and/or Distribution of Course Materials, Learning and Working Environment, Feeling Stressed, Anxious, or Upset?, Student Self-Care Guide, Land Acknowledgement, Administrative, Policy about Course Outlines, Disclaimer, Update History, Copyright

2011 W Project Problem Description

2011 W Project Problem Description

2012 W Project Problem Description

2012 W Project Problem Description

2013 W Project Problem Description

2013 W Project Problem Description

2014 F Project Problem Description

2014 F Project Problem Description

2015 F Project Problem Description

2015 F Project Problem Description

2015 W Project Problem Description

2015 W Project Problem Description

2015 W Project Problem Description Surprise

2015 W Project Problem Description Surprise

2016 F Project Problem Description

2016 F Project Problem Description

2016 W Project Problem Description

2016 W Project Problem Description

2017 F Project Problem Description

2017 F Project Problem Description

2017 W Project Problem Description

2017 W Project Problem Description

2018 F Project Problem Description

2018 F Project Problem Description

2018 W Project Problem Description

2018 W Project Problem Description

2019 F Project Problem Description

2019 F Project Problem Description

2019 W Project Problem Description

2019 W Project Problem Description

2020 F Project Problem Description

2020 F Project Problem Description

2020 W Project Problem Description

2020 W Project Problem Description

2021 F Project Problem Description

2021 F Project Problem Description

2021 W Project Problem Description

2021 W Project Problem Description

2022 W Project Problem Description

2022 W Project Problem Description

Old Lab Notes

Old Lab Notes

Class Participation Exercise 18

Individual, Assignments, Participation

Practice w23hm2q1

Practice Exam Question

Practice w23hm2q2

Practice Exam Question

A1/A2 20th September Class Exercise

Individual, Assignments, Participation

A1/A2 2nd October Class Exercise

Individual, Assignments, Participation

A1/A2 Sept 23rd Class Exercise

Individual, Assignments, Participation

Class Participation Exercise 10

Individual, Assignments, Participation

A1/A2 18th September Class Exercise

Individual, Assignments, Participation

B2 27th March Class Exercise

Individual, Assignments, Participation

Class Participation Exercise Sequence Diagram

Individual, Assignments, Participation

Class Participation Exercise (Cohesion and Coupling)

Individual, Assignments, Participation

Class Participation Exercise (CRC Cards)

Individual, Assignments, Participation

Class Participation Exercise (Git)

Individual, Assignments, Participation

Class Participation Exercise: Factory Method Pattern (Mar 29)

Individual, Assignments, Participation

Class Participation Exercise: Template Method Pattern (Mar 26)

Individual, Assignments, Participation

Practice w23hm1 Answers

Practice Exam Question

Class Participation Exercise 11

Individual, Assignments, Participation

Class Participation Exercise 12

Individual, Assignments, Participation

Class Participation Exercise 13

Individual, Assignments, Participation

Class Participation Exercise 9

Individual, Assignments, Participation

Class Participation Exercise 9

Individual, Assignments, Participation

Class Participation Exercise April 14

Individual, Assignments, Participation

Class Participation Exercise April 17

Individual, Assignments, Participation

Class Participation Exercise (Code to UML)

Individual, Assignments, Participation

Class Participation Exercise Design Principles

Individual, Assignments, Participation

Class Participation Exercise Proxy Pattern

Individual, Assignments, Participation

Class Participation Exercise 2020-04-06 Long Method Refactoring

Individual, Assignments, Participation

Class Participation Exercise 2020-04-08 Refactoring

Individual, Assignments, Participation

Class Participation Exercise 3

Individual, Assignments, Participation

Class Participation Exercise 8

Individual, Assignments, Participation

Class Participation Exercise 15

Individual, Assignments, Participation

Practice w23am1q1

Practice Exam Question

Practice w23am1q2

Practice Exam Question

Practice w23am1q3

Practice Exam Question

Practice w23am2q1

Practice Exam Question

Practice w23am2q2

Practice Exam Question

Practice w23am2q3

Practice Exam Question

Practice w23hm1q1

Practice Exam Question

Practice w23hm1q2

Practice Exam Question

Practice w23hm1q3

Practice Exam Question

Practice w23hpmq1

Practice Exam Question

Class Participation Exercise 20

Individual, Assignments, Participation

Class Participation Exercise 19

Class Participation Exercise 19

Exam Practice Questions

Exam Practice Questions

Old Lecture Recordings

Old Lecture Recordings 2020-2022

Old Participation Exercise

Old Participation Exercise

Practice w23am3q1

Practice Exam Question

Practice w23am3q2

Practice Exam Question

Practice w23am3q3

Practice Exam Question

Course Outline Fall 2024

Lecture, Labs, Contact Information, Lecturer, Teaching Assistants, Course Content, Course Description, Prerequisites, Objectives and Learning Outcomes, Course Topics, Learning Resources, Course Schedule, Required Textbook and/or Other Major Course Materials, Recommended or Optional Learning Resources, Course Fees, On-Line Homework Disclaimer, Academic Success Centre, Faculty of Science Student Services, Grade Evaluation, Letter Grades, Statement of Expectations for AI Use, Re-Evaluation of Term Work, Re-examination, Past or Representative Evaluative Material, Labs, Participation, Policies for Late and Missed Work, Late Policy, Non-medical Protected Grounds, Missed Term Work: Assignments, Labs, Quizzes, Project Parts, Midterm Exams, Missed Term Work: Participation, Deferred Final Examination, Required Technology, Labs Assignments and Project, Lecture Participation, Remote Delivery Considerations, Technology Requirements, Recordings of Synchronous Activities, Home-Based Lab Activities, Student Resources for Remote Learning, Student Responsibilities, Academic Integrity and Student Conduct, Contract Cheating and Misuse of University Academic Materials or Other Assets, Contract Cheating: CS Courses, Academic Integrity Issues Related to Minor Formative Assessments, Appropriate Collaboration, Citation, Solo Effort: Participation Exercises, Quizzes, Exams, Confidential: Exams, Consultation: Assignments, Labs, Teamwork: Group Projects, Intellectual Violence, Exam Conduct, Lecture Conduct, Students Eligible for Accessibility-Related Accommodations, Recording and/or Distribution of Course Materials, On-Campus Computer Labs, Recording and/or Distribution of Course Materials, Learning and Working Environment, Feeling Stressed, Anxious, or Upset?, Student Self-Care Guide, Land Acknowledgement, Administrative, Policy about Course Outlines, Disclaimer, Update History, Copyright

Project Demo Schedule

Project Demo Schedule

Lab 5 Instructions

Lab 5 Instructions

Lab 6 Instructions

Lab 6 Instructions

Lab 7 Instructions

Lab 7 Instructions

Lab 8 Participation Exercise

Lab 8 Participation Exercise

Project Part 0

Project Part 0

Project Part 1

Project Part 1

Project Part 2

Project Part 2

Project Part 3

Project Part 3

Project Part 4

Project Part 4

Project Problem Description

Project Problem Description

Project Teams

Project Teams

Lab 1

Lab 1 -- Java, OOP, Android Studio

Assignment 0: Getting Started

Assignment 0: Getting Started

Assignment 1

Assignment 1

Group Assignment 5: Presentation Marking Rubric

This is currently a copy of the 402 presentation requirements and needs to be updated for 301

Overview

The purpose of the presentation marking …

Individual

Individual Assignments, Participation

Group Project

301 Group Project

How to get Help

Communications Expectations

Lab 2 Instructions

Lab 2 Instructions

Lab 3 Instructions

Lab 3 Instructions

Lab 4 Participation Exercise

Lab 4 Participation Exercise

Lab 4 Participation Exercise Past Notes

Lab 4 Participation Exercise

Labs

Lab Procedure, Lab Assignments, Lab Marking

Learning Resources & Reference Materials

Resources, Reference Materials, Notes, Videos, Slides

Slides

Slides and per-topic resources

SPM and SDA MOOC Resources

Resources, Reference Materials, Notes, Videos, Slides

Practice w23hm3q1

Practice Exam Question

Practice w23hm3q2

Practice Exam Question

Practice w23hm3q3

Practice Exam Question

Practice w23hm2q3

Practice Exam Question

Class Participation Exercise Simple Factory

Individual, Assignments, Participation

Class Participation Exercise Mock Objects

Individual, Assignments, Participation

Class Participation Exercise Command Pattern

Individual, Assignments, Participation