Apply Today

Department of Computer Science


Craig A. Wood, Chair

McGee 303
(936) 468-2508
Fax: (936) 468-7086
csdept@cs.sfasu.edu
www.sfasu.edu/go/comp-sci


Faculty

Professors
Michael M. Pickard, Robert G. Strader, Craig A. Wood

Associate Professor
Deborah L. Dunn

Assistant Professor
Minho Park

Instructors
Stephen R. Bradley, Greg T. Harber, William W. Long

Lecturers
Elizabeth Hutchinson, Gail J. Leslie, Jason W. Powell

Areas of Study & Degrees

Minors:

Objectives

The digital computer is one of the most useful devices developed by mankind. Computer science is the discipline concerned with the study of this device and how it can be used to process information and help solve complex problems.

The computer science curriculum is designed to allow the future computer specialist to obtain a broad education coupled with detailed knowledge in computer science sufficient to lay a foundation for professional competence in the computing field. Non-specialists may also take computer science courses that will acquaint them with computing capabilities applicable to their main field of endeavor.

The department utilizes the computing facilities of the McGee Computing Laboratory and the University Computer Center.

Computer Science Program Accreditations

The Bachelor of Science degree with a major in computer science has been accredited by the Computing Accreditation Commission (CAC) of ABET Inc., the recognized accreditor of college and university programs in applied science, computing, engineering and technology. ABET accreditation demonstrates a program's commitment to providing its students with a quality education. The Bachelor of Business Administration degree with a major in computer information systems is accredited by AACSB International - The Association to Advance Collegiate Schools of Business.

Student Organizations

The Computer Science Club is sponsored by the Department of Computer Science and is open to all students. This organization should be of particular interest to students who desire to become acquainted with the computing profession, computing professionals and students with similar interests.

Membership in Upsilon Pi Epsilon, the Computer Science Honor Society, is for selected juniors, seniors and graduate students who maintain specified scholastic standards. Students who want to be considered for this honor should consult the Delta Chapter faculty adviser or a student officer.

Definition of Majors

Bachelor of Science Degree (B.S.): Computer Science Major

General Requirements
Students must satisfy the requirements for the Bachelor of Science degree with a major in computer science as listed in the College of Business section of this bulletin.

Computer Science Major Requirements

  1. CSC 102, 202, 211, 214, 241: 15 hrs
  2. CSC 321 or 331, 323, 333, 342, 343: 15hrs
  3. CSC 411: 1 hr
  4. Nine hours from CSC 425, 435, 441, 442, 445: 9 hrs
  5. Three advanced hours of computer science 3 hrs
    (excluding CSC 340, 350, 351, 353, 355, 385, 412, 452,and 455)

At least 15 advanced hours of computer science must be completed at SFA. Must maintain a C average in advanced computer science courses at SFA.

Total 43 hrs

Suggested courses by area of interest:

  1. Information Systems Applications Programming
    CSC 102, 202, 211, 214, 241, 321, 323, 333, 342, 343, 411, 425, 426, 435, 442
  2. Scientific Applications Programming
    CSC 102, 202, 211, 214, 241, 323, 331, 333, 342, 343, 411, 425, 435, 441, 445
  3. Applied Systems Programming
    CSC 102, 202, 211, 214, 241, 323, 331, 333, 342, 343, 411, 425, 435, 441, 442

Bachelor of Business Administration Degree (B.B.A.): Computer Information Systems Major

General Requirements
Students must satisfy requirements for the Bachelor of Business Administration degree as listed in the College of Business section of this bulletin.

Computer Science Major Requirements

  1. CSC 102, 202, 211, 214, 241: 15 hrs
  2. CSC 321, 323: 6 hrs
  3. CSC 411, 426: 4 hr
  4. Nine advanced hours of computer science: 9 hrs
    (excluding CSC 340, 350, 351, 353, 355, 385, 412, 452,and 455)

At least 12 advanced hours of computer science must be completed at SFA. Must maintain a C average in advanced computer science courses at SFA.

Total 34 hrs

Definition of Minors

Computer Science Minor Requirements

Computer Information Systems Minor Requirements

Information Technology Minor Requirements

Computer Science Teacher Certification (8-12)

  1. Students interested in computer science teacher certification, grades 8-12, should contact the Department of Computer Science and the Educator Certification Office in the College of Education.

Other Computer Users

  1. CSC 101 - A general study of computer types, capabilities, uses, and limitations; use of operating systems and application software on a microcomputer in a network environment.
  2. CSC 121 - A general study of computer types, capabilities, uses, and limitations from a business-oriented perspective; use of operating systems and application software on a microcomputer in a network environment.
  3. CSC 340 - Application software for microcomputers
  4. CSC 350 -Internet Technologies

Bachelor of Science with a Major in Computer Science

Suggested Course Sequence

Bachelor of Business Administration with a Major
In Computer Information Systems

Suggested Course Sequence

See information at the beginning of the College of Business section regarding eligibility for upper-level business courses. In addition, a computer information systems major should complete CSC 102, 202, 211, and 214 or 241 before enrolling in any upper-level computer science course.

Bachelor of Arts (BA) with a Major In Information Technology

Suggested Course Sequence

See information at the beginning of the College of Business section regarding eligibility for upper-level business courses. In addition, an information technology major should complete CSC 101 or 121, 102, and 202 before enrolling in any upper-level computer science course.

Courses in Computer Science (CSC)

A student must have a grade of C or better in all courses that are prerequisite to a computer science course before enrolling in that course. Unless otherwise indicated, each course carries three semester hours credit and meets three hours per week. Enrollment in courses numbered 300 or above requires junior standing.

101.     Introduction to Computing – General study of computer types, capabilities, uses, and limitations. Use of operating systems and application software on a microcomputer. Use of network environments to access online resources. Introduction to problem solving using a computer. Prerequisite: Two years of high school algebra or equivalent. Credit not available for students who have taken CSC 121. May not be taken by business majors.
102. Computer Science Principles – Fundamental concepts of computer systems, systems software, and an overview of computer science issues. Problem solving and program development using a high-level programming language. Prerequisite: Two years of high school algebra or equivalent.
121. Introduction to Information Processing Systems (BCIS 1305) – General study of computer types, capabilities, uses, and limitations from a business-oriented perspective. Use of operating systems and application software on a microcomputer. Use of network environments to access online resources. Introduction to problem solving using a computer. Prerequisite: Two years of high school algebra or equivalent. Credit not available for students who have taken CSC 101.
201. Introduction to Computer Programming (COSC 1317) – Basic techniques for solving problems by use of a digital computer. Emphasis on application of the computer as a quantitative tool, and on the use of the FORTRAN language. Prerequisite: Two years of high school algebra or equivalent.
202. Computer Programming Principles – Problem solving and algorithm design, program structures, data types, software development methods, and programming style. Prerequisite: CSC 102.
211. Event-Driven Programming – Emphasis on problem analysis, solution design, and programming methods. Implementation of commercial applications. Prerequisite: CSC 102.
214. Computer Organization – Binary representation of data and instructions, arithmetic and logical data operations, hardware structures, memory organization and addressing of data and data structures. Machine language and assembly language instructions and programming, hardware/software interface, and selected programming techniques. Prerequisite: CSC 202.
241. Data Structures – Advanced programming techniques including pointer types and recursion. Conceptual development and implementation of data structures including arrays, records, linear lists, stacks, queues, trees, tables, and graphs. Applications involving strings, sorting, searching, and file operations. Prerequisites: CSC 202; CSC 211 recommended.
301. A Contemporary Programming Language – One to three semester hours. Language constructs and applications area. Control structures, input/output, data structures. Use of language in problem solution implementation. May be repeated once for a different language. Prerequisite: Six hours of computer science or the equivalent. Additional prerequisites may vary with different languages.
321. Programming Methods and File Structures – Programming efficiency techniques, debugging techniques, and file processing for applications in business. Comprehensive programming assignments. Prerequisites: CSC 202, 211.
323. Software Engineering – Current software engineering theory and practice. Methodologies, techniques, and tools of software engineering. Prerequisite: CSC 241.
331. Object-Oriented Programming Methods – Use of a modern object-oriented programming language for industrial applications emphasizing contemporary development practices. Comprehensive program assignments. Prerequisites: CSC 202, 211.
333. Discrete Structures for Computer Science – Mathematical structures for describing data, algorithms and computing machines. Theory and applications of sets, relations, functions, combinatorics, matrices, graphs, and algebraic structures which are pertinent to computer science. Prerequisites: CSC 202; MTH 233 or 144.
340. Application Software for Microcomputers – Advanced utilization of spreadsheet software. Utilization of database software. Operating systems and disk management skills. May not be used to satisfy advanced computer science requirements for a computer science/computer information systems major or a computer science minor. Prerequisite: CSC 101, 102, or 121.
342. Algorithm Analysis – Study of algorithm design, analysis tools, and techniques for selected problems including sorting, searching, graphs, branch and bound strategies, dynamic programming, algebraic methods, string matching, and sets. An introduction to order notation, timing routines, and complexity classes. Prerequisites: CSC 214, 241.
343. Computer Architecture – Architectural structure and organization of computers. Analysis of the processor components, memory structure, I/O section, and bus. Study of system component interrelationships and interactions with the operating system. Prerequisites: CSC 214; CSC 241 recommended.
350. Internet Technologies – Technology, structure, limitations, and uses of the Internet. E-commerce and digital transactions. Web page design. May not be used to satisfy advanced computer science requirements for a computer science/computer information systems major or a computer science minor. Prerequisites: CSC 101, 102, or121.
351. Internet Programming Concepts – Introduction to Internet application programming using scripting languages and user-interface design in a server delivered, browser-based environment. Prerequisites: CSC 202, 350; or CSC 241.
353. System Administration – The configuration, installation, and maintenance of a computer using a current operating system in a networked environment. Emphasis will be placed on resource management, performance and security. Prerequisites: CSC 202 or 211.
355. Network Administration – Network administration principles, tools, and techniques including network installation, configuration, operation, and maintenance. Exploration of current issues, topics, and trends in network development. Prerequisite: CSC 202.
385. Internship in Computer Science – One to three semester hours. Supervised on-the-job training in one or more facets of the field of computer science. Prerequisites: Advanced standing as a major or minor in computer science, three advanced hours of computer science, overall grade point average of 2.5 or better, computer science grade point average of 2.5 or better, and consent of the CSC 385 course supervisor. May not be used to satisfy advanced computer science requirements for a major or minor. May be repeated to a total of three hours credit. Pass or fail.
401. Contemporary Topics in Computer Science – One to three semester hours. Study of recent developments and topics of current interest in computer science. A student may repeat this course once with department chair approval. May be used only once to partially satisfy the 400-level course requirement in computer science. Prerequisites: Six advanced hours of computer science or department chair approval. Particular prerequisites may vary with different topics.
411. Ethics in Computer Science – One semester hour. Study of ethical concepts to guide computing professionals. Implications and effects of computers on society. Responsibilities of computing professionals in directing emerging technology. May not be used to satisfy requirements toward a minor in computer science, computer information systems, or information technology. Prerequisites: 18 hours of computer science with at least six hours advanced.
412. Computer Science Practicum – Operation and supervision of computer facilities in a production and student environment. May not be used to satisfy requirements toward a minor in computer science or computer information systems. Prerequisites: 18 hours of computer science with at least six hours advanced, and chair approval. Majors only.
421. Applied Operations Research – Computerized approaches to decision making using linear programming and other quantitative techniques. Prerequisites: CSC 241; MTH 144 or 233; MTH 220.
425. Database Management Systems – Study of database management systems. Design and implementation of applications using database management systems. Prerequisites: CSC 241; CSC 321 or 331; three additional advanced hours of computer science excluding CSC 340, 350, and 385.
426. Requirements Engineering and System Modeling – Study of the methodology for building a complete application system. Emphasis on critical analysis of existing systems and design of computer-based systems. Prerequisite: CSC 323.
431. System Simulation and Model Building – Simulation methodology, generation of random variates, design of experiments with deterministic and stochastic models. Prerequisites: CSC 241; MTH 144 or 233; MTH 220.
435. Teleprocessing and Data Communications – Functional evolution and role of data communications. Considerations in data communications. Applications in general. The design issues. System components and their interrelationships. Networks. Satellite communications. Prerequisites: CSC 241, 343.
441. Principles of Systems Programming – Operating systems principles, systems utilities, language processors, and user interfaces. Prerequisites: CSC 214, 241; CSC 323 or 342 or 343.
442. Organization of Programming Languages – Language definition, structure, data types, control structures, parameter passage, subprogram interface, block structured language. Information binding, data storage and mapping, execution environments, input/output, recursion, multiprocessing. Prerequisites: CSC 241; CSC 323 or 342 or 343.
445. Computer Graphics – Overview of the hardware, software, and techniques used in computer graphics. Graphics primitives, two-dimensional transformations, painting, windowing, and clipping. Three-dimensional graphics including hidden lines and surfaces, and shading. Prerequisites: CSC 241; CSC 323 or 342 or 343; MTH 133.
452. Database Application Development – Applied study of the logical and physical organization of database systems and their role in information technology. Design and implementation of applications using database management systems. Prerequisites: CSC 211, 340.
455. Enterprise Security – Practical approaches to ensuring the security of information systems. Prerequisites: CSC 353, 355.
475. Special Problems – One to three semester hours. Individual instruction in a computer science. May be repeated once for a different topic with department chair approval. Prerequisites: Junior standing and approval of department chair.

Top of page

Become a Student Academics & Research Students Alumni & Friends Faculty & Staff Arts & Athletics A-Z List