# Mobile API Development

MAD9124

Students add to their JavaScript skills to become productive with Full-stack development. They use a hands-on approach to build APIs using Node.JS and NoSQL databases. A variety of tools, frameworks, libraries and packages are taught to help manage API interactions and security between the data stores, the API, and the client-side applications. Students work with partners to create entire Full-stack solutions in parallel with the client-side work in MAD9022 Full-stack: Frontend Development.

# Workload

  • 2hrs/week lecture/lab
  • 2hrs/week online
  • 3hrs/week prep/practice/assignments

# Schedule

Room T127 and Virtual Zoom Class

Section 300: Professor: Tim Robillard

  • Wednesday 7pm to 9pm (Virtual Zoom Class)
  • Thursday 8pm to 10pm (In-person T127)

Section 310: Professor: Tim Robillard

  • Monday 6pm to 8pm (Virtual Zoom Class)
  • Thursday 6pm to 8pm (In-person T127)

# Evaluation Plan

Category Max Points Weight
In-class Exercises 20 30%
Assignments 60 30%
Projects 100 40%

For a detailed breakdown, see the Deliverable Schedule for quizzes, assignments and projects.

# Application Stack

node.js

Express

mongoose

mongoDB

# Core Topics

  • Application Architecture
  • REST APIs
  • Route handling
  • Middleware
  • Resource Modeling
  • Data Persistence
  • Access Control
  • Data validation & sanitization
  • Authentication
  • Error handling
  • Security
  • Image handling
  • Testing
  • Production deployment

# Attendance

Students are expected to attend all classes. This course includes weekly hands-on exercises to be completed in-class. There will also be group project work requiring your collaboration. Missing three or more classes is likely to significantly impact your grades.

Classes will start on-time. Please be respectful of your fellow students and arrive in advance of the scheduled start time.

# Late Assignment Submission penalties.

Assignments that are submitted after the deadline are subject to a late penalty.

  • Assignments submitted after the deadline up to 1 day - 10% penalty.
  • After 1 day up to 2 days - 20% penalty.
  • After 2 days, up to 3 days - 30% penalty.
  • After 10 days assignments are given a grade of zero. They - can still be submitted for feedback but are worth no marks.

Late penalty percentages are calculated based on the total possible value of the assignment, not the grade for the work. Any extensions to due dates must be arranged with the course instructor before the due date.

# Mental Health Extensions for Assignments

Once per semester you can get a 3-day extension on a single assignment. This extension does not change the due date for the assignment, nor does it change the date of the 10 day limit for assignment late submissions. This extension just provides immunity from the late penalty for 3 days. After the 3rd day, the full late penalty applies.

To apply for one of these extensions you do not need to provide an excuse, just post a submission through BS LMS on the Assignments page, to the Mental Health Extension item with a note saying which assignment you want to apply the extension to.

Extension requests must be made before the assignment deadline.

No extensions can be given to the midterm and final project.

# Plagiarism Policy

Plagiarism is defined as defined as presenting someone else’s work, in whole or in part, as one’s own, and includes the verbal or written submission of another work (for example, ideas, wording, code, graphics, music, and inventions) without crediting that source. This includes all electronic sources (for example, the Internet, television, video, film, and recordings), all print and written sources (for example, books, periodicals, lyrics, government publications, promotional materials, and academic assignments), and all verbal sources (for example, conversations and interviews).

Plagiarism, whether done deliberately or accidentally, is not allowed. The facilitation of plagiarism, that is, one student sharing his or her work with other students, is also not allowed. All parties caught plagiarizing will receive a ZERO.

Repeat offences will result in harsher academic sanctions which may result in suspension.

Last Updated: 1/9/2023, 11:30:50 AM