Difference between revisions of "ECE Registration/Software Engineering"
(→Minor) |
(→Requirements) |
||
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | This page is | + | This page is for information about the newly (March 2025) approved Transcriptable Concentration in Software Engineering and Minor in Software Engineering. It will formally be included in the ECE Handbook for Fall 2025. |
== Transcriptable Concentration == | == Transcriptable Concentration == | ||
− | |||
− | The requirements are | + | === Definition and Clarification === |
+ | A "Transcriptable Concentration" is a collection of courses which, if taken, will be noted on the transcript as a concentration of courses in a specific area (namely, software engineering). These courses should fit into a normal ECE major, and the Transcriptable Concentration is only available to students with a major in ECE. | ||
+ | |||
+ | '''''Note:''''' for ECE majors, this is '''different''' from the "Area of Concentration" requirements. The Areas of Concentration are: | ||
+ | * Computer Engineering and Digital Systems (CEDS) | ||
+ | * Signal Processing, Communications, and Control Systems (SPC&C) | ||
+ | * Solid-State Devices and Integrated Circuits (SSDIC) | ||
+ | * Engineering Physics (EP) | ||
+ | * Photonics (P) | ||
+ | Several of the courses for the Transcriptable Concentration in Software Engineering are '''also''' approved as area of concentration classes. | ||
+ | |||
+ | === Requirements === | ||
+ | The requirements for the Transcriptable Concentration in Software Engineering are given below. Note that the categories are based on where the courses would fit in the Electrical and Computer Engineering major requirements. | ||
# ECE Concentration Elective #1 (Software Engineering Foundation): | # ECE Concentration Elective #1 (Software Engineering Foundation): | ||
#* ECE 351: Software Engineering (Prof. Rahbar) (Fall 2025 offering is ECE 495.03) | #* ECE 351: Software Engineering (Prof. Rahbar) (Fall 2025 offering is ECE 495.03) | ||
Line 11: | Line 22: | ||
#* ECE 657/CS 586: Usable Security and Privacy | #* ECE 657/CS 586: Usable Security and Privacy | ||
#* ECE 590: Cross Platform Mobile Application Development | #* ECE 590: Cross Platform Mobile Application Development | ||
− | #* ECE 590: Special Topic courses on HCI/UX (DUS approved) | + | #* ECE 490/495/496/590: Special Topic courses on HCI/UX (DUS approved) |
# ECE Concentration Elective #3 (Systems course): One of | # ECE Concentration Elective #3 (Systems course): One of | ||
#* ECE 353/CS 310: Introduction to Operating Systems | #* ECE 353/CS 310: Introduction to Operating Systems | ||
Line 24: | Line 35: | ||
#* ECE 568: Engineering Robust Server Software | #* ECE 568: Engineering Robust Server Software | ||
#* ECE 661: Computer Engineering Machine Learning and Deep Neural Nets | #* ECE 661: Computer Engineering Machine Learning and Deep Neural Nets | ||
− | #* ECE 590: Special Topic courses on Software Engineering (with DUS approval) | + | #* ECE 490/495/496/590: Special Topic courses on Software Engineering (with DUS approval) |
# ECE Extension Elective (Software-focused course): One of (300+) | # ECE Extension Elective (Software-focused course): One of (300+) | ||
#* Any course from requirement #2 (not already taken) | #* Any course from requirement #2 (not already taken) | ||
Line 32: | Line 43: | ||
== Minor == | == Minor == | ||
− | A minor is a collection of courses which, if taken, will be noted on the transcript as a minor. The minor is meant specifically for students outside of ECE. Furthermore, courses that are taken for the minor '''''cannot''''' be used to fulfill a student's individual major(s), so generally students pursuing a major in Computer Science would '''not''' be able to complete | + | |
+ | === Definition and Clarification === | ||
+ | A minor is a collection of courses which, if taken, will be noted on the transcript as a minor. The minor is meant specifically for students outside of ECE. Furthermore, courses that are taken for the minor '''''cannot''''' be used to fulfill a student's individual major(s), so generally students pursuing a major in Computer Science would also '''not''' be able to complete this Minor in Software Engineering. Computer Science majors have several concentrations to choose from within their major - please consult [https://cs.duke.edu/undergraduate/degrees https://cs.duke.edu/undergraduate/degrees] for details - information about major concentrations is below the table. | ||
+ | |||
+ | === Requirements === | ||
+ | The requirements for the Minor in Software Engineering are given below. Note that the categories are '''not''' based on where the courses fit into an ECE major because ECE majors cannot obtain this minor. | ||
The requirements are as follows: | The requirements are as follows: | ||
Line 41: | Line 57: | ||
#* ECE 657/CS 586: Usable Security and Privacy | #* ECE 657/CS 586: Usable Security and Privacy | ||
#* ECE 590: Cross Platform Mobile Application Development | #* ECE 590: Cross Platform Mobile Application Development | ||
− | #* ECE 590: Special Topic courses on HCI/UX (DUS approved) | + | #* ECE 490/495/496/590: Special Topic courses on HCI/UX (DUS approved) |
# Software Engineering Minor Fundamental #3 (Systems course): One of | # Software Engineering Minor Fundamental #3 (Systems course): One of | ||
#* ECE 353/CS 310: Introduction to Operating Systems | #* ECE 353/CS 310: Introduction to Operating Systems | ||
Line 54: | Line 70: | ||
#* ECE 568: Engineering Robust Server Software | #* ECE 568: Engineering Robust Server Software | ||
#* ECE 661: Computer Engineering Machine Learning and Deep Neural Nets | #* ECE 661: Computer Engineering Machine Learning and Deep Neural Nets | ||
− | #* ECE 590: Special Topic courses on Software Engineering (with DUS approval) | + | #* ECE 490/495/496/590: Special Topic courses on Software Engineering (with DUS approval) |
− | #* Either COMPSCI 307: Software Design and Implementation or COMPSCI 308: Advanced Software Design and Implementation (only one of these can count; neither is required) | + | #* Either COMPSCI 307: Software Design and Implementation or COMPSCI 308: Advanced Software Design and Implementation (only one of these can count towards the five courses; neither is required) |
#* COMPSCI 316: Introduction to Database Systems | #* COMPSCI 316: Introduction to Database Systems | ||
#* COMPSCI 330: Introduction to the Design and Analysis of Algorithms | #* COMPSCI 330: Introduction to the Design and Analysis of Algorithms | ||
Line 61: | Line 77: | ||
#* COMPSCI 351: Introduction to Computer Security (can’t overlap ECE 560) | #* COMPSCI 351: Introduction to Computer Security (can’t overlap ECE 560) | ||
#* COMPSCI 408: Delivering Software: From Concept to Client | #* COMPSCI 408: Delivering Software: From Concept to Client | ||
− | + | # Software Engineering Minor Upper-Level Elective #1 (Software engr-focused course): One of (300+) | |
− | # | ||
#* Any course from requirement #2 (not already taken) | #* Any course from requirement #2 (not already taken) | ||
#* Any course from requirement #3 (not already taken) | #* Any course from requirement #3 (not already taken) | ||
− | #* Any course from requirement #4 (not already taken) | + | #* Any course from requirement #4 (not already taken; as noted above, '''either''' CS 307 '''or''' CS 308 may be taken for the minor but not both; neither is requierd) |
+ | |||
+ | == Questions and Answers == | ||
+ | This section will be updated as questions come in! |
Latest revision as of 16:19, 14 April 2025
This page is for information about the newly (March 2025) approved Transcriptable Concentration in Software Engineering and Minor in Software Engineering. It will formally be included in the ECE Handbook for Fall 2025.
Contents
Transcriptable Concentration
Definition and Clarification
A "Transcriptable Concentration" is a collection of courses which, if taken, will be noted on the transcript as a concentration of courses in a specific area (namely, software engineering). These courses should fit into a normal ECE major, and the Transcriptable Concentration is only available to students with a major in ECE.
Note: for ECE majors, this is different from the "Area of Concentration" requirements. The Areas of Concentration are:
- Computer Engineering and Digital Systems (CEDS)
- Signal Processing, Communications, and Control Systems (SPC&C)
- Solid-State Devices and Integrated Circuits (SSDIC)
- Engineering Physics (EP)
- Photonics (P)
Several of the courses for the Transcriptable Concentration in Software Engineering are also approved as area of concentration classes.
Requirements
The requirements for the Transcriptable Concentration in Software Engineering are given below. Note that the categories are based on where the courses would fit in the Electrical and Computer Engineering major requirements.
- ECE Concentration Elective #1 (Software Engineering Foundation):
- ECE 351: Software Engineering (Prof. Rahbar) (Fall 2025 offering is ECE 495.03)
- ECE Concentration Elective #2 (HCI/UX course): One of
- ECE 653/CS 653: Human-Centered Computing
- ECE 657/CS 586: Usable Security and Privacy
- ECE 590: Cross Platform Mobile Application Development
- ECE 490/495/496/590: Special Topic courses on HCI/UX (DUS approved)
- ECE Concentration Elective #3 (Systems course): One of
- ECE 353/CS 310: Introduction to Operating Systems
- ECE 356/CS 356: Computer Network Architecture
- ECE 553/CS 553: Compiler Construction
- ECE 560: Computer and Information Security
- ECE 566: Enterprise Storage Architecture
- ECE Free Elective (Software engr-focused course): One of (300+)
- Any course not already taken from requirement #2
- Any course not already taken from requirement #3
- ECE 458: Engineering Software for Maintainability
- ECE 568: Engineering Robust Server Software
- ECE 661: Computer Engineering Machine Learning and Deep Neural Nets
- ECE 490/495/496/590: Special Topic courses on Software Engineering (with DUS approval)
- ECE Extension Elective (Software-focused course): One of (300+)
- Any course from requirement #2 (not already taken)
- Any course from requirement #3 (not already taken)
- Any course from requirement #4 (not already taken)
- Other software-focused CompSci classes approved by the ECE DUS
Minor
Definition and Clarification
A minor is a collection of courses which, if taken, will be noted on the transcript as a minor. The minor is meant specifically for students outside of ECE. Furthermore, courses that are taken for the minor cannot be used to fulfill a student's individual major(s), so generally students pursuing a major in Computer Science would also not be able to complete this Minor in Software Engineering. Computer Science majors have several concentrations to choose from within their major - please consult https://cs.duke.edu/undergraduate/degrees for details - information about major concentrations is below the table.
Requirements
The requirements for the Minor in Software Engineering are given below. Note that the categories are not based on where the courses fit into an ECE major because ECE majors cannot obtain this minor.
The requirements are as follows:
- Software Engineering Minor Fundamental #1 (Software Engineering Foundation):
- ECE 351: Software Engineering (Prof. Rahbar) (Fall 2025 offering is ECE 495.03)
- Software Engineering Minor Fundamental #2 (HCI/UX course): One of
- ECE 653/CS 653: Human-Centered Computing
- ECE 657/CS 586: Usable Security and Privacy
- ECE 590: Cross Platform Mobile Application Development
- ECE 490/495/496/590: Special Topic courses on HCI/UX (DUS approved)
- Software Engineering Minor Fundamental #3 (Systems course): One of
- ECE 353/CS 310: Introduction to Operating Systems
- ECE 356/CS 356: Computer Network Architecture
- ECE 553/CS 553: Compiler Construction
- ECE 560: Computer and Information Security
- ECE 566: Enterprise Storage Architecture
- Software Engineering Minor Upper-Level Elective #1 (Software engr-focused course): One of (300+)
- Any course not already taken from requirement #2
- Any course not already taken from requirement #3
- ECE 458: Engineering Software for Maintainability
- ECE 568: Engineering Robust Server Software
- ECE 661: Computer Engineering Machine Learning and Deep Neural Nets
- ECE 490/495/496/590: Special Topic courses on Software Engineering (with DUS approval)
- Either COMPSCI 307: Software Design and Implementation or COMPSCI 308: Advanced Software Design and Implementation (only one of these can count towards the five courses; neither is required)
- COMPSCI 316: Introduction to Database Systems
- COMPSCI 330: Introduction to the Design and Analysis of Algorithms
- COMPSCI 333: Algorithms in the Real World
- COMPSCI 351: Introduction to Computer Security (can’t overlap ECE 560)
- COMPSCI 408: Delivering Software: From Concept to Client
- Software Engineering Minor Upper-Level Elective #1 (Software engr-focused course): One of (300+)
- Any course from requirement #2 (not already taken)
- Any course from requirement #3 (not already taken)
- Any course from requirement #4 (not already taken; as noted above, either CS 307 or CS 308 may be taken for the minor but not both; neither is requierd)
Questions and Answers
This section will be updated as questions come in!