College of Business, Science & Technology

Computer Software Science (CSS)

CSS 102   Introduction to Computer Science 3 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, cyber security, artificial intelligence, networking, web applications, databases and emerging technologies.

CSS 117   Introduction to Python 3 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 statements, iteration, functions, classes, and objects. 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. (Prerequisite: Minimum grade of C- in CSS 102)

CSS 180   Math for Computer Science 3 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 100 or Level 2 on the Math Placement Exam)

CSS 205   Web Development 1 – Client-Side 3 credits

This course focuses on the client-side of web development. 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 wireframing, designing, and prototyping. (Prerequisite: Minimum grade of C- in CSS117)

CSS 232   Database Design 3 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. (Prerequisite: Minimum grade of C- in CSS 102)

CSS 300   Programming II - Java 3 credits

This course teaches students 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 CSS 117)

CSS 305   Web Development 2 – Server-Side 3 credits

This course focuses on the server-side of web development. 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 CSS205 and Minimum grade of C- in CSS 232)

CSS 320   Computer Architecture and Operating Systems 3 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 CSS 117)

CSS 335   Programming Language Paradigms 3 credits

This 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. It looks into interpreted vs compiled languages and the theory of computation. The student will have an opportunity to design their own language. (Prerequisite: Minimum grade of C- in CSS 200)

CSS 405   Data Structures and Algorithms 3 credits

This course covers both the 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 CSS 200 and MAT 220)

CSS 425   Software Engineering 3 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 environments, 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 CSS 200)

CSS 444   Computer Science Capstone 3 credits

This course is a capstone course for the Bachelor of Science in Computer Science. The course provides students with a realistic hands-on software development experience. Students will work in teams to build a medium-size software program. Students will use Agile software development and the 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 CSS 425)

CSS 498   Computer Science Internship 3 credits

This course provides students with practical, hands-on experience in the field of Computer Science through a supervised internship. Students will apply theoretical knowledge to real-world projects, enhance technical skills, and develop professional competencies in areas such as software programming and development, data analysis, and cybersecurity. The internship will also emphasize teamwork, communication, and problem-solving in a workplace setting. Students are required to complete a minimum number of hours, submit progress reports, and deliver a final reflective presentation.(Prerequisite: Minimum grade of C- in CSS 425)