{"id":1767,"date":"2022-03-11T19:46:55","date_gmt":"2022-03-11T19:46:55","guid":{"rendered":"https:\/\/lassonde.yorku.ca\/eecs\/?post_type=academics&#038;p=1767"},"modified":"2024-01-31T18:29:19","modified_gmt":"2024-01-31T18:29:19","slug":"software-engineering-beng","status":"publish","type":"academics","link":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/","title":{"rendered":"Software Engineering (BEng)"},"content":{"rendered":"\n<div class=\"wp-block-cgb-text-with-video-modal-block container\">\n    <div class=\"row text-with-video-row \">\n        <div class=\"column-small-12 column-medium-6 column-large-5 text-with-video-content-wrapper\">\n                            <h2 class=\"h1\">About the Program<\/h2>\n            \n                            <p>Software is used to control many aspects of the modern world, ranging from medical devices, nuclear power plants and airlines to Google and Amazon. Software engineering makes these complex systems possible, safe and reliable.<\/p>\n<p>Lassonde\u2019s Software Engineering program prepares you for a career using state-of-the-art computing labs, a full suite of software development tools, and hands-on experience in the design and development of software products. You\u2019ll find your knowledge and skills to be valuable in systems at all scales and applications, from lightweight embedded Internet-of-things devices to massive data centres.<\/p>\n<p>In a capstone project, you work with a team to design, test and deploy a significant and exciting product using all the knowledge and skills you have gained.<\/p>\n            \n                    <\/div>\n\n        <div class=\"column-small-12 column-medium-6 column-large-offset-1 relative\">\n            <div class=\"text-with-video-image-wrapper\">\n                <div class=\"relative\">\n                                            <img decoding=\"async\" style=\"background: center \/ cover url('https:\/\/lassonde.yorku.ca\/eecs\/wp-content\/uploads\/sites\/6\/2022\/01\/Small_computer-science-college-student-2021-09-04-12-08-13-utc-150x150.jpg') no-repeat\"\n                             src=\"https:\/\/lassonde.yorku.ca\/eecs\/wp-content\/uploads\/sites\/6\/2022\/01\/Small_computer-science-college-student-2021-09-04-12-08-13-utc.jpg\"\n                             alt=\"Student looking at laptop\"\n                             class=\"text-with-video-image\"\n                             loading=\"lazy\"\n                             width=\"975\"\n                             height=\"1060\">\n                    \n                                    <\/div>\n            <\/div>\n\n            <span class=\"icon-Collab_sr text-with-video-icon\"><\/span>\n        <\/div>\n    <\/div>\n\n    <\/div>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-itemu002du002dsmall accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Program Requirements<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            A minimum of 30 course credits and at least half (50 percent) of the course credits required in each undergraduate degree program major\/minor must be taken at York University.<br><br>Most 2000-, 3000-, and 4000-level EECS courses require the following general (that is, common) prerequisite, in addition to other course-specific prerequisites: a cumulative grade point average of 4.50 or better over all completed major EECS courses.<br><br>For requirements by degree, visit <a href=\"https:\/\/calendars.students.yorku.ca\/\" target=\"_blank\" rel=\"noreferrer noopener\">York&#8217;s academic calendar.<\/a><br>        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Degree Checklists<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <a href=\"https:\/\/lassonde.yorku.ca\/student-life\/academic-support\" target=\"_blank\" rel=\"noreferrer noopener\">Degree Checklists<\/a>\u00a0are a complete listing of all program-specific courses required for successful graduation.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Skills you'll gain<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            \u2022 Computing foundations including assembly languages, C, Java and MATLAB, used in a variety of domains such as app development, robotics and 3D graphics<br><br>\u2022 Linux system programming, shell scripting, shared memory and operating systems<br><br>\u2022 Embedded systems and digital logic design including interfacing and actuation of electrical and mechanical peripherals<br><br>\u2022 Software design including design patterns, unit\/acceptance testing and design by contract<br><br>\u2022 Strong foundation in logic and its application to the specification and design of mission-critical systems<br><br>\u2022 Analysis, design and optimization of hardware and software        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Co-op Employers<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            \u2022 IBM<br><br>\u2022 Ericsson<br><br>\u2022 BMO<br><br>\u2022 Nascent<br><br>\u2022 Ontario Ministry of Health and Long-Term Care<br><br>\u2022 Loyalty One<br><br>\u2022 Teledyne<br><br>\u2022 Telus        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Sample Courses (Ordinary Stream)<\/h2>\n\n\n\n<p id=\"margin-b-xs\"><strong><em>For information on course requirements for other streams, refer to degree checklists above)<\/em><\/strong><\/p>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center margin-b-xs has-text-color\" style=\"color:#993366\">First Year<\/h2>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"wp-block-heading has-text-align-center\">Fall<\/h3>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Computational Thinking Through Mechatronics<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 1101, 3 Credits<br><\/strong><br>The Objectives of 1011 are threefold: providing a first exposure to procedural programming, teaching students a set of soft computing skills\u00a0(such as reasoning about algorithms, tracing programs, test-driven development), and demonstrating how\u00a0computers are used in a variety of engineering disciplines. It uses problem-based pedagogy to expose the\u00a0underlying concepts and an experiential laboratory to implement them. An integrated computing environment (such as MATLAB) is used so that students can pick up key programming concepts(such as\u00a0variables and control flow) without being exposed to complex or abstract constructs. The problems are\u00a0chosen with consultation with the various engineering disciplines in the Faculty with a view of exposing\u00a0how computing is used in these disciplines. Two hours per week for instructor\u0092s lectures and three hours\u00a0per week for lab work and tutorials. Prerequisites: None. Course credit exclusions: LE\/EECS1541 3.00.<br>        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Discrete Mathematics for Engineers<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>MATH 1028, 3 Credits<\/strong><br><br>An introduction to propositional logic and application to switching circuits; sets, relations and functions; predicate logic and proof techniques; induction with applications to program correctness; basic counting techniques with applications; graphs and trees with applications in circuit analysis, information storage and retrieval, Huffman coding; automata and applications in software engineering. Prerequisites: MHF4U (Advanced Function) and MCV4U (Calculus and Vectors). Course Credit exclusions: LE\/CSE 1019 3.00 (prior to Fall 2014), LE\/EECS 1019 3.00, SC\/CSE 1019 3.00 (prior to Summer 2013), SC\/MATH 1019 3.00, SC\/MATH 2320 3.00.<br>        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Applied Calculus 1<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>MATH 1013, 3 Credits<\/strong><br><br>Introduction to the theory and applications of both differential and\u00a0integral calculus. Limits. Derivatives of algebraic and trigonometric functions. Riemann sums, definite\u00a0integrals and the Fundamental Theorem of Calculus. Logarithms and exponentials, Extreme value\u00a0problems, Related rates, Areas and Volumes. Prerequisite: SC\/MATH 1515 3.00 or SC\/MATH 1520 3.00, or\u00a0a high school calculus course. Course credit exclusions: SC\/MATH 1000 3.00, SC\/MATH 1300 3.00,\u00a0SC\/MATH 1505 6.00, SC\/MATH 1513 6.00, SC\/MATH 1530 3.00, SC\/MATH 1550 6.00, GL\/MATH\/MODR\u00a01930 3.00, AP\/ECON 1530 3.00. Prior to Fall 2009: Prerequisite: AS\/SC\/MATH 1515 3.00 or AS\/SC\/MATH\u00a01520 3.00, or a high school calculus course. Course credit exclusions: AS\/SC\/MATH 1000 3.00,\u00a0AK\/AS\/SC\/MATH 1300 3.00, AS\/SC\/MATH 1505 6.00, AS\/SC\/MATH 1513 6.00, AS\/MATH 1530 3.00,\u00a0AK\/AS\/MATH 1550 6.00, GL\/MATH\/MODR 1930 3.00, AS\/ECON 1530 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Applied Linear Algebra<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>MATH 1025, 3 Credits<br><\/strong><br>Topics include spherical and cylindrical coordinates in Euclidean 3-space, general matrix algebra, determinants, vector space concepts for Euclidean n-space (e.g. linear\u00a0dependence and independence, basis, dimension, linear transformations etc.), an introduction to\u00a0eigenvalues and eigenvectors. Prerequisites: One 12U or OAC mathematics course or equivalent. Course\u00a0credit exclusions: SC\/MATH 1021 3.00, SC\/MATH 2021 3.00, SC\/MATH 2221 3.00, GL\/MATH\/MODR 26503.00. Prior to Fall 2009: Course credit exclusions: AK\/AS\/SC\/MATH 1021 3.00, AS\/SC\/MATH 2021 3.00,\u00a0AK\/AS\/SC\/MATH 2221 3.00, GL\/MATH\/MODR 2650 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Engineering Mechanics<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>PHYS 1800, 3 Credits<br><\/strong><br>Survey of the fundamental concepts of statics and dynamics with\u00a0an emphasis on engineering applications. This is a calculus-based course intended primarily for\u00a0engineering students. It includes tutorial and laboratory components. Three lecture hours per week; Two\u00a0laboratory hours per week (for a total of Nine sessions); One tutorial hour per week. One term. Three\u00a0credits. Prerequisites: 12U Physics or OAC Physics or SC\/PHYS 1510 4.00. MHF4U Advanced Functions and\u00a0MCV4U Calculus and Vectors, or 12U Advanced Functions and Introductory Calculus, or OAC Algebra and\u00a0OAC Calculus. Corequisites: SC\/MATH 1013 3.00 or SC\/MATH 1300 3.00 or SC\/MATH 1505 6.00. Course\u00a0Credit Exclusions: SC\/PHYS 1010 6.00, SC\/PHYS 1410 6.00, SC\/PHYS 1420 6.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Renaissance Engineer 1: Ethics, Communication and Problem Solving<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>ENG 1101, 4 Credits<br><\/strong><br>Who is an engineer\u00a0and what are his\/her ethical and academic integrity obligations; communications strategies for technical\u00a0subjects in oral and written forms; dealing with ambiguity, uncertainties, and open-ended problems in a\u00a0technical context, problem definition strategies. 4 hours per week lectures and 1 hour per week tutorial\u00a0session.        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"wp-block-heading has-text-align-center\">Winter<\/h3>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Chemistry and Materials Science for Engineers<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>CHEM 1100, 4 Credits<\/strong><br><br>The course is designed for Engineering\u00a0students interested in refreshing and expanding their general chemistry knowledge while exploring the\u00a0relationship between the structure of matter, properties and processing. This course will focus mainly on\u00a0covering important introductory concepts to understand solution chemistry including reactivity,\u00a0thermochemistry, structure and properties of materials. The course is divided into six sections. The first\u00a0section covers an introduction to the topic of Materials Science and its impact on our daily lives as well as\u00a0future trends and reviews key chemistry concepts required for this course. The second section will present the states of matter (gas, liquid and solid), their physical characteristics and the forces holding materials\u00a0together (bonding and intermolecular forces). The third section will expend on the liquid phase and\u00a0properties of solutions including equilibrium, solubility, pH and pKa. The fourth section will deal with\u00a0thermochemistry and its first law with an emphasis on enthalpy as well as phase changes and phase\u00a0diagrams. Section six will present an introduction to the properties of solids (electronic and mechanical)\u00a0and criteria in the selection of materials will also be discussed. Section seven will present in more detail\u00a0structure-properties and processing of soft materials (natural and artificial polymer) in the context of the\u00a0material covered in the other sections. Four lecture hours per week, one tutorial hour per week, and\u00a0three hours of laboratory or active learning exercises every other week. One term. Four credits.\u00a0Prerequisites: 12U chemistry or equivalent. Course credit exclusion: SC\/CHEM 1000 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Object Oriented Programming from Sensors to Actuators<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 1021, 3 Credits<\/strong><br><br>The objective of 1021 is to\u00a0introduce computational thinking \u2013 a process-based approach to problem-solving. It uses a problem-based\u00a0pedagogy to expose the underlying concepts and an experiential laboratory to implement them. The\u00a0programming language is chosen so that it is widely used in a variety of applications, is object-oriented,\u00a0and is of industrial strength (Java is an example of such a language). The problems are chosen in order to\u00a0expose abstract programming concepts by immersing them in relevant and engaging applications. The\u00a0experiential laboratory is based on sensors and actuators that connect to a computer. The problems are\u00a0chosen with consultation with the various engineering disciplines in the Faculty with a view of exposing\u00a0how computing is used in these disciplines. Two hours per week lectures and three hours per week for lab\u00a0work and tutorials. Prerequisites: LE\/EECS1011 3.00. Course credit exclusions: LE\/EECS 1022 3.00,\u00a0LE\/EECS1020 3.00, LE\/CSE 1020 3.00, AK\/AS\/SC\/CSE 1020 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Applied Calculus 2<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>MATH 1014, 3 Credits<\/strong><br><br>Calculus in Polar Coordinates. Techniques of Integration. Indeterminate\u00a0Forms. Improper Integrals. Sequences, infinite series and power series. Approximations. Introduction to\u00a0ordinary differential equations. Prerequisite(s): One of SC\/MATH 1000 3.00, SC\/MATH 1013 3.00,\u00a0SC\/MATH 1300 3.00, or SC\/MATH 1513 6.00; for non-science students only, six credits from SC\/MATH\u00a01530 3.00 and SC\/MATH 1540 3.00, SC\/MATH 1550 6.00, AP\/ECON 1530 3.00 and AP\/ECON 1540 3.00.\u00a0Course credit exclusions: SC\/MATH 1010 3.00, SC\/MATH 1310 3.00, SC\/MATH 1505 6.00,\u00a0GL\/MATH\/MODR 1940 3.00. Prior to Fall 2009: Prerequisite(s): One of AS\/SC\/MATH 1000 3.00,\u00a0AS\/SC\/MATH 1013 3.00, AK\/AS\/SC\/MATH 1300 3.00, or AS\/SC\/MATH 1513 6.00; for non-science students\u00a0only, six credits from AS\/MATH 1530 3.00 and AS\/MATH 1540 3.00, AK\/AS\/MATH 1550 6.00, AS\/ECON\u00a01530 3.00 and AS\/ECON 1540 3.00. Course credit exclusions: AS\/SC\/MATH 1010 3.00, AK\/AS\/SC\/MATH\u00a01310 3.00, AS\/SC\/MATH 1505 6.00, GL\/MATH\/MODR 1940 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Electricity, Magnetism and Optics for Engineers<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>MATH 1013, 3 Credits<\/strong><br><br>A survey of physics in which fundamental\u00a0concepts in electricity, magnetism and optics are emphasized through engineering applications. This is a\u00a0calculus-based course intended primarily for engineering students. It includes tutorial and laboratory\u00a0components. Three lecture hours per week. Two laboratory hours per week (for a total of 9 sessions). One\u00a0tutorial hour per week. One term. Three credits. Prerequisites: SC\/PHYS 1800 3.00. Course Credit\u00a0Exclusions: SC\/PHYS 1010 6.00, SC\/PHYS 1410 6.00, SC\/PHYS 1420 6.00        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Renaissance Engineer 2 Engineering Design Principles<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>ENG 1102, 4 Credits<\/strong><br><br>This course will cover engineering\u00a0design methodology; features and elements of good design with environment and human interface\u00a0considerations; aesthetics in design and idea communication using graphics and technical drawings.\u00a0Lectures: 4 hours per week for 12 weeks. Tutorials: 1 hour per week for 12 weeks Pre-req.: LE ENG 1101\u00a04.0.        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n<\/div>\n<\/div>\n\n\n\n<div style=\"height:170px\" aria-hidden=\"true\" id=\"second-year\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center margin-b-xs has-text-color\" style=\"color:#993366\">Second Year<\/h2>\n\n\n\n<div class=\"wp-block-columns margin-b-md is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"wp-block-heading has-text-align-center\">Fall<\/h3>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Introduction to Logic for Computer Science<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>MATH 1090, 3 Credits<\/strong><br><br>The syntax and semantics of propositional and predicate logic. Applications to program specification and verification. Optional topics include set theory and induction using the formal logical language of the first part of the course. Prerequisite: SC\/MATH 1190 3.00 or SC\/MATH 1019 3.00. Course credit exclusion: SC\/MATH 4290 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Fundamentals of Data Structures<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 2011, 3 Credits<br><\/strong><br>A study of fundamental data structures and their use in the efficient implementation of algorithms. Topics include abstract data types, lists, stacks, queues, trees and graphs. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;), LE\/EECS 1030 3.00 or LE\/EECS 2030 3.00, LE\/EECS 1028 3.00 OR SC\/MATH 1028 3.00 or LE\/EECS 1019 3.00 or SC\/MATH 1019 3.00. Previously offered as: LE\/CSE 2011 3.00. The course discusses the fundamental data structures commonly used in the design of algorithms. Abstract operations on data structures are specified using pre and post conditions and\/or system invariants. Trade-offs between a number of different implementations of each abstract data types (ADT) are analyzed. Each algorithm operating on data structures is proved correct using loop invariants or induction. Both formal and informal proofs are introduced though most of the reasoning is done informally. Data structures are coded and unit tested in an object-oriented language. Selecting the appropriate ADT and a suitable implementation depending on the application is covered. Prerequisites: EECS1019 or EECS1028, EECS1030 or 2030, MATHS1090        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Computer Organization<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 2021, 4 Credits<br><\/strong><br>Introduction to computer organization and instruction set architecture, covering assembly language, machine language and encoding, addressing modes, single\/multicycle datapaths (including functional units and controls), pipelining, memory segments and memory hierarchy. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 1021 3.00 or LE\/EECS 1022 3.00 or LE\/EECS 1720 3.00 or LE\/EECS 1030 3.00. Previously offered as: LE\/CSE 2021 4.00, SC\/CSE 2021 4.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Advanced Object Oriented Programming<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 2030, 3 Credits<br><\/strong><br>This course continues the separation of concern theme introduced in LE\/EECS 1020 3.00 and LE\/EECS1021 3.00. While 1020 and 1021 focuses on the client concern, this course focuses on the concern of the implementer. Hence, rather than using an API (Application Programming Interface) to build an application, the student is asked to implement a given API. Topics include implementing classes (non-utilities, delegation within the class definition, documentation and API generation, implementing contracts), aggregations (implementing aggregates versus compositions and implementing collections), inheritance hierarchies (attribute visibility, overriding methods, abstract classes versus interfaces, inner classes); applications of aggregation and inheritance in concurrent programming and event-driven programming; recursion; searching and sorting including quick and merge sorts); stacks and queues; linked lists; binary trees. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS1021 3.00 or LE\/EECS 1020 (prior to Fall 2015) 3.00 or LE\/EECS1022 3.00 or LE\/EECS 1720 3.00. Course credit exclusions: AP\/ITEC 2620 3.00. Previously offered as: LE\/EECS1030 3.00, LE\/CSE 1030 3.00.<br>        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Introduction to Embedded Systems<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 2032, 4 Credits<br><\/strong><br>This course introduces students to embedded systems. The students will learn basic features of embedded system architecture, as well as how to design, implement, and test programs for embedded systems. Topics include microcontrollers architectures, peripherals and communication protocols, interfacing, program development, and testing. Prerequisites: General Prerequisite: Cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;), LE\/EECS 1021 3.00 , or LE\/EECS 1022 3.00, and LE\/EECS 2021 4.00. Course Credit Exclusion LE\/EECS 2031 3.00, LE\/EECS 3215 4.00, LE\/CSE 3215 4.00. Co-requisites: LE\/EECS 2030 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Electrical Circuits<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 2200\u00a0, 3 Credits<\/strong><br><br>This course covers the basic principles of linear circuits. Kirchhoff&#8217;s laws, circuit equations, RL, RC, and RLC circuits, three-phase circuits, power analysis and power factor, and magnetically coupled circuits. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit&#8221;&#8221;5&#8243;), SC\/PHYS 1010 6.00 or SC\/PHYS 1801 3.00. Course credit exclusions: SC\/PHYS 3050 3.00.        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"wp-block-heading has-text-align-center\">Winter<\/h3>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Software Development Project<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 2311, 3 Credits<\/strong><br><br>This course allows students to develop a significant piece of software utilizing all the skills they have acquired so far. This includes requirement elicitation, system specification, implementation, testing, deployment, and user documentation. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 1030 3.00 or LE\/EECS 2030 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Engineering Projects: Management, Economics and Safety<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>ENG 2001, 3 Credits<br><\/strong><br>Introduction to management,\u00a0economics and safety as they relate to engineering projects, including the following. Project management:\u00a0work breakdown structures, Gantt charts, logic diagrams and change management. Engineering\u00a0economics: time value of money, comparison methods, rates of return. Workplace safety. Group design\u00a0projects. Weekly tutorial. Prerequisites: LE\/ENG 1101 4.00 or LE\/ENG 1000 6.0.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Effective Engineering Communication<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>ENG 2003, 3 Credits<\/strong><br><br>Students learn to effectively employ communication\u00a0strategies essential to a successful engineering career, including the social, rhetorical, ethical, and\u00a0practical aspects of professional communications. The focus is on building individuals&#8217; confidence and\u00a0judgment through communications assignments based on case studies. Two lecture hours per week. Two\u00a0laboratory hours per week. Prerequisites: LE\/ENG 1101 4.0.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Applied Multivariate and Vector Calculus<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong><strong>MATH 2015, 3 Credits<\/strong><\/strong><br><br>Topics covered include partial derivatives; grad, div, curl and Laplacian operators; line and surface integrals; theorems of Gauss and Stokes; double and triple integrals in various coordinate systems; extrema and Taylor series for multivariate functions. Prerequisite: One of SC\/MATH 1010 3.00, SC\/MATH 1014 3.00, SC\/MATH 1310 3.00; or SC\/MATH 1505 6.00 plus permission of the course coordinator. Course credit exclusions: SC\/MATH 2010 3.00, SC\/MATH 2310 3.00, GL\/MATH 2670 3.00, GL\/MODR 2670 3.00, GL\/MATH 3200 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Introductory Probability and Statistics<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>CIVL 2390, 3 Credits<\/strong><br><br>This is an applied probability and statistics course for engineering students. The aim is to provide an application-oriented introduction to probability and statistics. The examples will be from a wide selection of engineering disciplines. The probability component is about 30% of the lectures. About 40% of the time, the lectures and tutorials focus on solving practical statistical problems that emerge from engineering problems. Prerequisites: SC\/MATH 1014 3.00 or equivalent; SC\/MATH 1025 3.00 or equivalent; LE\/EECS 1011 3.00 or equivalent. Course credit exclusions: SC\/MATH 1131 3.00; SC\/MATH 2560 3.00; SC\/MATH 2570 3.00; SC\/MATH 2565 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Electricity and Magnetism<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>PHYS 2020, 3 Credits<\/strong><br><br>The elements of electric and magnetic fields are developed together with DC and AC circuit theory. Prerequisites: SC\/PHYS 1010 6.00, or SC\/PHYS 1800 3.00 and SC\/PHYS 1801 3.00, or SC\/ISCI 1310 6.00, or a minimum grade of C in SC\/PHYS 1410 6.00 or SC\/PHYS 1420 6.00. Corequisite: SC\/MATH 2015 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Experimental Electromagnetism<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>PHYS 2211, 1 Credit<\/strong><br><br>An introductory laboratory course for second-year students. The course consists of 10 experiments covering basic concepts of electromagnetism. Normally three laboratory hours per week. One term. One credit. Prerequisite: SC\/PHYS 1010 6.00, or SC\/PHYS 1800 3.00 and SC\/PHYS 1801 3.00, or SC\/ISCI 1310 6.0 or a minimum grade of C in SC\/PHYS 1410 6.00 or SC\/PHYS 1420 6.00. Corequisite(s): SC\/PHYS 2020 3.00. Course credit exclusion: SC\/PHYS 2213 3.00<br>        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n<\/div>\n<\/div>\n\n\n\n<div style=\"height:170px\" aria-hidden=\"true\" id=\"third-year\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center margin-b-xs has-text-color\" style=\"color:#993366\">Third Year<\/h2>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"wp-block-heading has-text-align-center\">Fall<\/h3>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Design and Analysis of Algorithms<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 3101, 3 Credits<br><\/strong><br>Review of fundamental data structures. Analysis of algorithms: time and space complexity. Algorithm design paradigms: divide-and-conquer, exploring graphs, greedy methods, local search, dynamic programming, probabilistic algorithms, computational geometry. NP-complete problems. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2011 3.00; SC\/MATH 1090 3.00; SC\/MATH 1310 3.00. Course credit exclusion: LE\/SC CSE 3101 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Digital Logic Design<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 3201, 4 Credits<\/strong><br><strong><br><\/strong>Theory, analysis, and design of logic circuits used in digital systems. Students will be introduced to the design of switching circuits to implement logic gates, digital number representation and arithmetic circuits. They will learn how to use logic gates to construct combinational and sequential logic circuits and functional blocks. The course and the laboratory introduce the students to hardware description language and modern cad tools. Prerequisites: Cumulative GPA of 4.50 or better over all major EECS courses.(without second digit of &#8216;5 ) LE\/EECS 1021 3.00 or LE\/EECS 1022 3.00; SC\/PHYS 1012 or SC\/PHYS 1412 or SC\/PHYS 1422 or SC\/PHYS 1801 3.0 or SC\/PHYS 1010        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Operating System Fundamentals<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 3221, 3 Credits<\/strong><br><br>Principles of operating systems. Concurrent processes, CPU scheduling, deadlocks, memory management, file systems, protection and security, and case studies. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2030 3.00 or LE\/EECS 1030 3.00; LE\/EECS 2021 4.00 and LE\/EECS 2031 3.00 or LE\/EECS 2032 4.00. Course Credit Exclusion: LE\/CSE 3221 3.00        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Software Design<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 3311, 3 Credits<br><\/strong><br>A study of design methods and their use in the correct implementation, maintenance and evolution of software systems. Topics include design, implementation, testing, documentation needs and standards, support tools. Students design and implement components of a software system. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2030 3.00 or LE\/EECS 1030 3.00; LE\/EECS 2011 3.00; SC\/MATH 1090 3.00; LE\/EECS 2031 3.00 or LE\/EECS 2032 4.00. Course Credit Exclusions: LE\/CSE 3311 3.00        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"wp-block-heading has-text-align-center\">Winter<\/h3>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Signals and Systems<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 3451, 3 Credits<br><\/strong><br>An introduction to the mathematical background in signals and systems; signal and image processing: sampling, discrete Fourier transform, filtering; linear system theory; Kalman filtering; feedback. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2021 4.00, SC\/MATH 1310 3.00. Course credit exclusions: SC\/MATH 4130B 3.00, SC\/PHYS 4060 3.00. Previously offered as LE\/CSE 3451 4.00. PRIOR TO FALL 2014: course credit exclusions: SC\/MATH 4830 3.00. PRIOR TO SUMMER 2013: course credit exclusions: SC\/CSE 3451 4.00, SC\/EATS 4020 3.00.<br>        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">System Specification and Refinement<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 3342, 3 Credits<\/strong><br><br>Theory and tools for specifying computer systems (sequential, concurrent and embedded). Specification (via set theory and predicate logic), modelling, abstraction, refinement and formal reasoning are undertaken before code development so that systems are correct by construction under the stated assumptions. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2030 3.00 or LE\/EECS 1030 3.00; LE\/EECS 2011 3.00; SC\/MATH 1090 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Professional Engineering Practice<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>ENG 3000, 3 Credits<\/strong><br><br>An introduction to the legal and ethical frameworks of the engineering profession, preparing students for the Professional Practice Examination required for certification as a professional engineer. Also covered are associated professional issues such as entrepreneurship, intellectual property and patents. Prerequisites: LE\/ENG 2001 3.00. Course credit exclusions: LE\/EECS 3000 3.00        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center my-4 has-text-color\" style=\"color:#993366\">One of the following<\/h2>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Introduction to Applied Ethics<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>ESSE 2210, 3 Credits<br><\/strong><br>This course surveys a variety of Canadian case studies in environmental sustainability from an engineering perspective. The goal of this course is to provide students with exposure to the social aspects of large infrastructure projects, including the environmental assessment and stakeholder consultation processes. Climate change mitigation and adaptation are strong themes of this course.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">The Global Information Society<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>ENVS 2150 3.00<\/strong><br><br>Examines current national information societies and their possible transformation into a global information society by analyzing the interplay between the causes for the globalization of information and communication technologies, as well as the societal impact of these technologies.        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n<\/div>\n<\/div>\n\n\n\n<div style=\"height:66px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-text-color\" style=\"color:#993366\">At least 3 additional credits from<\/h2>\n\n\n\n<p class=\"has-text-align-center\">SC\/BIOL 1000 3.00, SC\/BIOL 1001 3.00, SC\/CHEM 1001 3.00, SC\/CHEM<br>2011 3.00, LE\/ESSE 1011 3.00, LE\/ESSE 1012 3.00, SC\/PHYS 1070 3.00,<br>SC\/PHYS 1470 3.00, SC\/PHYS 2010 3.00, SC\/PHYS 2040 3.00, SC\/PHYS<br>2060 3.00, HH\/IHST 1001 3.00, HH\/IHST 1002 3.00<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-text-color\" style=\"color:#993366\">Complementary Studies (9 credits)<\/h2>\n\n\n\n<div style=\"height:170px\" aria-hidden=\"true\" id=\"fourth-year\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center margin-b-xs has-text-color\" style=\"color:#993366\">Fourth Year<\/h2>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"wp-block-heading has-text-align-center\">Fall<\/h3>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Digital Systems Engineering: Modeling, Implementation and Validation<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 3216, 3 Credits<\/strong><br><br>This is a project intensive course to introduce students to modeling, implementation, testing, and validation of hardware-based embedded systems. The emphasis in this course is on complex digital systems that interact with physical systems. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;), LE\/EECS 2032 4.00, or LE\/EECS 2031 3.00, and LE\/EECS 3201 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Software Engineering Requirements<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 4312, 3 Credits<\/strong><br><br>This course deals with the elicitation, specification and analysis of software requirements and provides a critical description of available methods and tools and practical exercises on applying these methods and tools to realistic problems. Three lecture hours per week. One laboratory hour per week. One term. Three credits. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2030 3.00 or LE\/EECS 1030 3.00; LE\/EECS 3311 3.00. Course credit exclusions: LE\/CSE 4312 3.00, AK\/AS\/SC\/CSE 4312 3.00.<br>        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Software Engineering Testing<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 4313, 3 Credits<\/strong><br><br>An introduction to systematic methods of testing and verification, covering a range of static and dynamic techniques and their use within the development process; emphasizes the view that design should be carried out with verification in mind to achieve overall project goals. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2030 3.00 or LE\/EECS1030 3.00; LE\/EECS 3311 3.00. Previously offered as: LE\/CSE 4313 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Advanced Software Engineering<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 4314, 3 Credits<br><\/strong><br>Advanced software engineering methods, processes and measurements (from requirements through to system evolution) for managing and delivering reliable software on time and within budget. Understanding the different types of systems and their associated technical, ethical and professional issues. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2030 3.00 or LE\/EECS 1030 3.00; LE\/EECS 3311 3.00.        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"wp-block-heading has-text-align-center\">Winter<\/h3>\n\n\n\n<div class=\"wp-block-cgb-accordion-block\">\n    <div class=\"accordion js-accordion\">\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Mission-Critical Systems<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 4315, 3 Credits<\/strong><br><br>Theory and practical tools underlying deductive and algorithmic methods for ensuring the safety and correctness of mission critical systems (e.g. medical systems, nuclear reactors and train systems) with the practical ability to use verification tools to perform software certification. Prerequisites: cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2030 3.00 or LE\/EECS 1030 3.00; LE\/EECS 3342 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Building E-Commerce Systems<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>EECS 4413, 3 Credits<\/strong><br><br>A study of the technical infrastructure that underlies Electronic Commerce on the Internet. The foundational concepts are presented through a series of projects that use an industrial-strength framework on the server side, standard-compliant technologies on the client side, and a variety of messaging protocols on the network side. Best practices, security concerns, and performance issues are emphasized throughout. Prerequisite: Cumulative GPA of 4.50 or better over all major EECS courses (without second digit &#8220;5&#8221;); LE\/EECS 2030 3.00 or LE\/EECS 1030 3.00. Previously offered as: LE\/CSE 4413 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Introduction to Control Systems<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>ENG 4550, 3 Credits<\/strong><br><br>This course provides an introduction to classical control theory. From a base of dynamic system modeling the course will develop methods for modifying system behaviour through feedback so as to produce desired performance and meet specifications in spite of disturbances and modeling errors. Students are expected to be versed in Linear Algebra, Ordinary Differential Equations, and Complex Variables. Signals and Systems would also be a definite asset. Prerequisites: SC\/MATH 2015 3.00.        <\/div>\n    <\/div>\n\n\n\n<div class=\"wp-block-cgb-accordion-item-block accordion-item js-accordion-item accordion-item--small\">        <button type=\"button\" class=\"accordion-title js-accordion-title\">Engineering Project (Capstone)<\/button>\n\n        <div class=\"accordion-body js-accordion-body\">\n            <strong>ENG 4000, 6 Credits<\/strong><br><br>The project will include significant elements of design and implementation. The format is intended to resemble engineering projects in practice, including specifications, background research, innovative solutions, analysis, testing and communication. 2 terms. Prerequisite(s): 21 3000-level science or engineering credits in the Engineering Program, exclusive of LE\/ENG 3000 3.00. Prerequisite or corequisite: LE\/ENG 3000 3.00. Course credit exclusions: CIVL4000 , ESSE4000.        <\/div>\n    <\/div>\n<\/div>\n    <script>\n    require([\n        'kindling',\n        'kindling\/plugins\/accordion'\n    ], function (K) {\n        new K.Accordion($('.js-accordion'), {allowAllClosed: true, multiExpand: true});\n    });\n    <\/script>\n\n    <\/div>\n<\/div>\n<\/div>\n\n\n\n<div style=\"height:66px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center has-text-color\" style=\"color:#993366\">Plus 9 additional credits from computer science courses at the 3000<br>and 4000 level. At least 6 of these credits must be from the following<br>list:<\/h2>\n\n\n\n<p class=\"has-text-align-center\">LE\/EECS 3214 3.00, LE\/EECS 3421 3.00, LE\/EECS 3461 3.00, LE\/EECS<br>3481 3.00, LE\/EECS 3482 3.00, LE\/EECS 4214 3.00, LE\/EECS 4215 3.00,<br>LE\/EECS 4411 3.00, LE\/EECS 4412 3.00, LE\/EECS 4441 3.00, LE\/EECS<br>4481 4.00, LE\/EECS 4482 3.00, LE\/EECS 4404 3.00<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sample Courses (Ordinary Stream) For information on course requirements for other streams, refer to degree checklists above) First Year Fall Winter Second Year Fall Winter Third Year Fall Winter One of the following At least 3 additional credits from SC\/BIOL 1000 3.00, SC\/BIOL 1001 3.00, SC\/CHEM 1001 3.00, SC\/CHEM2011 3.00, LE\/ESSE 1011 3.00, LE\/ESSE 1012&#8230;<\/p>\n","protected":false},"author":90,"featured_media":10000030520,"parent":602,"menu_order":0,"template":"","format":"standard","meta":{"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"692","_relevanssi_noindex_reason":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[],"tags":[],"class_list":["post-1767","academics","type-academics","status-publish","format-standard","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Software Engineering (BEng) | Electrical Engineering and Computer Science<\/title>\n<meta name=\"description\" content=\"Software is used to control many aspects of the modern world, ranging from medical devices, nuclear power plants and airlines to Google and Amazon.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Software Engineering (BEng) | Electrical Engineering and Computer Science\" \/>\n<meta property=\"og:description\" content=\"Software is used to control many aspects of the modern world, ranging from medical devices, nuclear power plants and airlines to Google and Amazon.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/\" \/>\n<meta property=\"og:site_name\" content=\"Electrical Engineering and Computer Science\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-31T18:29:19+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"20 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/\",\"url\":\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/\",\"name\":\"Software Engineering (BEng) | Electrical Engineering and Computer Science\",\"isPartOf\":{\"@id\":\"https:\/\/lassonde.yorku.ca\/eecs\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/lassonde.yorku.ca\/eecs\/wp-content\/uploads\/MicrosoftTeams-image-10.jpg\",\"datePublished\":\"2022-03-11T19:46:55+00:00\",\"dateModified\":\"2024-01-31T18:29:19+00:00\",\"description\":\"Software is used to control many aspects of the modern world, ranging from medical devices, nuclear power plants and airlines to Google and Amazon.\",\"breadcrumb\":{\"@id\":\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#primaryimage\",\"url\":\"https:\/\/lassonde.yorku.ca\/eecs\/wp-content\/uploads\/MicrosoftTeams-image-10.jpg\",\"contentUrl\":\"https:\/\/lassonde.yorku.ca\/eecs\/wp-content\/uploads\/MicrosoftTeams-image-10.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/lassonde.yorku.ca\/eecs\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Undergraduate\",\"item\":\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Future Students\",\"item\":\"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Software Engineering (BEng)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/lassonde.yorku.ca\/eecs\/#website\",\"url\":\"https:\/\/lassonde.yorku.ca\/eecs\/\",\"name\":\"Electrical Engineering and Computer Science\",\"description\":\"Just another Lassonde - Site Network Sites site\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/lassonde.yorku.ca\/eecs\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Software Engineering (BEng) | Electrical Engineering and Computer Science","description":"Software is used to control many aspects of the modern world, ranging from medical devices, nuclear power plants and airlines to Google and Amazon.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/","og_locale":"en_US","og_type":"article","og_title":"Software Engineering (BEng) | Electrical Engineering and Computer Science","og_description":"Software is used to control many aspects of the modern world, ranging from medical devices, nuclear power plants and airlines to Google and Amazon.","og_url":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/","og_site_name":"Electrical Engineering and Computer Science","article_modified_time":"2024-01-31T18:29:19+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"20 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/","url":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/","name":"Software Engineering (BEng) | Electrical Engineering and Computer Science","isPartOf":{"@id":"https:\/\/lassonde.yorku.ca\/eecs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#primaryimage"},"image":{"@id":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#primaryimage"},"thumbnailUrl":"https:\/\/lassonde.yorku.ca\/eecs\/wp-content\/uploads\/MicrosoftTeams-image-10.jpg","datePublished":"2022-03-11T19:46:55+00:00","dateModified":"2024-01-31T18:29:19+00:00","description":"Software is used to control many aspects of the modern world, ranging from medical devices, nuclear power plants and airlines to Google and Amazon.","breadcrumb":{"@id":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#primaryimage","url":"https:\/\/lassonde.yorku.ca\/eecs\/wp-content\/uploads\/MicrosoftTeams-image-10.jpg","contentUrl":"https:\/\/lassonde.yorku.ca\/eecs\/wp-content\/uploads\/MicrosoftTeams-image-10.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/software-engineering-beng\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/lassonde.yorku.ca\/eecs\/"},{"@type":"ListItem","position":2,"name":"Undergraduate","item":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/"},{"@type":"ListItem","position":3,"name":"Future Students","item":"https:\/\/lassonde.yorku.ca\/eecs\/academics\/undergraduate\/future-students\/"},{"@type":"ListItem","position":4,"name":"Software Engineering (BEng)"}]},{"@type":"WebSite","@id":"https:\/\/lassonde.yorku.ca\/eecs\/#website","url":"https:\/\/lassonde.yorku.ca\/eecs\/","name":"Electrical Engineering and Computer Science","description":"Just another Lassonde - Site Network Sites site","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/lassonde.yorku.ca\/eecs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/academics\/1767","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/academics"}],"about":[{"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/types\/academics"}],"author":[{"embeddable":true,"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/users\/90"}],"version-history":[{"count":41,"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/academics\/1767\/revisions"}],"predecessor-version":[{"id":3048,"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/academics\/1767\/revisions\/3048"}],"up":[{"embeddable":true,"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/academics\/602"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/"}],"wp:attachment":[{"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/media?parent=1767"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/categories?post=1767"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lassonde.yorku.ca\/eecs\/wp-json\/wp\/v2\/tags?post=1767"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}