Introduction to Software Engineering: Specification, design, implementation and maintenance of large, multi-module software systems. Principles, techniques, methodologies and tools for computer aided software engineering (CASE); human-computer interfaces, reactive systems, hardware-software interfaces and distributed applications.
When you complete this course, you will be able to:
Prerequisite
Elisa Baniassad (Instructor)
I will also see students outside of scheduled office hours – email me if you would like to schedule an appointment to speak to me. If you send me emails regarding course content, I will post your question on the discussion forum so that other students can see it and my answer.
The schedule for TA office hours will soon be available on the DLC page.
Section | Day | Time | Place | Instructor |
---|---|---|---|---|
Lecture | Monday/Wednesday/Friday | 9:30am - 12pm | Pharmaceutical Sciences Building room 1201 | Elisa |
Lab - L0A | Wednesdays/Fridays | 12:30pm-2:30pm | ICCS X350 | TBA |
Lab - L0B | Wednesdays/Fridays | 2:30pm-4:30pm | ICCS X350 | TBA |
Lab - L0C | Wednesdays/Fridays | 5pm-7pm | ICCS X350 | TBA |
Labs are an important part of this course. Labs will provide you with the practical knowledge and skills required for the completion of your course assignments. Each lab is designed to give you the opportunity to meet and work as a group, and attendance is mandatory.
Each lab session is supervised by a teaching assistant (TA), who will introduce the necessary tools, provide instructions for the projects, answer questions and meet with each group to discuss the progress of the project.
There will be no labs in the first week. The first labs start the week of January 13th.
There is no required textbook for the course. Lectures, labs and assigned readings will contain all information covered by the exams. You will often be given an assigned reading from an available online resource.
Lecture slides and other material will be posted after lecture on the lectures page.
The discussion forum is hosted at Piazza.com. The forum is required reading as the instructor and TAs will post important information and updates there.
Please sign up here:PIAZZA FORUM FOR OUR CLASS
Please check it daily, as this is the official communication channel in the event of cancelled classes or labs, rescheduled deadlines, and so on. In addition, you are encouraged to post your questions about the course material on the course bulletin board.
You are also encouraged to respond to questions for which you know the answer. In case you need a face-to-face discussion, you can bring you questions regarding the course material, assignments, project and labs to:
Please note that Piazza is a service that is hosted in the United States. (It is a startup that originated at Stanford University.) Some of you may wish to preserve your anonymity on Piazza, so that none of your personal information is stored in the United States. You are free to do this simply by creating a new anonymous email account and joining Piazza using that anonymous email account. (If you already use a gmail, hotmail or other US hosted email account this is essentially moot.) If you do choose to join Piazza with an anonymous account then please send the instructor a private email message stating the anonymous email account you joined with Piazza with. I don't think that you can join the course yourself unless you use a .ubc.ca address, but if you let me know which anonymous address you used to join Piazza, I will add you to the course.
See the project page
Your grade in this course will be based on exams, labs, a project, and class participation as shown in the table below. In addition, lab attendance is mandatory and you will lose 1% of your overall grade (up to 5%) for each lab that is missed without an acceptable reason (e.g. illness).
Component | Value |
---|---|
Final Exam | 40% |
Project | 35% |
Midterm | 20% |
Participation | 5% |
To pass this course, you must obtain a 50% overall mark and, in addition, you must:
Students who fail the project or the final exam will be assigned as the final grade in the course the minimum of 45% (an F) and the grade computed using the above formula. (I reserve the right to change the grading formula during the term).
The 5% of your grade allocated to participation will be based on in-lecture activities. For some of these activities you will receive credit simply for participating, so in-class attendance is necessary to receive the credit and is highly recommended.
Grades will be posted regularly via Connect.
Assignments will be due at a specific time, typically via handin or in lab. If you are not prepared for a lab it makes it very difficult to complete the remainder of the project. Although you will have to complete your assignment so that you can continue working on the project, assignments that are not completed by the due date and time will be worth 0. There will not be any extensions.
There will be a midterm and a final examination.
Midterm | TBA (likely either May 30 or June 2) |
Final exam | To be scheduled by UBC |
There will be a large, semester-long group project, using an ‘agile-like’ approach. Deliverables will be broken into several milestones, including two major sprints. Assignments will be geared towards completion of the project.
The submission procedure will be clearly specified in each assignment.
Your projects are group work, but no inter-group communication about projects is permitted unless explicitly noted in the assignment description.
Note that the project is a mandatory component of this course. You must obtain a passing grade in the project in order to pass the course. You must also obtain a passing grade on the two major sprints in order to to pass the course.
The following is a tentative list of the objectives of this course by topic. When you complete this course, you will be able to:
Each student is responsible for understanding and abiding by the University and Departmental policies on academic conduct. Specifically:
Everyone involved with CPSC 310 is responsible for understanding and abiding by the University's Respectful Environment Statement.
The Statement of Principle of UBC's Respectful Environment Statement is "The best possible environment for working, learning and living is one in which respect, civility, diversity, opportunity and inclusion are valued. Everyone at the University of British Columbia is expected to conduct themselves in a manner that upholds these principles in all communications and interactions with fellow UBC community members and the public in all University-related settings."