Site Navigation
Welcome
Important Notice and Disclaimer
Academic Schedule
Types of Credentials and Sub-Degree Nomenclature
Undergraduate Degrees with a Major
Combined Degrees
Minor Programs
Student and Campus Services
Admissions
Academic Regulations
Experiential Learning
Tuition and General Fees
Student Financial Support
Architecture, Planning and Landscape, School of
Faculty of Arts
Cumming School of Medicine
Faculty of Graduate Studies
Haskayne School of Business
Faculty of Kinesiology
Faculty of Law
Faculty of Nursing
Qatar Faculty
Schulich School of Engineering
Faculty of Science
Faculty of Social Work
Faculty of Veterinary Medicine
Werklund School of Education
Embedded Certificates
Continuing Education
COURSES OF INSTRUCTION
How to Use
Courses of Instruction by Faculty
Course Descriptions
A
B
C
D
Dance DNCE
Data Science DATA
Design DSGN
Digital Engineering ENDG
Drama DRAM
E
F
G
H
I
J, K
L
M
N, O
P
Q
R
S
T, U
V, W, Z
About the University of Calgary
Glossary of Terms
Archives
Contact Us
University of Calgary Calendar 2023-2024 COURSES OF INSTRUCTION Course Descriptions D Digital Engineering ENDG
Digital Engineering ENDG

For more information about these courses, see the Schulich School of Engineering.

Junior Course
Digital Engineering 233       Programming with Data
Fundamental programming constructs and data structures. Algorithm development and problem solving. Programming techniques to facilitate data analysis. Obtaining and cleaning data. Data validation. Data manipulation. Data visualization. Introduction to decision making using machine learning. Applications chosen from all engineering disciplines.
Course Hours:
3 units; (3-2)
Antirequisite(s):
Credit for Digital Engineering 233 and any of Computer Science 217, 231, 235, Computer Engineering 339 or Engineering 233 will not be allowed.
Also known as:
(formerly Engineering 233)
back to top
Senior Courses
Digital Engineering 310       Fundamentals of Software Design and Development
Introduction to design and implementation of software systems for engineering applications. Software design lifecycle. Source code management systems. Debugging and testing techniques. Illustration of common data structures and fundamental algorithms using a high level language. Libraries for input/output. Software tools to facilitate data analysis and visualization.
Course Hours:
3 units; (3-2)
Prerequisite(s):
Engineering 233 or Digital Engineering 233; and admission to the Digital Engineering Minor.
Antirequisite(s):
Credit for Digital Engineering 310 and Engineering 519.06 (Digital Engineering I) will not be allowed.
Also known as:
(formerly Software Engineering for Engineers 310)
back to top
Digital Engineering 311       Advanced Software Design and Development
Principles of software modelling and design. Key elements of object- oriented design. Advanced topics such as concurrent programming, socket programming, event-driven programming, and database programming. Systems integration techniques to build practical applications from engineering domains.
Course Hours:
3 units; (3-2)
Prerequisite(s):
3 units from Software Engineering for Engineers 310, Digital Engineering 310, Geomatics Engineering 333, Computer Engineering 335 or Software Engineering for Engineers 337; and admission to the Digital Engineering Minor.
Antirequisite(s):
Credit for Digital Engineering 311 and Software Engineering for Engineers 409 or Engineering 519.07 (Digital Engineering II) will not be allowed.
Also known as:
(formerly Software Engineering for Engineers 311)
back to top
Digital Engineering 319       Probability, Statistics and Machine Learning
Presentation and description of data, introduction to probability theory, Bayes' theorem, discrete and continuous probability distributions, estimation, sampling distributions, tests of hypotheses on means, variances and proportions; Introduction to fundamental machine learning including linear regression, classification and correlation. Applications are chosen from engineering practice from all disciplines. Course Hours: Prerequisite(s): Antirequisite(s): Also known as:
Course Hours:
3 units; (3-1.5T)
Prerequisite(s):
Mathematics 277 or 331; and one of Engineering 233, Digital Engineering 233 or 440.
Antirequisite(s):
Credit for Digital Engineering 319 and Biomedical Engineering 319 will not be allowed.
Also known as:
(formerly Engineering 319)
back to top
Digital Engineering 407       Computational Numerical Methods
Numerical computational procedures to solve engineering problems. Introduction to computational libraries that support matrix operations. Developing and implementing programs for: solution of linear and non-linear equations, curve fitting, solution of the algebraic eigenvalue problems, interpolation, differentiation, integration and solution of differential equations. The course will include the programming projects that address comprehensive engineering problems. Algorithm development and application labs.
Course Hours:
3 units; (3-2T)
Prerequisite(s):
Engineering 233 or Digital Engineering 233; and Mathematics 375.  
Antirequisite(s):
Credit for Digital Engineering 407 and Chemical Engineering 407 will not be allowed.
Also known as:
(formerly Engineering 407)
back to top
Digital Engineering 410       Fundamentals of Applied Artificial Intelligence
Techniques for extracting, cleaning, and visualizing data from engineering applications. Basic numerical computation techniques underlying learning algorithms. Fundamental supervised and unsupervised learning algorithms. Emphasis will be on designing practical applications that leverage existing software libraries and frameworks to solve problems in various engineering disciplines.
Course Hours:
3 units; (3-2)
Prerequisite(s):
3 units from Software Engineering for Engineers 310, 337, Digital Engineering 310, Computer Engineering 335 or Geomatics Engineering 333; and admission to the Digital or Aerospace Engineering Minor.
Antirequisite(s):
Credit for Digital Engineering 410 and either Software Engineering for Engineers 519.47 (Applied Data Science) or 544 will not be allowed.
Also known as:
(formerly Software Engineering for Engineers 410)
back to top
Digital Engineering 411       Advanced Applied Artificial Intelligence and Machine Learning
Advanced supervised and unsupervised learning algorithms. Introduction to modern neural network architectures. Emphasis will be on designing practical applications that leverage existing software libraries and frameworks to solve engineering problems.
Course Hours:
3 units; (3-2)
Prerequisite(s):
Software Engineering for Engineers 410 or Digital Engineering 410; and admission to the Digital Engineering Minor.
Antirequisite(s):
Credit for Digital Engineering 411 and either Software Engineering for Engineers 519.47 (Applied Data Science) or Electrical Engineering 525 will not be allowed
Also known as:
(formerly Software Engineering for Engineers 411)
back to top
Digital Engineering 440       Introduction to Python
Programming concepts using Python, including statements, conditionals, loops, functions, file I/O, debugging, data parsing and display, and use of libraries.
Course Hours:
1 unit; (1-1)
Prerequisite(s):
Admission to the BSc Energy Engineering program.
Antirequisite(s):
Credit for Digital Engineering 440 and either Engineering 233 or Digital Engineering 233 will not be allowed.
back to top
Digital Engineering 450       Digital Security
Topics in information security including cryptography, encryption, hashes, block chain and cryptocurrency. Security issues in Cyberphysical systems. Human factors including social engineering, malware, phishing and computer viruses.
Course Hours:
1 unit; (1-1)
Prerequisite(s):
Engineering 233 or Digital Engineering 233.
back to top
Digital Engineering 451       Industrial Internet of Things
Topics in Internet of Things and Industrial Internet of Things, including sensors, embedded computers, networking and connectivity, cloud and data storage.
Course Hours:
1 unit; (1-1)
Prerequisite(s):
Engineering 233 or Digital Engineering 233.
back to top
Digital Engineering 452       Augmented and Virtual Reality
Topics in Augmented and Virtual Reality including AR/VR hardware, basic programming of AR/VR applications, deployment of 3D CAD models in AR/VR.
Course Hours:
1 unit; (1-1)
Prerequisite(s):
Engineering 233 or Digital Engineering 233.
back to top
Digital Engineering 453       Advanced Software Programming
Object-oriented design. Concurrency issues in programs. Socket programming. GUI design and event-driven programming.
Course Hours:
1 unit; (1-1)
Prerequisite(s):
Engineering 233 or Digital Engineering 233.
Antirequisite(s):
Not open to students in the BSc Software Engineering program or the Digital Engineering Minor.
back to top
Digital Engineering 454       Fundamentals of Web Development
Programming techniques and tools for developing web applications. Basics of frontend and database design. Web server fundamentals.
Course Hours:
1 unit; (1-1)
Prerequisite(s):
Digital Engineering 453.
back to top
Digital Engineering 455       Advanced Data Engineering
Advanced tools and techniques to facilitate exploratory data analysis. Web scraping and parsing. Libraries to facilitate rapid data analysis. Data visualization techniques.
Course Hours:
1 unit; (1-1)
Prerequisite(s):
Engineering 233 or Digital Engineering 233.
Antirequisite(s):
Not open to students in the BSc Software Engineering program or the Digital Engineering Minor.
back to top
Digital Engineering 456       Intermediate Machine Learning for Engineers
Feature engineering techniques. Linear and non-linear regression and classification techniques. Basic unsupervised learning algorithms.
Course Hours:
1 unit; (1-1)
Prerequisite(s):
3 units from Engineering 319, Digital Engineering 319 or Electrical Engineering 419; and Digital Engineering 455.
Antirequisite(s):
Not open to students in the BSc Software Engineering program or the Digital Engineering Minor.
back to top
Digital Engineering 457       Advanced Machine Learning for Engineers
Deep learning, reinforcement learning, and advanced unsupervised learning algorithms.
Course Hours:
1 unit; (1-1)
Prerequisite(s):
Digital Engineering 456.
Antirequisite(s):
Not open to students in the BSc Software Engineering program or the Digital Engineering Minor.
back to top
Digital Engineering 510       Cyber-Physical Systems Engineering
Fundamental principles related to the design of cyber-physical systems. Techniques to ensure reliability, performance, and security of cyber-physical systems. Emphasis will be on developing practical applications from engineering domains.
Course Hours:
3 units; (3-2)
Prerequisite(s):
Software Engineering for Engineers 311 or Digital Engineering 311; and admission to the Digital Engineering Minor.
Antirequisite(s):
Credit for Digital Engineering 510 and Computer Engineering 511 will not be allowed
Also known as:
(formerly Software Engineering for Engineers 510)
back to top
Digital Engineering 511       Industrial Internet of Things Systems and Data Analytics
Fundamentals of Industrial Internet of Things (IIoT) Systems. Digital and software frameworks to support IIoT data analytics.
Course Hours:
3 units; (3-2)
Prerequisite(s):
Software Engineering for Engineers 510 or Digital Engineering 510; and admission to the Digital Engineering Minor.
Also known as:
(formerly Software Engineering for Engineers 511)
back to top