Computer Science Program

Similar documents
Division of Mathematical Sciences

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008

Department of Computer Science

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Bachelor of Science in Information Technology. Course Descriptions

COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.)

Department of Computer Science

MEng, BSc Computer Science with Artificial Intelligence

M.S. Computer Science Program

COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa

One LAR Course Credits: 3. Page 4

Computer Science. General Education Students must complete the requirements shown in the General Education Requirements section of this catalog.

Clarke College. Major Requirements

INFORMATION TECHNOLOGY PROGRAM

The B.S. Degree Program in Information Systems

Computer and Information Sciences

DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING

Information Systems. Administered by the Department of Mathematical and Computing Sciences within the College of Arts and Sciences.

Study Plan for the Bachelor Degree in Computer Information Systems

MEng, BSc Applied Computer Science

Degrees Major in Computer Science Minor in Computer Science Major in Software Engineering

ABET General Outcomes. Student Learning Outcomes for BS in Computing

Master of Science in Computer Science Information Systems

Computer Science Courses-1

COURSE TITLE COURSE DESCRIPTION

Computer Science/Software Engineering

Computer Science. Master of Science

School of Computer Science

Software Development Training Camp 1 (0-3) Prerequisite : Program development skill enhancement camp, at least 48 person-hours.

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Students who successfully complete the Health Science Informatics major will be able to:

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

Assessment Plan for CS and CIS Degree Programs Computer Science Dept. Texas A&M University - Commerce

College of Science Department of Mathematics and Computer Science. Assessment Plan Computer Science and Computer Networks

COLLEGE OF INFORMATION TECHNOLOGY

Doctor of Philosophy in Computer Science

Please consult the Department of Engineering about the Computer Engineering Emphasis.

Assessment for Master s Degree Program Fall Spring 2011 Computer Science Dept. Texas A&M University - Commerce

Master of Science in Computer Science

DIABLO VALLEY COLLEGE CATALOG

Department of Computer Science

Professional Organization Checklist for the Computer Information Systems Curriculum

Page 1 of 5. (Modules, Subjects) SENG DSYS PSYS KMS ADB INS IAT

Computer Science. Requirements for the Major (updated 11/13/03)

REGULATIONS FOR THE DEGREE OF BACHELOR OF SCIENCE IN COMPUTER SCIENCE AND INFORMATION SYSTEMS (BSc[CSIS])

Graduate Co-op Students Information Manual. Department of Computer Science. Faculty of Science. University of Regina

FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES

Computer Science (COMP)

REGULATIONS FOR THE DEGREE OF BACHELOR OF SCIENCE IN COMPUTER SCIENCE AND INFORMATION SYSTEMS (BSc[CSIS])

BIOLOGY. Academic Regulation A grade of C- is the minimal grade acceptable for progression in the CMPS 221, 222, and 223 sequence.

Department Overview. Preparation for Graduate School. Dual Degree BS and MSCIS Track. COMPUTER SCIENCE Computer Science

Software Engineering Transfer Degree

Computer Science Course Descriptions

How To Get A Computer Science Degree

Computer Science MS Course Descriptions

Department of Computer Science

REGULATIONS FOR THE DEGREE OF BACHELOR OF SCIENCE IN BIOINFORMATICS (BSc[BioInf])

Undergraduate Major in Computer Science and Engineering

How To Learn To Manage A Computer System

Computer Science In the College of Sciences

COMPUTER SCIENCE (5651) Test at a Glance

KMU International School

CS Standards Crosswalk: CSTA K-12 Computer Science Standards and Oracle Java Programming (2014)

B.Sc. in Computer Information Systems Study Plan

Course Descriptions - Computer Science and Software Engineering

University of Dayton Department of Computer Science Undergraduate Programs Assessment Plan DRAFT September 14, 2011

MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES FIELD 050: COMPUTER SCIENCE

Master s Program in Information Systems

Computer Information Systems

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation

Datavetenskapligt Program (kandidat) Computer Science Programme (master)

ก ก ก ก ก (3-0-6) ก ก ก (Introduction to Business) (Principles of Marketing)

How To Get A Computer Science Degree

CS5310 Algorithms 3 credit hours 2 hours lecture and 2 hours recitation every week

Information Technology Career Field Pathways and Course Structure

SCHOOL OF ADVANCED TECHNOLOGIES, ENGINEERING AND SCIENCE (SATES) PROGRAM: CTech in Electrical and Electronic Engineering

Computer Science and Software Engineering

ALFAISAL UNIVERSITY COLLEGE OF ENGINEERING

How To Get A Computer Engineering Degree

How To Get A Computer Science Degree At Appalachian State

COMPUTER SCIENCE ( )

Accelerated Undergraduate/Graduate (BS/MS) Dual Degree Program in Computer Science

School of Computer Science

School of Management and Information Systems

Winter 2016 Course Timetable. Legend: TIME: M = Monday T = Tuesday W = Wednesday R = Thursday F = Friday BREATH: M = Methodology: RA = Research Area

Computer Information Systems (CIS)

UF EDGE brings the classroom to you with online, worldwide course delivery!

PCCC PCCC Course Description

Diploma Of Computing

Texas Essential Knowledge and Skills Correlation to Video Game Design Foundations 2011 N Video Game Design

Curriculum for the Bachelor Degree in Computer Science (CS)

Course Descriptions. CS 01400: Independent Study 1 to 4 s.h.

Department of Computer Science

Computer Engineering as a Discipline

Computer Science 1010 Introduction to Computers and the Internet (3) 1015 Web Structures I (1) 1016 Web Structures II (1)

Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices

Masters in Human Computer Interaction

Students must earn grades of C or better in all courses specific to either the major or the minor in Computer Science.

THE AIT BUSINESS SCHOOL (ABS) PROGRAM: CTech in Business Administration and IT

School of Computer Science

Transcription:

Computer Science Program The Department of Computer Science was established along with the start of FCIT. The department aims at establishing strong academic knowledge and experiences so that students can benefit from it and be able to comprehend the advances in this rapid developing field. The Curricula of the Computer Science program was designed to be flexible so that it can fit the students needs and responds to the work market. Consequently the program emphasize on core courses that is a must for computer science students and breadth in various fields of specialization so that the student can graduated with adequate knowledge to serve as Programmer, Computer Security Officer, Applications Developer, Information Security Officer, Database Designer and Database Administrator. Vision The Department of Computer Science and information Technology aspiration is to graduate outstanding professionals, sponsor novel research, and to be among the nation s first choice in information technology oriented to community services. Mission Provide an infrastructure through which students can gain theoretical, analytical and practical knowledge and interpersonal skills and develop the abilities and skills important for effective participation and leadership in industry. Computer Science Program Educational Objectives Program Education objectives are 1. Providing graduates a deep understanding and knowledge of Computer Science, in order to be engage in the productive practice of computer science to identify and solve significant problems across a broad range of application areas. 2. Producing graduates who apply their computer science knowledge and skills for the overall benefit of a diverse society. 3. Producing graduates who will enhance the economic well-being of both Tabuk area and the kingdom through a combination of technical expertise, leadership and entrepreneurship. 4. To prepare students for successful and productive careers as computer science professionals in both industry and government. 5. Preparing graduates to understand and acquire knowledge of ethical, legal, social and global policy issues in secured computer systems and develop good teamwork and communication to address society and organizational needs with professionalism. 6. To prepare students to pursue graduate studies and for life-long learning in a rapidly evolving field.

Computer Science Program Learning Outcomes Programs are strongly urged to incorporate the ABET/CAC "Criterion 3" Engineering and Computer Science Program Outcomes. These Outcomes, with our local customizations and additions, are: a. The ability to apply knowledge of computing and mathematics appropriate to the discipline. Also, the ability to understand how computer science relates to mathematics and the physical sciences. b. The ability to analyze a problem and identify and define the computing requirements and specifications appropriate to its solution. c. The ability to design, implement and evaluate a computer-based system, process, component, or program to meet desired needs. Also, the ability to understand the analysis, design and implementation of a computerized solution to a real-life problem. d. The ability to function effectively on teams to accomplish a common goal. Also, the ability to make an oral presentation which utilizes professional quality presentation aids. e. An understanding of professional, ethical, legal, security and social issues and responsibilities. Also, the ability to understand and appreciate the ethical and societal issues related to computers and computer networks. f. The ability to communicate effectively with a range of audiences. Also, the ability to write a technical document such as a software specification white paper or a user manual. g. The ability to analyze the local and global impact of computing on individuals, organizations and society. h. Recognizing the need for and the ability to engage in continuing professional development. Also, the ability to do additional reading and research in order to become proficient in a specialty area of computer science. i. The ability to use current techniques, skills, and tools necessary for computing practices, while -at the same time- understanding the principles of operation. j. The 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 in design choices. k. The ability to apply design and development principles in the construction of software systems of varying complexity.

Computer Science Degree Requirements A total of 137 credits, including 20 credits of university requirements, 25 credits of faculty requirements, 80 credits of program requirements, 12 credits of program electives CS Areas Categories and Codes Code X0X X1X X2X X3X X4X X5X X6X X7X X8X X9X Category Fundamentals and Programming Hardware and Systems Algorithms, Computing & Software Development Networking, Internet and Web Database and Information Management HCI & Intelligent Systems Security and Administration Advanced & Selected Topics/Projects

CSC Core Requirements Code Name Lec Lab Tut CH Prerequisite 1 MATH 101 Mathematics (2) 3 0 2 3 MATH 100 2 STAT 201 General Statistics 4 0 2 4 MATH 100 3 ELS 210 English for Computer Students 3 0 0 3 ELS 002 4 PHYS 281 General Physics Lab 0 2 0 1 PHYS 101 5 CSC 101 Computer Programming (1) 3 2 2 4 CSC 100 6 CSC 102 Computer Programming (2) 3 2 2 4 CSC 101 7 CSC 109 Computer Ethics 1 0 0 1 CSC 001 8 CEN 210 Logic Design 3 0 0 3 MATH 251 9 CEN 211 Logic Design Lab. 0 2 0 1 CEN 210 10 CSC 210 Computer Organization and Assembly CSC 101 3 2 0 4 Language Programming CEN 210 11 CSC 220 Data Structures and Algorithms 3 0 2 3 CSC 102 12 CSC 221 Software Engineering 3 0 2 3 CSC 220 13 CIT 230 Internet and Web Technology 2 2 0 3 CSC 102 14 MATH 241 Linear Algebra 3 0 0 3 MATH 251 15 MATH 251 Discrete Structures 3 0 2 3 MATH 101 16 CSC 300 Programming Languages 3 0 0 3 CSC 220 ELS 301 Technical Writing 3 0 0 3 ELS 210 18 STAT 311 Probability Theory 3 0 0 3 STAT 201 19 CEN 312 Computer Architecture 3 0 0 3 CSC 210 20 CSC 321 Design and Analysis of Algorithms 3 0 2 3 CSC 220 21 CEN 330 Computer Networks 3 2 0 4 CEN 312 22 CIS 340 Database Systems 3 2 0 4 CSC 220 23 CSC 390 CS Summer Training 0 0 0 0 N/A 24 CSC 410 Operating Systems 3 0 0 3 CEN 312 25 CSC 420 Theory of Computation 3 0 2 3 CSC 220 26 CSC 450 Artificial Intelligence 2 2 2 3 CSC 321 27 CSC 490 CS Project (1) 1 0 0 1 28 CSC 491 CS Project (2) 1 4 0 3 CSC 490 Total 69 22 16 80 Electives (12 Credits) 12 credits selected from the available advanced computer science courses listed in the table below. Code Name Lec Lab Tut CH Prerequisite 1 CSC 301 Visual Programming 2 2 0 3 CSC 102 2 CSC 411 Systems Programming 3 0 0 3 CSC 410 3 CSC 421 Compiler Construction 3 0 0 3 CSC 420 4 CSC 422 Numerical Methods 3 0 0 3 CSC 321 5 CSC 423 Advanced Software Engineering 3 0 0 3 CSC 221 6 CSC 424 Modeling and Simulation 3 0 0 3 STAT 311 7 CIS 440 Advanced Database Systems 3 0 0 3 CIS 340 8 CIT 450 Human Computer Interaction 3 0 0 3 CSC 102 9 CSC 452 Computer Graphics 3 0 0 3 CSC 321 10 CIT 453 Multimedia Systems 3 0 0 3 CSC 321 11 CSC 454 Machine Learning 3 0 0 3 CSC 321 12 CSC 455 Digital Image Processing 3 0 0 3 CSC 321 13 CIT 460 Computer and Information Security 3 0 0 3 CSC 321 14 CSC 492 Special Topics in Computer Science 3 0 0 3

Semester (1) Semester (2) First Year(Foundation) Semester (3) Second Year Semester (4) Semester (5) Third Year Semester (6) Semester (7) Fourth Year Semester (8) CS Study Plan Sample(4-years) 137 credits Code Name Lec Lab Tut CH Prerequisite COMM 001 Communication Skills 2 0 0 2 N/A CSC 001 Computer Skills & Applications 4 0 0 3 N/A MATH 100 Mathematics (1) 3 0 2 3 N/A ELS 001 English Language Skills (1) 15 0 0 5 N/A PHYS 101 General Physics 3 0 0 3 N/A 16 LTS 001 Learning & Thinking Skills 4 0 0 3 N/A MATH 101 Mathematics (2) 3 0 2 3 MATH 100 BIO 101 General Biology 3 0 0 3 N/A CHEM 101 Chemistry 3 0 0 3 N/A ELS 002 English Language Skills (2) 15 0 0 5 ELS 001 ISLS 101 Islamic Culture(1) 2 0 0 2 N/A CSC 101 Computer Programming (1) 3 2 0 4 CSC 001 ELS 210 English for Computer Students 3 0 0 3 ELS 002 MATH 200 Fundamental of Integral Calculus 4 0 0 4 MATH 101 MATH 251 Discrete Structures 3 0 2 3 MATH 101 ARB 101 Language Skills 2 0 0 2 N/A 18 ISLS 201 Islamic Culture (2) 2 0 0 2 ISLS 101 CSC 102 Computer Programming (2) 3 2 0 4 CSC 101 CSC 109 Computer Ethics 1 0 0 1 CSC 001 CEN 210 Logic Design 3 0 0 3 MATH 251 STAT 201 General Statistics 4 0 0 4 N/A ARB 201 Writing Skills 2 0 0 2 ARAB 101 PHYS 281 General Physics Lab. 0 2 0 1 PHYS 101 CSC 210 Computer Organization and 3 2 0 4 CSC 101 Assembly Language Programming CEN 210 CSC 220 Data Structures and Algorithms 3 0 2 3 CSC 102 CIT 230 Internet and Web Technology 2 2 0 3 CSC 102 MATH 241 Linear Algebra 3 0 0 3 MATH 251 STAT 311 Probability Theory(1) 3 0 0 3 STAT 201 CEN 211 Logic Design Lab 0 2 0 1 CEN 210 CEN 312 Computer Architecture 3 0 0 3 CSC 210 CSC 321 Design and Analysis of Algorithms 3 0 2 3 CSC 220 CIS 340 Database Systems 3 2 0 4 CSC 220 ELS 301 Technical Writing 3 0 0 3 ELS 210 CSC 221 Software Engineering 3 0 2 3 CSC 220 ISLS 301 Islamic Culture (3) 2 0 0 2 ISLS 201 CSC 390 CS Field Training 0 0 0 0 Department's Approval 18 CEN 330 Computer Networks 3 2 0 4 CEN 312 CSC 420 Theory of Computation 3 0 2 3 CSC 220 CSC 410 Operating Systems 3 0 0 3 CEN 312 CSC 300 Programming Languages 3 0 0 3 CSC 220 Cxx xxx Elective Course (1) 3 0 0 3 Cxx xxx CSC 490 CS Project (1) 1 0 0 1 Department's Approval CSC 450 Artificial Intelligence 2 2 2 3 CSC 321 Cxx xxx Elective Course(2) 3 0 0 3 Cxx xxx Cxx xxx Elective Course (3) 3 0 0 3 Cxx xxx Cxx xxx Elective Course (4) 3 0 0 3 Cxx xxx ISLS 401 Islamic Culture (4) 2 0 0 2 ISLS 301 CSC 491 CS Project (2) 1 4 0 3 CSC 490 137

CS Courses Short Description CSC 001 Computer Skills and Applications (0,6,0,3) This course is an introduction to computer skills and applications. The course will cover basic concepts of computers and application programs. Topics covered include introduction: computer hardware, software and information technology, windows, word, excel, power point, access and the internet. Prerequisite: N/A CSC 101 Computer Programming (1) (3,2,0,4) This course provides an introduction to problem solving and computer programming. Topics include flowcharting, writing and executing programs, basic features of the programming language such as data types, control structures, methods, arrays and strings. Prerequisite: CSC 001 CSC 102 Computer Programming (2) (3,2,0,4) This course provides an introduction to object-oriented programming. Topics include classes and objects: a deeper look, inheritance, polymorphism, interfaces & operator overloading, exception handling, graphical user interface concepts, strings, files and streams. Prerequisite: CSC 101 CSC 109 Computer Ethics (1,0,0,1) This course covers ethical issues concerning the use of computers. The course introduces topics in professional responsibility, codes of Ethics, example codes of ethics, computer security, privacy and computing, computing and intellectual property, crime and global information ethics. Prerequisite: CSC 001 CEN 210 Logic Design (3,0,0,3) This course is an introduction on the principles of digital design. Topics include binary systems, boolean algebra and logic gates, gate-level minimization, combinational logic, synchronous sequential logic, registers and counters, and memory and programmable logic. Prerequisite: MATH 251 CEN 211 Logic Design Lab (0,2,0,1) This course introduces the student to combinational and sequential circuit design and implementation. There will be ten experiments and each will comprise of a design, software simulation, and hardware implementation. Prerequisite: CEN 210 CSC 210 Computer Organization and Assembly Language Programming (3,2,0,4) This course covers the basics of computer organization and assembly language programming. Topics include computer abstractions, instructions, arithmetic, structure, organization, and the processor, assembly language programming for microcomputers, data types, addressing modes, instruction set, assembler operators and pseudo operator, I/O, and high-level languages and macros. Prerequisite: CEN 210, CSC 101 CEN 312 Computer Architecture (3,0,0,3) This course presents the principles of computer architecture and design. Topics to be covered include instruction set architectures, arithmetic logic unit design, CPU data path design, CPU pipelining, memory hierarchy, cache and virtual memory, and introduction to I/O. Prerequisite: CSC 210 CSC 220 Data Structures and Algorithms (3,0,2,3) This course covers the topics of data structures and algorithm design along with their respective applications. Topics will include arrays, linked lists, stacks, queues, recursion, trees, searching, sorting and applications to sorting and searching. Prerequisite: CSC102 CSC 321 Design and Analysis of Algorithms (3,0,2,3) The objective of this course is to teach students methods of designing and analyzing algorithms. Specific topics include computing worst case and average case complexity for an algorithm, design techniques, dynamic programming, divide-and-conquer, greedy method, branch-and-bound, backtracking, graph traversals, minimum spanning tree, and shortest path algorithms. Prerequisite: CSC220 CIT 230 Internet and Web Technology (2,2,0,3) This course is an introduction to various internet and web technologies. Topics include internet and web basics, World Wide Web, HTML, XHTML, cascading style sheets, web page design and java script. Prerequisite: CSC102

CSC 300 Programming Languages (3,0,0,3) This course covers list-processing, string-processing, and other types of high-level programming languages. The course also introduces fundamental concepts of data types, control structures, operations, and programming environments of various programming languages. The course discusses the analysis, formal specification, and comparison of language features. Prerequisite: CSC220 CSC 410 Operating Systems (3,0,0,3) This course will provide an introduction to operating system design and implementation. Topics covered include role and purpose of operating systems, operating-system structures, process, threads, process synchronization, cpu scheduling, deadlocks, memory management and virtual memory. Prerequisite: CEN 312 CSC 420 Theory of Computation (3,0,2,3) This course is an introduction to the theory of formal languages and computation. Topics include languages, regular expressions, finite automata, Transition Graphs, Kleen's theorem, regular languages, decidability, context-free grammars, pushdown automata, parsing and Turing machines. Prerequisite: CSC 220 CSC 221 Software Engineering (3,0,2,3) This course introduces the principles and techniques used in software engineering. Topics include introduction to software engineering, software processes, agile software development, requirements engineering, system modeling, architectural design, design and implementation, software testing and software evolution. Prerequisite: CSC220 CEN 330 Computer Networks (3,0,0,3) This course is an introduction to computer networks. Topics include introduction: uses of computer networks, network hardware, network software and reference models, the physical layer, the data link layer, the medium access control sub-layer, the network layer, the transport layer, application layer of networking, transmission systems and network applications. Prerequisite: CEN 312 CIS 340 Database Systems (3,2,0,4) This course covers fundamentals of database architecture and systems. Topics include databases and database users, database system concepts and architecture, relational data model, the relational algebra and relational calculus, data modeling using the entity-relationship model, structured query language, functional dependency and normalization. Prerequisite: CSC220 CSC 450 Artificial Intelligence (2,2,2,3) This course is an introduction to artificial intelligence (AI). Topics include history and applications, intelligent agent, solving problems by searching, constraint satisfaction, knowledge representation, reasoning, machine learning, natural language processing, perception, robotics, expert systems and real AI applications. CSC 390 CS Field Training (0,0,0,0) The course lasts for 8 weeks to cover the summer semester of the third year during which students will undergo a practical training at an approved private, government or semi-government agency. Prerequisite: Department's Approval CSC 490 CS Project (1) (1,0,0,1) In this course, the students apply what they learn to develop a computer application, that is suggested by the student and approved by the department. Computer Science senior project-first semester, includes project proposal, feasibility studies, intellectual property, teamwork, budgets, schedule management. Prerequisite: Department's Approval CSC 491 CS Project (2) (1,4,0,3) Computer Science senior project second semester, includes teamwork, professional communications (reports & presentations), design implementation and testing. Prerequisite: CSC490 Elective Courses CSC 422 Numerical Methods (3,0,0,3) This course will emphasize the development of numerical algorithms to provide solutions to common problems in science and engineering. Topics covered include number systems and errors, solution of nonlinear equations, interpolation, systems of linear equations, approximation, differentiation and integration and solution of ordinary differential equations.

CIT 450 Human Computer Interaction (3,0,0,3) This course provides an overview of the field of human-computer interaction. Topics include usability of interactive systems, guidelines, principles, and theories, managing design processes, evaluating interface designs, direct manipulation and virtual environments, menu selection, form fill-in, and dialog boxes, interaction devices,documentation and online help, information searching and visualization. Prerequisite: CSC102 CSC 452 Computer Graphics (3,0,0,3) This course covers the fundamentals of computer graphics. Topics include overview of graphics systems, output primitives, attributes of graphics primitives, geometric transformations, two-dimensional viewing, three-dimensional viewing, visible-surface detection methods, illumination models and surface-rendering methods, color models and color applications and computer animation. CSC 421 Compiler Construction (3,0,0,3) This course Introduces essential theory, algorithms, and tools used in compiler construction. Major topics include lexical, semantic, and contextual analysis of source files, syntax trees, symbol tables, code generation and optimization techniques. Prerequisite: CSC420 CIT 453 Multimedia Systems (3,0,0,3) This course is an introduction to multimedia systems. Topics include multimedia concepts, authoring and tools, graphics and image data representations, color in image and video, fundamental concepts in video, basics of digital audio, data compression, image compression, video and audio compression techniques and multimedia communication and retrieval. CIT 460 Computer and Information Security (3,0,0,3) This course presents the principles of computer and information security. Topics covered include elements of information protection, threats to information security, techniques of protection, information security policies and standards, access control, physical security and risk analysis and introduction to cryptography. CSC 411 Systems Programming (3,0,0,3) This course provides an introduction to systems programming. Topics include background, assembler functions, machine-dependent and independent assembler features, assembler design options. loader functions, machinedependent and independent loader features, loader design options, macro processor functions, features and design and implementation examples. Prerequisite: CSC410

CSC 454 Machine Learning (3,0,0,3) This course provides an introduction to machine learning. Topics include: supervised learning; unsupervised learning; learning theory; reinforcement learning and adaptive control. The course will also discuss recent applications of machine learning, such as to robotic control, data mining, autonomous navigation, bioinformatics, speech recognition, and text and web data processing. Prerequisite: CSC 321 CSC 301 Visual Programming (2,2,0,3) This course covers the fundamentals of visual language theory, iconic and symbolic representations, parsing techniques, semantics and pragmatics of visual languages, visual programming systems, visual querying systems, visual information systems and visual software engineering. Its applications are diverse: visual user interface, visual specifications, visual reasoning, visual database systems and multimedia computing, to name but a few. Prerequisite: CSC 102 CSC 455 Digital Image Processing (3,0,0,3) This course will provide mathematical foundations and practical techniques for digital manipulation of images; image acquisition; preprocessing; segmentation; Fourier domain processing; feature extraction; recognition and compression. Prerequisite: CSC 321 CSC 423 Advanced Software Engineering (3,0,0,3) The course will build on the knowledge and experience the student has acquired in CSC 221, Software Engineering I. It will further assist in understanding the principles and complexities regarding the software engineering life cycle of large software projects, and to experience and develop skills for working in a large group on a small to medium scale software project. Specific topics covered will include verification/validation, software quality, documentation, and maintenance. Prerequisite: CSC 221 CIS 440 Advanced Database Systems (3,0,0,3) Database Security and Authorization, Concepts for Object Databases, Enhanced Data Models for Advanced Applications, Distributed Databases and Client-Server Architectures, xml and Internet Databases, Data Mining Concepts, Data Warehousing and OLAP, Emerging Database Technologies and Applications. Prerequisite: CIS 340 CSC 492 Special Topics in Computer Science (3,0,0,3) Contemporary topics in computer science will be offered as needed. Prerequisite: Department's Approval CSC 424 Modeling and Simulation (3,0,0,3) Introduction to modeling and simulation concepts. System analysis and classification. Abstract and simulation models. Continuous, discrete, and combined models. Heterogeneous models. Using Petri nets and finite automata in simulation. Pseudorandom number generation and testing. Queuing systems. Monte Carlo method. Continuous simulation, numerical methods, Modelica language. Simulation experiment control. Visualization and analysis of simulation results. Prerequisite: STAT 311