Page 100 - University Bulletin
P. 100

99



                CS 313  INTRODUCTION TO DATA SCIENCE

                Credits: 3(3,1,0)    Prerequisite:   CS 210, STAT101
                   The  Introduction  to  Data  Science  course  will  survey  the  foundational  topics  in  Data  science,  Data
                   Manipulation, Data Analysis with Statistics and Machine Learning. Students will learn Python, Python
                   data structures including Numpy, Pandas and visualization techniques using Matplotlib and seaborn.
                   Students  will  learn  how  to  apply  basic  machine  learning  concepts  for  classifications  and  regression.
                   Student  will  work  on  a  group  project  to  apply  learned  concepts  on  one  of  the  many  Data  Science
                   applications.


                CS 315: PARALLEL AND MULTICORE PROGRAMMING

                Credits: 3(3,1,0)    Prerequisites:  CS175, CS 210
                   This course is an introduction to parallel programming with a special emphasis on the
                   techniques appropriate to multicore systems.  The topics covered include performance
                   analysis and tuning, data and task parallelism, synchronization techniques, shared data
                   structures, and load balancing. The course features many hands-on practice sheets plus a
                   term project.


                CS 320  PROGRAMMING LANGUAGES: CONCEPTS AND PARADIGMS
                Credits: 3(3,1,0)    Prerequisite:   CS210
                   CS 320 provides undergraduate students with an overview of the theoretical foundations
                   of programming languages. Topics covered in this course include: introduction to different
                   language paradigms (functional, logic and object-oriented), the history of programming
                   languages  and  language  design  principles,  syntax  specification  (using  BNF,  EBNF,  and
                   syntax  diagrams),  central  semantic  issues  of  programming  languages  (declaration,
                   allocation, evaluation). Major languages covered include C, C++, Smalltalk, Java, Ada, ML,
                   Haskell, Scheme, and Prolog; many other languages are discussed more briefly.


                CS 330  INTRODUCTION TO OPERATING SYSTEMS

                Credits: 3(3,1,0)    Prerequisites:  CS 210, CS175
                   This course explores the evolution, services, and structures of operating systems. It covers
                   the basic concepts of operating system design and implementation and management of
                   system  resources  such  as  Central  Processing  Unit  (CPU),  Input/output  (I/O)  devices,
                   memory, and software. Examples given from modern operating systems such as Unix and
                   Windows-driven operating systems are scrutinized.


                CS 331  DATA COMMUNICATIONS AND COMPUTER NETWORKS
                Credits: 3(3,1,0)    Prerequisite:   CS 175, CS 210

                   This course introduces the basic concepts in data communication and computer networks.
                   Topics covered include the nature of data communication, characteristics of computer
                   networks, the ISO-OSI network protocol layers, topologies and models, error detection and
                   correction codes, and network performance considerations.


                CS 336  NETWORK OPERATIONS AND ADMINISTRATION
                Credits: 3(3,0,1)    Prerequisite:   CS 331

                   This  course  surveys  network  operations  and  provides  an  overview  of  TCP/IP  network
   95   96   97   98   99   100   101   102   103   104   105