Comp Sci & Comp Engr (CSCE)
History, application, and social impact of computers; problem-solving, algorithm development, applications software, and programming in a procedural language.
Carolina Core: ARP
Introduction to systematic computer problem-solving and programming for a variety of applications.
Carolina Core: ARP
Programming and application development using selected programming languages. Course content varies and will be announced in the schedule of classes by title.
Number systems, Boolean algebra, logic design, sequential machines.
UNIX operating system, user-level system commands, and programming tools. UNIX scripting languages.
Web technologies to support client-server computing. Implementation of client-server applications.
Advanced object-oriented concepts and techniques; multiple inheritance; memory management; operator overloading; polymorphism; performance issues.
Fundamentals of software design and development; software implementation strategies; object-oriented design techniques; functional design techniques; design patterns; design process; source control; testing.
Design and control of robots. Interactions between robots, sensing, actuation, and computation.
Professional issues in the information technology professions; history and social context of computing; professional responsibilities; privacy; intellectual property; risks and liabilities of computer-based systems.
Carolina Core: VSR
Concepts and components of computer networks and the Internet; network applications; network protocol stack.
Major team-based software design project to be undertaken in a student’s final year of study; project planning, software requirements analysis, design, and specification. Written reports and oral presentations in a technical setting.
Graduation with Leadership Distinction: GLD: Professional and Civic Engagement Internships, GLD: Research
Continuation of CSCE 490. Computer system implementation, testing, verification and validation of results. Written reports and oral presentations in a technical setting.
Graduation with Leadership Distinction: GLD: Professional and Civic Engagement Internships, GLD: Research
Individual investigation or study of special topics. At most three credits may be applied toward a degree. Approval of project proposal by instructor and department advisor.
Graduation with Leadership Distinction: GLD: Research
Computer networks and communication protocols; socket programming; interprocess communication; development of network software; case studies.
Structure, design, and analysis of computer networks; ISO/OSI network architecture.
Fundamental principles and techniques of ethical hacking, including penetration testing life cycle, planning and scoping, identifying targets and goals, active and passive reconnaissance, enumeration and scanning, exploitation, post-exploitation, and results reporting.
Threats to information resources and appropriate countermeasures. Cryptography, identification and authentication, access control models and mechanisms, multilevel database security, steganography, Internet security, and intrusion detection and prevention.
Cooperative information systems and service-oriented computing. Techniques for achieving coordinated behavior among a decentralized group of information system components. Distributed databases, multiagent systems, conceptual modeling, Web services, and applications.
Techniques for design and implementation of compilers, including lexical analysis, parsing, syntax-directed translation, and symbol table management.
Development of mobile applications, including user interface design for mobile, local and cloud data storage techniques, and application architectures.
Object-oriented methods and tools for application programming with graphically interactive operating systems.
Construction of software systems resistant to vulnerabilities and attacks. Cryptographic tools. Language, operating system, and network security. Case studies. Development of best practices through programming assignments.
Concepts, algorithms and tools for important problems in Bioinformatics, including nucleotide and amino acid sequence alignment, DNA fragment assembly, phylogenetic reconstruction, and protein structure visualization and assessment.
Design of secret codes for secure communication, including encryption and integrity verification: ciphers, cryptographic hashing, and public key cryptosystems such as RSA. Mathematical principles underlying encryption. Code-breaking techniques. Cryptographic protocols.
Cross-listed course: MATH 587
Interpolation and approximation of functions; solution of algebraic equations; numerical differentiation and integration; numerical solutions of ordinary differential equations and boundary value problems; computer implementation of algorithms.
Cross-listed course: MATH 527
Foundational techniques in multidisciplinary software development, specifically of applications designed to present sensitive, sometimes controversial, materials in ways to engender empathic awareness of the interactor.
Cross-listed course: FAMS 581
Interdisciplinary approach to interaction design, user-centered design, human abilities, survey development, experimental study methodology, heuristic evaluations, usability testing, universal design, and accessibility.
Heuristic problem solving, theorem proving, and knowledge representation, including the use of appropriate programming languages and tools.
Normative approaches to uncertainty in artificial intelligence. Probabilistic and causal modeling with Bayesian networks and influence diagrams. Applications in decision analysis and support. Algorithms for probability update in graphical models.
Cross-listed course: STAT 582
Foundational techniques and tools required for data science and big data analytics. Concepts, principles, and techniques applicable to any technology and industry for establishing a baseline that can be enhanced by future study.
Cross-listed course: STAT 587
Reading and research on selected topics in information technology. Course content varies and will be announced in the schedule of courses by title. May be repeated for credit as topics vary.
Strategic management and use of information systems in organizations.
Cross-listed course: MGSC 594
Design techniques for logic systems; emphasis on higher-level CAD tools such as hardware description languages and functional modeling.
VLSI design process models, introduction to EDA tools, HDL modeling and simulation, logic synthesis and simulation, benchmark design projects.
Design of VLSI circuits, including standard processes, circuit design, layout, and CAD tools. Lecture and guided design projects.