|
|
|
|
|
|
|
Course Criteria
Add courses to your favorites to save, share, and find your best transfer school.
-
4.00 Credits
Introduction to the concepts and software techniques of computer music. Students write programs to produce sounds, process sounds, and organize sounds into musical structures. Fundamentals of digital audio. Synthesis techniques. Reverberation and sound spatialization. Algorithmic composition. Computer languages for synthesis and scoring. The MIDI standard. Prerequisites: MATH 1300 and CS 1160.
-
1.00 - 4.00 Credits
Supervised work experience in which student completes academic assignments integrated with off-campus paid or volunteer activities. Prerequisites: at least 2.0 GPA; departmental approval of activity; completion of lower division Computer Science major requirements, and upper division standing. A maximum of 4 units will be accepted toward the Computer Science major. May be repeated for credit, for a maximum of 8 units. CR/NC grading only.
-
4.00 Credits
Social impact and ethical aspects of computing: responsibility of practicing professionals, effects on privacy, security, property rights of individuals and institutions, etc. Topics include system reliability, intellectual property, computer crime, attacks on computer systems, and societal dependence on computers. Prerequisites: CS 3240, or consent of instructor.
-
4.00 Credits
Design and construction of high-level language translators. Formal language theory, parsing algorithms, interpreting, code generation, optimization. Construction of a small compiler. Prerequisites: CS 3120, 3240.
-
4.00 Credits
Formal models of automata, language, and computability and their relationships. Finite automata and regular languages. Push-down automata and context-free languages. Turing machines, recursive functions, algorithms and decidability. Prerequisites: MATH 2101, 2150, 2304.
-
4.00 Credits
Design, analysis and implementation of algorithms. Methods of algorithm design, including recursion, divide and conquer, dynamic programming, backtracking. Time and space complexity analyses in the best, worst, and average cases. NP-completeness; computationally hard problems. Applications from several areas of Computer Science. Prerequisites: MATH 2101, 2304, CS 3240.
-
4.00 Credits
Concepts and issues in the development of large software projects. Systematic approaches to requirements, analysis, design, implementation, testing, and maintenance of high-quality software. Prerequisite: CS 3240.
-
4.00 Credits
Continuation of Software Engineering I with emphasis on the object-oriented design to implementation stages of the life cycle. Design methodologies including the Unified Modeling Language, illustrated with example design patterns. Implementation in Java. Topics include standards, documentation, instrumentation, testing. Prerequisites: CS 3340, 4310.
-
4.00 Credits
Concepts and issues in the testing and quality control of large software projects. Topics include white box, black box, unit, integration, and validation testing; quality assurance through planning, review, and use of software metrics. Prerequisite: CS 3240.
-
4.00 Credits
Security and safety analysis in software design and development. Vulnerability detection and avoidance. Topics include authentication, principle of least privilege, buffer overflows, race conditions, time-of-check vs. time-of-use, trust management, access control, and other security relevant issues. Prerequisite: CS 3240.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Privacy Statement
|
Terms of Use
|
Institutional Membership Information
|
About AcademyOne
Copyright 2006 - 2025 AcademyOne, Inc.
|
|
|