2013–2014 UNIVERSITY CATALOG - Florida Institute of Technology
2013–2014 UNIVERSITY CATALOG - Florida Institute of Technology
2013–2014 UNIVERSITY CATALOG - Florida Institute of Technology
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