COMP 3004B: Object-Oriented Software Engineering

For further details on the course content, please refer to its outline (pdf). This course is offered by the School of Computer Science at the Carleton University.

Lectures are held every Tuesday/Thursday from 8:35 AM to 9:55 AM in MC 2000.

Announcementstop

  • Submit your D0:Project Groups by 9:00 AM on January 13.

Course Directorytop

Instructor:

Dr. Olga Baysal
Office: HP 5414
Email: olga.baysal[at]carleton.ca
Office Hours: by appointment

Course TAs:

Name
Office Hours
Office
Email
Saraj Manes
Tuesday 4:00-5:00 PM, Friday 9:30-10:30 AM
HP4125
sarajmanes[at]cmail.carleton.ca
Sri Vadlamani
Thursday 10:00 AM-12:00 PM
HP4125
srivadlamani@cmail.carleton.ca
Mehardeep Bhalla
Monday/Wednesday 8:30-9:30 AM
HP4125
mehardeepbhalla@cmail.carleton.ca
Nathaniel Arnill
Monday 12:00-2:00 PM
HP4125
nathanielarnill@cmail.carleton.ca

Scheduletop

It is important to note that this schedule is evolving and will change based on your interests and how the class is progressing. All lecture slides are available on the course cuLearn portal.

DateTopicActivity
Jan 7 Introduction Lecture
Jan 9 Development Processes Lecture
Jan 14 Requirements Engineering Lecture
Jan 16 Use Cases Lecture
Jan 21 Project Proposal Presentations Deliverable 1
Jan 23 Project Proposal Presentations Deliverable 1
Jan 28 User Stories Lecture
Jan 30 Domain Models Lecture
Feb 4 Introduction to Software Architecture Lecture
Feb 6 Architectural Styles Lecture
Feb 11 Architectural Styles Lecture
Feb 13 Styles and Greenfield Design Lecture
Feb 18 NO CLASS Reading Week
Feb 20 NO CLASS Reading Week
Feb 25 Reference Architecture Lecture
Feb 27 Intro to Design Patterns Lecture
Mar 3 Prototype Demo Presentations Deliverable 2
Mar 5 Prototype Demo Presentations Deliverable 2
Mar 10 Intro to Design Patterns Lecture
Mar 12 Refactoring Lecture
Mar 17 Testing Lecture
Mar 19 Computer Ethics Lecture
Mar 23-27 Oral Exams Deliverable 3
Mar 31 Project Presentations Deliverable 4
Apr 2 Project Presentations Deliverable 4
Apr 7 Final Review Lecture
TBA Final Exam Final Exam

Projecttop

The project forms an integral part of this course. The goal of the project is to produce a significant mobile app that performs some useful function. This software must have a considered and defensible design and architecture. There are only two real restrictions on the app idea itself: no database management apps will be accepted (e.g., simple CRUD apps that do not make sense in a mobile context); also, apps that require crowd buy-in are not acceptable (e.g., apps that would require large numbers of people to contribute content to be viably useful).

Your app must be executable on one of mobile platforms (from: iOS, Android, BB10, Windows 10 Mobile, FirefoxOS). While the app can work on tablets, the demonstrated platform _must_ be phone based.

The projects will be completed in teams of four. You are free to select your own team; if you do not have a team or your team has less than four members, please talk to me and I will set you up. Each of the deliverables for the project can be considered assignments. Bonus points will be awarded to teams who are able to get their app accepted into curated app stores (e.g., iOS App Store, BlackBerry World, Windows Store) by the time the final exam period ends.

Projects will have a difficulty scale applied to them by the instructor and TAs. The scale formula will be:

    (project + bonus) * scale = final project grade

Scale will range between 0.75 and 1.0. The components of the scaling mark will be determined by:

  • 5: completeness (compared to proposal)
  • 5: utility
  • 5: polish
  • 10: difficulty

There will also be various sources of bonus marks during the term; each will be worth 2%:

  • Best pitch
  • Best prototype demo
  • Best final demo
  • Accepted to curated app store

NOTE: The expectation is that you will work approximately 12 hours per week on this course; at least 8 of these hours will be on the project. Given that the course lasts 13 weeks, each team member is expected to work on the project at least 100 hours. You should be able to accomplish something pretty great in this time; please make the most of this opportunity.

Evaluationtop

Deliverable Date Format Value
D0: Project Groups January 13, 9:00 AM cuLearn Pass/Fail
D1: Proposal Presentations January 21/23 In Class (+ report submitted to cuLearn by Jan 20, 9:00 AM) 5%
D2: Prototype Demo March 3/5 In Class (+ report submitted to cuLearn by March 2, 9:00 AM) 5%
D3: Arch + Design March 23-27 Oral Exam (+ report submitted to cuLearn by March 21, 9:00 AM) 30%
D4: Presentation + Video March 31/April 2 In Class (+ report submitted to cuLearn by March 30, 9:00 AM) 10%
Final Exam April (3 hours) TBA 50%

You must pass the final exam and the project to pass the course.

Course Outlinetop

This is an overview of the kinds of topics the course could cover:

  • Process models
  • Use cases
  • UML sequence diagrams
  • Requirements specification
  • Non-functional requirements
  • Architectural styles
  • Design patterns
  • Computer ethics

Current Course Projects: Mobile Appstop

University Policiestop

Academic Integrity

Academic Integrity is everyone’s business because academic dishonesty affects the quality of every Carleton degree. Each year students are caught in violation of academic integrity and found guilty of plagiarism and cheating. In many instances they could have avoided failing an assignment or a course simply by learning the proper rules of citation. See the academic integrity for more information.

Academic Accommodations for Students with Disabilities

The Paul Menton Centre for Students with Disabilities (PMC) provides services to students with Learning Disabilities (LD), psychiatric/mental health disabilities, Attention Deficit Hyperactivity Disorder (ADHD), Autism Spectrum Disorders (ASD), chronic medical conditions, and impairments in mobility, hearing, and vision. If you have a disability requiring academic accommodations in this course, please contact PMC at 613-520-6608 or pmc@carleton.ca for a formal evaluation. If you are already registered with the PMC, contact your PMC coordinator to send me your Letter of Accommodation at the beginning of the term, and no later than two weeks before the first in-class scheduled test or exam requiring accommodation (if applicable). After requesting accommodation from PMC, meet with me to ensure accommodation arrangements are made. Please consult the PMC website for the deadline to request accommodations for the formally-scheduled exam (if applicable).

Pregnancy Obligation

Write to the instructor with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details visit the Equity Services website.

Religious Obligation

Write to the instructor with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details visit the Equity Services website.