B.S. in Computer Science

This four-year program prepares students for employment as computer specialists in the software development and computer manufacturing industries and for continued studies toward advanced degrees.

You will learn the mathematical and theoretical foundations of computing as well as how to apply them in a practical way.

At a Glance
122 credit hours
8 semesters
4 electives
How to Apply

There are no special requirements to apply. In order to enroll in the program, all you need to do is select Computer Science as your major when you apply to Bluefield State College.

How to Earn Your Degree

Your advisor will work with you throughout your academic journey to make sure you're on track to earn your degree. In order to receive the B.S. in Computer Science, you'll need to complete the courses below. When choosing your electives, keep in mind that at least 6 hours of electives must be COSC courses. (Your options include COSC 209, COSC 210, COSC 290 and any COSC 300+ course.)

Semester 1
ENGL 101 Composition I
Course ID
ENGL 101
Credit Hours
3

Practice in the techniques of effective academic writing with an emphasis on the writing process, including rhetorical methods, patterns of organization, and an introduction to APA formatting. Available to students scoring 18 or higher on the English section of the ACT, 450 or higher on the verbal portion of the SAT-I, or 88 or higher on the ACCUPLACER Sentences Skills test. Fall, Spring.

GNET 101 Technical Physics I
Course ID
GNET 101
Credit Hours
4

A study of mechanics and heat. Topics discussed include vectors, concurrent and nonconcurrent forces, kinematics and linear motion, work, energy, simple machines, impulse, momentum, thermal expansion, specific heat, and change of state. PR: ACT score in mathematics of 19 or above, or GNET 098 or COMPASS Engineering Math score of 59 or higher. Fall.

GNET 115 Technical Mathematics I
Course ID
GNET 115
Credit Hours
4

A study of fundamental algebraic concepts and operations, functions and graphs, trigonometric functions and their graphs, linear equations and determinants, factoring, fractions, vectors, and triangles. PR: ACT score in mathematics of 19 or above, or GNET 098. Fall.

COSC 131 Computer Programming I
Course ID
COSC 131
Credit Hours
4

This course is an introduction to programming using a high-level programming language, such as C++ or Java. Students study the classic program development process. Students learn how to design, develop, execute, debug, and test software. Emphasis is on structured techniques involving selection, iteration, and subprogram flow of control, including recursion. The laboratory that accompanies this course consists of programming exercises from various disciplines. CO: GNET 115 or MATH 109.

COSC 131L Computer Programming I Lab
Course ID
COSC 131L
Credit Hours
0
Semester 2
ENGL 102 Composition II
Course ID
ENGL 102
Credit Hours
3

Continued practice in reading and composition with an emphasis on the research process, including an introduction to literary analysis and MLA format. Students must earn a grade of a C or above or repeat this course to fulfill the general education requirement. PR: C or higher in ENGL 101 or CLEP score of 50 or higher or advanced placement waiving ENGL 101 or ACT English mechanics/usage subtest score of 9 or higher or COMPASS Writing Diagnostics test score of 76 or higher. Fall, Spring.

GNET 102 Technical Physics II
Course ID
GNET 102
Credit Hours
4

A study of the basic concepts of electricity and the application of these concepts to fundamental direct and alternating current circuits. The principles of electromagnetism and electrostatics are also studied and applied to problems involving the production and utilization of electric energy. PR: ACT score in mathematics of 19 or above, or GNET 098. Spring.

GNET 116 Technical Mathematics II
Course ID
GNET 116
Credit Hours
4

A study of exponents and radicals, complex numbers, logarithms, systems of equations, theory of equations, inequalities, determinants, matrices, variations, progressions, properties of trigonometric functions, and inverse trigonometric functions. PR: GNET 115. Spring.

COSC 132 Computer Programming II
Course ID
COSC 132
Credit Hours
4

This course is a continuation in the development of programming skills using a high-level programming language, with the emphasis being on object-oriented techniques. Students develop programs to solve problems using encapsulation (classes and objects), inheritance, and polymorphism (runtime dispatch). This course also introduces students to generic programming techniques and exception handling. The laboratory that accompanies this course consists of programming exercises from various disciplines. PR: COSC 131 or consent of the instructor.

COSC 132L Computer Programming II Lab
Course ID
COSC 132L
Credit Hours
0
Semester 3
MATH 220 Calculus I
Course ID
MATH 220
Credit Hours
4

 A study of elements of plane analytical geometry, including polar coordinates, the derivative of a 
function with applications, integrals and applications, differentiation of transcendental functions, and methods of integration. PR: MATH 109 and MATH 110, or GNET 116, or ACT Mathematics main score of 26 or COMPASS Trigonometry score of 46 or above. Fall, Spring.

COSC 224 Web Programming
Course ID
COSC 224
Credit Hours
3

This course is an introduction to the concepts of Web Programming using HTML. Students will plan, develop, and implement web pages, which incorporate text formatting, graphics insertion, internal and external hyperlinks, tables, and frames. Coding will be accomplished using standard HTM codes and a text editor-coding environment. PR: COSC 210 or COSC 131.

COSC 241 Intro to Linux/UNIX
Course ID
COSC 241
Credit Hours
3
COSC 261 Data Structures
Course ID
COSC 261
Credit Hours
3

This is an introduction to data structures used in computer systems and applications. Students study arrays, queues, collections (ordered and sorted), linked lists, and binary trees, as well as software engineering, testing, recursion, and object-oriented programming. Students use a high-level programming language, such as C++, and the focus is on object-oriented design and development. Applications involve such techniques as sorting, searching, recursion, expression evaluation, and memory management. PR COSC 132.

Elective
Credit Hours
3
Semester 4
ELET 218 Fundamentals of Digital Computers
Course ID
ELET 218
Credit Hours
4
ELET 218L Fundamentals of Digital Computers Lab
Course ID
ELET 218L
Credit Hours
0
MATH 230 Calculus II
Course ID
MATH 230
Credit Hours
4

Differentiation of transcendental functions; parametric equation; polar coordinates; methods of
integration; applications of the definite integral. Infinte Series. PR: MATH 220. Fall, Spring.

COMM 201 Basic Communication
Course ID
COMM 201
Credit Hours
3

This introductory course in human communication develops communication competence by exploring the foundations of communication, interpersonal communication, group communication and public speaking. Emphasis is on developing practical skills in the following areas: critical thinking, research, listening, language, nonverbal, ethics, conflict management and resolution, self-confidence, perception, relationships, teamwork, interviewing, public speaking, and diversity. PR: ENGL 102 and Computer Literacy course. Fall, Spring.

COSC 250 Database Management Systems
Course ID
COSC 250
Credit Hours
3

The key objective of COSC 250 is to provide students with the skills to design, implement, evaluate and use database management systems. The course includes study of the organization of databases; concepts of databases, flat-files, network systems, hierarchical systems, and relational systems; data retrieval structures and mechanisms; database normalization techniques; and SQL (structured query language). PR: COSC 216 or COSC 311.

*Instead of COMM 201 Basic Communication, you may take COMM 208 Fundamentals of Speech.
Semester 5
ELET 305 Microprocessors
Course ID
ELET 305
Credit Hours
4

Microprocessors are studied as elements in bus organized computers. Applications for controlling outside devices are studied. Flow charts are used to demonstrate how control decisions can be based on programmed, priority, or interrupt demands. Support devices are studied of which a few are: read only memories (ROM), random access memories (RAM), arithmetic logic units (ALU), accumulators, and Input/output (I/O) devices. PR: ELET 218. Fall.

ELET 305L Microprocessors Lab
Course ID
ELET 305L
Credit Hours
0

Microprocessors are studied as elements in bus organized computers. Applications for controlling outside devices are studied. Flow charts are used to demonstrate how control decisions can be based on programmed, priority, or interrupt demands. Support devices are studied of which a few are: read only memories (ROM), random access memories (RAM), arithmetic logic units (ALU), accumulators, and Input/output (I/O) devices. PR: ELET 218. Fall.

MATH 250 Discrete Mathematics
Course ID
MATH 250
Credit Hours
3

 Treats a variety of themes in discrete mathematics: logic and proof, to develop students’ ability to think abstractly; induction and recursion, the use of smaller cases to solve larger cases of problems; combinatorics, mathematics of counting and arranging objects; algorithms and their analysis, the sequence of instructions; discrete structures, e.g., graphs, trees, sets; and mathematical models, applying one theory to many different problems. PR: MATH 109 and MATH 110 or GNET 116. Fall.

COSC 240 Computer Organization & Architecture
Course ID
COSC 240
Credit Hours
3

A course designed to give the student an introductory understanding of the internal operation and organization of the modern digital computer while providing hands-on assembly language programming experience. Topics include digital logic, digital systems, machine-level representation of data, assembly-level machine organization, memory organization and architecture, interfacing and communication, architectures for networks and distributed systems. Students write programs using one or more assembly languages. PR: COSC 131.

COSC 311 Systems Analysis
Course ID
COSC 311
Credit Hours
3

The students are introduced to the software analysis and design process with emphasis on the object-oriented paradigm. Topics include software life cycle, object-oriented concepts and principles of software writing, design patterns, software analysis and design. Design patterns are heavily used to introduce design principles. UML (Unified Modeling Language) is used as the language of the analysis and design phases. The class also introduces the CASE (Computer Aided Software Engineering) tools. PR: COSC 132.

Elective
Credit Hours
3
Semester 6
COSC 422 Software Engineering
Course ID
COSC 422
Credit Hours
3

This course improves the methodology of building software with emphasis on the object-oriented paradigm. It starts with an overview of object-oriented concepts, principles of software writing, design patterns, software analysis, design, implementation, and testing. This course is project-based. Design patterns will be discussed heavily and used in projects. UML (Unified Modeling Language) is used as the language of all phases of the software life cycle. CASE (Computer Aided Software Engineering) tools such as version control systems, and IDE’s will be introduced and used. PR: COSC 311.

COSC 330 Programming Languages
Course ID
COSC 330
Credit Hours
3

This class includes specifications of languages (syntax and semantics), data types, data aggregations and abstractions, bindings, control structures, encapsulation, translation, and so on. Programs are planned and developed using accepted professional techniques in various programming languages, for example, Java, C++, Modula-2, ML, Lisp, Prolog, Smalltalk, and so on. PR: COSC 261.

MATH 301 Probability & Statistics
Course ID
MATH 301
Credit Hours
3

Mean and standard deviation; probability; random variables and probability distribution; normal distribution, statistical inference; linear regression and correlation; experimental design; chisquare test; analysis of variance. PR: MATH 109 or GNET 116. Spring.

Core Skills Health & Wellness
Course ID
Core Skills
Credit Hours
2
Elective
Credit Hours
3
*Elective: This elective must be a COSC course. Options include: COSC 209 (Java), COSC 210 (Visual Basic), COSC 290 (Topics in Computer Science) or any COSC 300+ course.
Semester 7
ENGR 315 Engineering Economics
Course ID
ENGR 315
Credit Hours
3

The study of the relative economy of engineering alternatives, compound interest in relation to calculation of annual costs, present worth and prospective rates of returns on investments, methods of depreciation, sinking cost, increment cost, general studies with emphasis on retirement and replacement of equipment, consideration of taxes, public works, and manufacturing costs as related to economic solutions of engineering proposals. Principles of engineering ethics are presented and related to costing. PR: MATH 220. Fall.

COSC 327 Analysis of Algorithms
Course ID
COSC 327
Credit Hours
3

This course teaches elementary techniques for designing and analyzing algorithms to solve problems in a computationally efficient way. It also enables students to analyze time (and space) requirements of algorithms and decide which algorithm best suits the problem at hand. Topics cover mathematical preliminaries, introduction to models of computation, analysis of well-known sorting and search algorithms, graph algorithms, programming techniques such as recursion, dynamic and greedy algorithms, and an introduction to P and NP class problems. PR: COSC 261 and MATH 250.

ENGL 201 World Literature I
Course ID
ENGL 201
Credit Hours
3

A study of representative works of world literature from antiquity to 1750. The course emphasizes the study and consideration of the literary, cultural, and human significance of selected great works of the Western and non-Western literary traditions. This course gives special attention to critical thinking and writing within a framework of cultural diversity. PR: A grade of C or higher in ENGL 102. HIST 101 is recommended. Fall, Spring.

Elective
Credit Hours
3
Elective
Credit Hours
3
*In place of ENGR 315 Engineering Economics, you may take BUSN 482 Business Ethics & Social Responsibility.
*In place of ENGL 201 World Literature I, you may take ENGL 205 World Literature II.
*Electives: One of these electives must be a technical elective. Options include: MATH 240, 310, 311, 350, 400 and 415; ELET 492; ACCT 201 and 202; and CRMJ 431.
Semester 8
COSC 499 Projects in Computer Science
Course ID
COSC 499
Credit Hours
4

Independent study or internship on a special project or practicum relating to computer science, under the supervision of an instructor or company supervisor, culminating in an oral and/or written report presented to a select faculty committee. PR: COSC 422 or COSC 311 and consent of instructor.

COSC 347 Theory of Computation
Course ID
COSC 347
Credit Hours
3

This course is the study of abstract computational automata, which constitute the formal foundation of computer science. The course starts with a review of mathematical preliminaries required for the rest of the course. The focus is on different models of computation such as finite automata, Turing machines, and grammars. Also, formal languages and undesirability are introduced. PR: COSC 261 and MATH 250.

Elective
Credit Hours
3
Elective
Credit Hours
3
Elective
Credit Hours
3
*Electives: Two of these electives must be a technical elective. Options include: MATH 240, 310, 311, 350, 400 and 415; ELET 492; ACCT 201 and 202; and CRMJ 431.

Program Educational Objectives

Program educational objectives are based on the needs of the computer science program’s constituencies. Within a few years of graduation, the computer science program will enable students to attain the following:

  1. An ability to be competitively employable within the computing industry.
  2. An ability to pursue graduate level education in the field of computer science.

Student Outcomes

  1. Students possess an ability to apply knowledge of computing and mathematics appropriate to the discipline.
  2. Students possess an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution.
  3. Students possess an ability to design, implement, and evaluate a computer-based system, process component, or program to meet desired needs.
  4. Students possess an ability to function effectively on teams to accomplish a common goal.
  5. Students possess an understanding of professional, ethical, legal, security and social issues and responsibilities.
  6. Students possess an ability to communicate effectively with a range of audiences.
  7. Students possess an ability to analyze the local and global impact of computing on individuals, organizations, and society.
  8. Students demonstrate an understanding of the need for and an ability to engage in self-directed continuing professional development.
  9. Students possess an ability to use current techniques, skills, and tools necessary for computing practice.
  10. Students possess an ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved.
  11. Students possess an ability to apply design and development principles in the construction of software systems and varying complexity

Number of Graduates

  • 2015 - 5
  • 2014 - 5
  • 2013 - 8