Course Descriptions

1310. Foundation of Computer Science: 3 hours

Prerequisite: Completion of, or concurrent enrollment in, MAT-1301 or higher Introduction to computer science. Topics include problem solving and software development principles including problem decomposition, abstraction, date structures, algorithm design and analysis, debugging, and testing; computer architecture including low-level data representation and instruction processing; computer systems including programming languages, compilers, operating systems; real-world application including networks, security and cryptography, artificial intelligence, and social issues.

1315. Introduction to Computers and Programming: 3 hours

Prerequisite: MAT 1302 (or higher level mathematics with MAT 1302prerequisite)
Introduction to computers, computer terminology, computer organization, use of computer terminals, and computer programming in the BASIC language. Not for computer science majors

1321. Computer Programming with C++ (1320) : 3 hours

Prerequisite: MAT 1302 (or higher level mathematics with MAT 1302 prerequisite)
A study of problem-solving techniques, algorithms, object-oriented
principles, and programming using C++. Includes an introduction to
computer history, hardware and systems software, software
engineering and modular programming methods, control
structures, data types, arrays, and files.

1322. Advanced Computer Programming with C++: 3 hours

Prerequisite: CSC 1321 or consent of instructor
Advanced features of C++ programming language will be studied. Topics include operator overloading and templates; pointer and dynamic memory; container; inheritance and virtual functions. Object-oriented analysis and design is also covered.

1330. Assembly Language Programming: 3 hours

Prerequisite: CSC 1321 or consent of instructor
Representation of data, base conversions, CPU organization, addressing, relocatability, interpretation of program listings and dumps, indexing, looping, branching, subroutines, and linkages

2310. Computer Organization: 3 hours

Prerequisite: CSC 1322, CSC 1330 or consent of instructor
An introduction to computer structure and organization. Topics include fundamentals of digital logic; logic modules and design (CPU, memory, and I/O units); instruction sets; data path and control; pipelining; registers and addressing modes; Von Neumann, parallel, and other non-traditional machine organizations. An introduction to machine microcode programming is also covered

2320. Data Structures (3351): 3 hours

Prerequisite: CSC 1322
An introduction to abstract data types, algorithms and computational complexity, and implementation of data types and algorithms in programs. Data types include arrays, stacks, queues, linked lists, trees, and graphs. Sorting and searching algorithms.

2340. Object-Oriented Programming and Design

with Internet Applications (3371, 2330, 2331) Prerequisite: CSC 1330, 2320 or consent of instructor
A study of object-oriented design and programming using one or more OO programming languages, such as C++ and Java. An introduction to the Unified Modeling Language (UML) for object-oriented modeling and implementation of significant programming projects. Emphasis is placed on object-oriented techniques and language syntax. Extensive coverage of class libraries including strings, graphical interfaces, threads, networking, and Internet applications.

3320. Programming Language Concepts (4361): 3 hours

Prerequisite: CSC 2320, CSC 2340
Syntactic and semantic of programming languages, programming language structures, data types, control structures, operators, language extendibility, comparison of the structure features, compile and run-time characteristics of imperative, object-oriented, functional, and declarative programming languages.

3360 Analysis of Algorithms: 3 hours

Prerequisite: CSC 2320 and MAT 3381
Introduce formal techniques to support the design and analysis of algorithms, focusing on both the underlying mathematical theory and practical considerations of efficiency. Topics include computational complexity analysis, NP-completeness theory, sorting and searching, graphs, polynominal arithmetic, pattern matching, divide-conquer techniques, greedy methods, and dynamic programming.

3391. Operating Systems: 3 hours

Prerequisite: CSC 2320 and MAT 3381 or concurrent enrollment
Study of the structure and design of operating systems, including memory management, concurrency, file systems, resource scheduling and synchronization.

4320. Artificial Intelligence : 3 hours

Prerequisite: CSC 3320
A survey of the field of Artificial Intelligence. Topics include the competing definitions of AI, links to other disciplines (mathematics, psychology, philosophy, biology), approaches for solving problems that typically are thought to require human intelligence. Areas covered include knowledgebased systems, intelligent search and planning, machine learning, and uncertain reasoning. Students will gain experience by using available AI software and by doing a team project on a current topic.

4341. Principles of Database Systems : 3 hours

Prerequisite: CSC 2320 and MAT 3381
A study of database design and management focusing on the relational model. Topics include data modeling, data definition, data manipulation, normalization, query optimization, and data integrity.

4351. Computer Graphics: 3 hours

Prerequisite: CSC 2320
The hardware and software components of graphics systems. Algorithms for creating and manipulating graphics displays, implementation techniques, and applications.

4360. Computer Networks : 3 hours

Prerequisite: CSC 2310 and CSC 3391
Introduces the networking of computer systems. Topics include local area (LAN) and wide area (WAN) networks, data transmission, communications software, the architecture of networks, network communication protocols, and network security.

4371. Numerical Analysis (MAT 4371): 3 hours

Prerequisites: CSC 1315 or CSC 1321, MAT 2351 or MAT 3321 recommended Scientific applications programming specifically for mathematics or science majors. Topics include techniques for finding roots, interpolation, functional approximation, numerical differentiation, numerical integration, linear programming, and numerical solution of differential equations.

4383. Software Engineering: 3 hours

Prerequisites: CSC 2320 and CSC 3391
A study of the software development life cycle, with emphasis on the analysis and design of software systems. Included are problem identification and definition, modeling systems, requirements analysis, specification, design, implementation, testing, verification, maintenance, and project management. Ethics of the profession are discussed.

4384. Senior Design Project: 3 hours

Prerequisites: CSC 4383
Detailed design, implementation, and testing of software systems using formal software engineering methodologies. To demonstrate
their ability to communicate the results of their effort to others, students are required to submit a final written report and make an oral presentation of their work.

4391. Contemporary Topics in Computer Science: 3 hours

Prerequisite: CSC 2320 and MAT 3381
In-depth investigation of selected topics in computer science, such as data communications, Bayesian networks, data mining, machine learning, neural networks, fuzzy logic, and parallel processing. Topics will vary.

4393. Internship I: 3 hours

Prerequisite: Completion of 45 hours or dean’s approval; 2.0 GPA
Graded academic experiences that provide students with an opportunity to put classroom learning into practice. Internships provide supervised work experience directly related to one’s major field of study.

4394. Internship II: 3 hours

Prerequisite: Completion of 45 hours or dean’s approval; 2.0 GPA

Contact Information

Tamika Reynolds
Administrative Assistant
Department of Mathematics, Computer Science and Physics
Location: McFadden Building, 
Suite 310 
Phone: 817-531-4893 
Fax: 817-531-4275
Hours: Mon-Fri, 8am-5pm

Contact Us:
1201 Wesleyan Street
Fort Worth, TX 76105

Get Social: