Skip to main content

Undergraduate Courses | Computer Engineering

CPE
200

Course Number:
0612200
Algorithmic problem solving in the context of a modern programming language Terminology-Arithmetic computations--Simple & formatted I/O-if structures, while loop, do loop, for loop, nesting, data files, arrays (1D & 2D), functions, strings and pointers, structures.
(3-2-3)
Prerequisites:
0410111

CPE
201

Course Number:
0612201
A continuation of computing fundamentals given in CpE-200. Topics include data and procedural abstraction, software design principles and use of O-O design to develop solutions to simple problems. Ethical issues involved in computer use, Basic object-oriented design techniques (encapsulation and information-hiding, separation of behavior and implementation, classes and subclasses, inheritance, polymorphism, class hierarchies), Iterators as abstraction mechanisms, Linked structures, Event-driven programming, API programming. The laboratory projects include use of object-oriented design concepts with detailed documentation.
(3-2-3)
Prerequisites:
0600200

CPE
203

Course Number:
0612203
Basic logic (propositional logic, predicate logic, limitations, applications in computing). Sets, relations, and functions. Proof techniques (formal proofs, direct, contraposition and contradiction, induction). Basics of counting (permutations and combinations, counting arguments, pigeonhole principle and generating functions). Graphs and trees (spanning trees, shortest path, Euler and Hamiltonian cycles, and traversal strategies). Recursion (definitions, developing and solving recursive equations). The focus of materials is on the applications side of computer engineering.
(3-0-3)
Prerequisites:
0410101,0410111

CPE
207

Course Number:
0612207
Fundamental data structures (stacks, queues, linked lists, hash tables, trees, graphs), Basic algorithmic analysis (asymptotic analysis, identifying differences among best, average, and worst case, empirical measurements of performance, time and space tradeoffs in algorithms), Fundamental computing algorithms, sorting algorithms, hash tables and hashing, heaps, priority queues, binary search trees, balanced binary search trees, AVL trees, representations of graphs and graph traversals, Recursion. The course includes weekly laboratory sessions and a significant programming project with detailed documentation and implementation.
(3-2-3)
Prerequisites:
0612201,0612203

CPE
262

Course Number:
0612262
Logic gates and Boolean algebra. Design and analysis of combinational circuits. Logic function minimization. Modular design of combinational circuits. Number Systems. Arithmetic circuits. Programmable logic devices (PLDs). Memory elements: latches and flip-flops. Design and analysis of synchronous sequential circuits. Simulation and synthesis of digital circuits from HDL models.
(3-0-3)
Prerequisites:
0600200,0600205,0600207
Corequisites:
0612264

CPE
264

Course Number:
0612264
Hands-on design and implementation of digital logic circuits. Use of CAD tools for schematic capture and Verilog HDL based simulation and synthesis. Implementations of digital circuits using sophisticated logic devices such as CPLDs and FPGAs.
(0-3-1)
Corequisites:
0612262

CPE
300

Course Number:
0612300
This course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics covered include: sorting, divide-and-conquer, dynamic programming, graph algorithms, shortest paths, network flow, polynomial and matrix calculations, parallel computing.
(3-0-3)
Prerequisites:
0612207

CPE
301

Course Number:
0612301
Topics include data and procedural abstraction, software design principles and use of O-O design to develop solutions to simple problems. Object-oriented design techniques (encapsulation and information-hiding, separation of behavior and implementation, classes and subclasses, inheritance, polymorphism, class hierarchies). Iterators as abstraction mechanisms. Linked structures. Event-driven programming. API programming.
(3-0-3)
Prerequisites:
0612207

CPE
325

Course Number:
0612325
Psychological principles of human-computer interaction, Building a simple graphical user interface (principles of GUIs, GUI toolkits), Human-centered software evaluation and development, Graphical user-interface design and programming (HCI aspects of common widgets, interaction techniques, screen design, GUI builders and GUI programming environments), integrate ethical perspectives in HCI solutions, Intelligent systems (artificial intelligence concepts), HCI aspects of multimedia systems (categorization and architectures of information, HCI design of multimedia information systems, speech recognition and natural language processing).
(3-0-3)
Prerequisites:
0612201

CPE
333

Course Number:
0612333
Topics include: history and overview of intelligent systems. Overview of technologies. Fundamental issues in intelligent systems. Intelligent system design methodologies. Search and constraint satisfaction. Knowledge representation and reasoning, and agents.
(3-0-3)
Prerequisites:
0612300

CPE
341

Course Number:
0612341
Principles of database systems: History and motivation, DBMS functions, database architectures, use of a database query language. Data modeling: conceptual models, object-oriented model, and relational data model. Relational databases: conceptual schema and relational schema, and integrity constraint. Relational algebra and relational calculus. Functional dependencies and normal forms. Database query languages. Relational database design. The course stresses basic concepts and presents many examples from existing database systems. A database design and implementation project of a real world application is required, using modern database management tools.
(3-0-3)
Prerequisites:
0612207
Corequisites:
0612342

CPE
342

Course Number:
0612342
This lab introduces uses a DBMS product to design and implement tables and perform queries. Focusing on normalization, data integrity, data modeling, and creation of simple tables, queries, reports, and forms. Once completed, students should be able to design and implement database structures by creating database tables, queries, reports, and forms.
(0-3-1)
Corequisites:
0612341

CPE
356

Course Number:
0612356
This is an introductory course in computer networks. It gives an overview of current computer networks and its history. It introduces the OSI and TCP/IP network architecture models and protocols. It then studies the implementation principles and design issues at each layer of these models. Lecture topics include: the structure and components of computer networks, application layer protocols, packet switching, layered architectures, TCP/IP, physical layer, error control, local area networks (wire and wired), network layer, congestion control, and multiple access. Laboratory work focuses on experimenting with packet tracing tools and the implementation of protocols covered in lectures, e.g., stop-and-wait protocol, socket programming, Dijkstra routing algorithm and others.
(3-0-3)
Prerequisites:
0600104,0600304,0612207
Corequisites:
0612357

CPE
357

Course Number:
0612357
This laboratory course provides students with hands-on training and experience regarding the design, implementation, and packet inspection of computer networks. Students experiment with network simulation and packet tracing tools. Topics covered in experiments include: network addressing, address resolution protocol (ARP), Dynamic Host Configuration Protocol (DHCP), troubleshooting tools (e.g., ipconfig, traceroute, ping), basic networks simulation, server configuration at application layer, basic switch set-up and configuration, trunking in virtual local area networks (LAN), router setup and configuration in LAN and wide area networks (WAN), static and dynamic routing.
(0-3-1)
Corequisites:
0612356

CPE
363

Course Number:
0612363
Embedded system building blocks. Embedded microcontroller's architecture. Embedded programs: instruction set, interrupts, timers and programming in assembly language. Memory technologies. Basic I/O devices (such as keypad and LCD). Embedded microcontroller interfacing to memory and I/O devices.
(3-0-3)
Prerequisites:
0612262,0612264,Corequisites: 0612364
Corequisites:
0612364

CPE
364

Course Number:
0612364
This lab component provides sufficient detailed knowledge and hands-on experience of a microcontroller so that students can breadboard and program a microcontroller and demonstrate its function in a real-time application. It is accomplished by a sequence of assigned labs, followed by a final project of the student\'s choice, emphasizing creativity and uniqueness.
(0-3-1)
Corequisites:
0612363

CPE
368

Course Number:
0612368
Digital systems design principles and techniques including modeling and simulation with HDLs. Performance metrics and Amdahl\'s Law. CPU organization of computers. Instructing set architecture. Register transfer logic. Computer arithmetic: fast adders, multipliers, dividers and floating-point arithmetic. Processor data path and control unit design. Introduction to pipelining and caches. An emphasis on hardware design methods, combined with increased discussion of performance and relevant software issues.
(3-0-3)
Prerequisites:
0612363,0612364

CPE
371

Course Number:
0612371
The course introduces the basic concepts of software engineering, methodologies, and process models. The course covers the followings: Software life cycle, models and methods for software specification, analysis and design, object oriented analysis and design using UML, patterns, frameworks and APIs, architectural design, distributed system architectures. The course also introduces the use of state-of-the-art tools for computer-aided software engineering. The course increase students' knowledge of classic and modern software engineering techniques, and develop concrete experience in turning ill-formed concepts into products working with a team.
(3-2-3)
Prerequisites:
0600209,0600310
Corequisites:
0612341

CPE
399

Course Number:
0612399
Students should attend a training program at one of the approved companies/institutions engaged in computer engineering practices. The objective is to gain practical experience in real engineering problems. The student should submit a formal report at the end of the training period. A minimum of 180 hours of supervised training is required.
(3-0-3)
Prerequisites:
90 Credits

CPE
402

Course Number:
0612402
This course will cover advanced concepts and techniques in distributed systems with applications to cloud computing and big data analytics. The underlying principle of Net-Centric Computing (NCC) is a distributed environment where applications and data are downloaded from servers and exchanged with peers across a network on as-needed basis. In many ways, NCC is the enabling technology for a significant percentage of modern enterprise applications. Course material will focus mainly on scalable performance and fault tolerance. The course will combine concepts from distributed computing, cloud computing, database systems, programming languages, and theory by exploring both the foundations and practical applications of distributed storage, cluster computing frameworks, and distributed transaction processing.
(3-0-3)
Prerequisites:
0612356

CPE
404

Course Number:
0612404
This course is a senior elective that introduces students to compiler construction and issues related to software compilation. Topics includes Lexical analysis, Syntax analysis: LL parsing and LR parsing, Semantic analysis: Type checking and attributed grammars, Memory management, Error handling, Code generation, Code optimization, and Bootstrapping. Students will be exposed to real compiler implementations. Students become familiar with make, lex, and yacc as a part of the course and are required to implement one compiler project in their favorite computer programming language.
(3-0-3)
Prerequisites:
0612207,0612363

CPE
410

Course Number:
0612410
To introduce the student of computer science to, and to provide some depth in theoretical models for computation. This course provides unified coverage of the hierarchies of formal languages and non-deterministic automata, emphasizing the correspondence between them. The theory of computability and decidability is introduced. Topics covered include: Role of formal languages and automata in the study of computability and complexity. Finite state automata and regular expressions. Pushdown automata and context-free grammars. Turing machines and computable functions.
(3-0-3)
Prerequisites:
0612300

CPE
413

Course Number:
0612413
History and overview of distributed systems. Fundamentals of distributed systems and algorithms. Problems, methodologies, paradigms and models necessary for understanding and designing distributed applications. Topics may include: system models, process communication, distributed shared memory, web services, fault tolerance, real/logical/virtual time, distributed algorithms, authentication and security, naming, object-oriented structuring of distributed systems, distributed file systems, communication support for distributed systems. Theoretical concepts will be complemented with practical examples.
(3-0-3)
Prerequisites:
0612300

CPE
414

Course Number:
0612414
The course will offer a concise introduction to quantum computation, developing the basic elements of this new branch of computational theory without assuming any background in physics. It begins with a novel introduction to the quantum theory from a computer-science perspective. It illustrates the quantum-computational approach with several elementary examples of quantum speed-up, before moving to the major applications: Shor's factoring algorithm, Grover's search algorithm, and quantum error correction.
(3-0-3)
Prerequisites:
0612300

CPE
420

Course Number:
0612420
The course will begin with an introduction of data mining field, including why data mining, what is data mining, what kinds of data can be mined, what kinds of patterns can be mined, an overview of technologies, the major issues in data mining, and a brief history of data mining community.
(3-0-3)
Prerequisites:
0600304,0612207

CPE
421

Course Number:
0612421
Introductory course for seniors and graduate students covering the practices, issues, and theoretical foundations of organizing and analyzing information and information content for the purpose of providing access to textual and non-textual information resources. Introduces students to the principles of unstructured information storage and retrieval systems.
(3-0-3)
Prerequisites:
0600304,0612207

CPE
433

Course Number:
0612433
This course is concerned with the computer acquisition and analysis of image data. Computer vision is the construction of explicit meaningful descriptions of physical objects or other observable phenomena from images. The emphasis is on physical, mathematical, and information-processing aspects of the vision. Topics to be covered include image formation, edge detection and segmentation, convolution, image enhancement techniques, extraction of features such as color, texture, and shape, object detection, 3-D vision, and computer vision system architectures and applications.
(3-0-3)
Prerequisites:
0610385,0612207

CPE
434

Course Number:
0612434
The nature of robotics and the role of intelligence in the context of robotics. Overview of robotic systems: state-of-the-art robot systems, planning vs. reactive control, uncertainty in control, sensing, and world models. Configuration space. The role of planning in robotics and relevant techniques. Robot programming, the range of software that supports robotic activity. Navigation and control, strategies for particular environments. Ethical issues associated with robotics and intelligent behavior.
(3-0-3)
Prerequisites:
0612363

CPE
435

Course Number:
0612435
Topics include building decision support and expert systems, knowledge representation and knowledge processing, design a knowledge base to transfer human knowledge into expert system, tools for building expert systems logic programming, expert system shells (Clips, Jess, VISIRULE etc). Emphasis on the use of domain-specific knowledge to obtain expert performance in programs.
(3-0-3)
Prerequisites:
0600304,0612300

CPE
436

Course Number:
0612436
This course is designed for senior in Computer Engineering major to introduce them to the fundamentals and theories of machine learning algorithms. Students will be taught the theory, design and implementation of different machine learning algorithms such as Bayes classifiers, decision trees, neural networks, DNN, evolutionary algorithms, inductive learning. Students will implement and compare different algorithms for learning problems. The project is an integral component of this course.
(3-0-3)
Prerequisites:
0600304,0612207

CPE
438

Course Number:
0612438
In this course, students will be introduced to the basic principles and problems of computer graphics. They will study mathematical background to understand and implement these basic principles of computer graphics and rendering systems. Students will learn how to use a standard graphics API (Application Programming Interface) to create, render, and manipulate interactively structured two-and three-dimensional models.
(3-0-3)
Prerequisites:
0612207

CPE
441

Course Number:
0612441
Advanced topics in commercial and research oriented databases systems including catalogs, physical storage techniques, query processing, optimization, transaction management, concurrency control, disaster recovery, security, integrity, extended data types, triggers and rules, distributed databases, warehouses and parallelism.
(3-0-3)
Prerequisites:
0612341

CPE
443

Course Number:
0612443
In this course, students will be introduced to principles and current technologies of computer-based multimedia systems. They will study current media types (images, video, audio, graphics etc) and how they are used to create multimedia content. Issues in effectively representing, processing, and compressing multimedia data will be addressed. The students will be familiarized with the range of tools used in creating computer-based multimedia.
(3-0-3)
Prerequisites:
0600304,0610385

CPE
445

Course Number:
0612445
Embedded operating systems (EOS) are known as real-time operating systems (RTOS) and also getting more pervasive in our daily lives. Topics of interest include basic OS functions, a relevant hardware review, interrupt sand interrupt handling, semaphores and peripheral I/O operations, real-time scheduling principles and implementation, latency, task management, shared data and synchronization, timers, message passing and memory management, timeline design and performance analysis using metrics and tests, understand RTOS and the resource management, quality of service issues, concurrency, firmware and ROM-resident system code, and debugging live systems. These concepts will be reinforced through C programming and assembly language assignments and project using the Linux operating system. Practical hands-on experience in building real-time applications running under an EOS.
(3-0-3)
Prerequisites:
0612207,0612363

CPE
451

Course Number:
0612451
Introduction to concepts, principles and practice of wireless and mobile communications and networking. Multiples access protocols for wireless networks. Mobile Internet protocol. Mobile aware adaptation. Extending the client-server model to accommodate mobility. The role of middleware and support tools. Performance issues. Security and legal implications of wireless communications. Emerging technologies.
(3-0-3)
Prerequisites:
0612356

CPE
453

Course Number:
0612453
Introduction to the theory and practice of computer and network security. Fundamentals of secure networks and systems. Symmetric cryptography primitives, block ciphers and modes of operation. Introduction to number theory and its applications to public key cryptography algorithms. Authentication and integrity concepts, Hash functions, Message Authentication Codes and Digital Signatures. Key distribution and management. Real-life Networking protocols (IPSec, SSL, wireless networks). TCP-IP with a threat focus and attacks. Packet filtering, Firewall, and Intrusion Detection systems. Ethical issues.
(3-0-3)
Prerequisites:
0612300,0612356,0612357

CPE
454

Course Number:
0612454
Theory and application of analytic methods for evaluating the performance and for capacity planning of computer networks. Review of the basic probability theory. Advanced methods in probabilistic analysis. Random processes. Markovian queuing models. Network protocols. Traffic modelling. Event driven simulation.
(3-0-3)
Prerequisites:
0612356

CPE
455

Course Number:
0612455
The objective of this course is to gain an understanding of various issues in designing an optical network. Topics include SONET/SDH, wavelength division multiplexing, framing techniques, traffic grooming, multiple access protocols, virtual topology design, routing and wavelength assignment, protection and restoration, and optical packet switching.
(3-0-3)
Prerequisites:
0612356

CPE
456

Course Number:
0612456
Studies key concepts, systems, and algorithms to reliably communicate data. Lecture topics cover three modules: bits, signals and packets. The bits module covers information, entropy, data compression algorithms, and error correction with block and convolutional codes. The signals module covers modeling of physical channels and noise, signal design, filtering and detection, modulation, and multiplexing. The packets module includes switching and queuing principles, multimedia networking, network management and advanced state of the art network architectures.
(3-0-3)
Prerequisites:
0612356,0610385

CPE
458

Course Number:
0612458
Introduction to the design, architecture and implementation of client and server programs in the client-server model of computing. Overview of the TCP/IP suite of protocols and some application specific protocols. Sockets programming, client/server, peer-to-peer, Internet addressing, TCP sockets, UDP sockets. Multithreading and exception handling. Interprocess communication and network programming interfaces. Server architectures. Use of scripting languages in providing client-side and server-side processing in web based applications. Security issues.
(3-0-3)
Prerequisites:
0612356

CPE
459

Course Number:
0612459
The goal of this course is to provide students with the necessary background needed in order to understand the different aspects of information security today. The course will give a broad overview of the essential ideas as well as the methods needed for providing and evaluating security in information processing systems (operating systems and applications, networks, protocols, etc.). The syllabus will cover foundational technical concepts (basic cryptology, access control principles, operating systems and database security, network security, etc.) as well as managerial (incident and risk management, business continuity, etc.) and policy ones.
(3-0-3)
Prerequisites:
0612453

CPE
462

Course Number:
0612462
Computer arithmetic deals with the hardware realization of arithmetic functions to support various computer architectures as well as with arithmetic algorithms for firmware/software implementation. A major thrust of digital computer arithmetic is the design of hardware algorithms and circuits to enhance the speed of various numeric operations. Standard and unconventional number representations. Design of fast two-operand and multi-operand adders. High-speed multiplication and division algorithms. Floating-point numbers, algorithms, and errors. Hardware algorithms for function evaluation.
(3-0-3)
Prerequisites:
0612368

CPE
464

Course Number:
0612464
The course encompasses the theoretical and practical aspects of digital systems testing and the design of easily testable circuits. Major topics include defect, fault modeling, test generation for combinational and sequential circuits, test measures and costs, functional and parametric test methods, single stuck-at model, design for testability, scan-path design, built-in self-tests, and concurrent testing. In addition, the course introduces students to ATPG tools and their usage in fault simulation, test, and diagnosis of combinational circuits.
(3-0-3)
Prerequisites:
0612368

CPE
465

Course Number:
0612465
This course will provide an introduction to the tools used to design and analyze digital circuits, including the design of exact and heuristic algorithms that form the basis for VLSI Computer-Aided-Design. Topics covered include partitioning problems, floor planning problem, placement problems, and interconnection of elements -Net selection -Minimal spanning trees -Steiner trees. Layering ordering, pin assignment, and routing algorithms.
(3-0-3)
Prerequisites:
0612207,0612262

CPE
468

Course Number:
0612468
This course provides students with a solid understanding of fundamental architectural techniques used in today\'s high-performance processors and systems. Course topics include memory hierarchies (caches and virtual memory), cache coherence, instruction level parallelism, parallel architectures classification, vector processing, introduction to shared memory multiprocessors, multithreading, multicore, GPU. Parallel programming models and multiprocessors network topologies. An emphasis will be both on hardware and software issues specially related to parallel programming.
(3-0-3)
Prerequisites:
0612368,Corequisites: 0612469
Corequisites:
0612469

CPE
469

Course Number:
0612469
Hands-on design and implementation of computer system design. Use of CAD tools for schematic capture and Verilog HDL based simulation and synthesis. Design and implementation of data path functional units and I/O subsystem of traditional computer systems using sophisticated logic devices such as CPLDs and FPGAs.
(0-3-1)
Corequisites:
0612468

CPE
471

Course Number:
0612471
This course addresses design, modeling, analysis, and integration of hardware and software to achieve dependable computing systems employing on-line fault-tolerance. It covers the concepts and terminologies of Fault-Tolerant System Design including: reliability, dependability, maintainability, redundancy, damage confinement, error recovery, fault treatment, redundancy management, voting, information redundancy, combinatorial and sequential network testing, error detecting and correcting codes, self-checking circuits, and diagnostic theory.
(3-0-3)
Prerequisites:
0600304,0612368

CPE
472

Course Number:
0612472
Propositional and predicate logics: syntax and semantics, validity and inference, etc. Deductive tableaux notation and its rules: resolution, equality, equivalence, and rewriting. Axiomatic theories and theories with induction. Verification of implementation and specification using deductive tableaux.
(3-0-3)
Prerequisites:
0600304,0612363

CPE
474

Course Number:
0612474
Principles and practices involved in the design, implementation, testing, and evaluation of standard-cell ASIC chips using automated state-of-the-art CAD tools. Topics include hardware description languages, CMOS logic, Finite state machine theory and implementation, and interconnect fundamentals, chip design methodologies, automated cell-based design, CAD algorithms, details of accurately modeling ASIC delay, energy, and area, robustness issues, testing, verification, and debugging, power distribution and clocking, packaging and I/O.
(3-0-3)
Prerequisites:
0610233,0612368

CPE
477

Course Number:
0612477
This course is a study of techniques and processes for the design of digital systems. The focus is on the design of system modules derived from functional and interface specifications. A progression of designs, culminating in the design of a digital central processing unit and its peripheral units, will be used to illustrate both design and test techniques and procedures. This course will use a modern high level Hardware Design Language (HDL) as the main design tool. While implementation at the logic component (gate) level will be considered, the focus will be on system-level design and higher level behavioral modeling.
(3-0-3)
Prerequisites:
0612207,0612368

CPE
481

Course Number:
0612481
This course is designed for freshmen in Software Engineering major to introduce them to the fundamentals of the software engineering testing process, the quality assurance process and its role in software development, and the impact of ISO 9000 and the capability maturity model on software quality and testing. Students are asked to demonstrate proficiency in managing a software project to customer requirements and proficiency in quality assurance and testing through class exercises and homework assignments.
(3-0-3)
Prerequisites:
0612371

CPE
482

Course Number:
0612482
This course is designed for freshmen in Software Engineering majors to introduce them with an in-depth study of current research and practice in requirements elicitation, requirements analysis, requirements specifications, requirements verification and validation, and requirements management.
(3-0-3)
Prerequisites:
0612371

CPE
483

Course Number:
0612483
This course describes the key aspects of a software project management including software project planning, software validation, verification and testing techniques and strategies, software quality assurance, process improvement, software evolution, estimating software cost and schedule, change and configuration management, risk engineering, and continuous process improvement. This course includes a project developed in a team.
(3-0-3)
Prerequisites:
0612371

CPE
493

Course Number:
0612493
This course is designed for senior level students in computer engineering. It gives them exposure to special topics in computer engineering. Topics may vary each time the course is offered. Details of the course including: prerequisites, textbook, objectives, and topics to be covered, course specific outcomes etc. should be posted on the course page of the department at the time of offering.
(3-0-3)
Prerequisites:
0612300

CPE
494

Course Number:
0612494
Approaches to the development of systems in computer engineering, the special problems and the issues, primarily through hands-on design experiences and development of professional skills. The course provides information about the principles, methods and skills that are essential to engineering design. Concept of a life-cycle, nature of life cycle models, and phases of typical life cycles. Ethics and legal issues. Quality issues, process and process improvement. Issue of teams, team selection, roles in teams, and elements of teamwork. Selection of design and design alternatives for experiments, selection of test cases, support tools, standards and emerging technologies. Techniques and approaches associated with the different phases, special problems of design and the issues associated with tradeoffs, special problems of hardware/software tradeoffs, specifications and requirements engineering, design and architecture, testing, integration, maintenance, oral and written technical communication.
(3-0-3)
Prerequisites:
0600310,0612363,0612356,0612371

CPE
495

Course Number:
0612495
This course contributes a capstone design experience in computer engineering. Typically it would require the student to build on the aggregated knowledge gained in previous years, designing their own experiments, and developing their own test cases. Students will have design experience involving hardware and/or software systems to meet the desired needs within realistic constraints such as economic, environment, social, political, ethical, health and safety, manufacturability, and sustainability. Use of skills in design tools and practices, integration, test plans, implementation, experimental validation, maintenance, functional teaming, oral and written technical communication.
(3-0-3)
Prerequisites:
0612494,Corequisites: 0600308
Corequisites:
0600308