|
Subject
|
Catalog Number |
Course Title
|
Course Description |
Spring 2010
|
Summer 2010
|
CSCI
|
3000
|
Computer Science Elective
|
Computer Science 3000 Level Elective
|
X
|
N/A
|
CSCI
|
3033
|
Concepts of Data Structures
|
Prerequisite: Programming in C. An introduction to the concepts of data structures for non-computing majors, including records, tables, linked lists, stacks and queues. Abstract data types. Recursion. Searching, sorting, and an introduction to binary trees. Not to be taken by computing and engineering majors. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
3131
|
Programming with Visual Basic
|
Programming with Visual Basic with emphasis on object-oriented programming and the uses of integrated development environments. Data types, control structures, functions and subroutines, files, classes, controls, object-oriented programming and the development of COM components. Modeling, programming and testing. Laboratory Instruction.
|
Offered
|
N/A
|
CSCI
|
3132
|
Programming In Pascal
|
Programming with the Pascal programming language with emphasis on structural programming techniques. A study of Pascal including control structures, functions and procedures, arrays, records, I/O, sequential files and relative files. Software development including analysis, design, coding, implementation, testing and documentation. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
3133
|
Programming With C
|
Programming techniques with the C programming language, emphasis on modular design, data abstraction and encapsulation using ANSI C. Use of all features of C including arrays, pointers, structures, prototypes, separate compilation and the C-preprocessor. Development of generic functions and study of portability issues. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
3134
|
Software Devept With Java
|
Prerequisite: C. Software development with the Java programming language. Object-oriented design with UML and object-oriented programming with Java and the Java Class libraries. Design of applets and stand-alone Java applications. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
3231
|
Numerical Methods
|
Prerequisites: Calculus, linear algebra, ordinary differential equations, and programming in C, Pascal, Ada or Java. Taylor series and error analysis, interpolation, solution of linear and non-linear equations, least squares, integration of functions and differential equations. Programming assignments. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
3233
|
Objct Oriented Design & Progrm
|
Prerequisite: CSCI 3333 Data Structures. Basic elements of object-oriented technology including classes, their attributes, methods and relations to other classes, objects, classification and inheritance, encapsulation, polymorphism, object-oriented analysis, design and programming assignments in C++ language under UNIX. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
3234
|
Advance Software Development
|
Prerequisite: CSCI 3134 Software Development with Java. This course covers advanced programming concepts and use Java programming language. Using UML, pseudo code, and algorithmic modeling to design Java programs. Advanced programming features in Java including detailed review of object oriented paradigm, multithreading, network programming, remote method invocation, using GUI components, basic data structures in Java, Java database connectivity. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
3331
|
Comp Org & Assembly Language
|
Prerequisite: Programming in C. Basic elements of computer hardware and software, data representations, instruction formats and addressing modes, assembly language instructions, programming techniques in assembly language, macro assemblers, link-loaders, functions of operating systems and input/output programming and peripherals. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
3333
|
Data Structures
|
Prerequisites: C and CSCI 3234. Advanced programming techniques and data structures including records, arrays, linked lists, queues and stacks. Abstract Data Types, recursion, searching/sorting, binary trees, hashing techniques, and elementary algorithm analysis. Laboratory instruction
|
Offered
|
N/A
|
CSCI
|
3432
|
Ada Programming Language
|
Introduction to the Ada programming language. Emphasis on the systematic design of software in the Ada environment. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
3532
|
Adv Data Structr & Algorithms
|
Prerequisite: MATH 3331 and CSCI 3333 or equivalent. Binary trees, trees, graph theory, finite state automata, external storage devices, sequential and direct file organizations, file processing techniques, hashing, B-trees, external sorting, P and NP problems, algorithmic analysis. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
3632
|
Ai Programming Languages
|
Prerequisites: CSCI 3333. An introduction to AI programming languages. Programming assignments in LISP and PROLOG. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
3931
|
Selected Topics In Computing
|
Identified by specific title each time course is offered.
|
X
|
N/A
|
CSCI
|
4000
|
Computer Science Elective
|
Computer Science 4000 Level Elective
|
X
|
N/A
|
CSCI
|
4033
|
Concepts of Database Systems
|
Prerequisite: CSCI 3033. An introduction to the concepts of database systems for non-computing majors, including modeling and implementation of database systems, data models, relational model, database languages, relational algebra, SQL, normalization theory and Web database connectivity. Not to be taken by computing and engineering majors. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
4037
|
Computing Essentials
|
Modern computing software tools and information technologies taught in a practical, hands-on manner. Topics covered: word processing, databases, spreadsheets, presentation software, computer programming, the Internet and development of home pages using HTML and other tools. Emphasis is on the development and application of computer skills to the student's program area. Laboratory instruction. Not for credit for computing science majors.
|
X
|
N/A
|
CSCI
|
4038
|
Topics In Comp Sci-Non Majors
|
Identified by topics each time the course is offered. Not to be taken for credit by majors in computing programs. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
4132
|
Network Protocols
|
Prerequisites: CSCI 3331 and CENG 3331. Data communications systems software concepts; computer network architecture; ISO model. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
4134
|
Adv Sw Design With Java
|
Prerequisites: CSCI 3134 or equivalent. Advanced software design with the Java programming language, including multi-threaded applications, exception handling, network programming, Java Beans, security issues, and advanced AWT usage. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
4135
|
Adv. Soft Dev with .NET and C#
|
Prerequisite: CSCI 3333 and CSCI 3233 or CSCI 3134 or equivalent. In depth study of the managed environment provided by .NET Framework and its use for developing advanced windows applications utilizing OOP conceps and techniques. Includes GUI issues, event and exception handling, multithreading, networking, collections, file and database access as well as an introduction to ASP .NET, Web Forms and Web Services.
|
Offered
|
N/A
|
CSCI
|
4230
|
Web Appl Develop
|
Prerequisite: CSCI 3133, CSCI 3134, CSCI 3333. Survey of languages, tools and techniques for Web application development, HTML, XHTML CSS, JavaScript, Dynamic HTML, Server-side web development using .Net Framework with ASP.NET and C#, Perl, XML. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
4233
|
Computer Security
|
Prerequisites: CSCI 3331, CSCI 3532. Introduction to encryption, decryption and cryptographical protocols; security components; security policies and mechanisms in computer applications, computer systems and networks; legal/ethical issues in computer security. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
4333
|
Design Of Database Systems
|
Prerequisite: CSCI 3333. Design of database systems, data description and manipulation languages, data models, entity-relationship model, relational model, SQL, relational algebra, normalization theory, DBMS, Internet, data base design, data flow diagrams and implementation of data base systems. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
4530
|
Comptr Grphics & Intrfce Desgn
|
Prerequisites: Calculus I; Linear Algebra. Two -dimensional graphics algorithms, point and coordinate transformations, animation on graphics terminals and systems. Laboratory instruction using Solaris X-Windows environment.
|
X
|
N/A
|
CSCI
|
4531
|
Advanced Programming in UNIX
|
Prerequisite: CSCI 3133 or equivalent and CSCI 3333. Program development in a multiprocessing environment, including: process and file system data structures, process control, synchronization and communication between concurrent processes, shared memory, threads, and signals. Advanced input/output mechanisms such as asynchronous I/O and memory mapped I/O. Library functions including system function and database library routines. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
4534
|
Operating Systems
|
Prerequisites: CSCI 3331, CSCI 3333 and CENG 3531 or equivalents and senior standing. Analysis and design of basic operating systems concepts, including multiprocessing, interprocess communication and synchronization, scheduling, file systems, memory management, input/output, and deadlock. Examples drawn from real operating systems including Unix and Windows NT. Laboratory instruction..
|
Offered
|
N/A
|
CSCI
|
4632
|
Comp Game Prog
|
Prerequisite: Previous programming experience in a high level language. Applying a fourth generation game engine and language on designing and developing 2D and 3D real-time multi-media.
|
X
|
N/A
|
CSCI
|
4634
|
Computer Sys Administration
|
Prerequisites: CSCI 3333. Administration of computers and their operating systems, both as stand-alone and in network topologies. Unix is used as an example. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
4819
|
Indt Study In Computer Science
|
Prerequisite: Approval of instructor, chair and associate dean. Independent study in Computer Science and Computer Information Systems.
|
X
|
N/A
|
CSCI
|
4837
|
Soc Eth & Sec Reltd Iss in Com
|
Examination of ethics in computer-related professions. Analysis of case studies. The social impact of computing, especially as related to the Internet, Commerce, Education and Government. Security and Privacy issues in connection with producing and maintaining software and hardware products. Students will make oral presentations, lead group discussions, and write technical reports.
|
X
|
N/A
|
CSCI
|
4838
|
Senior Project in Comp Science
|
Prerequisite: CSCI 3532 and SWEN 4432. May be taken only during the final semester before graduation. Registration is restricted to students with an approved Candidate Plan of Study. Students develop a significant computer application for a realistic project. Emphasis will be on practical experience on all phases of constructing a computer solution. Professional behavior, ethics and teamwork will be developed throughout the project. Students prepare written reports and give oral presentations. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
4839
|
Indt Study In Computer Science
|
Prerequisite: Approval of instructor, chair and associate dean. Independent study in Computer Science and Computer Information Systems.
|
X
|
N/A
|
CSCI
|
4915
|
Cooperative Education Work Trm
|
Prerequisites: Approved Candidate Plan of Study, completed cooperative education file and approval of associate dean and Director of Cooperative Education. Educational paid work assignment by a student in the field of career interest and course of study. A technical report will be required at the end of the semester. (Specific requirements are noted in the Cooperative Education Catalog description.)
|
Offered
|
N/A
|
CSCI
|
4931
|
Select Topics Computer Science
|
Identified by specific title each time course is offered.
|
Offered
|
N/A
|
CSCI
|
5032
|
Data Structures
|
Prerequisites: Programming in C or Java. Data structures including linked lists, queues, stacks, tables, trees, B-trees, B+ trees, balanced trees, graphs, finite state machines and file structures. Algorithms including recursion, searching and sorting. An introduction to complexity analysis. Leveling course for approved CS/CIS graduate students. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5034
|
Operating Systems Concepts
|
Prerequisite: Graduate standing, CSCI 5062 or equivalent. Credit may not be applied toward a degree in Computer Science. Operating systems concepts including process management, scheduling, interprocess communication multiprogramming, device management, memory management, file systems, deadlocks, and UNIX system calls. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5061
|
Prog Languages & Problm Solv
|
Prerequisite: Graduate standing. Credit may not be applied toward a degree in Computer Science. Problem-solving techniques including in-depth coverage of Assembly Language and C. Principles and survey of programming languages, such as Pascal, Ada, C++, Java, Prolog, Lisp, Smalltalk. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5131
|
Simulation Techniques
|
Prerequisites: Computer language proficiency, numerical methods and probability; linear systems analysis recommended. Modern software techniques in continuous and discrete model construction for industrial and scientific applications. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5132
|
Internet Protocols
|
Prerequisite: CSCI 3333, CSCI 3532, and CSCI 3331 or equivalents. Interconnection of heterogeneous networks and the layering principles of TCP/IP which make it possible. A brief look at underlying hardware technologies. Internet addressing and routing, reliable and unreliable transport protocols. Application level services available in the Internet.
|
Offered
|
N/A
|
CSCI
|
5232
|
Concepts of Prog Lang
|
Prerequisite: CSCI 3333. Study of various programming languages from cnceptual standpoint; topics will include formal language definition, data storage techniques, design techniques and implementation issues for compilers. Both numeric and string processing languages will be covered. The course assumes knowledge of at least one imperative language such as C, C++, or Java.
|
Offered
|
N/A
|
CSCI
|
5233
|
Computer Security & Integrity
|
Prerequisites: CSCI 4333, CSCI 4534 or equivalents. Introduction to encryption and decryption; security mechanisms in computer architectures, operating systems, database, networks, and introduction to security.
|
Offered
|
N/A
|
CSCI
|
5234
|
Web Security
|
Prerequisites: CSCI 5233 and CSCI 4230 or instructor's approval. The objectives of this course include fundamental coverage of issues and techniques in developing secure web-based applications, and related topics such as network security, web server security, application-level security and web database security, etc.
|
Offered
|
N/A
|
CSCI
|
5235
|
Network Security
|
Prerequisite: CSCI 5233 or CSCI 4233 and CSCI 5132 or CSCI 4132. Advanced cryptography, access control, distributed authentication, TCP/IP security, firewalls, IPSec, Virtual Private Networks, intrusion detection systems and advanced topics such as wireless security, identity management, etc.
|
X
|
N/A
|
CSCI
|
5331
|
Computer Graphics
|
Prerequisites: CSCI 3532, CSCI 4530 or equivalent, linear algebra and analytic geometry. Interactive graphics techniques, three dimensional graphics including 3-D projections, hidden line elimination and shading. Stereo graphics and Virtual Reality. Animation. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5332
|
Adv Graphics Windowing Systems
|
Prerequisites: CSCI 3532, CSCI 4530 and C programming. Analysis and design of graphics techniques for windowing systems. Development of graphical user interfaces (GUIs) using the X Window System. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5333
|
Data Base Management System
|
Prerequisite: CSCI 4333. Data base management systems (DBMS), relational DBMS, object-oriented DBMS, knowledge base management system, data base language, query optimization, security and integrity, concurrency control and recovery, design theory of data bases. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
5431
|
Client-Server Based Ntwk Prog
|
Prerequisites: CSCI 3133; CSCI 4531 or CSCI 4534. Principles and issues related to the development of client-server based applications. Detailed study of networking API to the TCP/IP protocol suite in a suitable multitasking platform (Unix or Windows NT). Concurrency issues in the design of client and server programs. Trade-offs of different architectures and usage of Remote Procedure Calls. Broadcasting and Multicasting. Interoperability of IPv4 and IPv6 clients and servers. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5432
|
Design & Analysis Algorithms
|
Prerequisite: CSCI 3532. Review of advanced data structures and algorithm design. Focus on analysis techniques for complex algorithms and data structures, including amortized analysis, randomized algorithms, and NP approximations. Includes survey of parallel analysis and complexity theory.
|
Offered
|
N/A
|
CSCI
|
5433
|
Object-Oriented Database Syst
|
Prerequisite: CSCI 4333, CSCI 4230 recommended. Integration of object-oriented technology with database and Internet technologies, topics include modeling and design for object-oriented database systems, their development processes, implementation of online web database applications using object-oriented languages, scripting languages and object-oriented DBMS to store and retrieve objects in an object-oriented database. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
5530
|
Pattern Classification
|
Prerequisites: Calculus, linear algebra, probability, statistics and a compiler language. Introduction to the basic concepts of pattern classification including Bayes decision theory, parametric and non-parametric techniques, linear discriminant functions and clustering. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5531
|
Advanced Operating Systems
|
Prerequisites: CSCI 4534, familiarity with C and UNIX system calls. Study of current methodologies used in the design of distributed operating systems including issues related to the design of distributed file systems, interprocess communication and synchronization facilities, process, processor and memory management within the context of distributed operating systems. Case studies and review of current literature. Basic introduction to network programming and its application to the design of a simplified component of a distributed operating system. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
5532
|
Pattrn Recogn Image Processing
|
Prerequisite: Calculus, linear algebra, probability statistics and a compiler language. An introduction to basic concepts and techniques for digital image processing, including software and hardware techniques for statistical pattern recognition and extracting useful information from pictures by automatic means. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5533
|
Distributed Informaton Systems
|
Prerequisites: CSCI 5333. Distributed transparency, distributed data base design, distributed query processing, distributed concurrency control and recovery, distributed DBMS. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5631
|
N-Tier Client Server Architect
|
Prerequisite: CSCI 5431 or CSCI 5531. Principles and issues related to the development of interface based software components as the foundation for developing scalable multitier architectures. Topics include: interface definition and design, language integration (VB, C++ and Java), concurrency and threading issues, type libraries, distributed components, connectable components, and persistence.
|
X
|
N/A
|
CSCI
|
5633
|
Web Database Development
|
Prerequisite: CSCI 4230 and CSCI 4333. Principles of design and implementation of web database systems for storing, updating and retrieving data on the web: web database development techniques, database modeling, SQL development, web database connectivity, web database application programming, scripting languages, exchanging data with XML, user authentication, user tracking, session management, e-commerce and web database administration will be covered. Laboratory instruction.
|
Offered
|
N/A
|
CSCI
|
5635
|
Parallel Processing
|
Prerequisite: Background in computer architecture and programming. Integrated discussion of the software and hardware design issues involved in parallel processing. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5733
|
XML Application Development
|
Prerequisite: CSCI 3134,CSCI 4230. XML standards including XML, DTD, DOM, XSL, XSLT, Xpath, Xpointer and XML Schema. XML related technologies including XML parsers, JAXP, XSL parsers, XML servers, XML databases, SOAP and Web services. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
5833
|
Data Mining Tools and Tech
|
Prerequisite: CSCI 3333 and CSCI 4333. Overview of the data mining process (e.g. CRISP-DM) including issues of data cleansing and data modeling. Characterization of data (structured, unstructured, time series). Examination of machine learners (neural networks, genetic programs). Critique of various data mining tools regarding functionality and application. Assessment of data mining domains using financial, bioinformatics and web-based repositories. CSCI 5333 recommended.
|
X
|
N/A
|
CSCI
|
5915
|
Cooperative Education Work Trm
|
Prerequisites: Approved Candidate Plan of Study, completed cooperative education file and approval of associate dean and Director of Cooperative Education. Educational paid work assignment by a student in the field of career interest and course of study. A technical report will be required at the end of the semester. (Specific requirements are noted in the Cooperative Education Catalog description.)
|
Offered
|
N/A
|
CSCI
|
5919
|
Indt Study In Computer Science
|
Prerequisite: Approval of instructor, chair and associate dean. Independent study in Computer Science and Computer Information Systems.
|
X
|
N/A
|
CSCI
|
5931
|
Research Topics Comp Science
|
Identified by specific title each time course is offered.
|
Offered
|
N/A
|
CSCI
|
5933
|
Computational Bioinformatics
|
Prerequisite: CSCI 5833. Course assumes students have very little or nor prior Biological background. The course examines computational approaches to understanding and predicting the structure, function, interactions and evolution of DNA, RNA, proteins and related molecules and processes. The methods taught focus on developing the structure of the models, on model fitting algorithyms (machine learning) and on the application of the resulting models (data mining). Most applications will revolve around DNA, RNA, portein sequence and gene-expression-array data, but other types of data may also be considered.
|
X
|
N/A
|
CSCI
|
5939
|
Indt Study In Computer Science
|
Prerequisite: Approval of instructor, chair and associate dean. Independent study in Computer Science and Computer Information Systems.
|
X
|
N/A
|
CSCI
|
6132
|
Enterprise Networking
|
Prerequisite: CSCI 5132. Seminar in enterprise networking; groupware, workflow, and workgroup computing. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
6530
|
Research Methods In Comp Sci
|
A study of current methods and techniques in computer science research, including writing research proposals, conducting research, technical writing and presentations.
|
Offered
|
N/A
|
CSCI
|
6532
|
Real-Time Systems
|
Prerequisite: Background in operating systems. Major issues in the design and implementation of predictable real-time systems including cyclic executives, fixed priority executives, dynamic priority executives, priority inversion, object-oriented design, real-time transaction systems, real-time programming languages and real-time operating systems. Laboratory instruction.
|
X
|
N/A
|
CSCI
|
6838
|
Research Project And Seminar
|
Prerequisite: 24 hours completed in graduate program. Attendance to orientation meeting of first class day required. Students will be assigned a research project which requires integrating knowledge and standard procedures in the discipline. A written paper and a presentation will be required.
|
Offered
|
N/A
|
CSCI
|
6939
|
Master's Thesis Research
|
Prerequisite: Approval of faculty adviser, master's committee and Dean.
|
X
|
N/A
|
CSCI
|
6969
|
Master's Thesis Research
|
Prerequisite: Approval of faculty adviser, master's committee and Dean.
|
X
|
N/A
|