23.11.2012 Views

2011–2012 UNIVERSITY CATALOG - Florida Institute of Technology

2011–2012 UNIVERSITY CATALOG - Florida Institute of Technology

2011–2012 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 2410 INTRODUCTION TO SOFTWARE ENGINEERING (3 credits).<br />

Presents a basis for the integration <strong>of</strong> engineering rigor and s<strong>of</strong>tware development.<br />

Students are shown a practical yet rigorous method <strong>of</strong> going from a problem concept to<br />

a s<strong>of</strong>tware solution. Includes requirements specification, functional specification and<br />

coding techniques using information hiding and stepwise refinement. Prerequisites:<br />

CSE 2010 or ECE 2552.<br />

CSE 2500 COMBINATORICS AND GRAPH THEORY (3 credits). Covers<br />

elementary and advanced counting techniques including permutations, combinations,<br />

multisets, inclusion-exclusion, generating functions and recurrence relations. Also<br />

presents topics in graph theory including graphs, trees, binary tree, graph traversals<br />

and network flow. Prerequisites: CSE 1001 or CSE 1502 or CSE 1503, CSE 1400 or<br />

MTH 2051.<br />

CSE 3030 LEGAL, ETHICAL AND SOCIAL ISSUES IN COMPUTING<br />

(3 credits). Overviews legal, ethical and moral considerations for the computing<br />

pr<strong>of</strong>essions. Includes the impact <strong>of</strong> legal concepts on society, the need for ethical<br />

considerations in s<strong>of</strong>tware systems development, and the potential need for pr<strong>of</strong>essional<br />

certification. Prerequisites: COM 2012, COM 2223 or COM 2224, CSE 1002<br />

or CSE 1502 or CSE 1503 or ECE 2551.<br />

CSE 3101 MACHINE AND ASSEMBLY LANGUAGE (3 credits). Presents<br />

a processor’s instruction set and programming structures available to the assembly<br />

language programmer. Includes relations between architecture, machine language<br />

and assembly language. Also includes assembly program interfaces with the operating<br />

system and higher-level languages. Prerequisites: CSE 1002.<br />

CSE 3120 COMPUTER ARCHITECTURE AND ASSEMBLY<br />

PROGRAMMING (3 credits). Introduces advanced computer architecture concepts.<br />

Includes microcode, execution pipelines, cache management, vector processors, parallel<br />

architectures and RISC processors. Explores the interfacing <strong>of</strong> assembly language<br />

programs with the operating system and high-level languages. Requires students to<br />

interface assembly with C and the Win32 API. Prerequisites: CSE 2050, CSE 2120.<br />

CSE 3280 COMPUTER GRAPHICS PROGRAMMING (3 credits). Introduces<br />

computer graphics programming, the graphics pipeline, input and interaction using<br />

modern popular graphics APIs. Includes programming techniques for graphics primitives<br />

and transformations, viewing, lighting and shading, texturing and animation.<br />

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

CSE 3411 SOFTWARE TESTING 1 (3 credits). Explores functional (black box)<br />

methods for testing s<strong>of</strong>tware systems, reporting problems effectively and planning<br />

testing projects. Students apply what they have learned throughout the course to a<br />

sample application that is commercially available or under development. The choice <strong>of</strong><br />

sample application changes from term to term. Prerequisites: CSE 1002, CSE 1400 or<br />

ECE 2552, ECE 3541.<br />

CSE 3421 SOFTWARE DESIGN METHODS (3 credits). Explores methods for<br />

the design <strong>of</strong> s<strong>of</strong>tware systems. Includes formal specifications <strong>of</strong> s<strong>of</strong>tware behavior,<br />

object-oriented analysis/design and structured analysis/design. Prerequisites: CSE 2410.<br />

CSE 4001 OPERATING SYSTEMS CONCEPTS (3 credits). Examines the<br />

design and implementation <strong>of</strong> operating systems. Includes process, storage and<br />

recovery management. Explores issues involved in moving from single-user systems to<br />

multitasking, multiprocessing and multiprocessor systems. Prerequisites: CSE 2050,<br />

ECE 2552, ECE 3551.<br />

CSE 4020 DATABASE SYSTEMS (3 credits). Introduces the fundamentals <strong>of</strong><br />

computer database systems. Includes a review <strong>of</strong> file structures, concepts <strong>of</strong> database<br />

design, functional units <strong>of</strong> a typical database system and application <strong>of</strong> database<br />

concepts to real-world problems. Prerequisites: CSE 2010 or ECE 2552.<br />

CSE 4051 ADVANCED JAVA CONCEPTS (3 credits). Studies core Java and its<br />

major class libraries. Includes exception handling, packages, threads, internationalization,<br />

building graphical user interfaces, applets, networking, RMI, introspection (Java<br />

beans), cryptography and database connectivity. (Requirement: Instructor approval or<br />

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

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<br />

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

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

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

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

and scalability <strong>of</strong> parallel algorithms. Prerequisites: CSE 1502 or CSE 1503 or CSE 2050<br />

or ECE 2552.<br />

238 <strong>Florida</strong> Tech<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 models<br />

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

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 in<br />

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 in<br />

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

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

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

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

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

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

CSE 2010.<br />

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

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

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

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

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

CSE 4201.<br />

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

design and implementation <strong>of</strong> networked programs. Includes multi-threading, client/<br />

server programming, remote method invocation, exception handling, object serialization<br />

and shared-space programming. Prerequisites: CSE 2010 or CSE 2050 or ECE 2552.<br />

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

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

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

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

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 code.<br />

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

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

and 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).<br />

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

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

economic, legal and ethical issues in computer security. Focuses on a system-wide<br />

view <strong>of</strong> security and discusses trends in current literature. Prerequisites: CSE 2010 or<br />

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, global<br />

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

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

CSE 2010 or ECE 2552.<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 extraction<br />

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

clustering techniques, Viterbi, Hidden Markov Models (HMM), keyword spotting and<br />

beam search. Prerequisites: CSE 2050 or ECE 2552, 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.)

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

Saved successfully!

Ooh no, something went wrong!