Course-Info

Course Info

Official course outline. See sidebar (on right) for many details.

Getting Extra Help

Some great ways to get extra help are:

  • Piazza discussion forum
    Check out classmate's questions and answers. Answer someone else's question, or ask your own. You can even post anonymously! Great for questions that everyone can check out. Link in sidebar. Note: Piazza is hosted outside of Canada; it is not mandatory to use; emailing Dr. Brian is always an option.
  • Discord Chat
    Connect with classmates, instructor, and TAs using Discord. Channels are setup for talking to course staff, for asking questions, and for chatting with fellow students. Great for chatting and immediate help; not as good for someone seeing/answering later.
    Note: Discord is hosted outside of Canada; it is not mandatory to use; emailing Dr. Brian is always an option.
  • Office Hours
    Both the instructor and TA have online office hours. Great for getting one-on-one help or discussing personal concerns. Details in sidebar (right). Office hours held using Discord. If you object to using Discord, email/zoom are always an option.
  • 1-on-1 Tutoring from a TA
    TAs are available throughout the semester for 30m - 60m tutoring sessions. This goes beyond the style of question one might ask in office hours, which is usually around solving some specific problem or getting a small clarification. The idea for these tutoring sessions is to help students who feel they need additional support to successfully completing the assignments and may involve more teaching than just answering questions. Note that the number of "time slots" will be limited, and it is not meant as emergency help 3 hours before the assignment is due. Please plan ahead, start on the assignments early, and schedule your tutoring sessions early.
    To request a tutoring session, send the "instructors" a private message on Piazza with the subject: "Tutoring"; one of the TAs will reply with some possible times!
  • Email Less efficient than Piazza or Discord, but private. Good for private questions about grades or extension requests. Please include course number email's subject line. See sidebar for emails.

Grading (Updated)

All submissions done via CourSys (also used to report marks and marking feedback).

  • Assignments (20%) - 3 assignments, first half of semester.
  • Project (30%) - 3 iterations, last half of semester, due about every two weeks.
  • Midterm (20%) - In-person, on paper. Oct 19th during class time. [UPDATED]
  • Final Exam (30%) - Cumulative for course; in-person, on paper.

Grading Details

  • This is an applied course with much of the weight from assignments and the project. As such, the letter-grade thresholds may be higher than a more theoretical course (i.e., it one may need to score higher in this course than another course in order to earn a A+, ...). However, the lower-end of a D will be no higher than 50%.
  • Students must attain an overall passing grade on the weighted average of the quizzes in the course to obtain a clear pass (C- or better).
    • If a student earns a "pass" (50% or more usually) on the either the final exam, or on the weighted average of the final and midterm, then the student gets whatever grade they have otherwise earned in the course.
    • If a student does not earn a pass on the final, and does not earn a pass on the weighted average of the midterm and final, then the student can get at most a D in the class. The grade D is a pass, but means the course cannot be used as a prerequisite for later courses.
    • This policy ensures that students are able to demonstrate they are proficient with the course content in an exam setting in order to earn a C- or better. For example, if a student does not know the course material but has relied too heavily on others for completing their assignments, they will likely have low exam scores and high assignment scores. This policy helps ensure everyone can independently demonstrate their knowledge on exams.
  • The MOSS tool will be used to check the originality of all electronic submissions (within this class, and against previous offerings as needed).
  • SFU's Academic Honesty policy is crucial to earning credit in this course. Violations of the policy will be taken seriously and reported to the department and university.

Late Policy

Assignment Late Policy 60 minute grace period for due dates; 5% penalty per calendar day; usually max 4 days late. Contact the instructor if there are extenuating circumstances.

Extensions and Deferrals Email Dr. Brian with your request. You may need to complete and email SFU Academic Concession Self-Declaration Form. Doctor's notes are usually not required. Extensions only considered for circumstances beyond the student's control; plan to submit assignments on time.

Good Textbooks (NOT REQUIRED!)

  • Highly Recommended Book:
    • Android Programming: The Big Nerd Ranch Guide (3rd Edition in Java) 2017, 9780134706054
      SFU Library has a Digital Copy
      NOTE: We will program in Java, not Kotlin; therefore, use 3rd ed not 4th ed.
    • For learning Java: Object-Oriented Design & Patterns, 2nd ed, Cay Horstmann, Wiley, 2006, 9780471744870. On reserve: SFU Library (Surrey).
      Free chapter 1 on learning Java.
  • Reference Books:
    • Software Engineering 9th Ed., Sommerville 2011 (or newer).
    • Sams Teach Yourself Android Application Development in 24 Hours 4nd Ed, Darcey and Conder, 2015 (or newer).
    • Introduction to Software Engineering , free WikiBooks textbook.

Course-Info