Difference between revisions of "ECE Registration/Software Engineering"
(→Minor) |
|||
Line 2: | Line 2: | ||
== Transcriptable Concentration == | == 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. | 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 are as follows: | The requirements are as follows: | ||
# ECE Concentration Elective #1 (Software Engineering Foundation): | # ECE Concentration Elective #1 (Software Engineering Foundation): | ||
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 == | ||
+ | |||
+ | === 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 '''not''' be able to complete the 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. | 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 the 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 are as follows: | The requirements are as follows: | ||
# Software Engineering Minor Fundamental #1 (Software Engineering Foundation): | # Software Engineering Minor Fundamental #1 (Software Engineering Foundation): | ||
Line 41: | Line 55: | ||
#* 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 68: | ||
#* 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; neither is required) | ||
#* COMPSCI 316: Introduction to Database Systems | #* COMPSCI 316: Introduction to Database Systems |
Revision as of 15:44, 14 April 2025
This page is a placeholder for information about the newly (March 2025) approved Transcriptable Concentration in Software Engineering and Minor in Software Engineering.
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 are as follows:
- 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 not be able to complete the 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 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; 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
- 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)