26.10.2013 Views

2013–2014 UNIVERSITY CATALOG - Florida Institute of Technology

2013–2014 UNIVERSITY CATALOG - Florida Institute of Technology

2013–2014 UNIVERSITY CATALOG - Florida Institute of Technology

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CSE 4081 INTRODUCTION TO ANALYSIS OF ALGORITHMS (3 credits).<br />

Covers time and space complexity <strong>of</strong> algorithms. Analyzes algorithms for sorting,<br />

searching, string processing and graph problems. Presents strategies such as divideand-conquer,<br />

and greedy and dynamic programming as problem-solution techniques.<br />

Prerequisites: CSE 2010 or ECE 2552, ECE 3541.<br />

CSE 4082 INTRODUCTION TO PARALLEL AND REAL-TIME ALGORITHMS<br />

(3 credits). Introduces parallel algorithm development, architecture for parallel<br />

computers, programming paradigms SIMD and MIMD for shared memory and<br />

distributed memory computers. Presents parallel algorithms for matrix computations,<br />

sorting and searching, and various numerical algorithms. Includes analysis<br />

<strong>of</strong> performance and scalability <strong>of</strong> parallel algorithms. Prerequisites: CSE 1502<br />

or CSE 1503 or CSE 2050 or ECE 2552.<br />

CSE 4083 FORMAL LANGUAGES AND AUTOMATA THEORY (3 credits).<br />

Presents abstract models <strong>of</strong> computers (finite automata, pushdown automata and<br />

Turing machines) and the language classes they recognize or generate (regular,<br />

context-free and recursively enumerable). Also presents applications <strong>of</strong> these<br />

models to compiler design, algorithms and complexity theory. Prerequisites:<br />

CSE 2010 or ECE 2552, ECE 3541.<br />

CSE 4101 COMPUTER SCIENCE PROJECTS 1 (3 credits). A two-semester,<br />

senior-year project sequence that serves as the capstone for the project-intensive<br />

courses in computer science. Students team to implement a s<strong>of</strong>tware project from<br />

conception to completion. (Requirement: Prerequisite course and senior standing<br />

in computer science; may not be taken concurrently.) (Q) Prerequisites: CSE 2010.<br />

CSE 4102 COMPUTER SCIENCE PROJECTS 2 (3 credits). A two-semester<br />

senior year project sequence that serves as the capstone for the project-intensive<br />

courses in computer science. Students team to implement a s<strong>of</strong>tware project from<br />

conception to completion. (Requirement: Prerequisite course and senior standing<br />

in computer science; may not be taken concurrently.) (Q) Prerequisites: CSE 4101.<br />

CSE 4201 SOFTWARE DEVELOPMENT PROJECTS 1 (3 credits). A two-semester,<br />

senior-year project sequence that serves as the capstone for the project-intensive<br />

courses in s<strong>of</strong>tware engineering. Students team to implement a s<strong>of</strong>tware project from<br />

conception to completion. (Requirement: Prerequisite course and senior standing<br />

in computer science; may not be taken concurrently.) (Q) Prerequisites: CSE 2010.<br />

CSE 4202 SOFTWARE DEVELOPMENT PROJECTS 2 (3 credits). A two-semester,<br />

senior-year project sequence that serves as the capstone for the project-intensive<br />

courses in s<strong>of</strong>tware engineering. Students team to implement a s<strong>of</strong>tware project from<br />

conception to completion. (Requirement: Prerequisite course and senior standing in<br />

s<strong>of</strong>tware engineering; may not be taken concurrently.) (Q) Prerequisites: CSE 4201.<br />

CSE 4232 COMPUTER NETWORK PROGRAMMING (3 credits). Covers design<br />

and implementation <strong>of</strong> programs that communication with other programs across<br />

a computer network. Includes common protocols, network management and<br />

debugging tools, server- and client-side networking, presentation layer (ASN1,<br />

XML), secure socket layer, multithreading, exceptions and remote procedure call.<br />

Prerequisites: CSE 2010 or CSE 2050 or ECE 2552.<br />

CSE 4234 WEB APPLICATIONS (3 credits). Covers design and implementation<br />

<strong>of</strong> programs that <strong>of</strong>fer services over the Web. Addresses Web-related standards<br />

and trends, browser compatibility, Web-related security and authentication, architectures,<br />

multimedia support and accessibility. Introduces multiple technologies<br />

(HTTP, SMTP, HTML, CSS, XML, JavaScript, PHP, JSP, applets, servelets).<br />

Prerequisites: CSE 1002 or ECE 2552.<br />

CSE 4250 PROGRAMMING LANGUAGE CONCEPTS (3 credits). Surveys programming<br />

language concepts and design principles <strong>of</strong> programming paradigms<br />

(procedural, functional and logic). Includes a history <strong>of</strong> programming languages,<br />

data types supported, control structures and run-time management <strong>of</strong> dynamic<br />

structures. Prerequisites: CSE 2010 or ECE 2552.<br />

CSE 4251 COMPILER THEORY (3 credits). Introduces formal languages, the<br />

construction <strong>of</strong> scanners and recursive descent, LL (1) and LR (1) parsers, intermediate<br />

forms, symbol tables, code generation and optimization <strong>of</strong> resultant<br />

code. Prerequisites: CSE 2010, CSE 2120 or ECE 2552, ECE 3551.<br />

CSE 4257 GRAPHICAL USER INTERFACES (3 credits). Studies the theories and<br />

techniques <strong>of</strong> human-computer interaction and the design <strong>of</strong> direct manipulation<br />

graphical-user interfaces that support menus, buttons, sliders and other widgets<br />

for input, text and graphics for output. Students design, implement and evaluate a<br />

graphical-user interface. Prerequisites: CSE 2010 or ECE 2552.<br />

CSE 4272 COMPUTER AND INFORMATION SECURITY (3 credits). Introduces<br />

the fundamentals <strong>of</strong> computer security. Includes vulnerability analysis, threat modeling<br />

and risk assessment, and techniques for asset protection. Discusses economic,<br />

legal and ethical issues in computer security. Focuses on a system-wide view <strong>of</strong> security<br />

and discusses trends in current literature. Prerequisites: CSE 2010 or ECE 2552.<br />

CSE 4280 COMPUTER GRAPHICS ALGORITHMS (3 credits). Introduces<br />

computer graphics algorithms, s<strong>of</strong>tware and hardware. Includes ray tracing, the<br />

graphics pipeline, transformations, texture mapping, shading models, sampling,<br />

global illumination, splines, animation and color models. Programming format in<br />

course provides sufficient background to write computer graphics applications.<br />

Prerequisites: CSE 2010 or ECE 2552.<br />

CSE 4285 GAME DESIGN (3 credits). Focuses on the design <strong>of</strong> video and computer<br />

games. Covers the history and business <strong>of</strong> video and computer games, game<br />

design principles and mechanics, audio and visual design, game architecture, collision<br />

detection and resolution, and artificial intelligence. Prerequisites: CSE 2010.<br />

CSE 4301 INTRODUCTION TO ARTIFICIAL INTELLIGENCE (3 credits).<br />

Surveys artificial intelligence, focusing on state-space and problem-reduction<br />

approaches to problem solving. Attention is given to the use <strong>of</strong> heuristics and their<br />

use in game-playing programs. Also discusses knowledge representation, automated<br />

reasoning and expert systems. Prerequisites: CSE 2010 or ECE 2552.<br />

CSE 4303 SPEECH RECOGNITION PROGRAMMING (3 credits). Introduces<br />

students to techniques for speech recognition and the integration <strong>of</strong> ASR in programs,<br />

using general speech recognition tools. Covers techniques including feature<br />

extraction from speech data, neural networks, Gaussian mixtures, estimate and<br />

maximize, data clustering techniques, Viterbi, Hidden Markov Models (HMM),<br />

keyword spotting and beam search. Prerequisites: CSE 2050 or ECE 2552,<br />

CSE 2400 or MTH 2401.<br />

CSE 4400 INDEPENDENT STUDY IN COMPUTER SCIENCE (1-3 credits).<br />

Individual projects under the direction <strong>of</strong> faculty members <strong>of</strong> the computer science<br />

or s<strong>of</strong>tware engineering programs. May be repeated for a maximum <strong>of</strong> six credits.<br />

(Requirement: Instructor approval.)<br />

CSE 4410 SOFTWARE PROJECT MANAGEMENT (3 credits). Introduces project<br />

management issues that are typical <strong>of</strong> large s<strong>of</strong>tware projects. Includes project<br />

planning, estimation, modeling, measurement and assessment techniques. Surveys<br />

s<strong>of</strong>tware project management tools. Overviews the key CMM process areas for<br />

project management. Prerequisites: CSE 2410.<br />

CSE 4415 SOFTWARE TESTING 2 (3 credits). Explores structural (glass box)<br />

methods for testing s<strong>of</strong>tware. Includes testing <strong>of</strong> variables in simultaneous and<br />

sequential combinations, application programmer interfaces, protocols, design by<br />

contract, coverage analysis, testability, diagnostics, asserts and other methods to<br />

expose errors, regression test frameworks, test-first programming. Prerequisites:<br />

CSE 2120, CSE 2410, CSE 3411.<br />

CSE 4510 SPECIAL TOPICS IN COMPUTER SCIENCE (3 credits). Explores<br />

new and emerging topics within the various disciplines included in the field <strong>of</strong><br />

computer science. Subject matter varies, depending on the instructor and other<br />

available resources. May be repeated for a maximum <strong>of</strong> nine credits, provided the<br />

topics change. (Requirement: Instructor approval.)<br />

CSE 4520 SPECIAL TOPICS IN SOFTWARE ENGINEERING (3 credits).<br />

Provides instruction and experience in timely topics related to the production <strong>of</strong><br />

quality-engineered s<strong>of</strong>tware. May be repeated for a maximum <strong>of</strong> nine credits, provided<br />

the topics change. (Requirement: Instructor approval.)<br />

CSE 4610 REQUIREMENTS ENGINEERING (3 credits). Studies in depth s<strong>of</strong>tware<br />

requirements engineering tools and techniques. Includes gathering user<br />

requirements, formal specification <strong>of</strong> system behavior, system interfaces, end user<br />

and system documentation and validation techniques. Emphasizes the end-user<br />

aspect <strong>of</strong> gathering and formalizing user expectations. Prerequisites: CSE 2410.<br />

CSE 4621 SOFTWARE METRICS AND MODELING (3 credits). Examines<br />

common s<strong>of</strong>tware metrics, axiomatic foundations <strong>of</strong> measurement, validity <strong>of</strong><br />

measurements and measurement dysfunction, and some statistical and modeling<br />

approaches to help students make their s<strong>of</strong>tware measurements meaningful.<br />

Prerequisites: CSE 2400 or MTH 2401, CSE 2410.<br />

CSE 5210 FORMAL LANGUAGES AND AUTOMATA THEORY (3 credits).<br />

Presents abstract models <strong>of</strong> computers (finite automata, pushdown automata and<br />

Turing machines) and the language classes they recognize or generate (regular,<br />

context-free and recursively enumerable). Also presents applications in compiler<br />

design, algorithms and complexity theory. Prerequisites: CSE 2010.<br />

CSE 5211 ANALYSIS OF ALGORITHMS (3 credits). Presents time and space<br />

complexity <strong>of</strong> computer algorithms. Includes algorithm classes, such as divide-andconquer,<br />

greedy, dynamic programming and backtracking; techniques for solving<br />

recurrence equations; graph algorithms; searching and sorting; and deterministic<br />

and nondeterministic polynomial time problem classes. Prerequisites: CSE 2010<br />

or CIS 5200, MTH 1002.<br />

<strong>2013–2014</strong> Course Descriptions 251

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!