Sign In

Electrical Engineering Degree Programs and Courses

General Information

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sit amet est non enim egestas auctor. Fusce at erat leo, nec adipiscing nisl. Fusce ligula sapien, volutpat ac volutpat sed, pharetra at quam. Ut at justo erat. Nam ipsum arcu, varius quis consectetur in, malesuada sit amet lorem. Quisque aliquet mollis augue, ut aliquet felis dictum in. Sed diam risus, aliquam nec laoreet sed, sagittis quis risus. Quisque est justo, fringilla quis ultricies in, adipiscing non velit. Vestibulum id metus non sapien pretium facilisis.

Etiam iaculis viverra urna vitae consequat. Proin ac turpis est, eget egestas tortor. Sed gravida metus quis nisl tincidunt sit amet fringilla leo lacinia. Fusce adipiscing diam ac enim facilisis at tristique nulla ultricies. Etiam accumsan aliquam purus sed aliquet. Nam non enim sollicitudin tortor euismod condimentum. Aenean nunc dolor, gravida vel pharetra nec, elementum egestas nibh. Phasellus sit amet adipiscing odio. Aenean nec consequat eros. Duis aliquet, sem a placerat facilisis, purus eros lobortis nibh, at dignissim ligula nulla quis dolor. Nullam fringilla odio nec velit placerat ullamcorper. Cras nisl neque, sagittis at gravida non, adipiscing et magna. Nam velit mauris, faucibus at fermentum non, fringilla vitae magna. Aliquam sit amet sem arcu, luctus placerat risus. Cras at purus nunc, pellentesque tincidunt eros. Donec quis pretium lorem.

Degrees Offered

 

 Bachelor of Science Degree Program (BSEE)

 
  
General Concentration
Computer Engineering Concentration
Microelectronics (VLSI) Concentration

 

 Program Courses

 
  
  
  
Course DescriptionFilter
  
  
Course Number
Course Name
Credit Hours3
Course Description
Co-Requisites
Prerequisites
 
Course NumberCMP 101
Course NameFundamentals of Computer and Information Systems
Credit Hours3
Course Description
This course is designed to introduce students to fundamentals of computer science and technologies. Topics will cover brief history of computer and the information age, word processing, INTERNET access, operating system, computer structure, electronic storage, database fundamentals, computer network. Impact of computers on the individual and society and application of computer in different areas are also introduced.
Co-Requisites
Prerequisites

Course NumberCMP 102
Course NameIntroduction to Programming I
Credit Hours3
Course Description
This course concentrates on the process of computer problem solving. The idea of an algorithm is covered and flow charting skills are taught as a means of logical problem solving. The core elements of high level language are also taught. The student is expected to solve routine programming problems.
Co-Requisites
Prerequisites
 
Course NumberCMP 104
Course NameIntroduction to Computers & Ethics
Credit Hours3
Course Description
This course is designed to introduce students to fundamentals of computer science and technologies. Topics will cover brief history of computer and the information age, Algorithms, word processing, INTERNET access, operating system, computer structure, electronic storage, database fundamentals, computer network. Impact of computers on the individual and society and application of computer in different areas are also introduced.
Co-Requisites
Prerequisites

Course NumberCMP 109
Course NameIntroduction to Programming II
Credit Hours3
Course Description
A continuation of the subject matter of CMP 102. More advanced programming concepts are covered here. Topics include control structures, arrays, procedures, files, and recursion. Several programming exercises are assigned.
Co-Requisites
PrerequisitesCMP 102
 
Course NumberCMP 203
Course NameDiscrete Structures
Credit Hours3
Course Description
Introduction to the use of formal mathematical structures to represent problems and computational processes. Develop an understanding of how to read, understand, and construct mathematical proofs and theorems. Introduce various problem-solving strategies such as thinking algorithmically (iterative and recursive) to solving problems in computing applications. Topics covered include (1) functions, relations, and sets, (2) basic logic, (3) proof techniques, (4) basics of counting, (5) graphs and trees, and (6) number systems.
Co-Requisites
PrerequisitesCMP 102, MTH 112 or higher

Course NumberCMP 206
Course NameVisual Programming I
Credit Hours3
Course Description
This course introduces fundamental concepts of visual programming languages such as Visual Basic, Visual C#, or Visual Java. Emphasis will be placed on solving real world problems. Students will be asked to design and code using these languages in an efficient manner.
Co-Requisites
PrerequisitesCMP 102
 
Course NumberCMP 209
Course NameIntroduction to Digital Logic Design
Credit Hours3
Course Description
This course is designed to introduce the logic design concepts for both combinatorial and sequential circuits. The binary number systems, the Boolean algebra, concepts of optimization of logic equations using various methods are covered in depth. Various types of integrated systems and components such as flip-flops, registers, counters are covered. Students will learn the basics as well as implementation skills upon completion of this course.
Co-Requisites
PrerequisitesCMP 203

Course NumberCMP 215
Course NameData Structures
Credit Hours3
Course Description
This course concentrates on the ways data can be organized and accessed. The idea of abstract data types is introduced and real data structures such as lists, linked lists, record, stacks, trees, and graphs are explained in terms of their basic structure and in the ways that they can be used in practical programming problems. Several programming assignments are required.
Co-Requisites
Prerequisites(CMP 203, 109) or (EE 109, 204)
 
Course NumberCMP 304
Course NameIntroduction to Web Programming
Credit Hours3
Course Description
This course is designed to introduce undergraduate students to the basic concepts of the World Wide Web (HTTP, HTML, browser software), languages and techniques used for web programming (for example: Perl, Java, CGI), data transfer over the web (associated tools and techniques), and the tools available in the web environment. By the end of the course the students are expected to learn programming in HTML, Perl and to be able to develop interactive web pages and applications.
Co-Requisites
Prerequisites

Course NumberCMP 305
Course NameNumerical Analysis
Credit Hours3
Course Description
This course will investigate the use of several fundamental algorithms to solve mathematical problems common to science and engineering applications. Methods illustrated will include numerical interpolation, integration, and the solution of differential equations. Programming assignments will be made to illustrate the numerical concepts.
Co-Requisites
Prerequisites(MTH 126 or 146) and CMP 109
 
Course NumberCMP 306
Course NameVisual Programming II
Credit Hours3
Course Description
This undergraduate course is designed to introduce advanced visual programming skills in Java platform. The main topics include Java network programming (RMI, servlets, socket programming), JDBC, Java Beans and EJBs, media and Java 2-D graphics. Students will learn to use Java technologies in the real world and write numerous, nontrivial programs throughout the semester to demonstrate mastery of the concepts discussed in the classroom.
Co-Requisites
PrerequisitesCMP 206

Course NumberCMP 309
Course NameComputer Graphics
Credit Hours3
Course Description
Computer Graphics covers the means of visually displaying data. Hardware graphics systems are discussed, as well as the data structures and software techniques used in setting up graphical displays.
Co-Requisites
PrerequisitesCMP 206, 215, MTH 237
 
Course NumberCMP 311
Course NameIntroduction to Simulation
Credit Hours3
Course Description
The basics of simulating real world situations with the computer form the content of this course. Mathematical modeling is discussed; elements of probability and statistics, Monte Carlo sampling, and uses of simulation languages are also undertaken. Programming assignments are made to illustrate these basic concepts.
Co-Requisites
PrerequisitesCMP 215, 305

Course NumberCMP 314
Course NameAdvanced Programming
Credit Hours3
Course Description
Introduces more advanced elements of programming, such as user interface design, event driven programming, object-oriented programming, web-based programming, computer graphics, and database access. Use of a development environment to design, code, test, and debug advanced programs, including multi-file source projects. Also provide the opportunity for students to work as teams on application projects. Several programming assignments are required. Microsoft Visual Studio, C#, and the .NET Framework will be the programming environment for this semester.
Co-Requisites
PrerequisitesCMP 109, 306
 
Course NumberCMP 315
Course NameIntroduction to Game Programming
Credit Hours3
Course Description
The course is designed to introduce undergraduate students to the basic concepts of game design and development, hands-on exposure to the different techniques used for game programming, implementation on different target devices/platforms using the available tools and programming languages such as java, C# in the game environment. By the end of the course the students are expected to learn the concepts of game design, development and implementation using different programming languages/tools available.
Co-Requisites
PrerequisitesCMP 206, 215, 314.

Course NumberCMP 320
Course NameIntroduction to Multimedia Authoring
Credit Hours3
Course Description
This course focuses on the basic concepts of computer-based multimedia production. Topics included are essentials of interactive multimedia authoring, design planning of a multimedia production, building blocks for multimedia productions (text, graphics, sound and video), introduction to HyperCard and HyperCard objects (buttons, fields, card, background), use of Hypertalk programming language, and introduction to the Authorware authoring tool. Each student is required to complete a semester project.
Co-Requisites
PrerequisitesCMP 215
 
Course NumberCMP 321
Course NamePrinciples of Information Security
Credit Hours3
Course Description
Introduce students to the principles of information security and assurance as applied to computer networks. This course includes the foundation for understanding the key issues associated with protecting information security assets, determining levels of protection and response to security incidents, and designing a consistent, reasonable information system with appropriate intrusion detection and reporting features. Students will be exposed to the spectrum of security activities, methods, tools, and procedures. Coverage will include inspection and protection of information assets, identification of appropriate pre/post-incident procedures, and technical/managerial responses.
Co-Requisites
PrerequisitesCMP 104

Course NumberCMP 328
Course NameObject Oriented Design with UML
Credit Hours3
Course Description
This course introduces students to UML (Unified Modeling Language) and its comprehensive notation for communicating the requirements, architecture, implementation, deployment, and states of a system. The students will learn both the concepts and hands-on skills of Object Oriented Analysis and Design using UML. The course also deals with the implementation of the UML design in a programming language.
Co-Requisites
PrerequisitesCMP 109
 
Course NumberCMP 330
Course NameComputers in Society
Credit Hours3
Course Description
This course examines computing as a social process with emphasis on ethical issues and the social impact of computerization on local and global organizations.
Co-Requisites
PrerequisitesJunior standing

Course NumberCMP 381
Course NameComputer Organization
Credit Hours3
Course Description
The primary hardware and software components of a computer system are addressed in this course. Topics covered include digital logic and data representation, computer architecture and organization, interfacing and I/O strategies, memory architecture, functional organization, multiprocessing, performance enhancements, distributed architectures, devices, and directions in computing. The organization of the CPU, main memory, interrupt structure, and addressing techniques as well as assemblers and linker/loaders are also taught.
Co-Requisites
PrerequisitesCMP 209
 
Course NumberCMP 384
Course NameOperating Systems
Credit Hours3
Course Description
The use of the operating system and other software systems is the core content of this course. Topics include tasking and processes, scheduling, task coordination, device management, file systems, security, and networking.
Co-Requisites
Prerequisites(CMP 381 and junior standing) or EE 320

Course NumberCMP 401
Course NameSoftware Engineering
Credit Hours3
Course Description
This course covers the ideas involved in large scale programming design. The software life cycle is covered along with design specifications, verification and validation, and the use of various supporting CASE tools. The student is expected to design and document a software system of some kind and may be asked to code some of the design.
Co-Requisites
PrerequisitesCMP 215, 384 and senior standing
 
Course NumberCMP 403
Course NameSenior Problems
Credit Hours3
Course Description
During this course, the student is expected to code a single, meaningful project begun earlier in CMP 401 and present the results of this project in class. This project must meet set standards of design and documentation. Topics of professional ethics and responsibilities will also be discussed.
Co-Requisites
PrerequisitesCMP 401 and senior standing.

Course NumberCMP 405
Course NameLINUX with Application Programming
Credit Hours3
Course Description
This course deals with advanced skills related to Linux operating systems, programming environments, interfaces, programming tools, and utilities. This course will offer detailed programming/scripting sills using different shells, viz., Bourne, C Shell, Bash, tcsh, Perl, etc. In this course, the students will learn Linux virtualization and emulation, GNU tools, sockets programming.
Co-Requisites
PrerequisitesCMP 314, 328
 
Course NumberCMP 408
Course NameWireless Computing
Credit Hours3
Course Description
Advances and new applications in the expanding field of telecommunications and wireless computing and networks are investigated. Methodologies and tools for network planning, implementation, management, maintenance, and security are described. Topics include asynchronous transfer mode (ATM), synchronous optical network/synchronous digital hierarchy (SONET/SDH), Gigabit Ethernet, the Open Systems Interconnection (OSI), Reference Model, transmission media, second-generation and third generation wireless networks, network protocols, and networking performance. Trends in standardization, internet working, and the development of optical networks; WLANs (Wireless Local Area Networks), WMANs (Wireless Metropolitan Networks) and WWANs (Wireless Wide Area Networks) and residential networking solutions that feature cable, DSL (Digital Subscriber Line), Power line and satellite technologies are considered.
Co-Requisites
PrerequisitesCMP 381

Course NumberCMP 409
Course NameIntroduction to Digital Image Processing
Credit Hours3
Course Description
Focus on the fundamental concepts of image processing and computer vision; it’s principles in signal processing, the theory of feature extraction and image analysis, its relation to human vision and technology for implementation. Introduce students to MATLAB image processing toolbox. Students will understand how to acquire and process images, the nature and operation of basic image processing algorithms and their basis.
Co-Requisites
PrerequisitesSenior Standing
 
Course NumberCMP 410
Course NameSeminar
Credit Hours3
Course Description
This course is intended to enhance students’ overall skills towards professional development. This includes writing and presenting technical papers utilizing technical digital/library resources, attending lectures from experts in the industry, visiting computer science related industries. The students will also get the opportunity to work in a team on application projects. The topics will be based on current trends in the industry.
Co-Requisites
PrerequisitesSenior standing

Course NumberCMP 414
Course NameIntroduction to Forensic Computing
Credit Hours3
Course Description
The course introduces the undergraduate students to the study of computer forensics, including the concepts, tools and techniques necessary for identification, retrieval, preservation, analysis and documentation of information from electronic media in matters of suspected unauthorized access to confidential information, intellectual property crimes, fraud, piracy, industrial espionage, decryption, destruction of information, etc. The course will incorporate demonstrations and laboratory exercises to reinforce practical applications of course instruction.
Co-Requisites
PrerequisitesCMP 381, 384
 
Course NumberCMP 421
Course NameIntroduction to Computer Security
Credit Hours3
Course Description
This course is designed to introduce undergraduate students to the basic concepts of computer security. The students will learn the tools and techniques that can monitor the system for activities by unwanted programs such as malware, adware, viruses, worms, trojans, etc. By the end of the course the students are expected to learn to use available tools as well as develop and implement programs using different programming languages, for computer security.
Co-Requisites
PrerequisitesCMP 381, 384

Course NumberCMP 425
Course NameTheory of Algorithms
Credit Hours3
Course Description
Formal properties of algorithms are covered here. The use of big O notation is covered, along with its use in algorithm analysis. Other topics include recursion, finite automata, and NP complete problems. Examples of several routine algorithms such as searching and sorting are done and assigned as programming projects.
Co-Requisites
PrerequisitesCMP 215, 305
 
Course NumberCMP 435
Course NameIntroduction to Bioinformatics
Credit Hours3
Course Description
This course is designed to introduce students to the fast emerging field of Bioinformatics that demands/consists of knowledge mainly from the areas of biology and computer science. The main objectives of this course are to prepare the students to analyze the vast biomolecular data and to develop necessary tools to analyze.
Co-Requisites
PrerequisitesSenior standing.

Course NumberCMP 440
Course NameProgramming Languages
Credit Hours3
Course Description
In this course, comparisons are made between several modern programming languages. Language syntax, use, and structure are covered. Programming assignments in these languages are made.
Co-Requisites
PrerequisitesCMP 384
 
Course NumberCMP 450
Course NameArtificial Intelligence
Credit Hours3
Course Description
This is an introduction to the uses and techniques of artificial intelligence. Topics covered include knowledge representation, natural languages, machine learning, vision, and expert systems. Programming projects will be assigned.
Co-Requisites
PrerequisitesCMP 425

Course NumberCMP 483
Course NameCompilers
Credit Hours3
Course Description
This course is a study of formal grammars, syntactic and semantic analysis, code generation, and other topics necessary to understand how compilers translate high-level languages into machine form. Programming projects are assigned.
Co-Requisites
PrerequisitesCMP 215, 381
 
Course NumberCMP 484
Course NameInternship
Credit Hours3
Course Description
The computer science internship program gives senior level undergraduates an opportunity to gain valuable, practical experience in the professional work environment. An internship consists of approved part-time employment over one semester with cooperation between the student’s advisor and the employer.
Co-Requisites
PrerequisitesSenior standing

Course NumberCMP 485
Course NameIntroductions to Data Communications and Networks
Credit Hours3
Course Description
This is a course covering data communications concepts and systems, communications networks, communication processors, network protocol, and local area networks.
Co-Requisites
PrerequisitesSenior standing
 
Course NumberCMP 488L
Course NameIntroduction to Database Systems
Credit Hours3
Course Description
A study of the basic issues in database design, including database interfaces, data structures used the relational model, and query languages. A commercially available database package will be used to give students exposure to these concepts.
Co-Requisites
PrerequisitesCMP 215, 384

Course NumberCMP 490
Course NameHigh Performance Computing
Credit Hours3
Course Description
This course serves as an introduction to the areas of parallel and structured computers. The course covers distributed computers in networks, multiprocessors, and pipelines. Architectural considerations, algorithm design, and performance measures are also covered.
Co-Requisites
PrerequisitesCMP 381, 425