Computer Science and Engineering - Undergraduate Programs
The Department of Computer Science and Engineering offers three programs of study leading to the bachelor's degree: the Bachelor of Science in Computer Science, the Bachelor of Science in Computer Engineering, and the Bachelor of Science in Software Engineering.
In all three programs of study, design experiences are included throughout the first three years of the curriculum and culminate in a major team-oriented project in the senior year that approximates an industrial work experience. All programs strive to provide students with opportunities to interface with the profession through avenues such as cooperative education programs, professional society activities, plant trips, special projects, and industry speakers programs.
Bachelor of Science in Computer Science (BSCS)
Program educational objectives of the Computer Science Program are what the program expects its graduates to attain within three to five years after graduation. Graduates of the UTA Computer Science Program will:
- Be technically competent and commence a computing career or advanced studies.
- Advance in the profession, especially in responsibility for the design of computer-based systems.
- Demonstrate leadership for a changing profession and world.
The BSCS program has been accredited since 2002 by the Computing Accreditation Commission of ABET, http://www.abet.org.
Bachelor of Science in Computer Engineering (BSCpE)
Program educational objectives of the Computer Engineering Program are what the program expects its graduates to attain within three to five years after graduation. Graduates of the UTA Computer Engineering Program will:
- Pursue productive careers in industry and organizations that focus on engineering of computing systems; or excel as graduate students and become effective researchers.
- Participate effectively in interdisciplinary engineering projects, adapt to changing technologies, and communicate effectively to become leaders in their profession.
- Engage in life-long learning, recognize social needs and constraints, and demonstrate high appreciation of legal, ethical, economic, environmental and social responsibilities.
The BSCpE program has been accredited since 1983 by the Engineering Accreditation Commission of ABET, http://www.abet.org.
Bachelor of Science Degree in Software Engineering (BSSE)
Program educational objectives of the Software Engineering Program are what the program expects its graduates to attain within three to five years after graduation. Graduates of the UTA Software Engineering Program will:
- Pursue the software profession with abilities to implement, test, and maintain software systems; or pursue graduate studies in software engineering or a related area.
- Advance in the software profession with abilities to identify needs and software requirements in an application domain, and design systems to meet the desired needs within realistic constraints.
- Demonstrate excellence and leadership in the software profession or a related area.
The BSSE program has been accredited since 2002 by the Engineering Accreditation Commission of ABET, http://www.abet.org.
Student Learning Outcomes
From the educational objectives of the BSCS program (described above), the department designed the programs to meet the following Program Outcomes, to ensure that its graduates are able to:
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
- Communicate effectively in a variety of professional contexts.
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
- Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
- Apply computer science theory and software development fundamentals to produce computing-based solutions.
From the educational objectives of the BSCpE and BSSE programs (described above), the department designed these programs to meet the following Program Outcomes, to ensure that its graduates have:
- an ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics
- an ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors
- an ability to communicate effectively with a range of audiences
- an ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts
- an ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives
- an ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions
- an ability to acquire and apply new knowledge as needed, using appropriate learning strategies.
Admission Requirements
Requirements for admission as a CS, CpE or SE pre-major or major are governed by the requirements stated under the College of Engineering section of this catalog. CS, CpE or SE pre-majors become majors upon completion of required pre-professional English, science, mathematics, and CSE courses, with a 2.25 or better grade point average.
All entering students majoring in computer science, computer engineering, or software engineering are permitted to enroll in general education and pre-professional courses for which they are qualified. Students completing these pre-professional courses must meet the academic requirements specified by the College of Engineering prior to applying for admission to the professional program. The Computer Science and Engineering Department requires a 2.25 overall grade point average on a 4.0 scale in each of three categories: (1) overall, (2) required science, mathematics, and engineering courses, and (3) required CSE courses. Students not in the professional program must have permission from the department chairperson to receive credit for courses listed in the professional program category. Application for admission to the professional program is made to the Department of Computer Science and Engineering.
Prior Preparation
The BSCS, BSCpE, and BSSE are four-year programs and requirements for the degrees are based upon prior high school preparation through either an honors or college track. More specifically, entering students are expected to have a background in mathematics through precalculus, high school chemistry, and programming in a high-level language such as C, C++, Java or Python.
Students who have not had the appropriate preparation should contact the departmental advising office for assistance in structuring a degree plan that will include leveling courses. Students requiring leveling courses may require a longer period of time to complete their undergraduate program.
Readiness Examinations
Students will be required to pass readiness examinations before enrolling in the courses listed below unless the course prerequisite was taken at UT Arlington and passed with a C or better grade. Students not passing the readiness examination must take the prerequisite course. A readiness examination may be taken only once per course and only before enrolling in any CSE courses. Additional information is available in the departmental office.
CSE 1320 | INTERMEDIATE PROGRAMMING | 3 |
CSE 1325 | OBJECT-ORIENTED PROGRAMMING | 3 |
Student Advising
CS, CpE, and SE pre-majors and majors are required to be advised by a departmental advisor each semester. Consult the departmental bulletin boards or Web site for advising hours. New and transfer students must also be advised prior to the beginning of the semester in which they first enroll.
Transfer Students and Transfer Credit
After admission and prior to registration, transfer students should contact the Department of Computer Science and Engineering for advising. At the time of advising, a transfer student must present to the undergraduate advisor an official transcript (or copy) from each school previously attended. Only the equivalent courses in a program accredited by ABET or equivalent freshman, sophomore, or general education courses accepted by the department chairperson can be counted toward a degree in computer science and engineering.
A student, once admitted to The University of Texas at Arlington and enrolled in the CS, CpE or SE program, cannot enroll in courses at another college or university and transfer those courses for credit toward a CS, CpE or SE degree without having obtained prior written permission from the chairperson of the Department of Computer Science and Engineering.
Cooperative Education Program
Cooperative education or Co-op programs are arrangements where students alternate periods of full-time employment with periods of full-time study, usually during the last two years of a degree program. The employment is directly related to the student's major and pays an attractive salary. Thus, Co-op students gain valuable career related experience before graduating, while earning a meaningful income. Cooperative education opportunities are plentiful for CS, CpE, and SE students.
Honors Programs
The Computer Science and Engineering Department encourages qualified CS, CpE, and SE majors to participate in the Honors College described elsewhere in this catalog. Projects may be pursued in any one of the areas of concentration within the Department of Computer Science and Engineering.
Graduate Degree Paths
Computing is a rapidly changing discipline requiring lifelong learning by its professionals. Completing a graduate degree enhances an individual's ability to assimilate and apply their knowledge and skills to meet on the job challenges and the needs of society. Pursuing a graduate degree on a full-time basis immediately after completing the baccalaureate is an attractive option for many students. Students are encouraged to discuss possibilities with a Graduate Advisor upon advancement to a Bachelor of Science professional program.
Fast Track Program for Master's Degree in Computer Engineering, Computer Science or Software Engineering
The Fast Track Program enables outstanding UT Arlington senior undergraduate students in Computer Engineering to satisfy degree requirements leading to a master's degree in Computer Engineering while completing their undergraduate studies. Similarly, the Fast Track Program enables Computer Science students to satisfy degree requirements leading to a master's degree in Computer Science, and Software Engineering students to satisfy degree requirements leading to a master's degree in Software Engineering.
When senior-level students are within 15 hours of completing their undergraduate degree requirements, they may take a minimum of six and a maximum of nine hours of graduate level coursework designated by the program to satisfy both undergraduate and graduate degree requirements. In the limiting case, a student completing the maximum allowable hours (9) while in undergraduate status would have to take only 21 additional hours to meet minimum requirements for a master's degree program (M.S.).
Interested UT Arlington undergraduate students should apply to the appropriate graduate program when they are within 30 hours of completing their bachelor's degrees. They must have completed at least 30 hours at UT Arlington, achieving a GPA of at least 3.25 in those courses, and have an overall GPA of 3.25 or better in all college courses. Additionally, they must have completed a set of specified undergraduate foundation courses with a minimum GPA of 3.3 in those courses. Contact the Undergraduate Advisor or Graduate Advisor in Computer Science and Engineering for more information about the program.
Direct Acceptance to Doctoral Programs from Bachelor's Degree Program
Excellent undergraduate students may qualify for acceptance to doctoral studies without the intermediate completion of a masters degree. Students should discuss the expected level of commitment and possibilities for long-term support with a Graduate Advisor.
Oral Communication and Computer Competency Requirement
CS, CpE, and SE students will satisfy the oral competency requirement by completing COMS 2302 PROFESSIONAL AND TECHNICAL COMMUNICATION FOR SCIENCE AND ENGINEERING. They will satisfy the computer use competency requirement by completing CSE 1205.
Course Offerings
All 1000- and 2000-level CSE courses are typically offered each semester and in the 11-week summer session. All 3000-level courses and required 4000-level courses are typically offered at least twice per year. Other 4000-level courses are typically offered only once per year unless there is a high demand. Refer to the CSE department bulletin boards or Web site for more specific and current information. The CSE department reserves the right to move students among equivalent sections of the same course.
Requirements for a Bachelor of Science Degree in Computer Science
The University Core Curriculum consists of 42 credit hours from University Core Curriculum.
General Education Courses | 24 | |
PROFESSIONAL AND TECHNICAL COMMUNICATION FOR SCIENCE AND ENGINEERING | ||
GOVERNMENT OF THE UNITED STATES | ||
STATE AND LOCAL GOVERNMENT | ||
History Electives (6 hours) 2 | ||
Approved Language, Philosophy and Culture elective 2 | ||
Approved Creative Arts elective 2 | ||
Program Requirements | ||
Pre-Professional Courses 1 | ||
UNIV 1131 | STUDENT SUCCESS | 1 |
or ENGR 1101 | ENTRANCE TO ENGINEERING FOR TRANSFER STUDENTS | |
ENGL 1301 | RHETORIC AND COMPOSITION I | 3 |
MATH 1426 | CALCULUS I (fulfills common core) | 4 |
MATH 2425 | CALCULUS II | 4 |
PHYS 1443 | GENERAL TECHNICAL PHYSICS I | 4 |
PHYS 1444 | GENERAL TECHNICAL PHYSICS II | 4 |
CSE 1106 | INTRODUCTION TO COMPUTER SCIENCE AND ENGINEERING | 1 |
CSE 1310 | INTRODUCTION TO COMPUTERS & PROGRAMMING | 3 |
CSE 1320 | INTERMEDIATE PROGRAMMING | 3 |
CSE 1325 | OBJECT-ORIENTED PROGRAMMING | 3 |
CSE 2312 | COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING | 3 |
CSE 2315 | DISCRETE STRUCTURES | 3 |
CSE 3318 | ALGORITHMS & DATA STRUCTURES | 3 |
Professional Courses 3 | ||
IE 3301 | ENGINEERING PROBABILITY | 3 |
or MATH 3313 | INTRODUCTION TO PROBABILITY | |
CSE 3302 | PROGRAMMING LANGUAGES | 3 |
CSE 3310 | FUNDAMENTALS OF SOFTWARE ENGINEERING | 3 |
CSE 3314 | PROFESSIONAL PRACTICES | 3 |
CSE 3315 | THEORETICAL CONCEPTS IN COMPUTER SCIENCE AND ENGINEERING | 3 |
CSE 3320 | OPERATING SYSTEMS | 3 |
CSE 3330 | DATABASE SYSTEMS AND FILE STRUCTURES | 3 |
CSE 3380 | LINEAR ALGEBRA FOR CSE | 3 |
or MATH 3330 | INTRODUCTION TO LINEAR ALGEBRA AND VECTOR SPACES | |
CSE 4308 | ARTIFICIAL INTELLIGENCE | 3 |
CSE 4316 | COMPUTER SYSTEM DESIGN PROJECT I | 3 |
CSE 4317 | COMPUTER SYSTEM DESIGN PROJECT II | 3 |
CSE 4344 | COMPUTER NETWORK ORGANIZATION | 3 |
Select one of the following: | 3 | |
COMPUTER GRAPHICS | ||
COMPILERS FOR ALGORITHMIC LANGUAGES | ||
AUTONOMOUS ROBOT DESIGN AND PROGRAMMING | ||
Select one of the following: | 3 | |
INFORMATION SECURITY | ||
INFORMATION SECURITY II | ||
SECURE PROGRAMMING | ||
Approved Mathematics elective 2 | 3 | |
Approved Technical electives 2 | 15 | |
Total Hours | 123 |
1 | All pre-professional courses must be completed with a C or better before enrolling in professional courses |
2 | A list of acceptable electives is available from the departmental office or Web site. |
3 | All prerequisites for professional courses must be completed with a C or better |
Note: Total hours will depend upon prior preparation and academic qualifications. Also, students who do not have two units of high school foreign language will be required to take modern and classical language courses in addition to the previously listed requirements.
Refer to the College of Engineering section of this catalog for information concerning the following topics: Preparation in High School for Admission to the College of Engineering, Admission to the College of Engineering, Admission to the Professional Program, Counseling, College of Engineering Academic Regulations, Transfer Policies, College of Engineering Probation, Repeating Course Policy and Academic Honesty.
Recommended Core Curriculum
Computer Science and Engineering students will satisfy the university core curriculum requirement by completing all General Education courses specified under “Requirements for a Bachelor of Science Degree in Computer Science” along with ENGL 1301, MATH 1426, MATH 2425, PHYS 1443 and PHYS 1444, which are within the Pre-Professional Program. The university core curriculum allows each degree plan to designate a component area to satisfy three hours of the core requirement. For the Computer Science degree plan, the designated component area is Mathematics and MATH 2326 is selected to satisfy the requirement.
Requirements for a Bachelor of Science Degree in Computer Engineering
The University Core Curriculum consists of 42 credit hours from University Core Curriculum.
General Eduction Courses | 24 | |
PROFESSIONAL AND TECHNICAL COMMUNICATION FOR SCIENCE AND ENGINEERING | ||
GOVERNMENT OF THE UNITED STATES | ||
STATE AND LOCAL GOVERNMENT | ||
History Electives (6 hours) 2 | ||
Approved Language, Philosophy and Culture elective 2 | ||
Approved Creative Arts elective 2 | ||
Program Requirements | ||
Pre-Professional Courses 1 | ||
UNIV 1131 | STUDENT SUCCESS | 1 |
or ENGR 1101 | ENTRANCE TO ENGINEERING FOR TRANSFER STUDENTS | |
ENGL 1301 | RHETORIC AND COMPOSITION I | 3 |
MATH 1426 | CALCULUS I | 4 |
MATH 2425 | CALCULUS II | 4 |
PHYS 1443 | GENERAL TECHNICAL PHYSICS I | 4 |
PHYS 1444 | GENERAL TECHNICAL PHYSICS II | 4 |
CSE 1106 | INTRODUCTION TO COMPUTER SCIENCE AND ENGINEERING | 1 |
CSE 1310 | INTRODUCTION TO COMPUTERS & PROGRAMMING | 3 |
CSE 1320 | INTERMEDIATE PROGRAMMING | 3 |
CSE 1325 | OBJECT-ORIENTED PROGRAMMING | 3 |
CSE 2312 | COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING | 3 |
CSE 2315 | DISCRETE STRUCTURES | 3 |
CSE 2440 | CIRCUIT ANALYSIS | 4 |
CSE 2441 | DIGITAL LOGIC DESIGN | 4 |
CSE 3318 | ALGORITHMS & DATA STRUCTURES | 3 |
Professional Courses 3 | ||
IE 3301 | ENGINEERING PROBABILITY | 3 |
or MATH 3313 | INTRODUCTION TO PROBABILITY | |
CSE 3313 | INTRODUCTION TO SIGNAL PROCESSING | 3 |
CSE 3314 | PROFESSIONAL PRACTICES | 3 |
CSE 3320 | OPERATING SYSTEMS | 3 |
CSE 3323 | ELECTRONICS | 3 |
CSE 3380 | LINEAR ALGEBRA FOR CSE | 3 |
or MATH 3330 | INTRODUCTION TO LINEAR ALGEBRA AND VECTOR SPACES | |
CSE 3442 | EMBEDDED SYSTEMS I | 4 |
CSE 4316 | COMPUTER SYSTEM DESIGN PROJECT I | 3 |
CSE 4317 | COMPUTER SYSTEM DESIGN PROJECT II | 3 |
CSE 4323 | QUANTITATIVE COMPUTER ARCHITECTURE | 3 |
CSE 4342 | EMBEDDED SYSTEMS II | 3 |
Approved Mathematics elective 2 | 3 | |
Approved Science elective 2 | 4 | |
Approved Technical elective 2 | 12 | |
Total Hours | 124 |
1 | All pre-professional courses must be completed with a C or better before enrolling in professional courses |
2 | A list of acceptable electives is available from the departmental office or Web site. |
3 | All prerequisites for professional courses must be completed with a C or better |
Note: Total hours will depend upon prior preparation and academic qualifications. Also, students who do not have two units of high school foreign language will be required to take modern and classical language courses in addition to the previously listed requirements.
Refer to the College of Engineering section of this catalog for information concerning the following topics: Preparation in High School for Admission to the College of Engineering, Admission to the College of Engineering, Admission to the Professional Program, Counseling, College of Engineering Academic Regulations, Transfer Policies, College of Engineering Probation, Repeating Course Policy and Academic Honesty.
Recommended Core Curriculum
Computer Science and Engineering students will satisfy the university core curriculum requirement by completing all General Education courses specified under “Requirements for a Bachelor of Science Degree in Computer Engineering” along with ENGL 1301, MATH 1426, MATH 2425, PHYS 1443 and PHYS 1444, which are within the Pre-Professional Program. The university core curriculum allows each degree plan to designate a component area to satisfy three hours of the core requirement. For the Computer Engineering degree plan, the designated component area is Mathematics and MATH 2326 is selected to satisfy the requirement.
Requirements for a Bachelor of Science Degree in Software Engineering
The University Core Curriculum consists of 42 credit hours from University Core Curriculum.
General Education Courses | 24 | |
PROFESSIONAL AND TECHNICAL COMMUNICATION FOR SCIENCE AND ENGINEERING | ||
GOVERNMENT OF THE UNITED STATES | ||
STATE AND LOCAL GOVERNMENT | ||
History Electives (6 hours) 2 | ||
Approved Language, Philosophy and Culture elective 2 | ||
Approved Creative Arts elective 2 | ||
Program Requirements | ||
Pre-Professional Courses 1 | ||
UNIV 1131 | STUDENT SUCCESS | 1 |
or ENGR 1101 | ENTRANCE TO ENGINEERING FOR TRANSFER STUDENTS | |
ENGL 1301 | RHETORIC AND COMPOSITION I | 3 |
MATH 1426 | CALCULUS I | 4 |
MATH 2425 | CALCULUS II | 4 |
PHYS 1443 | GENERAL TECHNICAL PHYSICS I | 4 |
PHYS 1444 | GENERAL TECHNICAL PHYSICS II | 4 |
CSE 1106 | INTRODUCTION TO COMPUTER SCIENCE AND ENGINEERING | 1 |
CSE 1310 | INTRODUCTION TO COMPUTERS & PROGRAMMING | 3 |
CSE 1320 | INTERMEDIATE PROGRAMMING | 3 |
CSE 1325 | OBJECT-ORIENTED PROGRAMMING | 3 |
CSE 2312 | COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING | 3 |
CSE 2315 | DISCRETE STRUCTURES | 3 |
CSE 3318 | ALGORITHMS & DATA STRUCTURES | 3 |
Professional Courses 3 | ||
IE 3301 | ENGINEERING PROBABILITY | 3 |
or MATH 3313 | INTRODUCTION TO PROBABILITY | |
CSE 3302 | PROGRAMMING LANGUAGES | 3 |
CSE 3310 | FUNDAMENTALS OF SOFTWARE ENGINEERING | 3 |
CSE 3311 | OBJECT-ORIENTED SOFTWARE ENGINEERING | 3 |
CSE 3314 | PROFESSIONAL PRACTICES | 3 |
CSE 3315 | THEORETICAL CONCEPTS IN COMPUTER SCIENCE AND ENGINEERING | 3 |
CSE 3320 | OPERATING SYSTEMS | 3 |
CSE 3330 | DATABASE SYSTEMS AND FILE STRUCTURES | 3 |
CSE 3380 | LINEAR ALGEBRA FOR CSE | 3 |
or MATH 3330 | INTRODUCTION TO LINEAR ALGEBRA AND VECTOR SPACES | |
CSE 4316 | COMPUTER SYSTEM DESIGN PROJECT I | 3 |
CSE 4317 | COMPUTER SYSTEM DESIGN PROJECT II | 3 |
CSE 4321 | SOFTWARE TESTING & MAINTENANCE | 3 |
CSE 4322 | SOFTWARE PROJECT MANAGEMENT | 3 |
CSE 4361 | SOFTWARE DESIGN PATTERNS | 3 |
CSE 4380 | INFORMATION SECURITY | 3 |
Approved Mathematics elective 2 | 3 | |
Approved Science elective 2 | 4 | |
Approved Technical electives 2 | 9 | |
Total Hours | 124 |
1 | All pre-professional courses must be completed with a C or better before enrolling in professional courses |
2 | A list of acceptable electives is available from the departmental office or Web site. |
3 | All prerequisites for professional courses must be completed with a C or better |
Note: Total hours will depend upon prior preparation and academic qualifications. Also, students who do not have two units of high school foreign language will be required to take modern and classical language courses in addition to the previously listed requirements
Refer to the College of Engineering section of this catalog for information concerning the following topics: Preparation in High School for Admission to the College of Engineering, Admission to the College of Engineering, Admission into the Professional Program, Advising, College of Engineering Academic Regulations, Transfer Policies, College of Engineering Probation, Repeating Course Policy and Academic Honesty.
Recommended Core Curriculum
Computer Science and Engineering students will satisfy the university core curriculum requirement by completing all General Education courses specified under “Requirements for a Bachelor of Science Degree in Software Engineering” along with ENGL 1301, MATH 1426, MATH 2425, PHYS 1443 and PHYS 1444, which are within the Pre-Professional Program. The university core curriculum allows each degree plan to designate a component area to satisfy three hours of the core requirement. For the Software Engineering degree plan, the designated component area is Mathematics and MATH 2326 is selected to satisfy the requirement.
Minor in Computer Science
To receive a minor in Computer Science, a student must not be receiving his/her major degree from the department and must complete all courses listed with a grade of C or better in each course. Any substitutions must be approved in advance by the department chairperson.
Requirements for a Minor in Computer Science
To receive a minor in Computer Science, a student must complete the following courses with a grade of C or better in each:
CSE 1320 | INTERMEDIATE PROGRAMMING | 3 |
CSE 1325 | OBJECT-ORIENTED PROGRAMMING | 3 |
CSE 2315 | DISCRETE STRUCTURES | 3 |
CSE 3318 | ALGORITHMS & DATA STRUCTURES | 3 |
Any two 3000 or 4000 level courses with a grade of C or better in each as well as all required prerequisites for the chosen courses | 6 | |
Total Hours | 18 |
1 | Grade of C or better in each, as well as all required prerequisites for the chosen courses. |
Undergraduate Certificate in Cyber Security
Program Objective
The Certificate in Cyber Security is offered through the Computer Science and Engineering Department and will educate undergraduate students in the knowledge and skills required to identify and proactively mitigate potential cyber security risks. Students will learn about cryptographic techniques and public key infrastructure, secure programming techniques, and computer network security including intrusion detection devices and firewalls. This program aims at the dual goal of providing industry with a knowledgeable, locally available workforce while developing career opportunities for its participants. The Certificate in Cyber Security will be awarded concurrently with an undergraduate degree.
Admission Requirements
The certificate is open to all degree-seeking students.
Academic Requirements
Students must complete 15 hours of coursework as outlined below. A combined GPA of 3.0 or better must be earned on all courses used to satisfy the certificate requirements.
Required classes | 15 | |
CSE 4340 | FUNDAMENTALS OF WIRELESS NETWORKS | 3 |
CSE 4344 | COMPUTER NETWORK ORGANIZATION | 3 |
or CSE 4352 | IOT AND NETWORKING | |
CSE 4380 | INFORMATION SECURITY | 3 |
CSE 4381 | INFORMATION SECURITY II | 3 |
CSE 4382 | SECURE PROGRAMMING | 3 |
*Any course substitution has to be approved beforehand by the certificate coordinator.
COURSE DESCRIPTIONS
CSE 4340 FUNDAMENTALS OF WIRELESS NETWORKS
Fundamentals of wireless networks, radio spectrum, coding and modulation, multiple access techniques, antennas, noise and interference, channels, demodulation and decoding, error rates and capacity, link budgets, medium access control, rate adaption, and wireless LAN/PAN, ad-hoc, and sensor networks. Prerequisite: Admitted into an Engineering Professional Program. C or better in CSE 4344 or CSE 4352 or consent of instructor.
CSE 4344 COMPUTER NETWORK ORGANIZATION
Design and analysis of computer networks. Emphasis on the OSI architecture but discusses other schemes (e.g., ARPAnet). Data link control, local networks, protocols/architectures, network access protocols, transport protocols, internetworking, and ISDN. Prerequisite: Admitted into an Engineering Professional Program. C or better in CSE 3320.
CSE 4352 IOT AND NETWORKING
Study of Ethernet stacks and layers, full implementation of an Ethernet stack and a basic low-latency, small footprint IoT protocol on bare metal embedded devices and embedded Linux systems. Prerequisite: Admitted into an Engineering Professional Program. C or better in CSE 3442.
CSE 4380 INFORMATION SECURITY
Hands-on introduction to the basics of security. Includes system security, buffer overflows, a high-level overview of cryptography, firewalls and intrusion detection/prevention, malware, penetration testing, forensics, and system administration. Prerequisite: Admitted into an Engineering Professional Program. C or better in CSE 3320.
CSE 4381 INFORMATION SECURITY II
Deeper study of the fundamentals of security, including symmetric key cryptography, public key cryptography, cryptographic protocols, malware design, network attacks and defenses, data security, privacy, and wireless security. Prerequisite: Admitted into an Engineering Professional Program. C or better in CSE 3320 and C or better in CSE 4344 (or concurrently).
CSE 4382 SECURE PROGRAMMING
This course is an introduction to methods of secure software design and development. Students will learn about the major security problems found in software today. Using this knowledge, they will work in teams to find these bugs in software, fix the bugs, and design software so that it has fewer security problems. Static analysis tools will be a core part of the class, but students will also be exposed to black box testing tools. Topics will include input validation, buffer overflow prevention, error handling, web application issues, and XML. Prerequisite: Admitted into an Engineering Professional Program. C or better in CSE 3320.
Undergraduate Certificate in Unmanned Vehicle Systems
Program Objective
The Certificate in UVS (Unmanned Vehicle Systems) is offered through the Computer Science and Engineering Department and will educate undergraduate students in the knowledge and skills required for design, development and operation of UVS including UAS (Unmanned Aircraft Systems), UGS (Unmanned Ground Systems), and UMS (Unmanned Maritime Systems). The certificate program will emphasize the common aspects of UVS such as sensors, actuators, communications, and more importantly, decision-making capabilities (autonomy). This program aims at the dual goal of providing the UVS industry with a knowledgeable, locally available workforce and developing career opportunities for its participants. To this end, the Certificate in UVS will be awarded concurrently with an undergraduate degree. More information about this program is available on the College of Engineering website.
Admission Requirements
The certificate is open to all degree-seeking students.
Academic Requirements
Students must complete 15-16 hours of coursework as outlined below that include 6 hours of a core curriculum that is interdisciplinary and forms the basis of a common core in UVS Certificate and 9 hours of discipline specific curriculum. A combined GPA of 3.0 or better must be earned on all courses used to satisfy the certificate requirements.
For Computer Science majors:
Required classes | ||
CSE 4378 | INTRODUCTION TO UNMANNED VEHICLE SYSTEMS | 3 |
CSE 4379 | UNMANNED VEHICLE SYSTEM DEVELOPMENT | 3 |
CSE 4308 | ARTIFICIAL INTELLIGENCE | 3 |
CSE 4360 | AUTONOMOUS ROBOT DESIGN AND PROGRAMMING | 3 |
3 credit hours from the following list | 3 | |
FUNDAMENTALS OF MACHINE LEARNING | ||
FUNDAMENTALS OF COMPUTER VISION | ||
FUNDAMENTALS OF WIRELESS NETWORKS | ||
Total Hours | 15 |
*Any course substitution has to be approved beforehand by the certificate coordinator.
For Computer Engineering majors:
Required classes | ||
CSE 4378 | INTRODUCTION TO UNMANNED VEHICLE SYSTEMS | 3 |
CSE 4379 | UNMANNED VEHICLE SYSTEM DEVELOPMENT | 3 |
CSE 3313 | INTRODUCTION TO SIGNAL PROCESSING | 3 |
CSE 3442 | EMBEDDED SYSTEMS I | 4 |
3 credit hours from the following list | 3 | |
EMBEDDED SYSTEMS II | ||
AUTONOMOUS ROBOT DESIGN AND PROGRAMMING | ||
ARTIFICIAL INTELLIGENCE | ||
Total Hours | 16 |
*Any course substitution has to be approved beforehand by the certificate coordinator.
COURSE DESCRIPTIONS
CSE 4378 Introduction to Unmanned Vehicle Systems
Introduction to UVS (Unmanned Vehicle Systems) such as UAS (Unmanned Aircraft Systems), UGS (Unmanned Ground System) and UMS (Unmanned Maritime System), their history, missions, capabilities, types, configurations, subsystems, and the disciplines needed for UVS development and operation. UVS missions could include student competitions sponsored by various technical organizations. This course is team-taught by engineering faculty. Prerequisite: Admission to a professional engineering or science program.
CSE 4379 Unmanned Vehicle System Development
Introduction to the technologies needed to create an UVS (Unmanned Vehicle System). Integration of these technologies (embodied as a set of sensors, actuators, computing and mobility platform sub-systems) into a functioning UVS through teamwork. UVS could be designed to compete in a student competition sponsored by various technical organizations or to support a specific mission or function defined by the instructors. This course is team-taught by engineering faculty. Prerequisite: B or better in CSE 4378 and admission to the UVS certificate program.
CSE 4308 Artificial Intelligence
An introduction to the field of artificial intelligence studying basic techniques such as heuristic search, deduction, learning, problem solving, knowledge representation, uncertainty reasoning and symbolic programming languages such as LISP. Application areas may include intelligent agents, data mining, natural language, machine vision, planning and expert systems. Prerequisite: Admitted into an Engineering Professional Program. C or better in each of the following: CSE 3318 and (IE 3301 or MATH 3313).
CSE 4360 Autonomous Robot Design and Programming
An introduction to robotics and the design and programming of autonomous robot systems. Topics include basic kinematics, dynamics, and control, as well as sensors, knowledge representation, and programming techniques. Course work includes individual and group projects involving the building and programming of simulated and real robots. Prerequisite: Admitted into an Engineering Professional Program. C or better in each of the following: CSE 3318, CSE 3320 and CSE 3380 (or MATH 3330).
CSE 4309 Fundamentals of Machine Learning
This course offers an introduction to machine learning. Topics include naive Bayes classifiers, linear regression, linear classifiers, neural networks and backpropagation, kernel methods, decision trees, feature selection, clustering, and reinforcement learning. A strong programming background is assumed, as well as familiarity with linear algebra (vector and matrix operations), and knowledge of basic probability theory and statistics. Prerequisite: Admitted into an Engineering Professional Program. C or better in each of the following: CSE 3318, IE 3301 or MATH 3313, and CSE 3380 or MATH 3330.
CSE 4310 Fundamentals of Computer Vision
This course introduces students to basic concepts and techniques in computer vision. The topics covered include morphological operations, connected component analysis, image filters, edge detection, feature extraction, object detection, object recognition, tracking, gesture recognition, image formation and camera models, calibration, and stereo vision. A strong programming background is assumed, as well as familiarity with linear algebra (vector and matrix operations), and knowledge of basic probability theory and statistics. Prerequisite: Admitted into an Engineering Professional Program. C or better in each of the following: CSE 3318, IE 3301 or MATH 3313, and CSE 3380 or MATH 3330.
CSE 4340 Fundamentals of Wireless Networks
Fundamentals of wireless networks, radio spectrum, coding and modulation, multiple access techniques, antennas, noise and interference, channels, demodulation and decoding, error rates and capacity, link budgets, medium access control, rate adaption, and wireless LAN/PAN, ad-hoc, and sensor networks. Prerequisite: Admitted into an Engineering Professional Program. C or better in CSE 4344 or CSE 4352 or consent of instructor.
CSE 3313 Introduction to Signal Processing
Examines models for presentation and processing of digital signals. Sampling theorem, correlation and convolution, time and frequency analysis of linear systems, Fourier transform, Z-transform, design of digital filters structures for discrete time systems. Prerequisite: C or better in each of the following: CSE 3318 and either CSE 3380 or MATH 3330.
CSE 3442 – Embedded Systems I
Design of microcontroller-based systems, including microprocessor programming, component and system architectures, memory interfacing, asynchronous and synchronous serial interfaces, timer-based peripherals, analog to digital (A/D) and digital to analog (D/A) converters, and typical applications. Prerequisites: C or better in each of the following: CSE 2312, CSE 2440 and CSE 2441.
CSE 4342 – Embedded Systems II
Advanced course in design of microcontroller-based systems. Emphasis is on the application of microcontrollers to real-time problems. Topics include the study of the differences in bare metal and embedded Linux implementations, developing applications including PID controllers, and system aspects such as bootloader design and watchdog supervision. Prerequisites: C or better in each of the following: CSE 3323, CSE 3442, and CSE 3313.
Undergraduate Certificate in Embedded Systems
Program Objective
The Undergraduate Certificate in Embedded Systems is offered through the Computer Science and Engineering Department and will educate undergraduate students in the knowledge and skills required to design and test embedded systems, using microcontrollers, system-on-chip, and FPGA devices. Topics include multi-threaded programming on bare-metal, custom real-time operating systems, and embedded Linux systems; implementation of IP stacks for computer networking; network and wireless protocol development for Internet of Things devices; design of real-time operating systems; implementation of RISC processors in FPGA devices; design of advanced digital logic systems; analysis and design of microprocessor systems; and control of systems with electromechanical actuators and sensors. The Certificate in Embedded Systems will be awarded concurrently with an undergraduate degree.
This certificate is managed by:
- Jason Losh, Program Coordinator
- Linda Barasch, Undergraduate Advisor
Admission Requirements
The certificate is open to all degree-seeking students.
Academic Requirements
Students must complete 16 hours of coursework as outlined below. A combined GPA of 3.0 or better must be earned on all courses used to satisfy the certificate requirements.
Course Requirements
The course requirements for the Embedded Systems certificate are:
CSE 3442 | EMBEDDED SYSTEMS I | 4 |
CSE 4342 | EMBEDDED SYSTEMS II | 3 |
and 3 of the following courses: | 9 | |
IOT AND NETWORKING | ||
REAL-TIME OPERATING SYSTEMS | ||
ELECTROMECHANICAL SYSTEMS AND SENSORS | ||
SYSTEM ON CHIP (SOC) DESIGN | ||
ADVANCED DIGITAL LOGIC DESIGN | ||
RISC PROCESSOR DESIGN | ||
Total Hours | 16 |
*Any course substitution has to be approved beforehand by the certificate coordinator.
Faculty
The UTA Faculty contributing to this certificate program are:
- Jason Losh, Director of Undergraduate Computer Engineering Program
- Bill Carroll
Other faculty members of CSE will be contributing to the certificate programs through the existing courses included in this certificate program.
Laboratory information can be found via cse.uta.edu under the Faculty Research heading.
Course Descriptions
CSE 3442 – Embedded Systems I
Design of microcontroller-based systems, including microprocessor programming, component and system architectures, memory interfacing, asynchronous and synchronous serial interfaces, timer-based peripherals, analog to digital (A/D) and digital to analog (D/A) converters, and typical applications. Prerequisites: C or better in each of the following: CSE 2312, CSE 2440 and CSE 2441.
CSE 4342 – Embedded Systems II
Advanced course in design of microcontroller-based systems. Emphasis is on the application of microcontrollers to real-time problems. Topics include the study of the differences in bare metal and embedded Linux implementations, developing applications including PID controllers, and system aspects such as bootloader design and watchdog supervision. Prerequisites: C or better in each of the following: CSE 3323, CSE 3442, and CSE 3313.
CSE 4352 – IoT and Networking
Study of protocol stacks and layers, implementation of an Ethernet protocol stack, and design of a basic low-latency, small footprint IoT protocol on bare metal embedded devices and embedded Linux systems. Prerequisite: C or better in CSE 3442.
CSE 4354 – Real-time Operating Systems
Implementation of a real-time operating system with cooperative and preemption context switching, priority scheduling, semaphores, message queues, and inter-process communications on bare metal microcontrollers. Prerequisite: C or better in CSE 3442.
CSE 4355 – Electromechanical Systems and Sensors
Applications of electronics and microcontrollers to the control of electromechanical systems. Topics include driving brushless motors (including stepper motors), brushed permanent magnet motors, and other mechanical actuators; the use of the sensors including IMU, LIDAR, RADAR, GPS, capacitive/inductive sensing, laser distance, thermocouples, strain, pressure, optical encoders, and Hall devices; and control applications. Prerequisite: C or better in CSE 3323 and CSE 3442.
CSE 4356 – System on Chip (SoC) Design
Programming and implementation of FPGA-based system on chip solutions, including processor subsystems, FPGA fabric, processor to FPGA bridges, and device drivers. Prerequisite: C or better in CSE 3442.
CSE 4357 – Advanced Digital Logic Design
Hierarchical organization, design, simulation, implementation, and testing of digital systems. Industrial standard computer-aided design tools including hardware description languages (HDLs), field-programmable gate arrays (FPGAs), and other prototyping hardware and software will be employed. Design of arithmetic and other algorithmic processes will be covered. A term project will be required. Prerequisite: C or better in CSE 3442.
CSE 4372 – RISC Processor Design
Design of a RISC processor, based on RISC V and custom instruction set architectures with implementation on an FPGA target for test and verification. Prerequisite: C or better in CSE 3442.