CSSE 1710 Introduction to Programming I
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
Corequisites: CSSE 1711
Overview of computer organization, algorithm design, introduction to programming in C++, input/output statements, arithmetic expressions, assignment statements, logical expressions, conditional statements, control statements, functions and function calls, math Library, I/O library, character library, introduction to arrays and pointers, program testing and debugging. | 3 | 0 | 0 | | |
CSSE 1711 Programming I Laboratory
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
Corequisites: CSSE 1710
Laboratory activities focused on computer programming in a high-level language. This course is a companion lab for CSSE 1710. | 1 | 0 | 0 | | |
CSSE 1720 Introduction to Programming II
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1710 (Minimum Grade of C, May not be taken concurrently)
Corequisites: CSSE 1721
Built-in and user-defined data types, arrays, lists, strings, records, classes and data abstraction, C++ object-oriented software developments, inheritance, composition, dynamic binding and virtual functions, pointers, dynamic data, reference data types, recursion. | 3 | 0 | 0 | | |
CSSE 1721 Programming II Laboratory
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
Corequisites: CSSE 1720
Laboratory activities focused on computer programming in a high-level language. This course is a companion lab for CSSE 1720. | 1 | 0 | 0 | | |
CSSE 2130 Java
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
Java applications, Java applets, control structures, methods, arrays, strings and characters, object-oriented programming, graphics and Java 2D, basic graphical user interface components, exception handling, files and streams, and Java utilities. | 3 | 0 | 0 | | |
CSSE 2430 Data Structures
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
Review of object oriented principles, standard data structures, Big-O notation, NP completeness, stacks, queues, generic data types, dynamic memory, recursion, linked lists, circular lists, doubly linked lists, trees, binary search trees, heaps, graphics, sorting algorithms, searching algorithms, object-oriented language implementation of data structures and algorithms. | 3 | 0 | 0 | | |
CSSE 2710 Assembly Language
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1710 (Minimum Grade of C, May not be taken concurrently)
Corequisites: CSSE 1710
Basic PC architecture, computer number systems and codes, basic components of assembly language, assemblers, directives, linking and executing programs, addressing techniques, symbolic instructions, writing .com programs, logic and control, processing string data, processing binary data, processing ASCII and BCD data, defining and processing tables, macros. | 3 | 0 | 0 | | |
CSSE 2750 Computer Ethics
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Students will study the theory and practice of computer ethics. This will include the basis for ethical decision-making and the methodology for reaching ethical decisions concerning computing matters that impact society as well as students' personal and professional lives. Discussion of the Software Engineering Code of Ethics and Computer Science Code of Ethics. | 3 | 0 | 0 | | |
CSSE 3170 Linux Systems Programming
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
The Linux Programming Toolkit, input and output, files and directories, process control, threads, accessing system information, memory management, inter-process communications, TCP/IP and socket programming, UDP, multicast sockets, non-blocking I/O, programming the user interface, shell programming, device drivers, package management, projects | 3 | 0 | 0 | | |
CSSE 3410 Computer Graphics
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
MTH 2410 (Minimum Grade of D, May not be taken concurrently)
Graphics systems software, graphics systems hardware, object transformation, viewing transformation, rotation, translation, scaling, compositions of transformations, line clipping, polygon clipping, graphics data structures, animation techniques, shading, curves representations, surface representations, texture, image manipulation. | 3 | 0 | 0 | | |
CSSE 3450 Object-Oriented Soft Construction
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Object-oriented programming techniques, encapsulation, constructors, destructors, overloading, single and multiple inheritance, polymorphism, composition, templates, iterators, member function access, data hiding, abstract classes, exception handling, projects. | 3 | 0 | 0 | | |
CSSE 3540 Database Systems and Programming
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
Database management, database system architecture, relational databases, SQL, domains, relations, relational algebra, relational calculus, integrity, views, normalization, database security, database connectivity, database programming, projects. | 3 | 0 | 0 | | |
CSSE 4150 Introduction to Software Engineering
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
Software Processes. Software requirements engineering, system models, architectural design, object-oriented design, software reuse, verification and validation, software testing, software cost, quality management, process improvement. | 3 | 0 | 0 | | |
CSSE 4160 Software Testing
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 4150 (Minimum Grade of C, May not be taken concurrently)
Software Bugs, Black Box Testing, White Box Testing, Static Testing, Dynamic Testing, Testing Specifications, Testing Functions and Data, Functional Testing, Regression Testing, Compatibility Testing, Usability Testing, Test Case Design, Test Metrics, Test Coverage, Testing Tools.<p>Recommended prerequisite - CSC 4150 Introduction to Software Engineering. | 3 | 0 | 0 | | |
CSSE 4340 Software Systems Verification
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 4150 (Minimum Grade of C, May not be taken concurrently)
Verification by Formal Proving of Software Systems, Verification of Implementation Against both Requirements and Design, Timing Analysis and Verification, Software Security Verification, Model checking, Automata Systems and Temporal Logic, Symbolic Model checking, Verification Tools. | 3 | 0 | 0 | | |
CSSE 4400 Software Requirements Engineering
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Tools and techniques for requirements elicitation, requirements specification, requirements analysis, system development and maintenance requirements, problems with specifying requirements, formal modeling of software requirements, prototyping in validating requirements, projects.<p>Recommended prerequisite - CSC 4150 Introduction to Software Engineering. | 3 | 0 | 0 | | |
CSSE 4410 Object-Oriented Programming
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
This course is designed to introduce object-oriented programming to students who have had a background in traditional, procedural programming. Topics include object-oriented programming techniques, encapsulation, constructors, destructors, overloading, single and multiple inheritance, polymorphism, composition, templates, iterators, member function access, data hiding. The implementation language will be C++. The course will begin with a description of that part of C++ that is simply part of C (called the kernel language) and then present objects and their implementation in C++. | 3 | 0 | 0 | | |
CSSE 4420 Comparative Programming Languages
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of D, May not be taken concurrently)
Comparison of the principles of high-level programming languages, binding of variables, storage allocation, parameter passing, procedure linking, program structures and the program environment. Computer projects. | 3 | 0 | 0 | | |
CSSE 4430 Data Structures
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
OR
CSSE 4410 (Minimum Grade of C, May not be taken concurrently)
Review of object oriented principles, standard data structures, Big-O notation, NP completeness, stacks, queues, generic data types, dynamic memory, recursion, linked lists, circular lists, doubly linked lists, trees, binary search trees, heaps, graphics, sorting algorithms, searching algorithms, object-oriented language implementation of data structures and algorithms. | 3 | 0 | 0 | | |
CSSE 4440 Web Technology
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
Internetworking, HTTP, HTML, XML, JavaScript, Perl, Jscript, Java Applets, CGI, Server-side scripting, Webservers, WebSecurity, E-commerce. | 3 | 0 | 0 | | |
CSSE 4450 Numerical Analysis
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Iterative methods, equations in one variable, polynomial approximation, numerical integration and differentiation, polynomial approximation of functions, numerical methods in matrix algebra, least squares method, numerical methods in differential equations including initial value problems, computer projects. | 3 | 0 | 0 | | |
CSSE 4490 Operating Systems
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 2430 (Minimum Grade of C, May not be taken concurrently)
Review of batch processing systems including components, operating characteristics, user service and limitations, implementation techniques for parallel processing of input/output and interrupt handling, overall structure of multiprogramming systems techniques, memory management, file system design and management, system accounting and other user-related services, traffic control, inter-process communication, design of system modules and interfaces, system updating, documentation and operation. Computer projects. | 3 | 0 | 0 | | |
CSSE 4500 Software Quality Engineering
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 4150 (Minimum Grade of C, May not be taken concurrently)
Software Quality Management, Software Quality Metrics, Measurement and Analytical Methods, Software Validation and Verification, Auditing Techniques including Checklists, Sampling Theory, Flow Charts, Pattern/Trend Analysis, Root Cause Analysis, Cause And Effect Diagrams, Pareto Charts, Histograms, Descriptive Statistics, Control Chart Preparation. | 3 | 0 | 0 | | |
CSSE 4520 Advanced Java
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 2130 (Minimum Grade of C, May not be taken concurrently)
Advanced graphical user interfaces, multi-threading, Java beans, Java networking, Java database connectivity (JDBC), Java Servlets, Java security, remote method invocation (RMI), Java native interface (JNI), Java 2 micro edition, Java programming with CORBA. | 3 | 0 | 0 | | |
CSSE 4540 Computer Security
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1710 (Minimum Grade of C, May not be taken concurrently)
MTH 1420 (Minimum Grade of D, May not be taken concurrently)
Computer security software, cryptanalysis techniques, Shannon's Theory, the data encryption standard, public-key cryptography, factoring algorithms, discrete log problems, bit security of discrete logs, signature schemes, cryptography and hash functions, key distribution and agreement, identification schemes, authentication codes, secret sharing schemes. | 3 | 0 | 0 | | |
CSSE 4550 Introduction to Artificial Intelligence
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 2430 (Minimum Grade of C, May not be taken concurrently)
Introduction to artificial intelligence (AI), intelligent agents, solving problems by searching, informed search methods, agents that reason logically, first-order logic, inference in first-order logic, planning, planning and acting, uncertainty, probabilistic reasoning, learning from observation, AI programming languages, projects. | 3 | 0 | 0 | | |
CSSE 4570 Software Project Management
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 4150 (Minimum Grade of C, May not be taken concurrently)
Project management concepts, project metrics, project planning, risk analysis and management, project scheduling, project tracking, software quality assurance, software configuration management, communicating project information, critical paths, case studies, and term project. | 3 | 0 | 0 | | |
CSSE 4590 Computer Simulation and Modeling
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Basic simulation modeling such as in single-server queuing systems, inventory systems, parallel and distributed simulation, continuous and discrete simulation, and Monte Carlo simulation. Modeling of complex systems such as time-shared computer model, multi-teller bank with jockeying, differential equation systems (difference, ordinary, partial), and job-shop models. Discussion of simulation software, review of basic probability and statistics needed in simulation, selecting input probability distributions, and building valid simulation models. Simulation programs will be written and studied. | 3 | 0 | 0 | | |
CSSE 4610 Introduction to Data Mining
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of D, May not be taken concurrently)
Introduction to data warehousing, data preparation for data mining, classification, association, clustering, prediction, data mining applications, data mining projects. | 3 | 0 | 0 | | |
CSSE 4620 Introduction to Bioinformatics
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 3540 (Minimum Grade of C, May not be taken concurrently)
This course will introduce Molecular Biology and Biological Chemistry, Data Searches and Pairwise Alignments, Substitution Patterns, Distance-Based Methods of Phylogenetics, Character-Based Methods of Phylogenetics, Genomics and Gene Recognition, Protein and RNA Structure Prediction, and Proteomics. Bioinformatics techniques and algorithms will be used. | 3 | 0 | 0 | | |
CSSE 4630 Introduction to Formal Languages
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Java overview, relational database overview, basic methods, callable statements, connection methods, database meta data methods, data truncation class methods, data class and methods, driver methods, driver manager class and methods, driver property info class, prepare statement methods, result set methods, result set meta data methods, SQL exception class and methods, SQL warning class and methods, statement methods, time class, timestamp class, types class, JDBC types, mapping SQL and Java types. | 3 | 0 | 0 | | |
CSSE 4640 Parallel Programming
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
Overview of parallel hardware and software, parallel programming tools, parallel numerical integration example, collective communication, grouping data for communication, dealing with I/O, debugging parallel programs, design and coding of parallel programs, performance, advanced point-to-point communication, parallel algorithms. | 3 | 0 | 0 | | |
CSSE 4650 Win32 Programming
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Development of graphical user interface Windows applications, using class libraries and applications frameworks, menus and toolbars, drawing in a Window, creating documents and improving views, dialogs and controls, writing personal DLLs, connecting to data sources, OLE documents, active-X controls. Computer projects. | 3 | 0 | 0 | | |
CSSE 4670 Distributed Computation
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Prerequisites:
CSSE 1720 (Minimum Grade of C, May not be taken concurrently)
Theory of Distributed Computing, basic algorithms for message passing systems, leader election in rings, mutual exclusion in shared memory, fault-tolerant consensus, causality and time, formal models for simulations, broadcast and multicast, distributed shared memory, fault-tolerant clock synchronization. | 3 | 0 | 0 | | |
CSSE 4690 Senior Seminar in Computer Science
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Students prepare and present paper(s) related to their primary area of interest, with approval of the instructor. This course should be taken by computer science majors in their final year of study. | 3 | 0 | 0 | | |
CSSE 4860 Software Integration
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
The Business Imperative for Enterprise Integration, Business Drivers and Requirements, Enterprise Integration Strategy, Enterprise Integration Architecture Overview, Current Integration Architecture Assessment, Technical Integration Architecture, Service Integration Architecture, Information Integration Architecture, Process Integration Architecture, Application Integration, Information Integration, Composite Application Integration, Process-Driven Integration, Best Practices for Enterprise Integration, Projects. | 3 | 0 | 0 | | |
CSSE 4900 Special Topics
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
Covers some topic of current interest in Computer Science. Topics vary from semester to semester. | 3 | 0 | 0 | | |
CSSE 4950 Senior Design Project
| Credit Hours | Recitation/Lecture Hours | Studio Hours | Clinical Hours | Lab Hours |
This is a team-oriented project course in which teams design, implement, test, and document a software system. The instructor will either offer or solicit a selection of projects. Projects may include students from other disciplines. Students should take this course in their final year of study. | 3 | 0 | 0 | | |
|
|