Bachelor of Science in Software Engineering
|General Office:||Department of Electrical and Computer Engineering
Head Hall, Room D36
Faculty of Computer Science
Information Technology Centre, Room ITC314
|Mailing Address:||Program Coordinator, Software Engineering Program
Faculty of Engineering/Faculty of Computer Science
University of New Brunswick,
P.O. Box 4400, Fredericton, N.B.,
Canada, E3B 5A3
|Phone:||(506) 453-4561 or (506) 453-4566|
|Fax:||(506) 453-3589 or (506) 453-3566|
Software Engineering was established at UNB as a separate discipline in 2000. The BScSwE is administered jointly by the Department of Electrical and Computer Engineering and the Faculty of Computer Science. The program educates professionals who apply engineering techniques to the design, implementation, testing and maintenance of software products. Students graduating from the program will be eligible for registration as a Professional Engineer and an Information Systems Professional.
The BScSwE is designed as a four-year program or five years if undertaken in conjunction with the Co-op or Professional Experience Program. Students entering the program are strongly encouraged to participate in either Co-op or PEP, as it is widely recognized that the experience gained is a valuable component of a Software Engineering background. A description of these Cooperative Education Programs is found in the Bachelor of Computer Science and Bachelor of Science in Engineering degree program descriptions.
The Faculty of Computer Science also offers the following degree programs:
- Bachelor of Computer Science
- Bachelor of Information Systems
- * admisisons to the Bachelor of Information Systems program are currently suspended.
The Faculty of Engineering also offers the following degree program:
- Bachelor of Science in Engineering
The program is designed to be completed in 8 study terms. Because the BScSwE is considered an engineering degree, the General Regulations, including minimum credit hour requirements that are listed under Bachelor of Science in Engineering, apply to the BScSwE program.The program consists of required “core” courses, basic science electives, technical electives and complementary studies electives. The first year of the program includes many fundamental math, science, and engineering courses common to all Engineering programs. Students transferring from New Brunswick Community Colleges will be eligible to receive up to one year of credits toward the Software Engineering degree. A minimum grade of C is required for all courses used for credit towards the BScSwE degree.
CHEM 1982 General Applied Chemistry
CHEM 1987 General Applied Chemistry Laboratory
CS 1073 Introduction to Computer Programming I (in Java)
CS 1083 Introduction to Computer Programming II (in Java)
CS 1303 Discrete Structures
CS 2043 Software Engineering I
CS 2263 Systems Software Development
CS 2333 Computability and Formal Languages
CS 2383 Data Structures and Algorithms
CS 2613 Programming Languages Lab
CS 3383 Algorithm Design and Analysis
CS 3413 Operating Systems I
CS 3503 Systems Analysis, Design and Project Management
ECE 1813 Electricity and Magnetism
ECE 2214 Digital Logic Design
ECE 2215 Digital Logic Design Laboratory
ECE 2412 Simulation and Engineering Analysis
or CS 31131 Introduction to Numerical Methods
ECE 2701 Electric Circuits and Electronics (for non-electricals)
ECE 3221 Computer Organization
ECE 3232 Embedded Systems Design
ECE 3242 Computer Architecture
ECE 3812 Data Communications and Networking
or CS 38732 Net-centric Computing
ENGG 1001 Engineering Practice Lecture Series
ENGG 1003 Engineering Technical Communications
ENGG 1015 Introduction to Engineering Design & Problem Solving
ENGG 4013 Law & Ethics for Engineers
INFO 1103 Data and Information Management
MATH 1003 Introduction to Calculus I
MATH 1013 Introduction to Calculus II
MATH 1503 Introduction to Linear Algebra
ME 3232 Engineering Economics or CE 3963 Engineering Economy
PHYS 1081 Foundations of Physics for Engineers
STAT 2593 Probability and Statistics for Engineers
SWE 4040 Software Engineering Design Project or ENGG 40253 Multidisciplinary Design Project
or TME 40253 Product Design and Development
SWE 4103 Software Quality and Project Management
SWE 4203 Software Evolution and Maintenance
SWE 4403 Software Architecture and Design Patterns
- ECE 2412 or CS 3113 may be taken interchangeably but ECE 2412 is a prerequisite for the technical elective ECE 4923.
- CS 3873 is a prerequisite for the technical electives CS 4865 or CS 5865.
- Permission from program coordinator is required to take ENGG 4025 or TME 4025 in lie of SWE 4040.
Basic Science Electives
Core courses in Basic Science include CHEM 1982 and CHEM 1987. A minimum of 8ch of other Basic Science courses must be chosen from Physics, Chemistry, and the life or earth sciences. Students with credit in APSC 1013 and APSC 1023 may drop the basic science minimum to 6 ch.
Each student is required to take 4 technical electives courses (minimum of 14 ch) chosen from the following list. Other senior level courses may be taken subject to approval by the Software Engineering Coordinator.
CS 2053 Introduction to Game Development
CS 2063 Introduction to Mobile Application Development
CS 2545 Data Science for Big Data Analytics
CS 3025 Human-Computer Interaction
CS 3043 Software Engineering II
CS 3613 Programming Languages
CS 4065 Interactive Human-centred Systems
CS 4405 Operating Systems II
CS 4415 Network Security
CS 4545 Big Data Systems
CS 4725 Introduction to Artificial Intelligence
CS 4735 Computer Graphics
CS 4745 Introduction to Parallel Processing
CS 4815 Advanced Computer Architectures
CS 4905 Introduction to Compiler Construction
CS 4935 Advanced Algorithmic Techniques
CS 4998 Open Source Project
CS 5725 Neural Networks
CS 5865 Advanced Data Communications and Networking
ECE 4261 Digital Systems Design
ECE 4433 Safety-Critical System Design
ECE 4823 Communications and Network Engineering
ECE 4913 Independent Project
ECE 4923 Introduction to Biomedical Engineering
ECE 4943 Topics in Computer Engineering
INFO 2403 Information Security
INFO 3103 E-business Software Development
INFO 3303 Enterprise Information Systems
INFO 3403 Information System Administration
SWE 4303 Performance Analysis of Computer Systems
SWE 4913 Independent Project
Complementary Studies Electives
The program requires 9 credit hours (typically three 3 credit hour courses) of Complementary Studies Electives (CSE). The choice of courses is subject to the following restrictions:
- Three credit hours must be a humanities and social sciences course addressing the impact of technology on society. A list of appropriate courses is available from the BScSwE program coordinator.
- At least three additional credit hours must be in the Humanities and Social Sciences (HSS). This includes courses from Classics, Literature, History, Philosophy, Anthropology, Political Science, and Sociology.
- The remaining credit hours may be taken from Administration, Technology Management and Entrepreneurship (TME) or the Humanities and Social Sciences. No more than three credit hours of language courses may be used for credit toward the BScSWE Degree.
Students are encouraged to seek out courses of interest and value to them. Other complementary studies courses may be taken subject to approval by the Software Engineering Coordinator.
Biomedical Engineering Option in Software Engineering
Biomedical engineering is the application of engineering principles in biological systems. This SWE option explores applications of engineering that are well suited for biomedical use. The purpose of the option is to give students experience with biomedical terminology and ways of thinking, such that they are familiar with the topics they would need to learn in an advanced degree or in order to work with health-care providers, biomedical companies, and solve important problems that pertain to our health and well being.
Students may not enroll in the option until they have completed 80 ch, although they are encouraged to integrate appropriate coursework (including prerequisites) into their broader plan. Courses chosen to count towards the option must be approved by the option coordinator. Enrollment in this option will likely result in an extra term; students must ensure coursework schedules.
The option comprises a project-based course in the area of biomedical engineering (described in section A below) along with 20 credit hours from UNB courses described in sections B-C below. Some of these courses taken as part of the option may also be used as technical electives in the SWE program.
Students must complete:
C. The remaining credit hours (16 or 17) must be selected from the following courses. An asterisk denotes highly recommended.
|*||BIOL 2792||Human Physiology||(3ch)|
|*||CS 2545||Data Science for Big Data Analytics||(3ch)|
|*||CS 3025||Human-Computer Interaction||(3ch)|
|*||CS 4065||Imteractive Human-centered Systems||(3ch)|
|*||CS 4725||Introduction to Artificial Intelligence||(4ch)|
|*||ECE 4343||Haptic Robotics||(4ch)|
|*||ECE 4433||Safety Critical Design||(4ch)|
|*||ECE 4553||Intro to Pattern Recognition||(4ch)|
|*||STAT 3373||Elementary Experimental Design||(3ch)|
|*||EE 6913||Advanced Biomedical Instrumentation||(3ch)|
|BIOL 1719||Human Anatomy||(4ch)|
|BIOL 3031||Cell Signaling||(3ch)|
|BIOL 4533||Bioinformatics: Computational Analysis of Genes and Genomes||(4ch)|
|CS 3003||Biocomputing in Drug Design||(5ch)|
|CS 4545||Big Data Systems||(4ch)|
|ECE 3111||Electronics I||(4ch)|
|ECE 3122||Electronics II||(4ch)|
|ECE 3312||Systems and Controls||(4ch)|
|ECE 4133||Instrumentation design||(4ch)|
|ECE 4531||DSP 1||(4ch)|
|ECE 4523||Communication Systems||(4ch)|
|KIN 2062||Intro. To Biomechanics||(3ch)|
|KIN 2072||Introduction to Motor Control and Learning||(3ch)|
|KIN 3042||Disability Awareness||(3ch)|
|KIN 3061||Advanced Biomechanics||(4ch)|
|KIN 3081||Physiological Basis for Physical Activity||(3ch)|
|KIN 3161||Human Factors in Ergonomic Design||(3ch)|
|KIN 3252||Functional Home Anatomy||(4ch)|
|KIN 3282||Physical Activity, Health and Wellness||(3ch)|
|KIN 4041||Movement Disorders||(3ch)|
|KIN 4063||Biomedical Instrumentation and Data Acquisition||(3ch)|
|KIN 4072||Neural Control of Human Movement||(3ch)|
|KIN 4161||Occupational Biomechanics||(3ch)|
|KIN 4162||Occupational Health and Safety Ergonomics||(3ch)|
|KIN 4163||Workplace Ergonomic Design and Analysis||(3ch)|
|KIN 4281||Measurement and Evaluation in Exercise Science||(4ch)|
|KIN 4165||Occupational Physiology||(3ch)|
|PHYS 5993||Magnetic resonance Imaging||(3ch)|
|STAT 5293||Applied Statistics||(3ch)|
Software Engineering (BScSwE) Entrance Program
- High School students who do not meet the admission requirements noted in the Admission Chart for direct entry to the BScSwE program but have a minimum admission average of 70% may be considered for full time admission to an Entrance Program to the extent that capacity allows.
- Students enrolled in the BScSwE Entrance program are restricted to a maximum of 32 ch in the first year of studies. This is a prescribed set of courses as determined by the Faculty.
- Students are required to meet with their Faculty Advisor on a semi-annual basis.
- Students who successfully complete their first year with a minimum GPA of 2.0, regardless of the total number of credit hours completed, and other conditions as may be outlined for the program, will be approved for admission to the BScSwE program for the upcoming academic year.
- Students who do not succeed in completing the program requirements may not be permitted to continue in the BScSwE Entrance program nor enter the BScSwE degree program.
- Students can only register in the BScSwE Entrance program once.