Expected Graduation December 2016


Major: Computer Science

Minor: Pure Mathematics & Worship Ministry

3.97 GPA

Relevant Classes

Object-Oriented System Design and



Introduces more advanced elements of object-oriented programming, including dynamic data structures, recursion, searching and sorting, and advanced objectoriented techniques.

Database Management Systems


Introduction to database concepts and the relational database model. Topics include SQL, normalization, design methodology, DBMS functions, database administration, and other database management approaches such as client/server databases,

object oriented databases, and data warehouses.

Strong emphasis on database system design and application development.

Fundamentals of Information Security


An introduction to the security of digital information including: threats; regulations; risk management; attack detection and response; cryptography; forensics; and technical training and certifications.

Principles of Software Engineering


Survey of techniques, methods and theories used in the analysis, design, implementation, and testing of software.

Operating Systems


Introduction to operating system concepts including system organization for uniprocessors and multiprocessors, scheduling algorithms, process management, deadlocks, paging and segmentation, files and protection, and process coordination and communication.

Comparative Programming Languages


Discussion of the important issues in the specification, design and implementation of programming languages. Emphasis is on evaluating alternative ways of providing various symbols, abstractions, definitions, theorems, proofs, programming language features and trade-offs involved. Topics include syntactic specification, data types, abstraction mechanisms, sequence control, data control, storage management, functional programming and about its capabilities and limitations, universal models introduction to programming verification.

Design and Analysis of Algorithms


Study of the techniques for designing algorithms and for analyzing the time and space efficiency of algorithms. The algorithm design techniques include divide-and-conquer, greedy algorithms, dynamic programming, randomized algorithms and parallel algorithms. The algorithm analysis includes computational models, best/average/worst case analysis and computational complexity (including lower bounds and NP-completeness).

Artificial Intelligence


An exploration of concepts, approaches and techniques of artificial intelligence: specification, design, and implementation of selected applications of intelligent software agents and multi-agent systems. Computational models of intelligent behavior, including problem

solving, knowledge representation, reasoning, planning, decision making, learning, perception, action, communication and interaction. Reactive, deliberative, adaptive, learning and communicative agents and

multi-agent systems.

Data Structures and Algorithms


Implementation and application of fundamental data structures and computing algorithms used in computer science, including searching and sorting; elementary abstract data types including linked lists, stacks, queues, trees and graphs. Particular emphasis is given to the use of object-oriented design and data abstraction in the creation and application of these data structures. Some elementary algorithm analysis is also covered.

Network Principles


Overview of current computer network theory and practice. Hardware requirements, network media and topologies, protocols and access methods, the Open Systems Interconnection (OSI) and internet models.

Web Application Development I


Survey of Web development techniques. Emphasis on developing and maintaining websites with topics including basic Web site design, HTML, XHTML, and CSS coding. Use of content management systems (CMS) and software packages such as Photoshop.

Computer Organization


Introduction to computer organization with emphasis on the lower level abstraction of a computer system including digital logic, instruction set and assembly language programming. Topics include data representation, logic gates, simplification of logical expressions, design and analysis of simple combinational circuit such as decoders and multiplexers, flip-flops and registers, design, and analysis of simply synchronous sequential circuit, random-access and read-only memories, instruction set architecture and programming in assembly language.

Competition Programming


Introduction to a variety of subjects in programming, algorithms, and discrete mathematics through puzzles and problems which have appeared in the International ACM Programming Contest and similar venues. Skills required for programming contests, which include evaluation of problem difficulty, solving problems in teams, and working under time pressure. Implementation of algorithms will be done in an object-oriented programming language such as C++ or Java. It is expected that the best students from this course will represent Lipscomb at the regional ACM Programming Competition and possibly at the International ACM Competition.

Numerical Methods


Finding roots of equations, error analysis, simultaneous linear equations, numerical integration, least squares approximations, and numerical solutions for ordinary differential equations.

Compiler Construction


Study of the theory and design techniques used in compiler construction, including lexical analysis, parsing, grammars, semantic analysis, code generation and optimization. Each student will implement a subset of a compiler.

Fundamentals of Automata and Formal

Language Theory


Introduction to fundamental concepts of automata theory and formal languages including finite automata, regular expressions, formal language theory and pushdown automata.

Course Descriptions written by Lipscomb College of Computing and Technology and edited by Tate Burns

Copyright ©2016 Tate Burns. All Rights Reserved.


Creative Thinker • Innovative Developer


(734) 846-2121