Department: Computer Science & Engineering

Code Name Description
CSCI1041 Digital Literacy in a Global Society This course gives students tools to be active participants in today's global culture of digital literacy. Students will learn current technology for acquiring, analyzing, and sharing information; analytical skills to understand, organize, and analyze...
CSCI1061 Mobile Technologies for the 21st Century Learn to use mobile technologies and non-proprietary apps for your academic and personal productivity, and for broadening your information and technology literacy. In a project-based class, you work on realistic projects that focus your critical thin...
CSCI1534 Data Analysis and Visualization-the Good, the Bad, the Ugly This course covers the fundamentals of problems solving and data analysis, the visual presentation of information, and the foundations of financial literacy. Students will become power-users of spreadsheets, the power-tool for business, education, pe...
CSCI1555 Health Information Systems This course offers extensive hands-on experience with traditional software applications, with internet tools and electronic libraries to access reliable information, and with an electronic health record system. Students also learn how the use of tech...
CSCI1611 A Gentle Introduction to Programming This is a gentle introduction to computer programming with the introductory programming language Python. Programs tell computers, step by step, how to do the amazing things they do, and they can stimulate and help evaluate models of our world. Studen...
CSCI1911 Foundations of Programming Course is an introduction to computer science and computer information systems in preparation to study computer programming and problem solving. Students are introduced to the foundations of algorithms required for intermediate level problem solving,...
CSCI2301 Discrete Math for Computer Science An introduction to the theory and applications of discrete mathematics including set theory, functions, zero- and first-order logic, induction, proofs (including direct, by cases, contraposition, contradiction, counterexample), logical inferences, tr...
CSCI2651 Python for the Sciences The goal of this course is to develop Python programming competency for students in the Sciences and Engineering. Students will learn to write code using the basic constructs of selection, looping, functions, and list handling. They will work with ke...
CSCI2761 HTML, CSS, and Web Design An introduction to web page and web site design. Students will learn the mechanics and aesthetics of a good web design and the best current practices within the evolving HTML and CSS standards. Additional topics, incorporating social media, search en...
CSCI2911 Computer Science I The fundamentals of algorithmic problem solving, plus structured and object-oriented programming using the Java language. Topics include problem analysis and decomposition; stepwise refinement; pseudocode and charting techniques; basic control struct...
CSCI2912 Computer Science II An intermediate problem-solving and programming course using the Java programming language. Topics include composite and abstract data structures; GUIs and event-driven programming; inheritance and polymorphism; abstract classes and methods; interfac...
CSCI2913 Data Structures Third course of the core problem-solving and programming sequence for computer science majors. Students advance problem-solving and programming skills by learning to separate solutions for computation problems into two fundamental parts: algorithm an...
CSCI2916 Computer Science I Lab Lab component to accompany CSCI 2911. This course will provide directed lab projects for students to exercise and to reinforce their understanding of the content of CSCI 2911 and to develop their skills in creating and debugging computer programs.
CSCI3001 Assembly Language and Systems Programming Students learn about the internal organization of modern computers and assembly-level programming on contemporary processors. Topics include: integration of assembly language with high-level programming languages such as C and C++, runtime stack, poi...
CSCI3101 Algorithms This course covers the analysis and design of algorithms. Good algorithm design is crucial for software performance. Topics include: efficiency analysis; big-O, omega, and theta notation for asymptotic upper, lower, and tight bounds on algorithm time...
CSCI3106 Programming Challenges Students solve and implement advanced programming problems covering a wide range of algorithmic topics. The course is structured around preparation to participate in an annual programming contest conducted by the Association for Computing Machinery (...
CSCI3211 Systems Analysis An overview of the systems development life cycle with emphasis on techniques and tools of system specifications. The course covers the strategies and techniques of modern systems development.
CSCI3242 Modeling and Simulation This course introduces concepts of analytic modeling and computer simulations. It encompasses mathematical techniques, algorithms, and applications available to assist and improve decision-making and understanding of various types of systems. Sample...
CSCI3301 Database Technologies An introduction to the design, development, and implementation of database management systems (DBMS). Topics include conceptual data modeling, logical and physical design, the relational model, normalization, SQL and high level language programming,...
CSCI3302 Machine Learning and Knowledge Discovery Machine learning is the science of data mining and knowledge discovery using algorithms that enable computers to develop knowledge from empirical data. In the past decade, machine learning methodologies have successfully enabled computers to recogniz...
CSCI3401 Data Communications An introduction to fundamental concepts in the design and implementation of computer communication networks, their protocols, and applications. Topics to be covered include: overview of network architectures, applications (HTTP, FTP, SMTP, POP3), net...
CSCI3501 Computer Organization A computer is regarded as a hierarchy of levels, each one performing a well-defined function. This course provides detailed coverage of the digital logic, micro-architecture, and instruction-set architecture levels. Students are required to implement...
CSCI3601 Operating Systems An introductory course on the design and implementation of operating systems. The course describes concepts of operating systems in terms of functions, structure, and implementation. Topics include process coordination, parallel vs. concurrent proces...
CSCI3611 Unix Systems Administration This course covers the Unix operating system and system administration responsibilities. Topics include: system startup and shutdown, managing startup services, hard drive partitioning and filesystem concepts, file management, user administration, ne...
CSCI3621 Networking This course describes how voice, data, image, and video information are communicated through networking, how it is accomplished, protocol and network configuration, and LAN system software.
CSCI3632 Internet Programming This course focuses on strategies for providing secure, reliable, and useful Web-based applications. Topics include: the development of dynamic Web sites; client-side programming; server-side programming; back-end databases; RESTful Web services; sec...
CSCI3640 Computer Security and Information Assurance The assessment of potential security threats to computer systems. Topics include: controlling site and system access; protecting and maintaining data integrity; environmental/facility considerations such as power and climatological factors; assessing...
CSCI3651 Game Programming An introduction to the many types of computer game programming. This course reviews the computer-science theory and programming behind classic games such as Tetris and Space Invaders, genre creators such as SimCity and Civilization, as well as modern...
CSCI3721 C# This course provides the fundamental skills that are required to design and develop object-oriented applications for the Web and Microsoft Windows using C#, the Microsoft Visual Studio .Net development environment and Microsoft Foundation Classes. Bu...
CSCI3731 Problem Solving and Programming Using C++ An advanced problem-solving and programming course with emphasis on the systems programming features provided by the C++ programming language. Objects, memory management, and systems programming are stressed. Extensive programming assignments are req...
CSCI3771 Python An introduction to programming in the popular Python programming language. Topics include data types, simple statements, control structures, strings, functions, recursion, the Python interpreter, system command lines and files, module imports, object...
CSCI3776 Ruby on Rails This course covers the fun, popular, and powerful Web programming framework Ruby on Rails, which enables programmers to rapidly develop sophisticated websites with databases. Topics include: Ruby programming language, embedded Ruby, Model-View-Contro...
CSCI3911 Software Engineering The course teaches software engineering techniques and system analysis methodologies based on the Software Engineering Body of Knowledge (SWEBOK) using Software as a Service (SaaS), Agile development methodologies, and Cloud based applications. This...
CSCI4620 Computer System Forensics This course is an in-depth study of computer system forensics including methodologies used for analysis of computer security breaches. Forensics is the use of science and technology to investigate and establish facts in criminal or civil courts of la...
CSCI4640 Advanced Topics in Cybersecurity A lecture and project-based course on advanced topics in cybersecurity. Students learn and apply the principles, skills, and art of building and defending a secure network. Topics address current issues in areas such as: ethical hacking, network defe...
CSCI4701 Introduction to the Theory of Computation Students will learn about formal models of computation and how these are used as the basis for the design of all computer systems and programming languages. Students will gain practical hands-on knowledge of computation theory as it applies to progra...
CSCI4702 Mobile Programming A course on the programming of applications for mobile computing including devices such as mobile phones, pads, and tablets. Students will learn best practices in programming for mobile devices including iPhones, iPads, or Android smart phones. At th...
CSCI4705 Artificial Intelligence Artificial Intelligence (AI) is the study of the design of intelligent agents that are capable of reasoning, planning, and acting in a dynamic environment. This field encompasses logic, probability, and continuous mathamatics, perception, learning an...
CSCI4706 Deep Learning An introduction to deep learning, a branch of machine learning concerned with the development and application of modern neural networks. Deep learning algorithms extract layered high-level representations of data in a way that maximizes performance o...
CSCI4911 Software Project I A lecture and project-oriented course dealing with the application of the principles, skills, and art of the design and construction of software systems in a realistic environment. Topics include: modern software development strategies; integrating p...
CSCI4931 Ssytems Administration A lecture and project-oriented capstone course dealing with the principles, construction, monitoring, maintenance, testing, and art of system administration, for open and closed client and server systems. Topics include: project management, security,...
CSCI4997 Directed Readings in Computer Science Directed individualized readings.
CYBS2201 Fundamentals of Cybersecurity This course introduces preventive methods to protect information by understanding potential threats, vulnerability assessment, spyware, hacking, viruses, and malicious attacks. The course covers strategies including identity, risk, and incident manag...
ENGB2000 Biomechanics Model and solve problems related to human performance and loading of the musculoskeletal system during functional activities, by application of static, dynamic and hybrid approaches. Topics include: human tissue (soft and hard) modeling, loading and...
ENGB3001 Thermodynamics of Living Systems An exploration of thermodynamics applied to biological systems at the macro and cellular levels. Topics include: mass (conversion, balances), cellular function, the three laws of thermodynamics (thermal equilibrium, potential and kinetic energies; en...
ENGB3002 Transport Phenomena Covers fundamental transportation phenomena in living systems with a focus on momentum and mass transport in biological systems. Topics include: material and energy balances, kinetics, chemical and physical transport processes with applications in ar...
ENGB3003 Biomedical Imaging and Computer Simulation Laboratory An investigation into a variety of medical imaging technologies by analysis and computation of medical image datasets using Matlab as the medical image processing simulation environment. Students interact with datasets from a variety of imaging modal...
ENGB3004 Biomedical Instrumentation and Device Fabrication The course examines biomedical device design and instrumentation for treatment and diagnostics. Topics may include: bioinstrumentation, biomedical electronics; measurement techniques; sensors (bipotential electrodes, strain transducers, pressure and...
ENGB3005 Engineering Design Project I Students work in teams to work towards the construction of a working prototype by application of fundamentals in biomedical engineering to a real-world challenge or problem, that involves prototype development (which can include computer simulation),...
ENGB3006 Engineering Design Project II Students continue their topic from ENGB 3005 by taking the design and moving into project implementation, testing and commissioning (deployment) throughout the course. Students will finish the course with a project demonstration and assessment submis...
ENGB4001 Transport Phenomena Covers fundamental transportation phenomena in living systems with a focus on momentum and mass transport in biological systems. Topics include: material and energy balances, kinetics, chemical and physical transport processes with applications in ar...
ENGB4002 Tissue Engineering The course introduces selected topics in Tissue Engineering and discusses related regulatory issues and standardization. Topics may include methods of tissue engineering in: breast reconstruction, blood vessel substitute, vascular systems, cardiac ap...
ENGB4004 Biomedical Optics This course examines optics and the optical properties of tissue. Topics include: spectroscopy (intrinsic absorption, scattering contrast, dynamic contrast, fluorescence, Raman contrast mechanisms), tomography (optical coherence, diffuse optical, pho...
ENGB4005 Biomedical Signal Processing Advanced techniques in biomedical image and signal processing for patient monitoring and diagnostics. Topics include: disease detection and classification, clustering approaches, adaptive filtering, Image classification and decision support, imaging...
ENGB4007 Biosensors The course focuses on the purpose, design, fabrication, operation, testing and conformance to design criteria of micro and nano sensors, and associated software processes in several biomedical applications, with an emphasis on implantable devices. To...
ENGB4008 Computational Biomechanics The course introduces concepts and computational methods in biomedical engineering application, including analytical and numerical approaches to problem solving within this discipline. Concepts of mechanics and computational modeling techniques are a...
ENGB4999 Special Topics in Biomedical Engineering Selected topics in biomedical engineering are presented throughout this seminar, at an advanced level. Topic coverage is at the discretion of the lecturer, however theses will include state-of-the-art in biomedical engineering technologies, advanced-...
ENGE1000 Introduction to Engineering Systems and Professional Practice A general introduction to the field of engineering including; basics of engineering components, processes, systems and professional practices. An overview of engineering systems in a range of disciplines, including electrical, mechanical, biomedical...
ENGE2000 Linear Circuits and Systems Linear electrical circuits and systems, with topics including; energy storage and passive circuit elements, dependent and independent sources, circuit analysis techniques, basic operational amplifiers circuit analysis and feedback, impedance, first a...
ENGE2001 Linear Circuits and Systems Laboratory Application of basic electrical measurement to circuit elements and configurations. Students will use record and display instruments during analogue circuit analysis to determine their characteristics and measurements. Students will communicate their...
ENGE2003 Bioengineering Signals and Systems An introduction to electrical signals, systems and signal processing. Topics include: description and analysis of systems, mathematical representation of signals, discrete and continuous signal representation, conversion and processing strategies, Fo...
ENGE2004 Digital Hardware and Microcontrollers Microcontroller design and programming is introduced. Topics include: Karnaugh maps, truth tables, Boolean expressions and combinational logic (gates), sequential logic and machines (state tables, state diagrams, timing diagrams, clock, flip flops, r...
ENGE2005 Digital Hardware and Microcontrollers Laboratory Students will apply principles from ENGE 2004 to design and implement basic programs to run on the microcontroller, providing functions such as for mathematical manipulations and display output. A $75 lab fee will apply for any in-person sections (ex...
ENGE2006 Electronics Students design electronic circuits and apply circuit analysis techniques using several passive and active electronic circuit elements. During the first half of the course, students are introduced to diodes, MOSFET and BJT transistors, small and larg...
ENGE2007 Electronics Laboratory Electronic circuits are designed, constructed, and tested through application of circuit analysis techniques using elements such as diodes, transistors (MOSFETs, BJTs), operational amplifiers (inverting and non-inverting configurations) for reporting...
ENGE3000 Signals and Systems An introduction to electrical signals, systems, and signal processing technologies are reviewed. Topics include: description and analysis of systems, mathematical representation of signals, sampling, aliasing, discrete and continuous signal represent...
ENGE3001 Signals and Systems Lab Signal processing techniques for signal filtering will be applied, including discrete and continuous signal representations, conversion and processing strategies, and transforms. Students will apply related principles and solve related problems in Ma...
ENGE3002 Microcontroller Applications Concepts in digital hardware are extended to more in-depth knowledge of digital computer architecture and microcontrollers. Topics include: digital computer architecture (CPU, RAM, ROM, static and dynamic memory, I/O devices) and organization, binary...
ENGE3003 Microcontroller Applications Laboratory Students will use digital hardware to interface with a microcontroller and write programs for the microcontroller to control the hardware.
ENGE3005 Engineering Design Project II Students continue their topic from ENGE 3004 by taking the design and moving into project implementation, testing and commissioning (deployment) throughout the course. Students will finish the course with a project demonstration and assessment submis...
ENGE3006 Electromagnetics An introduction to the fundamentals of electromagnetics. Topics include: application of Maxwell’s equations, electromagnetic waves, radiation and diffraction, optical fiber links and components, microwave communications and radar, wireless communicat...
ENGE3007 Control Systems Control system modeling and design provides a systems-based approach to analyze the behavior and stability of a system, and enhance system performance through application of controller design methods. Topics include: mathematical modeling of physical...
ENGE3008 Control Systems Laboratory Students will design and implement various types of controllers for DC motor control Applied techniques will result in motor transfer function derivation, time and frequency response analysis, bode diagram representation and review, toward the design...
ENGE4007 Robotics and Automation Students learn how to design robotic systems for applications in automation and heavy industry, including techniques of mathematical modeling, design, control and sensor integration. Topics include: robotics in automations and industrial applications...
ENGE4008 Intelligent Control State-of-the-art methods in intelligent control are explored, with focus on fuzzy logic controllers, neural networks, adaptive control techniques and hybrid models. Students examine and produce a variety of control strategies, including derivation of...
ENGE4009 Image Processing An in-depth study and application of image processing algorithms. Topics include methods related to: image co-registration, pre-processing, region of interest detection, segmentation, feature extraction, classification, decision support systems, supe...
ENGE4010 Power Systems Analysis and Design Fundamentals of power systems: their analysis, design and simulation. Topics include: introduction to power systems, phasors, single-phase and three-phase circuits, complex power calculations, network equations, balanced circuits, transformers (ideal...
ENGE4998 Special Topics in Sensor Technologies An examination of state-of-the-art sensor technologies in a range of applications, such as in aerospace, shipping manufacturing, medical, healthcare and environmental. Large sensor devices in heavy industry are examined, as are micro and nano sensor...
ENGE4999 Special Topics in Electrical Engineering State-of-the-art in electrical engineering current practice and research is investigated. Topics may include: renewable energy source design and construction, advances in data communications, advances in nanotechnology and electronics, smart devices,...
ENGR1000 Introduction to Engineering Systems and Professional Practice A general introduction to the field of engineering including; basics of engineering components, processes, systems and professional practices. An overview of engineering systems in a range of disciplines, including electrical, mechanical, biomedical...
ENGR1500 Design Project Experience I This course gives students the opportunity to advance their professional development as Engineers. Students will have the option to work together with their Engineering peer mentors or the Engineering faculty to learn technical knowledge and know-how...
ENGR2500 Design Project Experience II This course gives students the opportunity to advance their professional development as Engineers. Students will have the option to work together with their Engineering peer mentors or the Engineering faculty to learn and apply technical knowledge an...
ENGR2600 Engineering Statics This course introduces the basics of engineering mechanics through the analysis of forces acting on particles and rigid bodies in static equilibrium. Statics is fundamental to Civil and Mechanical Engineering, and has applications in many other areas...
ENGR3500 Engineering Design Project I Students will work in teams towards the construction of a working prototype by application of fundamentals in engineering to a real-world challenge or problem. Multidisciplinary projects are encouraged so that they involve Electrical Engineering, Bio...
ENGR3501 Engineering Design Project II Student continue their topic from ENGR 3500 by taking the design and moving into project implementation, testing, and commissioning (deployment) throughout the course. Students will finish the course with a project demonstration, and assessment submi...
ENGR3600 Engineering Dynamics This course is the second in a two class sequence of engineering statics and dynamics. Engineering Dynamics deals with the dynamic motion of particles and rigid bodies. Subjects covered: kinematics, force and acceleration, impulse-momentum, work and...
ENGR4500 Engineering Research This course provides students with the opportunity to advance their professional development as Engineers. Students will have the option to enhance their previous Engineering design projects, to start and finish a new design project, or to undertake...
ENGR4995 Engineering Professional Practice This course provides internship credit for students in the Engineering program. Internships provide students with applied, experiential learning opportunities and enable connections between academic study and practical application in a professional w...
ENGR4999 Special Topics in Engineering This course explores state-of-the-art multidisciplinary and/or interdisciplinary current practices and research in engineering. Topics are chosen at the discretion of the faculty, and may include: fundamentals of sensor design, ultrasound systems, re...
ENGT2002 Bioprocesses An introduction to biotechnology and an examination of various bioprocesses: from cell culture and downstream process development, to scale-up and manufacturing processes. Topics include: DNA, proteins, immunology, microbial biotechnology, plant biot...
ENGT2100 Fundamentals of Biomaterials An introduction to the basic principles (chemical bonding, crystallography, organic & biochemistry of macromolecules, mass and energy transfer) and common biomaterials used in biological and medical systems, in a range of applications. Topics include...
ENGT2101 Biomaterials Lab Students will be introduced to the major types of biomaterials widely used in today’s world. Students will evaluate the physical and chemical properties of some important biomaterials with special emphasis to the bioavailability and biocompatibility...
ENGT2200 Biomaterials An introduction to common biomaterials used in biological and medical systems, in a range of applications. Topics include: biomaterials (metals, polymers, ceramics, composites), properties (physical attributes and surface properties), biocompatibilit...
ENGT2200 Bioprocesses An introduction to biotechnology and an examination of various bioprocesses: from cell culture and downstream process development, to scale-up and manufacturing processes. Topics include: DNA, proteins, immunology, microbial biotechnology, plant biot...
ENGT2201 Bioprocesses Lab Students will design and execute simple lab scale experiments to learn the following topics: estimation of cell mass; different phases of microbial growth; mass and energy balance in a typical bioconversion process; concept of limiting nutrient and i...
ENGT3000 Engineering Design Project I Students work in teams for the design of a working prototype or systems-based practical solution by application of fundamentals in biotechnology engineering to a real-world challenge or problem, with focus in bioprocess or bioenvironmental engineerin...
ENGT3001 Engineering Project II Students continue their topic from ENGT 3000 by taking the design and moving into project implementation, testing and commissioning, (deployment) throughout the course. Students will finish the course with a project demonstration and assessment submi...
ENGT3002 Analytical Biotechnology for Engineers This course applies Engineering fundamentals to biotechnology fields in the areas of medicine, agriculture and the environment such as in genomics, immunology, fermentation monitoring, chromatography, instrumental analysis, biosensors and bioanalysis...
ENGT3100 Advanced Biomaterials This course will focus on advanced activity-based learning of host-biomaterial interactions and cover the criteria for development of a biocompatible material with emphasis on clinical/industrial relevance. The process of material selection for bioco...
ENGT3200 Bioprocesses An introduction to biotechnology and an examination of various bioprocesses: from cell culture and downstream process development, to scale-up and manufacturing processes. Topics include: DNA, proteins, immunology, microbial biotechnology, plant biot...
ENGT4001 Tissue Engineering The course introduces selected topics in tissue engineering and discusses related regulatory issues and standardization. Topics may include methods of tissue engineering in: breast reconstruction, blood vessel substitute, vascular systems, cardiac ap...
ENGT4002 Biomanufacturing An introduction to manufacturing processes, with examination of biomanufacturing processes and biofabrication; the related state-of-the-art engineering technologies. Topics include: living (cells, tissues) and non-living (bio-supportive proteins, sca...
ENGT4004 Soil Ecology Explores the fundamentals of solid ecology. Topics include: overview, formation and profile of soil development, fitness of the soil environment, primary production processes and effect on ecosystem, secondary production processes (decomposition, mic...
ENGT4009 Environmental Systems Analysis for Engineers The course provides an analysis of environmental systems through the application of engineering fundamentals. Topics include: modeling system behavior, data handling and analysis, real-world system analytics and engineering system design. Students ap...
ENGT4010 Waste Treatment and Management Examines treatment and sustainable management of environmental waste by application of engineering principles and practices, including industrial, agricultural and biological waste products. Topics include: waste properties (chemical, biological), wa...
ENGT4011 Air Quality Management This subject covers fundamental principles that govern air quality and examines management options for improving air quality; limiting emissions and optimizing air pollutant control strategies. Topics include: air composition and quality measures, ai...
ENGT4012 Land Treatment Systems Examines systems, sub-components and biocomposition of land treatment of waste. Topics include: soil hydraulics, vegetation selection, site selection, onsite investigations, preapplication treatment and storage, transmission and distribution of waste...
ENGT4013 Food Processing and Packaging Systems Principles and applications of food processing, handling and packaging systems, with evaluation of associated technologies. Topics include: overview of food processing and sub-system operations, thermophysical properties in food processing and packag...
ENGT4999 Special Topics in Biotechnology Engineering Selected topics in biotechnology engineering are presented throughout this seminar, at an advanced level. Topic coverage is at the discretion of the lecturer, however these will include state-of-the-art in biotechnology engineering technologies, adva...