College of Business and Technology

Computer Science (CSC)

This is an archived copy of the 2021-2022 catalog. To access the most recent version of the catalog, please visit http://catalog.csp.edu.

CSC 101   Introduction to Computer Science 4 credits

Students will be introduced to a wide range of Computer Science topics. Some of the many aspects covered will include computer hardware, programing, operating systems, data analysis, operating systems, cyber security, artificial intelligence, networking, web applications, databases and emerging technologies.

CSC 115   Introduction to Python 4 credits

This course introduces students to problem solving using the Python programming language. Students will learn computer hardware concepts, number systems, and Boolean algebra. The course will cover Python programming constructs such as conditional statement, iteration, function, class and object. Students are expected to take a problem description and write a program in Python that provides a solution to the problem. This course assumes the student has no prior programming experience.

CSC 121   Basics of Technology in Business 2 credits

The purpose of this course is to respond to the technological demands of business today. Students will be equipped with the required knowledge and skills to fulfill basic business needs. A foundation in fundamental tools and emerging technologies will be explored through both practice and theory with a focus on how they can be leveraged for business advantage. A solid base in business information systems will provide students the confidence to generate and manage information for thoughtful and informed decisions. Business efficiency and productivity topics will include emerging and contemporary technologies for data management, business intelligence, and professional communication.

CSC 135   Client-Side Web Development 4 credits

In this course, students will start by learning basic HTML and CSS for building static Web pages, and later use JavaScript to build an interactive Website. Students will also learn about responsive Web development, user experience concepts, and accessibility topics. A prototyping tool will be used for wire framing, designing and prototyping.

CSC 175   Math for Computer Science 4 credits

This course covers mathematical concepts that are widely used in the field of Computer Science, including discrete math, logic, and proofs. (Prerequisite: Minimum grade of C- in MAT 103, or Level 3 on the Math Placement Exam)

CSC 210   Microsoft Excel Core 4 credits

Through Microsoft Excel, students will be led through an exploration of a powerful spreadsheet program. After a review of the basic commands and functionality, students will be challenged to manipulate specific data for informative reporting that is visually, accurately and dynamically representative of the learning objective. To accomplish this task advanced formulas, search strategies, and data analysis tools will be incorporated into learning projects including mastery of Pivot Tables and Pivot Charts. Further studies will include strategies for managing large data sets, linking and importing external data, mitigating security issues, and working toward automation. Upon completion of the course, students will have sufficient preparation if they wish to take the Microsoft Excel Expert Exam for the Microsoft Office Specialist Certificate.

CSC 222   Introductory Programming with Java 4 credits

This course teaches student problem solving with structured programming techniques using Java. The topics covered includes variables, primitive data types, conditional statements, loops, static methods, file processing, string, arrays, and some concepts of object oriented programming. This course requires that students have some programming background. (Prerequisite: Minimum grade of C- in CSC 115)

CSC 230   Database Design 4 credits

Utilize a database tool to create a prototype for output that meets real-life business outcomes. Learn the fundamentals of database design including the relational model, SQL, and data warehousing. Practice working individually and in teams to learn the normalization process, minimizing opportunities for redundant, inaccurate data. Other topics include design implications for speeding data access (e.g. de-normalization), and the emergence of unstructured data systems.

CSC 235   Server-Side Development 4 credits

This course provides an overview of programming and database techniques used in server-side programming. Topics include handling web form data, SQL, database design, security considerations, stored procedures and JSON. (Prerequisite: minimum grade of C- in CSC 135 and CSC 230)

CSC 240   Database Development for Business 4 credits

Analyze database use within a variety of business contexts. Gather requirements for a real-life database that addresses current business strategies and develop a prototypical model that meets stakeholder reporting needs and enhances organizational efficiency. Learn the basics of database design including the relational model and an introduction to SQL queries. Practice working individually and in teams to learn the normalization process, minimizing opportunities for redundant, inaccurate data.

CSC 310   Computer Architecture and Operating Systems 4 credits

This course is designed as an introduction to the functional components of computer systems, including their hardware implementation and management at different levels, and their interaction, characteristics, and performance. The course also covers practical implications for computer programming. (Prerequisite: Minimum grade of C- in CSC 115 or equivalent)

CSC 315   Mobile App Development 4 credits

This course teaches students how to build Android mobile applications from the bottom up using Android Studio and Java. Students will learn Android architecture, how to design user interface, and how to handle user interface events. Other topics include saving and restoring the state of an app and integrating Google Map. The course consists of several small projects giving students the ability to create an Android app incrementally. At the end of the course, students will use knowledge they have learned in the course to build a medium size Android app and to learn the process of preparing and publishing their app to Google Play Store. (Prerequisite: Minimum grade of C- in CSC 222)

CSC 322   Object Oriented Programming in Java 4 credits

This course teaches student problem solving with object oriented programming techniques using Java. The topics include exception handling, generics, object oriented programming, design patterns, and data structures. This course assumes that students already have a good programming background. (Prerequisite: Minimum grade of C- in CSC 222)

CSC 330   Language Design and Implementation 4 credits

The course provides a comparative survey of programming language paradigms. It includes an overview of the properties, applications, syntax, and semantics of selected object-oriented, functional, comparative, and declarative programming languages. (Prerequisite: Minimum grade of C- in CSC 322)

CSC 420   Data Structures and Algorithms 4 credits

This course covers both theory and application of data structures such as lists, stacks, queues, sets, maps, binary search trees, and graphs. The algorithm portion covers time complexing of algorithms using big-O notation, various sorting algorithms, concepts of dynamic programming, and divide-and-conquer algorithms. By the end of the course, students should know to apply the appropriate data structures for a given problem for optimal performance. Students will be able to determine the efficiency of basic algorithms. Students must have a good object-oriented programming background. (Prerequisite: Minimum grade of C- in CSC 322 and MAT 220)

CSC 422   Software Engineering 4 credits

This course introduces students to concepts and tools in software engineering. The topics include software life-cycle models, the phases of software development, design patterns, software architecture and Agile software development. Students will learn various software engineering tools such as integrated development environment, version control systems, and project management software. This course assumes students have a good background in object-oriented programming in at least one programming language.(Prerequisite: Minimum grade of C- in CSC 322)

CSC 435   Advanced Web Application Development 4 credits

This course teaches students Web application development using common tools and frameworks in the current industry. The course covers various front-end libraries and frameworks such as React and Angular and several back-end frameworks and tools such as Python Flasks, Code Igniter Node, and Java Spring Boot. Students will learn both relational databases and NoSQL databases. Students will build various Web applications using various frameworks throughout the term. Students are assumed to have good knowledge of JavaScript, have a good understanding of backend development and of databases. (Prerequisite: Minimum grade of C- in CSC 235)

CSC 450   Computer Science Capstone 4 credits

This course is a capstone course for the Bachelor of Science in Computer Science. The course provides students realistic hands-on software development experience. Students will work in teams to build a medium-size software. Students will use agile software development and tools necessary to support teamwork. This course assumes the student has a good programming background in at least one programming language and is willing to learn new tools and technologies. (Prerequisite: Minimum grade of C- in CSC 315 or CSC 435)

CSC 488   Independent Study 1-4 credits

CSC 498   Computer Science Internship 1-16 credits