MEMORANDUM
ATTENTION
FROM
RE:
S.12-46
OFFICE OF THE ASSOCIATE VICE-PRESIDENT, ACADEMIC AND ASSOCIATE
PROVOST
University Drive,
Burnaby, BC
Canada V5A1S6
TEL: 778.782.4636
FAX: 778.782.5876
Senate
Bill Krane, Chair
Senate Committee on
Undergraduate Studies
Faculty of Applied Sciences (SCUS 12-08)
DATE
PAGES
www.sfu.ca/vpacademic
February 3,2012
1/1
For information:
Acting under delegated authority at its meeting of February 2, 2012, SCUS approved the following
curriculum revisions effective Fall 2012:
1. School of Engineering Science [SCUS 12-Q8a)
(i) Prerequisite changes for ENSC 224, 225, 305W, 320, 331, 406
(ii) Core course requirement changes to the Biomedical Signals and Instrumentation Concentration of
the Biomedical Engineering Honours Program
(iii) Core course requirement changes to the Rehabilitation and Assistive Devices Concentration of the
Biomedical Engineering Honours Program
(iv) Program requirement changes to the Mechatronics Systems Engineering Major and Honours
Programs
2. School of Computing Science (SCUS 12-08b)
(i) New Course Proposals:
CMPT 130-3, Introduction to Computer Programming I
CMPT 135-3, Introduction to Computer Programming II (effective Spring 2013)
CMPT 213-3, Object Oriented Design in Java (effective Spring 2013)
(ii) Prerequisite changes for CMPT 125, 126, 128, 212, 373, 479 and MACM 101
(iii) Program requirement changes to the Software Systems Major
3. Systems One (SCUS 12-08c)
(i) Core course requirement changes to the Systems One First Year Program
Senators wishing to consult a more detailed report of curriculum revisions may do so bygoing to
Docushare: https://docushare.sfu.ca/dsweb/View/Collection-12682
If you are unable to access the information, please call 778-782-3168 or email shelley gairfdsfu.ca.
SIMON FRASER UNIVERSITY
THINKING OF THE WORLD
MEMO
Office of the Dea n
ASB-9861
Applied Science Bldg
Tel: 778-782-4724
www. f as. sf u. ca
SCUS 12-08
SFU
FACULTY Of-" APPLIED SCIENCES
ATTENTION Bill Krane, Chair SCUS
FROM
Rob Cameron, Associate Dean,
Faculty of Applied Sciences
RE
Faculty of Applied Sciences
Undergraduate Curriculum Changes
DATE
January 23, 2012
The following changes have been approved by the FAS Undergraduate
Curriculum Committee and are appended here for approval by SCUS and
recommendation to Senate.
1. Course Prerequisite Changes - Engineering Science
2. New Course Proposals - Computing Science
CMPT 130, 135, 213.
3. Course Prerequisite Changes - Computing Science
CMPT 125, 126, 128, 212, 373, 479, MACM 101
4. Program Revisions - Biomedical Engineering Honours Program
5. Program Revisions -
Systems One First Year Program
6. Program Revisions - Software Systems Major Program
7. Program Revisions - Mechatronics Systems Engineering Major and
Honours Programs
s i . i;.\ :: • si.K i i -. • ;•••[ , v
VHINKINfi 0 • 1 . r WORLD
SCUS 12-08a
SFU
SI-NAT I- CO • RjITTT.E ON
UNDHRCB \'H" \TL. STi: 1)1 • S
COURSE CHANGE/DELEl ION
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate rcvision(s):
I—I Course number
I—I Credit
I iTitlc
I I Description
Indicate number of hours for: Lecture
Seminar
/.\
Prerequisite
Tutorial
FROM
Course Number
Credits (Units)
TITLE
ENSC 224
TO
Course Number
Credits (Units)
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
Electronic Devices
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
FROM:
DESCRIPTION
TO:
I—I Course deletion
_ Lab
PREREQUISITE
FROM:
ENSC 220 or equivalent. Students who have taken PHYS 365
cannot take this course for further credit.
RATIONALE
PREREQUISITE
TO:
ENSC 220, MATH 232 and MATH 310 or equivalents,
Students who have taken PHYS 365 cannot take this course
fnr fnrthpr r.rpriit
MATH 232 and 310 are intended prerequisites of this course, implemented as corequisites for ENSC 220. However, some
students remain unprepared because they successfully complete ENSC 220 without successfully completing both MATH
courses. This change remedies the flaw in the prerequisite structure.
Does this course replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
Ifso,thisshould he
noted in the prerequisite.
Effective term and year
September 2012
J \m .'•:•, 7008
SFU
S.» NATi; COM MITT' ON
L'..n:.KC If • OUAT
It. .MS
COURSE CHANGE/DELETION
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate revision(s):
I—I Course number
I—I Credit
I—I Tide
1 I Description
*A
Prerequisite
I—I Course deletion
Indicate number of hours for: Lecture
Seminar
Tutorial
Lab.
FROM
Course Number
Credits (Units)
TITLE
ENSC 225
TO
Course Number
Credits (Units).
[1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
Microelectronics I
tq.
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
FROM:
PREREQUISITE
FROM:
ENSC 150 or CMPT 150, and ENSC 220. Quantitative.
RATIONALE
DESCRIPTION
TO:
PREREQUISITE
TO:
ENSC 150 or CMPT 150, ENSC 220, MATH 232 and MATH
310. Students taking ENSC 226 may not take ENSC 225 for
further credit. Quantitative.
This change addresses two concerns. MATH232 and 310 are intended prerequisites of this course, implemented as
corequisites for ENSC 220.
However, some students remain unprepared because they successfully complete ENSC 220
without successfully completing both MATH courses. This change remedies the flaw in the prerequisite structure. The second
concern is to clarify that ENSC 225 and 226 are considered equivalent courses.
Does this course replicate the content of 3 previously approved course to such an extent that students should not receive credit for both courses?
Ifso,this should he
noted in the prerequisite.
Effective term and year
September 2012
I \n t:\u-. ;oo$
SFU
STNATfi CO>- • I". '...'• ON
UNDi.UGi \')r'.,T /.Tl.DHS
C USE CHANGE/DELETION
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate revision(s):
I ICourse number
I ICredit
I ITitle
I I Description
•'.'Prerequisite
I—I Course deletion
Indicate number of hours for: Lecture
Seminar
_.
Tutorial
Lab
FROM
Course Number
Credits (Units)
TITLE
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
Project Documentation and Group Dynamics
jq.
ENSC 305W
TO
Course Number
Credits (Units)
(2) Short title for enrollment and transcript, no
more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
FROM:
PREREQUISITE
FROM:
Corequisite: ENSC 440 or 441.
RATIONALE
This is a third-year ENSC communication course that should be taken in sequence after completion of the first year courses.
DESCRIPTION
TO:
PREREQUISITE
TO:
Either both of ENSC 101W and ENSC 102 or one of ENSC
105W or CMPT 105W. Corequisite: ENSC 440 or 441.
Does this course replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
Ifso,this should be
noted in the prerequisite.
Effective term and year
September 2012
j iN L \ R
\
"*00'
SFU
S NAY" c:o \; :i i:.i. o,.
..;. "*: r.ti " un" ».'• srti dps
COURSE CHANGE/DELETION
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate revision(s):
I I Course number
1 I Credit
I I Title
I I Description
Indicate number of hours for: Lecture
Seminar
zA
Prerequisite
Tutorial
I—I Course deletion
Lab
FROM
Course Number
Credits (Units)
TITLE
ENSC 320
TO
Course Number
Credits (Units)
[1) Long tide for calendar and schedule, no more than 100 characters including spaces and punctuation.
Electric Circuits II
TO:
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
FROM:
PREREQUISITE
FROM:
ENSC 220.
DESCRIPTION
TO:
PREREQUISITE
TO:
ENSC 220, MATH 232 and MATH 310.
RATIONALE
MATH 232 and 310 are intended prerequisites of this course, implemented as corequisites for ENSC 220.
However, some
students remain unprepared because they successfully complete ENSC 220 without successfully completing both MATH
courses. This change remedies the flaw in the prerequisite structure.
Does this course
replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
If.so,this should be
noted in the prerequisite.
__ .
,
September 2012
Effectiveterm and year
___
iNl. \N i
?rtob
SFU
s katj co.\:MiTT.:r on
COURSE CHANGE/DELETION
l.N'l IU; l( \I)!.'A,!. SI I. Dfl-S
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate revision(s):
U Course number
• Credit
Chide
• Description
/] Prerequisite
D Course deletion
Indicate number of hours for: Lecture.
Seminar
Tutorial
FROM
TO
r-
Course
Numberki
k
ENSC
Course
Number
Credits (Units)
Credits (Units)
TITLE
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
Introduction
to
Microelectromechanical
Systems
JC..
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctual
FROM:
TO:
DESCRIPTION
DESCRIPTION
FROM:
T0.
Lab
PREREQUISITE
PREREQUISITE
FROM:
T0.
ENSC 282, 283, 226.
ENSC 281, 387 and one of ENSC 231 or ENSC 330.
RATIONALE
nrP—
prerequisties bettor reflect what the students need to know for the course as developed.
of
the MSE program. The new
Does this course replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
If so, this should be
noted in the prerequisite.
r,r .
.
September 2012
r.ltcctive term and year
\Nf
:•
\ ,i08
SFU
s NAT.. C().\ MITT : ON
UNI>: Cli .'M.- VT:. Sli;,'l"S
COURS E CHANCE/DELETION
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate revision(s):
LI Course number
LJ Credit
LJTide
E] De
escnption
Indicate number of hours for: Lecture
Seminar
/.
Prerequisite
Tutorial
FROM
Course Number
Credits (Units)
TITLE
ENSC 406
TO
Course Number
Credits (Units)
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
Engineering Ethics, Law, and Professional Practice
Tq-
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
FROM:
PREREQUISITE
FROM:
DESCRIPTION
TO:
PREREQUISITE
TO:
1—I Course deletion
Lab
100 units or permission of the instructor.
RATIONALE
This is fourth year professional ethics course that should be completed after the first year engineering and society course
100 units including one of ENSC 100W, ENSC 106 or CMPT
106.
Does this course replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
Ifso,thisshould be
noted in the prerequisite.
Effective term and year _
September 2012
WLAr, -')0>
Program Revisions - Biomedical Engineering Program
A Biomedical Engineering Honours Program, Biomedical Signals and Instrumentation
Concentration
The following changes are proposed to the Biomedical Signals and Instrumentation Concentration of
the Biomedical Engineering Honours Program.
Current
Proposed
Core Course Requirements
Core Course Requirements
Students complete all of
Students complete all of
[CHEM, CMPT, ENSC courses]
[CHEM, CMPT, ENSC courses]
• GERO 300-3 Introduction to Gerontology
• GERO 300-3 Introduction to Gerontology
• KIN 201-3 Biomechanics
(or any B-Soc course)
• KIN 208-3 Introduction to Physiological
• KLN 201-3 Biomechanics
Systems
• KIN 208-3 Introduction to Physiological
• KIN 308-3 Experiments and Models in
Systems
Physiology
• KIN 308-3 Experiments and Models in
[MACM, MATH, PHYS, STAT courses]
Physiology
[MACM, MATH, PHYS, STAT courses]
Rationale
GERO 300 was included in the Biomedical Engineering Program as a B-Soc course that is also related
to an important application of biomedical engineering: assistive technology for the elderly. However,
the tight constraints on the program and the limited availability of GERO 300 creates significant
problems for timely graduation of students. Therefore, GERO 300 is proposed to be deleted as a
mandatory course, allowing any B-Soc course to be used instead.
B Change to Biomedical Engineering Honours Program, Rehabilitation and Assistive Devices
Concentration
The following changes are proposed to the Rehabilitation and Assistive Devices Concentration of the
Biomedical EngineeringHonours Program.
Current
Proposed
Core Course Requirements
Core Course Requirements
Students complete all of
Students complete all of
[CHEM, CMPT, ENSC courses]
[CHEM, CMPT, ENSC courses]
• GERO 300-3 Introduction to Gerontology
• GERO 300-3 Introduction to Gerontology
• KIN 201-3 Biomechanics
(or any B-Soc course)
• KIN 208-3Introduction to Physiological
• KIN 201-3 Biomechanics
Systems
• KIN 208-3 Introduction to Physiological
• KIN 308-3 Experiments and Models in
Systems
Physiology
• KIN 308-3 Experiments and Models in
[MACM, MATH, PHYS, STAT courses]
Physiology
[MACM, MATH, PHYS, STAT courses]
Rationale
GERO 300 was included in the Biomedical Engineering Program as a B-Soc course that is also related
to an important application of biomedical engineering: assistive technology for the elderly. However,
the tight constraints on the program and the limited availability of GERO 300 creates significant
problems for timely graduation of students. Therefore, GERO 300 is proposed to be deleted as a
mandatory course, allowing any B-Soc course to be used instead.
Program Revisions - Mechatronics Systems Engineering
A. Mechatronics Systems Engineering Major Program
The following changes are proposed to the Mechatronics Systems Engineering Major program.
Current
Program Requirements
Students complete all of
• CMPT 128-3 Introduction to Computing
Scienceand Programming forEngineers
• ...
[ENSC, MACM, MATHcourses]...
• PHYS 140-4Studio Physics - Mechanics
and Modern Physics
• PHYS 141 -4 Studio Physics - Optics,
Electricity and Magnetism
• PHYS 231-3 Physics Laboratory II
• PHYS 344-3 Thermal Physics
Proposed
Program Requirements
Students complete all of
• CMPT 130-3 Introduction to Computer
Programming I
• ...
[ENSC, MACM, MATHcourses]...
• PHYS 140-4Studio Physics - Mechanics
and Modern Physics
• PHYS 141 -4 Studio Physics - Optics,
Electricity and Magnetism
• PHYS 344-3 Thermal Physics
B. Change to the Mechatronics Systems Engineering Honours Program
The following changes are proposed to the Mechatronics Systems Engineering Honours program.
Current
Program Requirements
Students complete all of
• CMPT 128-3 Introduction to Computing
Science and Programming for Engineers
• ...
[ENSC, MACM, MATHcourses]...
• PHYS 140-4 Studio Physics - Mechanics
and Modern Physics
• PHYS 141 -4 Studio Physics - Optics,
Electricity and Magnetism
• PHYS 231-3 Physics Laboratory II
• PHYS 344-3 Thermal Physics
Proposed
Program Requirements
Students complete all of
• CMPT 130-3 Introduction to Computer
Programming I
• ...
[ENSC, MACM, MATH courses]...
• PHYS 140-4Studio Physics - Mechanics
and Modern Physics
• PHYS 141 -4 Studio Physics - Optics,
Electricity and Magnetism
• PHYS 344-3 Thermal Physics
Rationale
Two changes are made in each of the Mechatronics Systems Engineering Major and Honours programs.
The first is the replacement
of CMPT 128 by CMPT 130 reflecting the revision to the Systems One
First YearProgram. The second is the deletion of PHYS 231. The course PHYS 231 was part of the
original MSE program proposal, but was intended to be replaced, first by ENSC 263 and subsequently
by ENSC 280. ENSC 280 is now correctly listed as a program requirement, but the calendar
incorrectly continues to show PHYS 231 as a requirement.
SCUS 12-08b
NEW COURSE PROPOSAL - CMPT 130-3 Introduction to Computer Programming I
CALENDAR INFORMATION
COURSE NUMBER: CMPT 130
COURSE TITLE: Introduction to Computer Programming 1
CREDITS: 3 Vector: 3-0-0
COURSE DESCRIPTION
An introduction to computing science and computer programming, using a systems oriented language, such
as C or C++. This course introduces basic computing science concepts. Topics will include: elementary
data
types,
control
structures,
functions,
arrays
and
strings,
fundamental
algorithms,
computerorganization
and memory management.
PREREQUISITE: BCMath 12 (or equivalent,or any of MATH 100, 150, 151, 154, 157).
COREQUISITE: None.
Ufe, 120
SPECIAL
INSTRUCTIONS:
Students
with
credit
for
CMPT
102,120,)B^-rl-26yi-28-or'Qny
couroo
ntimborod-CMPT 200 or higher may not take this course for further credit.
COURSE(S) TO BE DELETED IF THIS COURSE IS APPROVED: None.
RATIONALE FOR INTRODUCTION OF THIS COURSE
This course is designedas part of the Systems One cohort program and will be a requiredcourse for both
SoftwareSystems and Mechatronic Systems Engineering students. At present, the Systems One program
hasdifferent introductory courses forSoftware Systems andMechatronics students anda shared course will
enhance the cohort nature of the Systems One program.
CMPT 130 will be taught using a systems oriented programming language appropriate for both Software
Systems and Mechatronics students,and will prepare Software Systems students for further courses in their
major program. This courseis designed as thefirsthalfof a twocourse sequence with CMPT 135. The
CMPT 130/135 sequence is a systemsoriented introduction to Computing Science in contrastto the
application oriented introduction providedby the CMPT 120/125 course sequence.
SCHEDULING AND ENROLLMENT INFORMATION
Commencing Fall 2012 and to be offered at least twice peryear thereafter.
IS A WAIVER REQUIRED? Yes
REQUIRED OR ELECTIVECOURSE? Required
WHAT IS THE ENROLLMENT ESTIMATE?
Projected enrollment is 250 students per year.
WHICH OF YOUR PRESENT CFL FACULTY HAVETHE EXPERTISETO OFFER THIS COURSE?
Almost all present faculty could teach this course.
ARE THERE ANY PROPOSED STUDENT FEES ASSOCIATED WITH THIS COURSE OTHER
THANTUITION FEES? No
RESOURCE IMPLICATIONS
Note: Senate has approved (S.93-11) that no new course should be approved by Senate untilfunding has
been committed for necessary library materials. Each new course proposal must be accompanied by a
library
report
and,
if
appropriate,
confirmation
that
funding
arrangements
have
been
addressed.
CAMPUS WHERE COURSE WILL BE TAUGHT: Surrey
LIBRARY REPORT STATUS: No Additional Library Resources Required
PROVIDE DETAILS ON HOW EXISTING INSTRUCTIONAL RESOURCES WILL BE
REDISTRIBUTED TO ACCOMMODATE THIS NEW COURSE.
For instance, will anothercourse be
eliminated or will the frequency of offering of other courses be reduced; are there changes in pedagogical
style or class sizes that allowfor this additional course offering.
This course will use instructional resources currently used for CMPT 120and CMPT 128, which this
course will replace on the Surrey campus.
LIST OUTSTANDING RESOURCE ISSUES TO BE ADDRESSED PRIOR TO IMPLEMENTATION:
None
ARTICULATION AGREEMENT REVIEWED? No
CMPT-130 OUTLINE
Coursework will consist of lectures, labs, assignments and exams. The course will cover the following
topics.
6
1. Introduction to programming and computing science: hardware and software, computer
organization,
programming
languages,
programming
tools
2. Representation of data in a computer program, binary representation, 2'scomplement notation
ASCII character codes
3.
Introduction
to
programming:
values,
variables,
types,
expressions,
operators,
character-based
input and output
4. Functions: function libraries, passing parameters, returning values, the call stack
5. Decisions: Boolean logic, if statements, relational operators
6. Repetition: while loops, for loops, recursion
7. Aggregate data types: arrays, stri ngs, records
8. Debugging strategies: using a debugger, writing tests, common bugs
9. File I/O and error handling: why error-handling is important, reading and writing text files
recognizing
errors,
signaling
errors,
handling
errors
10.
Fundamental
algorithms:
searching,
sorting,
numerical
algorithms
11. Memory management: pointers and addresses, allocating and de-allocating variables in dynamic
memory
New Course Proposal
CMPT 135-3 Introduction to Computer Programming II
Calendar Information
Course number: CMPT 135
Course title: Introduction to Computer Programming II
Credits: 3 Vector: 3-0-0
Course Description
A second course in systems-oriented programming and computing science that builds upon the
foundation set in CMPT 130 using a systems-oriented language such as C or C++.Topics: a review of
the basic elements of programming; introduction to object-oriented programming (OOP); techniques
for designing and testing programs; use and implementation of elementary data structures and
algorithms; introduction to embedded systems programming.
Prerequisites: CMPT 130
Corequisite: None.
Special Instructions:
Students with credit for CMPT 125,126,128 e^u^-tuui^cniuinbt;i^d-GMT>T-20fr
ar-higher may not take this course for further credit.
Course(s) to deleted if this course is approved: None.
Rationale for the Introduction of this Course
This course is designed specifically as the follow-on to CMPT 130, and it replaces CMPT 125/128 at
the Surrey campus. Together, CMPT 130 and CMPT 135 form a cohesive two-course sequence
designed to give computing science and engineering students a systems-oriented introduction to
programming and computer science.
Scheduling and Enrollment Information
Commencing Spring 2013 and to be offered once or twice per year.
Is a waiver required? Yes
Required or elective course?
Required
What is the enrollment estimate? 100
Which of your present CFL faculty have the expertise to offer this course?
Most CMPT faculty could
teach this course.
Are there any proposed student fees associated with this course other than tuition fees? No
Resource Implications
Note: Senate has approved (S.93-11) that no new course should be approved by Senate untilfunding has
been committedfor necessary library materials. Each new course proposal must be accompanied by a
library report and, if appropriate, confirmation thatfunding arrangements have been addressed.
Campus where the course will be taught:
Surrey
Done. See http://wwwJib.sfu.ca/collecUons/coursc-assessments/applied-sciences
Provide details on how existing instructional resources will be redistributed to accommodate this new
course.
For Distance, will another course be eliminatedor will thefrequency of offering of other courses
be reduced;are there changes in pedagogical style or class sizes thatallow
for this additional course
offering.
This course will replace CMPT 125/128 at the Surrey campus, and so will use the resources from
those courses.
List outstanding resource issues to be addressed prior to implementation: None
Articulation agreement reviewed? No
CMPT-135 Outline
Coursework consists of lectures, labs, readings,assignments, projects, and exams. The major topics of the
course arc as follows:
*
Review of basic programming:
values,variables,types, expressions, statements, decision
statements, loops, functions, parameter-passing, templates, recursion, exception handling; static,
stack, and heap memory; compilers, linkers,and makefiles.
*
Introduction to object-oriented programming (OOP):
objects, classes, setters/getters, member
visibility, constructors/destructors, inheritance, polymorphism, abstract classes.
*
Techniques for designing and testing programs:
decomposing problems into sub-modules;
abstract data types; invariants and assertions; unit testing.
*
Basic data structures and their algorithms:
using
arrays, strings, hash tables, maps, and sets;
implementing
dynamic arrays, stacks, queues, and matrices; empirical analysis of algorithms.
*
Introduction to embedded systems programming:
examples of embedded systems; basic
concepts (correctness, fault-tolerance, predictability, etc.); memory management (pools, stacks);
bit manipulation; coding standards.
New Course Proposal
CMPT 213-3 Object oriented design in Java
Calendar Information
Course number: CMPT 213
Course title: Object oriented design in Java
Credits: 3 Vector: 3-0-0
Course Description
An introduction to object oriented design using Java. The Java programming language is introduced,
with an emphasis on its advanced features. The course covers the building blocks of object oriented
design including inheritance, polymorphism, interfaces and abstract classes. A number of object
oriented design patterns
are presented, such as observer, iterator, and singleton. The course also
teaches best-practices in code construction. It includes a basic introduction to programming event-
driven graphical user interfaces.
Prerequisites: CMPT 225.
Corequisite: None.
Special Instructions: Students OQimotrocBiv^ credit for
both
CMPT 212 <md CMPT 313.
C(X ^
^
4caJCC_
Course(s) to deleted if this course is approved: None.
Rationale for the Introduction of this Course
Students entering upper-division Software Systems courses need a solid grounding in practical object
oriented design and code construction in Java. This will be the first course that Software Systems
students take that teaches Java, which is essential for later courses which use the language.
Additionally, students need a second year course focused on program design and code construction to
advance their programming ability beyond the introductory level taught in first year courses. This
course will bridge the gap into third year courses where students are expected to be proficient with
object oriented design
and programming. Finally, the course also serves as an introduction to GUI
programming and simple multi-threaded programs.
Scheduling and Enrollment Information
Commencing Spring 2013 and to be offered once per year.
Is a waiver required? Yes
Required or elective course?
Required
What is the enrollment estimate? 50 students.
Which of your present CFL faculty have the expertise to offer this course?
Toby Donaldson, John Edgar, Tom Shermer, Tamara Smyth, and Brian Fraser
Are there any proposed studentfees associated with this courseother than tuition fees? No
Resource Implications
Note: Senate has approved (S.93-11) that no new course should be approved by Senate until funding has
been committed for necessary library materials. Each new course proposal must be accompanied by a
library report and, if appropriate, confirmation that funding arrangements have been addressed.
Campus where the course will be taught:
Surrey
Library report status:
To be submitted.
Provide details on how existing instructional resources will be redistributed to accommodate this new
course.
For instance, will another course be eliminatedor will thefrequency of offering of other courses
be reduced; are there changes in pedagogical style or class sizes that allow for this additional course
offering.
This course will use instructional resources currently used for CMPT 212, which this course will
replace on the Surrey campus.
List outstanding resource issues to be addressed prior to implementation:
None
Articulation agreement reviewed? No
CMPT-213 Outline
Coursework consists of lectures, readings, assignments, and projects. The major topics of the course are as
follows:
Introduction to Java, including advanced features such as cnum, generics, mutable vs immutable
objects, and threads.
Inheritance, polymorphism, interfaces and abstract classes.
Introduction to object oriented design (OOD) and some UML diagrams.
Introduction to code construction, best practices and coding standards.
Basic design patterns such as iteration, singleton, observers, and template methods.
Introduction to refactoring.
Basic introduction to event-driven user interface programming.
Software development tools, such as advanced IDE features, build tools, debuggers, and JavaDoc.
SFU
S. NA'I .: COM Ml"; 1 EL ON
UN.N:UC '(ADUAIi: Ml Dli.S
COJRjf rHANGE/DELTTION
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate revision(s):
I ICourse number
I I Credit
I ITitle
I I Description
LMJ Prerequisite
I ICourse deletion
I I Learning Outcomes
Indicate number of hours for: Lecture
FROM
i||^|-T-
Course Subject/Number W IVI I I I ^O
Credits _^!
TITLE
Seminar
Tutorial
TO
Course Subject/Number
Credits
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
FROM:
TO:
Introduction to Computing
Science and Programming II
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
FROM:
DESCRIPTION
TO:
Lab
PREREQUISITE
PREREQUISITE
Uocs this course replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
If so, this should be noted in the prerequisite.
FROM:
Prerequisite: BC MATH 12 (or
equivalent) and CMPT 120.
LEARNING OUTCOMES
RATIONALE
to :
vp<
&*
0\ v/Aceo^ )
Prerequisite: BC MATH 12 (or any of MATH
100, 150, 151, 154, 157) and CMPT 120.
Math courses higher than BC Math 12 are acceptable prerequisites to these courses.
Current prerequisites in the calendar only allow BC Math 12 or its *exact equivalent.*
In-ecuve tern, and year SOPteiTlber 201
2.
N'OV. \.U.. .
ZQ\l
SFU
s N-T . roMi.1T/-t o:
c URSfc. CHANGE/DELETION
l;M> .it: '.'.DU.'iV -.11
">'. '•'•
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate rcvision(s):
l_l Course number
I I Credit
I I Title
I I Description
JL Prerequisite
I—I Course deletion
I—I Learning Outcomes
Indicate number of hours for: Lecture
Seminar
Tutorial
Lab
FROM
TO
Course Subject/Number ^ '"1 '
*
* £-\J
Course Subject/Number
Q
Credits _^
Credits
TITLE
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
FROM:
TO:
Introduction to Computing
Science and Programming
(2) Short title for enrollment and transcript, no more than 30 charactersincluding spaces and punctuation.
FROM:
TO:
DESCRIPTION
DESCRIPTION
FROM:
TO:
PREREQUISITE
PREREQUISITE
Does this course replicate the content of a previously approved course to such an extent that students should not receive credit/or both courses?
If so, this should benoted in the prerequisite.
\
FROM:
TO:
Prerequisite: BC mathematics 12 (or
Prerequisite: BC Math 12 (or equivalent, or
equivalent).
any of MATH 100, 150, 151, 154,157).
LEARNING OUTCOMES
S>T<o95sV£
U>\<V\
C/L&5
lV
VOL Cf^PT
l^
ot£o rr.
RATIONALE
Math courses higher than BC Math 12 are acceptable prerequisites to these courses.
Current prerequisites in the calendar only allow BC Math 12 or its *exact equivalent.*
BffBCtiw "rma,ul yc,r -Septembef-2042
NOVI Mi I .. "Oil
SFU
ShNvr.. f.o:
A.ur
on
CO IRjJt CHAN&E/DhLETION
ui.r>K<iO"
.1)''
..'
sit d:
••
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate rcvision(s):
I I Course number
I I Credit
I I Title
I I Description
LMJ
Prerequisite
I—I Course deletion
I—I Learning Outcomes
Indicate number of hours for: Lecture
Seminar
Tutorial
Lab
FROM
TO
Course
Subject/Number ^ IV''
*
' ^Q
Course Subject/Number _
Credits
2~
Credits
TITLE
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
FROM:
TO:
Introduction to Computing Science
and Programming for Engineers
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
DESCRIPTION
FROM:
TO:
PREREQUISITE
PREREQUISITE
Does this course replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
Ifso, this should be
noted in the prerequisite.
FROM:
TO:
Prerequisite: BC mathematics 12 (or
Prerequisite: BC Math 12 (or equivalent, or
equivalent).
any of
MATH 100, 150, 151, 154,157).
LEARNING OUTCOMES
STvJQ&oTS lOfTM OCtoO iV
ttL &v*PT
15°
rwv/ No-r -T7r*e-fUis doners.
&*• &>&*&-
CL&>\-r.
RATIONALE
Math courses higher than BC Math 12 are acceptable prerequisites to these courses.
Current prerequisites in the calendar only allow BC Math 12 or its *exact equivalent.*
Effective term and year -gePtefflbe^O 1 2
NOvi .•> '. ;t *oi :
SFU
si.n ,v: CO'-.MiTTi..' o.N
COURSE CHAN6E/DELETI0N
UN D . BC HA*>1'.\ 1'.! S IT. PP S
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate revision(s):
l~l Course number
LJ Credit
LJ Title
LJ Description
ImJ
Prerequisite
I—I Course deletion
I—I Learning Outcomes
Indicate number of hours for: Lecture
Seminar
Tutorial
Lab
FROM
TO
PMPT ?19
Course Subject/Number W 1VI •
I
C- \ C—
Course Subject/Number
Credits _^
Credits
TITLE
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
FROM:
TO:
Object-Oriented
Applications Design in C++
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
DESCRIPTION
FROM:
TO:
PREREQUISITE
PREREQUISITE
Does this course replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
Ifso, this should be noted in
the
prerequisite.
FROM:
TO:
PK^K^/^iiioItrN- OI\/lDT -IOC:
-iOP. r\r
1 OR
Prerequisite: CMPT125, 126 or 128. Recommended: CMPT225.
lUftjquiblie. OlVir I l£Q, I^OUI I^O.
Students with credit for CMPT 213 may nottake CMPT 212 for funher
Recommended: CMPT 225.
credit-
LEARNING OUTCOMES
RATIONALE
Effective term and y
*"
September 2012.
NOV. vn:.: :oi i
SFU
• n»t. (.uM'ir; ..on
COURSE L'riAN&E/DELLTtON
i, in ".u; ,.\nr . i. >. .1 Dii.s
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate revision(s):
LZI Course number
LJ Credit
LJ Title
LJ Description
El Prerequisite
LJ Course deletion
I—I Learning Outcomes
Indicate number of hours for: Lecture
Seminar
Tutorial
Lab
FROM
TO
PMPT ^7^
Course Suhjcct/Numbcr N-/I VI I
I
\J I \J
Course Subject/Number _
Q
Credits J^l
Credits
TITLE
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
FROM:
TO:
Software Development
Methods
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
DESCRIPTION
FROM:
TO:
PREREQUISITE
PREREQUISITE
Does this course replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
Ifso, this should be
noted
in
the
prerequisite.
FROM:
TO:
Prc»rc»ni lieito- PMPT 97£
r*r
07^
Prerequisite: CMPT 276 or 275. Students with creditfor
ItJItJLjUlbllt;. v^lVir I il/OUl £/U.
CMPT 475 may nottake thiscourse for further credit.
LEARNING OUTCOMES
RATIONALE
Change current wording on CMPT 373 to match CMPT 475 wording regarding 'repeat'rule.
Rationale: SIMS regards the two courses as repeats and the calendar wording on CMPT 373
does not reflect this.
litl
effective term and year
-gegtefflber 201 2~
NCA 1 Ml !•!! Ol
SFU
s-.n-.t f;o.v-?iiTTK.. on
COURSE CHANGE/DELETION
UNO ' ..c. ijajh' •. r. s; i. n:. s
EXISTING COURSE, CHANGES RECOMMENDED
Please check appropriate revision(s):
I—I Course number
I—I Credit
I—I Title
I—I Description
JL Prerequisite
I I Course deletion
I I Learning Outcomes
Indicate number of hours for: Lecture
Seminar
Tutorial
Lab
FROM
TO
Course Subject/Number
V>IVI
j_
I H"
/
\J
Course Subject/Number _
Credits
±J
Credits
TITLE
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
FROM:
TO:
Special Topics in
Computing Systems
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
DESCRIPTION
FROM:
TO:
PREREQUISITE
PREREQUISITE
Does this course replicate the contentof a previously approved course to such an extent that students should not receive credit for both courses?
Ifso, thisshouldhe noted in
the prerequisite.
FROM:
TO:
Prerequisite: CMPT 401.
Prerequisite: CMPT 401 or 431.
LEARNING OUTCOMES
RATIONALE
CMPT 401 or 431 are considered acceptable prerequisites to
CMPT 479.
Effective tern, and year SOptOITtber 201 2
NO VI », 151 •' "Oil
SFU
s
n • n. f:o" ;>ur
rnn
o
u.N'n ::c;u.\m;.\11: sti dps
tOURSu Cii/.NTE/DEL:
TION
EXISTING COURSE, CHANGES RECOMMENDED
Plcasti check appropriate revision(s):
I—I Course number
I—I Credit
I—I Title
I—I Description
iMJ Prerequisite
I I Course deletion
LJ Learning Outcoi
Indicate number of hours for: Lecture
Seminar
Tutorial
FROM
Course Subject/Number
Credits
±±
TITLE
MACM 101
TO
Course Subject/Number
Credits
(1) Long title for calendar and schedule, no more than 100 characters including spaces and punctuation.
FROM:
TO:
Discrete Mathematics
(2) Short title for enrollment and transcript, no more than 30 characters including spaces and punctuation.
FROM:
TO:
DESCRIPTION
FROM:
DESCRIPTION
TO:
IS Outcomes
Lab
PREREQUISITE
PREREQUISITE
Does this course replicate the content of a previously approved course to such an extent that students should not receive credit for both courses?
It so, thisshouldbe noted in the prerequisite.
FROM:
TO:
Prerequisite: BC high school
mathematics 12.
LEARNING OUTCOMES
RATIONALE
Prerequisite: BC Math 12 (or equivalent, or
any of MATH 100, 150, 151, 154, 157).
Math courses higher than BC Math 12 are acceptable prerequisites to these courses.
Current prerequisites in the calendar only allow BC Math 12 or its *exact equivalent.*
EHectiv
iw tcrm w,d year -September - 20+2-
MOV! Mi;
'():
Program Revisions - Software Systems Major
The following revisions are proposed to the Software Engineering Requirements of the Software
Systems Major.
Current
Proposed
Software Engineering Requirements
Software Engineering Requirements
Students complete at least 24 units including all of
Students complete a total
of 27 units including all
• CMPT 212-3 Object-Oriented Applications
of
Design in C++
• CMPT 130-3Introduction to Computer
• CMPT 225-3 Data Structures and
Programming I
Programming
• CMPT 135-3Introduction to Computer
• CMPT 276-3 Introduction to Software
Programming II
Engineering
• CMPT 213-3 Object-Oriented Design in
• CMPT 373-3 Software Development
Java
Methods
• CMPT 225-3 Data Structures and
• CMPT 379-3 Principles of Compiler
Programming
Design
• CMPT 276-3 Introduction to Software
• CMPT 473-3 Software Quality Assurance
Engineering
and either one of
• CMPT 373-3Software Development
Methods
• CMPT 126-3 Introduction to Computing
Science and Programming*
• CMPT 379-3 Principles of Compiler
Design
• CMPT 128-3 Introduction to Computing
Science and Programming for Engineers
• CMPT 473-3 Software Quality Assurance
and one of
or both of
• CMPT 375-3 Mathematical Foundations of
• CMPT 120-3 Introduction to Computing
Software Technology
Science and Programming I*
• CMPT 125-3 Introduction to Computing
• CMPT 383-3 Comparative Programming
Languages
Science and Programming II*
• CMPT 384-3 Symbolic Computing
and one of
• CMPT 477-3 Formal Verification
• CMPT 383-3 Comparative Programming
• CMPT 474-3 Web Systems Architecture
Languages
• CMPT 384-3 Symbolic Computing
• CMPT 477-3 Formal Verification
• CMPT 474-3 Web Systems Architecture
Rationale
This change reflects the replacement of first year programming options in the Systems One program
with CMPT 130-3. Building on that, CMPT 135-3is introduced as a second course in C/C++
programming to replace CMPT 120/125 as the normal course sequence for Software Systems Majors.
This allows students to consolidate their knowledge of
OC++
programming prior to taking on new
languages and higher-level software topics.
A consequence of this change is the removal of exposure to Java in the first year of the Software
Systems major. CMPT 213-3 is introduced in second year for this purpose, replacing CMPT 212.
A further change is the addition of CMPT 375-3 as an additional option for the final elective in the
Software Engineering curriculum.
SCUS12-08c
Program Revisions - Systems One First Year Program
The following revisions are proposed to the Systems One First Year Program offered by the Faculty of
Applied Sciences at the Surrey campus.
Current
Proposed
Within the Systems One common core, students
complete a total of 12-15 units, including either
both of
• CMPT 120-3 Introduction to Computing
Science and Programming I
• CMPT 125-3 Introduction to Computing
Science and Programming II
or
• CMPT 128-3 Introduction to Computing
Science and Programming for Engineers
and
• ENSC 182-3Mechatronics Design I
and one of
• CMPT 105W-3 Process, Form, and
Convention in Professional Genres
• ENSC 105W-3 Process, Form, and
Convention in Professional Genres
and one of
• CMPT 106-3 Applied Science, Technology
and Society
• ENSC 106-3 Applied Science, Technology
and Society
Within the Systems One common core, students
complete a total of 12 units, including both of
• CMPT 130-3 Introduction to Computer
Programming I
• ENSC 182-3Mechatronics Design I
and one of
• CMPT 105W-3 Process, Form, and
Convention in Professional Genres
• ENSC 105W-3 Process, Form, and
Convention in Professional Genres
and one of
• CMPT 106-3 Applied Science, Technology
and Society
• ENSC 106-3 Applied Science, Technology
and Society
Rationale
These changes simplify the Systems One common core by introducing CMPT 130 as a common first-
year programming course for both Mechatronics Systems Engineering majors and Software Systems
majors, replacing the CMPT 120/125 sequence currently used for Software Systems and CMPT 128
course currently used for Mechatronics Systems Engineering.