The request to retitle 'focus areas' as 'concentrations' in BA and BS in Computer Science

Memo Date: 
Friday, January 23, 2015
To: 
College of Computing & Informatics
From: 
Office of Academic Affairs
Approved On: January 15, 2015
Approved by: Undergraduate Course and Curriculum Committee
Implementation Date: Spring 2015

Note: Deletions are strikethroughs.  Insertions are underlined.


Catalog Copy

Department of

Computer Science

http://cs.uncc.edu

 

Computer Science is the cornerstone of modern information technology.  It has revolutionized how we learn, communicate, entertain, conduct business, perform research, and practice medicine.  This information revolution is just beginning and is providing computer scientists with nearly limitless opportunities to make satisfying and enriching contributions to society.  We can think of the work of computer scientists as falling into three categories:

 

  1. They design and implement software.  Computer scientists take on challenging programming jobs.  They also supervise other programmers, keeping them aware of new approaches.

 

  1. They devise new ways to use computers.  Progress in the CS areas of networking, database, and human-computer-interface enabled the development of the World Wide Web.  Now, researchers are working to make robots to be practical aides that demonstrate intelligence, are using databases to create new knowledge, and are using computers to help decipher the secrets of our DNA.

 

  1. They develop effective ways to solve computing problems.  For example, computer scientists develop the best possible ways to store information in databases, send data over networks, and display complex images.  Their theoretical background allows them to determine the best performance possible, and their study of algorithms helps them develop new approaches that provide better performance.  Computer science spans the range from theory to programming.  While other disciplines can produce graduates better prepared for specific jobs, computer science offers a comprehensive foundation that permits graduates to adapt to new technologies and new ideas.

 

The Department of Computer Science offers a wide variety of programs to match the diverse requirements of employers.  The computer science major may pursue a program leading to one of four degrees:  Bachelor of Arts, Bachelor of Science, Master of Science, and Ph.D. in Information Technology.  (See the UNC Charlotte Graduate Catalog for information on the M.S. and Ph.D. degrees.)  Students are prepared for their profession through a comprehensive program of courses and research opportunities in departmental state-of-the-art computing labs.

 

Grade Requirements

The GPA requirement for all Computer Science undergraduate degree programs is 2.0 or above in each of the following three categories:  (1) all courses applied to the degree, (2) all courses in the major, and (3) all upper division courses in the major. 

 

Bachelor of Science in Computer Science

The Bachelor of Science program offers a broad core of computing subjects and allows the student to select a focus concentration area for an in-depth study in Computing Systems, Game Design and Development, Graphics and Visualization, Intelligent Systems, or Networking and Distributed Computing.  This program prepares students to continue their education in master’s or doctoral programs, or to enter the business world as a computer scientist.

 

Degree Requirements

The B.S. in Computer Science requires 120 credit hours of coursework. 

 

Core Courses (58 hours)

ITCS 1212  Introduction to Computer Science I (4)

ITCS 1212L  Programming Lab I (0)

ITCS 1213  Introduction to Computer Science II (4)

ITCS 1213L  Programming Lab II (0)

ITCS 1600  Computing Professionals (1)

ITCS 2175  Logic and Algorithms (3)

ITCS 2214  Data Structures (3)

ITCS 2215  Design and Analysis of Algorithms (3)

ITCS 3146  Operating Systems and Networking (3)

ITCS 3155  Software Engineering (3)

ITCS 3160  Database Design and Implementation (3)

ITCS 3181  Logic and Computer Systems (3)

ITCS 3181L  Computer Systems Lab and Recitation (1)

ITCS 3688  Computers and Their Impact on Society (3) (O, W)

ITCS 4102  Programming Languages (3)

ENGL 2116  Introduction to Technical Communication (3) (W)

ITIS 2211  Ethical Issues in Personal, Professional, and Public Life: Technology (3)

MATH 1241  Calculus I (3)

MATH 1242  Calculus II (3)

MATH 2164  Matrices and Linear Algebra (3)

PHIL 1106  Critical Thinking (3)

STAT 2122  Introduction to Probability and Statistics (3)

 

Focus Concentration Areas (12 hours)

Students select four courses in one of the computer science focus concentration areas below.

 

Computing Systems

ITCS 3110  Compiler Construction (3)

ITCS 3112  Design and Implementation of Object-Oriented Systems (3)

ITCS 3143  Operating Systems (3)

ITCS 3166  Introduction to Computer Networks (3)

ITCS 4145  Parallel Computing (3)

ITCS 4181  Microcomputer Interfacing (3)

 

Game Design and Development

ITCS 4120  Introduction to Computer Graphics (3)

ITCS 4230  Introduction to Game Design and Development (3)

ITCS 4231  Advanced Game Design and Development (3)

ITCS 4235  Game Engine Construction (3)

ITCS 4236  Artificial Intelligence for Computer Games (3)

ITCS 4237  Audio Processing for Entertainment Computing (3)

 

Graphics and Visualization

ITCS 3134  Digital Image Processing (3)

ITCS 4120  Introduction to Computer Graphics (3)

ITCS 4121  Information Visualization (3)

ITCS 4122  Visual Analytics (3)

ITCS 4123  Visualization and Visual Communication (3)

 

Intelligent Systems

ITCS 3134  Digital Image Processing (3)

ITCS 3152  Symbolic Programming (3)

ITCS 3153  Introduction to Artificial Intelligence (3)

ITCS 4151  Intelligent Robotics (3)

ITCS 4152  Computer Vision (3)

 

Networking and Distributed Systems

ITCS 3166  Introduction to Computer Networks (3)

ITCS 4141  Computer Organization and Architecture (3)

ITCS 4145  Parallel Computing (3)

ITCS 4146  Grid Computing (3)

ITIS 3200  Introduction to Information Security and Privacy  (3)

 

Capstone Experience (3-6 hours)

ITCS 4155  Software Development Projects (3)

ITCS 4232  Game Design and Development Studio (3)

ITCS 4650  Senior Project I (3)

ITCS 4651  Senior Project II (3)

ITCS 4990  Undergraduate Research (3)

ITCS 4991  Undergraduate Thesis (3)

 

Outside Concentration (15 hours)

A component of 15 credit hours of approved non-computer science courses forming an integrated program of outside concentration must be included.  The business outside concentration consists of a prescribed set of courses from the College of Business and one 3000-level course from a restricted set of choices.  The mathematics outside concentration consists of 9 semester hours of approved mathematics courses at the 3000-level or above (6 hours of additional electives must be selected in this case).  In general, an outside concentration consists of 6 hours at the 3000-level or above, plus an additional 9 hours of approved non-ITCS courses, forming an integrated program of secondary strength.

 

Suggested Curriculum

For a suggested curriculum for this degree to map out a path toward completing the major, please see the Academic Plan of Study available online at academics.uncc.edu.

 

Bachelor of Arts in Computer Science

The Bachelor of Arts program requires a more compact set of a computer science core.  In addition to a primary CS focus concentration area as in the B.S. program, it also requires 21-24 semester hours of a second focus concentration area in a non-computer science discipline, possibly forming a minor in that discipline area.  Graduates from the B.A. program are expected to have knowledge and skill in computer science plus a complementary discipline, such as business, cognitive science, biology, or any other discipline to which computing applies.  The emphasis in this program is less theoretical/mathematical, and more on the applied side of computing.

 

Degree Requirements

The B.A. in Computer Science requires 121 credit hours of coursework. 

 

Core Courses (39 hours)

ITCS 1212  Introduction to Computer Science I (4)

ITCS 1212L  Programming Lab I (0)

ITCS 1213  Introduction to Computer Science II (4)

ITCS 1213L  Programming Lab II (0)

ITCS 1600  Computing Professionals (1)

ITCS 2175  Logic and Algorithms (3)

ITCS 2214  Data Structures (3)

ITCS 2215  Design and Analysis of Algorithms (3)

ITCS 3146  Operating Systems and Networking (3)

ITCS 3155  Software Engineering (3)

ITCS 3160  Database Design and Implementation (3)

ITCS 3688  Computers and Their Impact on Society (3) (O, W)

 

ENGL 2116  Introduction to Technical Communication (3) (W)

ITIS 2211  Ethical Issues in Personal, Professional, and Public Life: Technology (3)

PHIL 1106  Critical Thinking (3)

 

Mathematics and Statistics Courses (12 hours)

Select one group of four courses.

 

Group 1

MATH 1120  Calculus (3)

MATH 2164  Matrices and Linear Algebra (3)

STAT 1220  Elements of Statistics I (BUSN) (3)

STAT 2223  Elements of Statistics II (3)

 

Group 2

MATH 1241  Calculus I (3)

MATH 1242  Calculus II (3)

MATH 2164  Matrices and Linear Algebra (3)

STAT 2122  Introduction to Probability and Statistics (3)

 

Focus Concentration Areas (12 hours)

Students select four courses in one of the computer science focus concentration areas below.

 

Computing Systems

ITCS 3110  Compiler Construction (3)

ITCS 3112  Design and Implementation of Object-Oriented Systems (3)

ITCS 3143  Operating Systems (3)

ITCS 3166  Introduction to Computer Networks (3)

ITCS 4145  Parallel Computing (3)

ITCS 4181  Microcomputer Interfacing (3)

 

Game Design and Development

ITCS 4120  Introduction to Computer Graphics (3)

ITCS 4230  Introduction to Game Design and Development (3)

ITCS 4231  Advanced Game Design and Development (3)

ITCS 4235  Game Engine Construction (3)

ITCS 4236  Artificial Intelligence for Computer Games (3)

ITCS 4237  Audio Processing for Entertainment Computing (3)

 

Graphics and Visualization

ITCS 3134  Digital Image Processing (3)

ITCS 4120  Introduction to Computer Graphics (3)

ITCS 4121  Information Visualization (3)

ITCS 4122  Visual Analytics (3)

ITCS 4123  Visualization and Visual Communication (3)

 

Intelligent Systems

ITCS 3134  Digital Image Processing (3)

ITCS 3152  Symbolic Programming (3)

ITCS 3153  Introduction to Artificial Intelligence (3)

ITCS 4151  Intelligent Robotics (3)

ITCS 4152  Computer Vision (3)

 

Networking and Distributed Systems

ITCS 3166  Introduction to Computer Networks (3)

ITCS 4141  Computer Organization and Architecture (3)

ITCS 4145  Parallel Computing (3)

ITCS 4146  Grid Computing (3)

ITIS 3200  Introduction to Information Security and Privacy  (3)

 

Capstone Experience (3-6 hours)

ITCS 4155  Software Development Projects (3)

ITCS 4232  Game Design and Development Studio (3)

ITCS 4650  Senior Project I (3)

ITCS 4651  Senior Project II (3)

ITCS 4990  Undergraduate Research (3)

ITCS 4991  Undergraduate Thesis (3)

 

Secondary Focus Concentration (21-24 hours)

A component of approved non-computer science courses forming an integrated program of secondary focus concentration must be included in the B.A. in Computer Science program.  In general, a secondary focus concentration consists of 9 hours at the 3000-level or above, plus an additional 12 hours of approved non-ITCS non-computer science courses, forming an integrated program in a complementary (or applied) area to computer science, possibly forming a minor in that discipline area.  A three-hour bridge course is included in the 21-24 hours.  This course bridges between computer science and the secondary focus discipline, which can be an ITCS a computer science course or a course in the other discipline. The secondary focus concentration requirement is quite flexible and can be tailored to a student’s interest upon the approval of his/her academic advisor. To illustrate this, here are two possibilities:

 

Business

ACCT 2121  Principles of Accounting I (3)

ACCT 2122  Principles of Accounting II (3)

ECON 2101  Principles of Economics – Macro (3)

ECON 2102  Principles of Economics – Micro (3)

INFO 3231  Business Applications Development (3)

INFO 3234  Business Information Systems Analysis and Design (3)

INFO 3236  Business Analytics (3)
or INFO 3240 eBusiness Systems (3)

ITCS 2231  Introduction to Business Programming (3)*
or INFO 2231  Introduction to Business Programming (3)*

 

Cognitive Science

ITCS 3216  Introduction to Cognitive Science (3)*

ITIS 3130 Human Computer Interaction (3)

PSYC 3115  Sensation and Perception (3)

PSYC 3116  Human Cognitive Processes (3)

 

Plus three of the following:

ENGL 4161  Modern English Grammar (3)

ENGL 4167  The Mind and Language (3)

ENGL 4263  Linguistics and Language Learning (3)

ITIS 3131  Human and Computer Information Processing (3)

PSYC 3122  Cognitive and Language Development (3)

PSYC 3313  Neuropsychology (3)

PSYC 4316  Cognitive Neuroscience (3)

 

*Bridge course

 

Suggested Curriculum

For a suggested curriculum for this degree to map out a path toward completing the major, please see the Academic Plan of Study available online at academics.uncc.edu.

 

Bachelor of Arts in Computer Science with Concentration in Financial Services Informatics

The B.A. in Computer Science with a Concentration in Financial Services Informatics consists of courses in computer science, financial services, and informatics.

 

Degree Requirements

The B.A. in Computer Science with a Concentration in Financial Services Informatics requires a total of 121 credit hours of coursework. 

 

Financial Services Courses (27 hours)

ACCT 2121  Principles of Accounting I (3)

ACCT 2122  Principles of Accounting II (3)

ECON 2101  Principles of Economics – Macro (3)

ECON 2102  Principles of Economics – Micro (3)

FINN 3120  Financial Management (3)

FINN 3221  Financial Institutions and Markets (3)

FINN 3226  Financial Theory and Practice (3)

ITCS 1301  Introduction to Financial Services (3)
or ITIS 1301 Introduction to Financial Services (3)

ITCS 3301  Introduction to the Regulatory Environment for Financial Services Firms (3)
or ITIS 3301  Introduction to the Regulatory Environment for Financial Services Firms (3)

 

Informatics Courses (39 hours)

ITCS 1212  Introduction to Computer Science I (4)

ITCS 1212L  Programming Lab I (0)

ITCS 1213  Introduction to Computer Science II (4)

ITCS 1213L  Programming Lab II (0)

ITCS 1600  Computing Professionals (1)

ITCS 2301  Financial Services Computing Environment (3) or
ITIS 2301  Financial Services Computing Environment (3)

ITCS 3155  Software Engineering (3)

ITCS 3160  Database Design and Implementation (3)

ITCS 3688  Computers and Their Impact on Society (3) (O, W)

ITIS 1210  Introduction to Web-Based Information Systems (3)

ITIS 2300  Web-Based Application Development (3)

ITIS 3130  Human-Computer Interaction (3)

ITIS 3200  Introduction to Information Security and Privacy (3)

ITIS 3300  Software Requirements and Project Management (3)

ITIS 4220  Vulnerability Assessment and Systems Assurance (3)

 

Other Required Courses (21 hours)

COMM 2105  Small Group Communication (3)

ENGL 2116  Introduction to Technical Communication (3) (W)

ITIS 2211  Ethical Issues in Personal, Professional, and Public Life: Technology (3)

MATH 1120  Calculus (3)

PHIL 1106  Critical Thinking (3)

STAT 1220  Elements of Statistics I (BUSN) (3)

STAT 2223  Elements of Statistics II (3)

 

Capstone Courses (6 hours)

ITIS 4640  Financial Services Informatics Industry Foundations Capstone I (3)

ITIS 4641  Financial Services Informatics Industry Foundations Capstone II (3)

 

Suggested Curriculum

For a suggested curriculum for this degree to map out a path toward completing the major, please see the Academic Plan of Study available online at academics.uncc.edu.

 

Minor In Computer Science

Requirements for the Minor in Computer Science include completion of 20 hours of computer science: 

 

ITCS 1212  Introduction to Computer Science (4)

ITCS 1212L  Programming Lab I (0)

ITCS 1213  Introduction to Computer Science II (4)

ITCS 1213L  Programming Lab II (0)

ITCS 2175  Logic and Algorithms (3)

ITCS 2214  Data Structures (3)

ITCS 2215  Design and Analysis of Algorithms (3)

ITCS 3688  Computers and Their Impact on Society (3) (O, W)

 

Undergraduate Certificate in Game Design and Development

The Undergraduate Certificate in Game Design and Development (GDD) provides undergraduate students with the opportunity to reach a demonstrated level of competence in game design and development.  Course-work towards the certificate in GDD can be used for credit towards the Bachelor’s degree in Computer Science.  However, its primary purpose is to provide a well-defined target for students who want to advance their knowledge of modern game design and development techniques and work with a variety of professionals, from artists to writers, to being the vision for an interactive game or media product to life.  The certificate may be pursued concurrently with any of the undergraduate degree programs at UNC Charlotte.

 

Admission Requirements

To be admitted into the Undergraduate Certificate in Game Design and Development, students must meet the general University requirements for admission into Undergraduate Certificate Programs.  These University-level requirements include:

 

  1. An undergraduate degree or admission to an undergraduate degree program at UNC Charlotte.
  2. An application submitted to the Registrar if applicant already holds an undergraduate degree, or to the department offering the program if applicant does not hold an undergraduate degree.
  3. Official transcripts for previous degree(s) and course work
  4. A Declaration of Program form (Change of Major/Minor form) listing the certificate program.

 

In addition, the program expects a current working knowledge of two higher-level languages, including at least one procedural language; and a familiarity with computer applications. The following minimal background in mathematics is also required: two semesters of calculus and one semester of discrete structures. Individuals who have worked at a high professional level in the computer industry may be able to substitute work experience for specific subject area admission requirements.

 

Students who anticipate applying certificate courses toward an undergraduate degree program should seek advice from that program prior to enrolling. Admission to an undergraduate degree program does not ensure admission into a discipline-related certificate program.

 

Course Requirements

The certificate will be awarded upon completion of five to six undergraduate level courses (15-18 credits) in the area of game design and development.  Up to a maximum of six transfer credits may be applied to the certificate.  Course substitutions may be made at the discretion of the GDD Certificate Coordinator.  The certificate program requires all courses taken for the certificate to be passed at the C level or above, and a GPA in all certificate courses of 2.5 or above.

 

Required Compulsory Courses (12 credits)

ITCS 4120  Introduction to Computer Graphics (3)

ITCS 4230  Introduction to Game Design and Development (3)

ITCS 4231  Advanced Game Design and Development (3)

ITCS 4232  Game Design and Development Studio (3)

 

Concentration Courses (3-6 credits)

Students should take one two-course sequence from the following:

 

Artificial Intelligence (18 credits total)

ITCS 3153  Introduction to Artificial Intelligence

ITCS 4236  A.I. for Computer Games

 

Computation (18 credits total)

ITCS 4237  Audio Processing for Entertainment Computing

A computation-related course approved by the GDD Certificate Coordinator

 

Graphics (15 credits total)

ITCS 4120 Introduction to Computer Graphics (this is already a required compulsory course)

ITCS 4235 Game Engine Construction

 

Networking (18 credits total)

ITCS 3166 Introduction to Computer Networks

A game-networking related course approved by the GDD Certificate Coordinator

 

Other (15-18 credits total)

A sequence of two related courses (generally from ITCS/ITIS at the 3000-level or above) approved by the GDD Certificate Coordinator.

 

Early Entry: Master of Science in Computer Science

Exceptional undergraduate students at UNC Charlotte may be accepted into the Early Entry Program for the Master of Science in Computer Science and begin work toward a graduate degree before completion of the baccalaureate degree.  The criteria for admission are the following:

 

  1. A student may be accepted into the Early Entry Program at any time after completion of 75 semester hours of undergraduate work applicable to the appropriate degree although it is expected that close to 90 hours will have been earned by the time the first graduate course is taken.
  2. The application process and all required documentation (e.g., test scores, transcripts, letters of recommendation) are the same for early entry students as for other applicants to the program. Admission must be recommended by the Department of Computer Science and approved by the Graduate School. The admission status will be “provisional” pending the award of the undergraduate degree.
  3. To be accepted into this program an undergraduate student must have at least a 3.2 overall GPA and a minimum 3.3 GPA in the department of Computer Science.
  4. If an Early Entry student has not met the normal graduate admission requirements of a 2.75 overall undergraduate GPA and a 3.0 junior senior GPA at the end of his/her baccalaureate degree, she/he will be dismissed from the graduate program.
  5. Students accepted into an Early Entry Program will be subject to the same policies that pertain to other matriculated graduate students.  Generally, it will be assumed that Early Entry students will finish their baccalaureate degrees before they complete 15 hours of graduate work.
  6. This Early Entry Program is also accelerated in which up to 12 hours earned at the graduate level may be substituted for required undergraduate hours. In other words, up to 12 hours of graduate work may be "double counted" toward both the baccalaureate and graduate degrees.

Approved Course Substitutions for Early Entry into the M.S. in Computer Science program

 

Required CSCI U/G

Graduate substitutions

ITCS 3160 Database Design & Implementation

ITIS 5160 Applied Database, (applies for graduate credit only if entering the MSIT program), or ITCS 6160 Database Systems, (applies for graduate credit only if entering the MS Computer Science program)

ITCS 3143 Operating Systems

ITCS 6144 Operating Systems Design

ITCS 3155 Software Engineering

ITCS 6112 S/W Systems Design & Implementation

ITCS 4102 Programming Languages

ITCS 5102 Survey of Programming Languages

ITCS 3181 Logic & Computer Systems + ITCS 3181L Computer Systems Lab & Recitation OR

ITCS 3182 Computer Organization & Architecture

ITCS 5141 Computer Org & Architecture

ITCS 3183 Hardware Systems Design

ITCS 6182 Advanced Computer Architecture

ITCS 3166 Intro to Computer Networks

ITCS 6166 Computer Communications & Networks

ITCS 3XXX/4XXX

(up to 9 credit hours)

Any graduate courses from CCI that are not otherwise used in a substitution above (up to 9 hours)