Computing Science Course Outlines

Course Outline - CMPT 276 - Intro Software Engineering

Information

Subject

Catalog Number

Section

Semester

Title

Instructor(s)

Campus

CMPT

276

D200

2022 Fall (1227)

Intro Software Engineering

Rob Cameron   

Burnaby Mountain Campus

Calendar Objective/Description

Intro Software Engineering

Instructor's Objectives

The theory and practice of software development are introduced using the Android operating system as a target device. Students will learn the standard methodologies underlying software development, plus gain experience using a number of software development tools and a revision control system (Git). Assignments will cover learning basic Java, introductory Android, and effective use of development tools to produce small applications using established development techniques. The half term team project focuses on an agile team experience developing an Android application. The focus of the course is on preparing students to be effective members of a software development team.

Prerequisites

see go.sfu.ca

Topics

  • Software Process: software life cycle, agile vs plan-driven development.
  • Requirements: system analysis and modeling, requirements specification
  • High-level Design: UML, architectural, design patterns
  • Implementation: coding style, code review, pair programming
  • Quality assurance: unit & integration testing
  • Development tools such as IDE, debugger, and revision control (Git/GitLab).
  • Android application development and debugging
  • Diversity and ethics of software development

Grading

To be announced in the first week of class.

Students must attain an overall passing grade on the weighted average of exams in the course in order to obtain a clear pass (C- or better).

Recommended Books

  • Android Programming: The Big Nerd Ranch Guide (3rd Edition), Bill Phillips, Chris Stewart, and Kristin Marsicano, Big Nerd Ranch, 2017, 9780134706054, The 4th edition is not applicable (different programming language); must be 3rd edition or earlier.

Academic Honesty Statement

Academic honesty plays a key role in our efforts to maintain a high standard of academic excellence and integrity. Students are advised that ALL acts of intellectual dishonesty will be handled in accordance with the SFU Academic Honesty and Student Conduct Policies ( http://www.sfu.ca/policies/gazette/student.html ).

Data Last Updated: