• Undergraduate
  • Masters
  • Undergraduate
    • CS-1000 Practical Computing
      Description

      A hands-on introduction to the use of personal computers and software: input/output devices, graphical user interfaces, terminology, and software.

      View Instructors, Syllabi and Other Details

    • CS-1020 Computers and Society
      Description

      A hands-on introduction to the use of personal computers and software, with an introductory examination of the effects of computer technology on contemporary society. Topics will include productivity applications, creation of Web pages, and societal and ethical issues in computing; privacy, security, censorship, and the changes in work, school, and entertainment fostered by computing.

      View Instructors, Syllabi and Other Details

    • CS-1030 Introduction to Computer Concepts
      Description

      An introduction to the concepts, usage, and uses of computers. Topics include the social and ethical aspects of computing; the Internet, including the creation of Web pages; overview of computer architecture, operating systems, and applications; an introduction to algorithms and programming using Visual BASIC.

      View Instructors, Syllabi and Other Details

    • CS-1300 Introduction to Computer Science
      Description

      This course introduces two fundamental aspects of computer science--abstraction and design--as students learn to develop programs in a high-level programming language. Students will study and implement a variety of applications, including graphics and scientific simulations. The course assumes no prior background in programming or computer science.

      View Instructors, Syllabi and Other Details

    • CS-1301 Computer Science I
      Description

      This course explores the three fundamental aspects of computer science--theory, abstraction, and design--as the students develop moderately complex software in a high-level programming language. It will emphasize problem solving, algorithm development, and object-oriented design and programming. The course assumes prior experience in programming.

      View Instructors, Syllabi and Other Details

    • CS-1302 Computer Science II
      Description

      This course continues the exploration of theory, abstraction, and design in computer science as the students develop more complex software in a high-level programming language.

      View Instructors, Syllabi and Other Details

    • CS-2100 Introduction to Web Development
      Description

      An introduction to the design and implementation of web pages and sites: foundations of human-computer interaction; development processes; interface, site and navigation design; markup and style-sheet languages; site evaluation; introduction to client-side scripting.

      View Instructors, Syllabi and Other Details

    • CS-3110 System Architecture
      Description

      An introduction to systems architecture and its impact on software execution. Topics include digital logic and digital systems, machine level representation of data, assembly level machine organization, memory systems organization, I/O and communication, and CPU implementation.

      View Instructors, Syllabi and Other Details

    • CS-3151 Data Structures and Discrete Mathematics I
      Description

      An integrated approach to the study of data structures, algorithm analysis, and discrete mathematics. Topics include induction and recursion, time and space complexity, and big-O notation, propositional logic, proof techniques, sorting, mathematical properties of data structures, including lists.

      View Instructors, Syllabi and Other Details

    • CS-3152 Data Structures and Discrete Mathematics II
      Description

      A continuation of CS 3151. Topics include sets, relations and functions, graphs, state spaces and search techniques; automata, regular expressions, and context free grammars; NP-completeness.

      View Instructors, Syllabi and Other Details

    • CS-3201 Program Construction I
      Description

      The craft and science of software construction: effective practices, principles, and patterns for building correct, understandable, testable and maintainable object-oriented code.

      View Instructors, Syllabi and Other Details

    • CS-3202 Program Construction II
      Description

      A continuation of CS 3201: effective practices, principles and patterns for building correct, understandable, testable, and maintainable code using a variety of programming paradigms, programming languages and system architectures.

      View Instructors, Syllabi and Other Details

    • CS-3211 Software Engineering I
      Description

      An introduction to the software development life cycle and contemporary software development methods. This course places special emphasis on object-oriented systems. Students are expected to complete a medium scale software project.

      View Instructors, Syllabi and Other Details

    • CS-3212 Software Engineering II
      Description

      Software development methods for large scale systems. Management of software development projects. Software engineering standards. Students are expected to complete a large scale software project.

      View Instructors, Syllabi and Other Details

    • CS-3230 Information Management
      Description

      This course covers principles of database systems. Topics include theory of relational databases, database design techniques, database query languages, transaction processing, distributed databases, privacy and civil liberties. Students are expected to complete a project in database design, administration, and development.

      View Instructors, Syllabi and Other Details

    • CS-3270 Intelligent Systems
      Description

      Application and survey of problem-solving methods in artificial intelligence with emphasis on heuristic program- ming, production systems, neural networks, agents, social implications of computing, and professional ethics and responsibilities.

      View Instructors, Syllabi and Other Details

    • CS-3280 System and Network Administration
      Description

      This course covers fundamental concepts of computer networks and their management. Topics include network security, routing, configuration and installations of network services, network monitoring and performance tuning, message encryption, task automation, process management, file systems, and kernel configuration. Students are expected to complete a project that covers the essentials of set-up, configuration, and administration of networked servers and clients.

      View Instructors, Syllabi and Other Details

    • CS-4225 Parallel and Distributed Systems
      Description

      This course covers the concepts and challenges of concurrent systems. Topics include multi-threaded programming, scheduling, and synchronization, network architecture, parallel computing architecture, multimedia networking, and mobile and ad-hoc networks. The course will also discuss emerging technologies in these areas.

      View Instructors, Syllabi and Other Details

    • CS-4310 Game Design and Development
      Description

      This course will explore the basic design principles and practices employed in developing computer games. Topics will include game design, graphics, animation, storytelling, and network and multi-player issues.

      View Instructors, Syllabi and Other Details

    • CS-4981 Independent Study
      Description

      Individual study in computer science through a mutual agreement between the student and a computing faculty member. May be repeated for a maximum of 10 hours credit. Departmental consent is required for use of this credit toward a major or minor in computer science.

      View Instructors, Syllabi and Other Details

    • CS-4982 Computing Capstone
      Description

      This course integrates core topics of computer science body of knowledge, teamwork, and professional practices through the implementation of a large scale project.

      View Instructors, Syllabi and Other Details

    • CS-4983 Directed Research
      Description

      Individual research in computer science through a mutual agreement between the student and a computing faculty member. May be repeated for a maximum of 10 hours credit. Departmental consent is required for use of this credit toward a major or minor in computer science.

      View Instructors, Syllabi and Other Details

    • CS-4985 Special Topics
      Description

      Topics in Computer Science designed to give students knowledge at the frontier of a rapidly changing field.

      View Instructors, Syllabi and Other Details

    • CS-4986 Computing Internship
      Description

      A hands-on, supervised field experience in computing. Students will create and present a comprehensive portfolio documenting the field experience. Maybe repeated for a total of 6 hours credit. Grading is S/U.

      View Instructors, Syllabi and Other Details

    • ETEC-1101 Electronic Technology in the Educational Environment
      Description

      This course is an introduction to using personal computers to communicate with individuals and organizations and to access, store, and analyze information. Emphasis is on exploring the role of technology in present and future learning experiences. Topics include the digital divide, virtual communities, telecommuting, job search and readiness, e-commerce, globalization, privacy versus security, and intellectual property in cyberspace. Students will use their practical technology skills to create word-processed documents, an electronic presentation, and a Web page. Prerequisites: Beginning level skill in Microsoft Word and Microsoft PowerPoint. Exited Learning Support in Reading and English. For more information on this institution's eCore courses, please see http://www.westga.edu/~ecore/

      View Instructors, Syllabi and Other Details

  • Masters
    • CS-6231 Database Systems I
      Description

      Fundamental concepts of database systems; hierarchical, network and relational database management systems; data definition and manipulation languages; security and integrity; and implementation considerations. Students are expected to complete a project in database administration and development.

      View Instructors, Syllabi and Other Details

    • CS-6232 Database Systems II
      Description

      Advanced concepts in database systems; object- oriented systems; distributed database systems; and concurrency control. Students will be introduced to current professional certification processes and standards.

      View Instructors, Syllabi and Other Details

    • CS-6241 Software Development I
      Description

      This course introduces the software development process while improving programming skills. Topics include object-oriented programming, test-driven development, class design, GUI design and programming, and incremental, iterative development. The coursework assumes that the student has fundamental programming, debugging, and code-interpretation skills in an object-oriented programming language.

      View Instructors, Syllabi and Other Details

    • CS-6242 Software Development II
      Description

      This course continues the introduction of the software development process begun in CS 6241. Topics include software development process models, process management, requirements specification, and software modeling.

      View Instructors, Syllabi and Other Details

    • CS-6251 Web Technologies I
      Description

      An introduction to the design, development, and implementation of web sites using client-side technologies. Students are expected to develop a dynamic web site using current industry best practices for client-side development.

      View Instructors, Syllabi and Other Details

    • CS-6252 Web Technologies II
      Description

      A continuation of CS 6251: design, development, and implementation of web sites using client- and server-side technologies. Students are expected to develop a dynamic web site using current industry best practices for client- and sever-side development.

      View Instructors, Syllabi and Other Details

    • CS-6261 System and Network Administration
      Description

      An introduction to the major services and protocols used in intra- and inter-network communication, with a focus on understanding the internet from a software developer's point-of-view. The course includes a discussion of professional and ethical issues related to system administration.

      View Instructors, Syllabi and Other Details

    • CS-6311 Program Construction I
      Description

      An introduction to object-oriented design and programming using fundamental software engineering principles and concepts. Students are expected to develop an object-oriented application using current industry best practices for program development.

      View Instructors, Syllabi and Other Details

    • CS-6312 Program Construction II
      Description

      A continuation of CS 6311. Students are expected to develop a moderately complex object-oriented application using current industry best practices for program development.

      View Instructors, Syllabi and Other Details

    • CS-6910 Project I
      Description

      Integration of core knowledge and skills in program construction and web technologies with teamwork and professional practices through directed participation in the implementation of a significant software project.

      View Instructors, Syllabi and Other Details

    • CS-6920 Project II
      Description

      Comprehensive integration of knowledge and skills attained in the program with teamwork and professional practices through the implementation of a significant software project.

      View Instructors, Syllabi and Other Details

    • CS-6985 Topics in Computer Science
      Description

      Designed to give students knowledge at the frontier of a rapidly changing field. May be repeated with a change in subject matter for a total of nine hours.

      View Instructors, Syllabi and Other Details