Skip Search and Navigation


Online Master of Science in Computer Science

Program Description

The University of Louisville's J.B. Speed School of Engineering has been educating technical professionals since 1924 and features classes and research taught by internationally recognized faculty as well as state-of-the-art computer and networking laboratories. The Master of Science in Computer Science program is available for interested individuals who have an adequate background, but do not necessarily have a baccalaureate degree in engineering or computer science.* The program areas include Foundations, Software, Analytics, Electives and a Project option. Students may complete the program entirely online, or combine online classes with on-campus classes.

Top of Page

Career Opportunities

Computers are used in virtually every aspect of our lives today, from desktops at home and work to large systems supporting government and industry to supercomputers and grids of networked processors expanding the frontiers of science and technology. Not surprisingly, computer professionals are employed in a wide variety of environments, including computer and electronic product manufacturing, other businesses and industries, academia and government. Jobs for qualified computer scientists and engineers are among the fastest growing occupations.

Top of Page



Admission Requirements * Prerequisites for those who do not have an undergraduate degree in computer science: The Test of English as a Foreign Language ( TOEFL ) is required of all foreign students from countries in which English is not the native language. Applicants holding a baccalaureate or advanced degree from an accredited college or university in the United States are exempt from the TOEFL requirement.

Top of Page


Program / Course Requirements

Areas

Online Courses

Requirements

Credit Hours

Foundations

CECS 619 - Algorithms

CECS 504 - Automata Theory
(not offered online but may transfer credit)

1 course required 3
Software

CECS 516 - Computer Networks

CECS 535 - Introduction to Databases

CECS 545 - Artificial Intelligence

CECS 550 - Software Engineering

CECS 629 - Distributed Systems

CECS 630 - Advanced DB and Data Warehouses

CECS 640 Internet Applications

2 courses required 6
Analytic

CECS 506 - Modeling and Analysis

CECS 508 Numerical Analysis

CECS 522 - Performance Evaluation

CECS 563 - Experimental Design

CECS 627 - Digital Image Processing

CECS 622 - Simulations

CECS 632 - Data Mining

2 courses required 6
Thesis option
or
Project option
(preferred for distance students)
3 elective courses at the 500- or 600-level (9 hrs.) plus CECS 690 - MS Thesis (6 hrs.)

or

4 elective courses at the 500- or 600-level (12 hrs.) plus CECS 696 - CECS Project (3 hrs.)
CECS 690 plus 3 CECS electives
or
CECS 696 plus 4 CECS electives
15
Total required number of credit hours
(minimum 15 hours of 600 level courses)
30
Note: All students are required to have a signed course plan approved from the Department prior to graduation.

** Not all of these classes are offered online at this time - online classes will have a section number in the 50's and will be noted as offered "online over the internet." Check the schedule of classes for online sections available.

Refer to the Schedule of Online Classes for a list of current, upcoming and past courses offered at a distance at U of L.– NOTE: All distance courses listed in the schedule of classes will have a section number in the 50’s and a note with the course title that indicates it is offered either online or televised.

To search for both on-line and on-campus classes, go to the Schedule of Classes. Distance classes will have a section number in the 50s and will have a note indicating they are online or televised.

Information / Assistance:

Toll Free: 1-800-334-8635 extention 852-6456
Telephone : (502) 852-6456
Email : Service Account Online Students

Top of Page




U of L Course Descriptions

Disclaimer:
The course descriptions provided herein are for the guidance of students. The University, however, reserves the right to change course descriptions without prior notice. The provisions of this listing do not constitute an express or implied contract between the University and any member of the student body, faculty or general public.



CECS 504 - Automata Theory (3 credit hours) Finite state machines and their application to engineering problems including modeling the behavior of discrete systems. Topics include theory of computing, formal language theory, and applications of cellular automata. Engineering models of digital computer hardware are covered and related to software design. Prerequisite: Discrete Structures (CECS 310).

CECS 506 - Modeling and Analysis (3 credit hours) Representation of engineering systems, Fourier analysis, z-transforms, frequency response, state-space analysis, stability, an introduction to the basic theory of filter design; and demonstrated concepts to CAS. Prerequisite: Linear Algebra for Engineering (EAC 330).

CECS 508 Numerical Analysis (3 credit hours) Advanced numerical methods for computer aided engineering analysis and design. Functional approximation; splines; boundary value problems; Fourier approximations and transforms; FFT; matrix decompositions and eigenvalues; characteristic value problems. Prerequisite: Numerical Methods for Engineering (EAC 307), Linear Algebra for Engineering (EAC 330).

CEE 563 - GPS Theory and Application This web-based course is designed to introduce the student to the theory of Global Positioning Systems (GPS) and how this technology is utilized in Civil Engineering field applications. The course is delivered via the University of Louisville Blackboard Learning System web interface. Prerequisite: CEE 260 (Civil Engineering Field Measurements) and 460 (Transportation Systems Engineering).

CECS 516 - Computer Networks (3 credit hours) Data communications: The exchange of data between devices is covered. The key aspects of transmission interfacing, link control, and multiplexing are examined. Data communication networking: Examines the internal mechanisms by which communication networks provide a data transfer service for attached devices. Note: Cross-listed with ECE 518. Prerequisite: Probability and Statistics for Engineers (IE 360), and Computer Interfacing (CECS 412).

CECS 522 - Performance Evaluation (3 credit hours) A study of approaches to the evaluation of computer systems. Measurement techniques and evaluation techniques are treated in detail with attention to existing commercial hardware and software monitors and simulators. Prerequisite: Probability & Statistics for Engineers (IE 360) and Design of Operating Systems (CECS 420).

CECS 535 - Introduction to Databases (3 credit hours) This course covers the basic issues in the field: database design, SQL, query processing and optimization, transactions. The emphasis will be placed on Engineering design and implementation of relational systems. A written project is required. Prerequisites: Design of File Structures (CECS 335).

CECS 545 - Artificial Intelligence (3 credit hours) Topics covered will include rationale and use of heuristic approach to engineering problem solving; information processing models as an explanation of human perceptual, cognitive and affective behaviors. Applications involving the concepts and problems in artificial intelligence engineering. Prerequisite: Design of File Structures (CECS 335).

CECS 550 - Software Engineering (3 credit hours) Engineering methods applied to the life-cycle issues in the team-oriented development of large software systems including issues of software processes, metrics, testing and quality. Documentation of the project and an oral presentation are required. Prerequisite: Design of Operating Systems (CECS 420) and Object Oriented Design (CECS 440) or consent of instructor.

CECS 563 - Experimental Design (3 credit hours) Design of engineering experiments and projects using theory of least squares, analysis of variance and covariance, randomized blocks, Latin squares, factorial experiments and associated topics. Engineering design problems using SAS or equivalent software packages. Note: Crosslisted with IE 563. Prerequisite: Probability & Statistics for Engineers (IE 360).

CECS 619 - Algorithms (3 credit hours) The engineering design of efficient computer algorithms. A study of the inter-relationships between algorithmic statements, data structures, and the resulting computational complexity of the algorithm. An engineering analysis of the effect of the computer implementation of the algorithmic statement on the computational complexity. Categorization of algorithms into complexity classes. Prerequisite: Design of File Structures (CECS 335) and Discrete Structures (CECS 410).

CECS 622 - Simulations (3 credit hours) Engineering design of simulation languages and simulators, discrete stochastic systems, issues in large scale simulation studies and engineering evaluation methods. Prerequisite: Probability & Statistics for Engineers (IE 360).

CECS 627 - Digital Image Processing (3 credit hours)
A course that surveys basic concepts in image processing and pattern recognition. Topics included are: contrast and edge enhancement, histogram modification, image segmentation, feature extraction, statistical classifiers. Design problems involving computer implementation of algorithms are used extensively. Prerequisites: Modeling and Analysis of Engineering Systems (CECS 506) or ECE 420 or faculty consent.

CECS 629 - Distributed Systems (3 credit hours) Software issues involved in designing distributed systems, resource allocation, load balancing, synchronization of processes, reliability evaluation of distributed systems, with emphasis on current research topics. Prerequisite: Design of Operating Systems (CECS 420) and Fundamentals of Computer Communications and Networks (CECS 516.)

CECS 630 - Advanced DB and Data warehouses (3 credit hours) Object-relational databases, extended relational databases, and semi-structured data. Design, query languages, query processing, and optimization in data warehousing. Integration of heterogeneous data. Prerequisites: Introduction to Databases (CECS 535).

CECS 632 - Data Mining (3 credit hours) Data mining concepts, methodologies, and techniques, including statistical and fuzzy inference, cluster analysis, artificial neural networks, and genetic algorithms, rule association and decision trees, N-dimensional visualization, Web and text mining, and advanced topics. Prerequisites: Probability and Statistics for Engineers (IE 360), Introduction to Databases (CECS 535).

CECS 640 Internet Applications (3 credit hours) Java and network communications, applets, servlets, and JSP, database access, remote method envocation, activatable RMI, Java security, COBRA, XML, and e-commerce applications. Prerequisites: Computer Networks (CECS 516) and basic knowledge of Java and object-oriented design.

CECS 696 - CECS Project (3 credit hours) Independent design or experimental project in Computer Engineering and Computer Science. Written and verbal reports required. Reports must include literature, speech, experimental methodology, design details, implementation details, test results, conclusions, and references. Verbal reports will be presented at a specified date each semester. Prerequisites: Graduate Standing in CECS.

Top of Page