course expectations course code: cosc 1666 … · standard computer-aided design (cad) system. ......

55
COURSE EXPECTATIONS COURSE CODE: COSC 1666 COURSE NAME: ENGINEERING GRAPHICS FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION: This course introduces engineering graphics, design, and engineering communication. In addition to a theoretical foundation, students will gain practical, project-based experience using industry-standard software. Topics include drafting, descriptive geometry, projections, drawing techniques, dimensioning and annotation, solid modeling, and visualization in engineering applications. EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO: 1. COMMUNICATE ENGINEERING IDEAS THROUGH DRAWINGS. 2. EXPLAIN, CONTRAST, AND COMPARE COMPUTER AIDED DRAWING, MANUFACTURING, AND ENGINEERING. 3. PLAN, CREATE, AND ANALYZE MEANINGFUL ENGINEERING DRAWINGS WITH AN INDUSTRY- STANDARD COMPUTER-AIDED DESIGN (CAD) SYSTEM. 4. ANNOTATE AND DOCUMENT ENGINEERING DRAWINGS. 5. DEMONSTRATE THE PROCESS OF CREATING AND REVISING ENGINEERING DRAWINGS BY CREATING DETAILED ENGINEERING DRAWINGS FROM SPECIFICATIONS. 6. DRAW A FLOWCHART OF THE COMPUTERIZED AND AUTOMATED MANUFACTURING PROCESS. 7. WRITE AND TEST NON-TRIVIAL COMPUTER SCRIPTS THAT PERFORM USEFUL FUNCTIONS IN A CAD SYSTEM. 8. PLAN, CREATE ANALYZE, AND ANNOTATE 2D MULTIVIEW AND ISOMETRIC TECHNICAL DRAWINGS. 9. SOLVE PROBLEMS AND PERFORM CALCULATIONS IN DESCRIPTIVE GEOMETRY. 10. PLAN, CREATE ANALYZE, AND ANNOTATE 3D ENGINEERING DRAWING. 11. DESCRIBE AND DISSEMINATE WRITTEN WORK THROUGH FULLY DOCUMENTED AND CLEAR TECHNICAL REPORTS.

Upload: phamque

Post on 19-May-2018

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 1666 COURSE NAME: ENGINEERING GRAPHICS FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces engineering graphics, design, and engineering communication. In addition to a theoretical foundation, students will gain practical, project-based experience using industry-standard software. Topics include drafting, descriptive geometry, projections, drawing techniques, dimensioning and annotation, solid modeling, and visualization in engineering applications.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. COMMUNICATE ENGINEERING IDEAS THROUGH DRAWINGS. 2. EXPLAIN, CONTRAST, AND COMPARE COMPUTER AIDED DRAWING, MANUFACTURING, AND

ENGINEERING. 3. PLAN, CREATE, AND ANALYZE MEANINGFUL ENGINEERING DRAWINGS WITH AN INDUSTRY-

STANDARD COMPUTER-AIDED DESIGN (CAD) SYSTEM. 4. ANNOTATE AND DOCUMENT ENGINEERING DRAWINGS. 5. DEMONSTRATE THE PROCESS OF CREATING AND REVISING ENGINEERING DRAWINGS BY

CREATING DETAILED ENGINEERING DRAWINGS FROM SPECIFICATIONS. 6. DRAW A FLOWCHART OF THE COMPUTERIZED AND AUTOMATED MANUFACTURING PROCESS. 7. WRITE AND TEST NON-TRIVIAL COMPUTER SCRIPTS THAT PERFORM USEFUL FUNCTIONS IN

A CAD SYSTEM. 8. PLAN, CREATE ANALYZE, AND ANNOTATE 2D MULTIVIEW AND ISOMETRIC TECHNICAL

DRAWINGS. 9. SOLVE PROBLEMS AND PERFORM CALCULATIONS IN DESCRIPTIVE GEOMETRY. 10. PLAN, CREATE ANALYZE, AND ANNOTATE 3D ENGINEERING DRAWING. 11. DESCRIBE AND DISSEMINATE WRITTEN WORK THROUGH FULLY DOCUMENTED AND CLEAR

TECHNICAL REPORTS.

Page 2: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. A GENERAL KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND

METHODOLOGIES IN ENGINEERING GRAPHICS, AND THE ROLE OF CAD IN MODERN MANUFACTURING AND INDUSTRIAL PROCESSES.

2. AN ABILITY TO USE THE MAIN FEATURES OF AN INDUSTRY-STANDARD CAD PACKAGE (AUTOCAD).

3. AN ABILITY TO PLAN, WRITE, AND REVISE TECHNICAL REPORTS (THROUGH LABORATORY WORK).

4. AN ABILITY TO WRITE SIMPLE, YET MEANINGFUL AND USEFUL FUNCTIONS IN A SCRIPTING LANGUAGE, AS DEMONSTRATED THROUGH LABORATORY WORK.

5. AN ABILITY TO PLAN, IMPLEMENT, ANALYZE, AND ANNOTATE 2D AND 3D ENGINEERING DRAWINGS.

6. A BASIC ABILITY TO WORK IN SMALL GROUPS. 7. AN ABILITY TO COMMUNICATE ENGINEERING DESIGN CONCEPTS, BOTH ORALLY

AND IN WRITING. 8. AN ABILITY TO SOLVE MATHEMATICAL PROBLEMS ARISING IN DESCRIPTIVE

GEOMETRY RELEVANT TO ENGINEERING GRAPHICS AND DRAWING.

Page 3: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 1757 COURSE NAME: DIGITAL SYSTEMS FACULTY MEMBER: BOGUSLAW SCHREYER 2012-13 2013-14 CALENDAR COURSE DESCRIPTION: This course will introduce the basics of digital system design. Topics include: number systems and Boolean Algebra; minimization of logic functions; integrated circuits; implementation of logic functions; design of combinational circuits, sequential devices and synchronous sequential circuits; counters, registers, memory devices, interfacing; processor design and microprogramming.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEMONSTRATE AND UNDERSTAND OF THE IMPLICATIONS OF THE BOOLEAN ALGEBRA, DISCRETE MATHEMATICS, AND THE NUMBER SYSTEMS TO THE DIGITAL SYSTEMS.

2. DEMONSTRATE UNDERSTANDING OF THE BASIC LAWS OF ELECTRICITY AND THEIR IMPORTANCE FOR DIGITAL SYSTEMS

3. DEMONSTRATE THE ABILITY OF IMPLEMENTING THE MATHEMATICAL KNOWLEDGE TO A DESIGN OF THE COMBINATIONAL AND SEQUENTIAL SYSTEMS

4. DEMONSTRATE UNDERSTANDING OF THE COMBINATIONAL SYSTEMS AND THE METHODS OF THEIR MINIMIZATION BY APPLYING DE MORGAN’S LAWS AND OTHER BOOLEAN ALGEBRA LAWS

5. DEMONSTRATE THE UNDERSTANDING OF THE SEQUENTIAL SYSTEMS AND BEING ABLE TO MAKE THEIR MATHEMATICAL MODELS

6. DEMONSTRATE THE UNDERSTANDING OF THE BASIC CONCEPTS OF THE COMPUTER HARDWARE SUCH AS MEMORY DEVICES, SHIFT REGISTERS AND MICROPROCESSORS

7. DESIGN A VARIETY OF THE COMBINATIONAL AND SEQUENTIAL COMPUTER HARDWARE

OUTCOMES: SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. A GENERAL KNOWLEDGE AND UNDERSTANDING OF SOME KEY CONCEPTS AND

METHODOLOGIES IN DIGITAL SYSTEMS BY BEING ABLE TO APPLY MATHEMATICAL MODELS OF THE SYSTEMS

2. UNDERSTANDING OF THE BASIC LAWS OF ELECTRICITY AND ITS APPLICATION TO THE DIGITAL SYSTEMS BY APPLYING THE KIRCHHOFF LAWS

Page 4: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

3. INITIAL ABILITY TO READ, UNDERSTAND, AND ANALYZE INTRODUCTORY TEXTBOOKS IN DIGITAL SYSTEMS AND MACHINE STRUCTURES

4. INITIAL ABILITY TO THINK INDEPENDENTLY 5. INITIAL ABILITY TO COMMUNICATE DIGITAL SYSTEMS CONCEPTS, APPLICATIONS AND DEIGN

AS WELL AS THEIR LIMITATIONS IN COMPUTER TECHNOLOGY 6. UNDERSTAND THE BASICS OF MACHINE STRUCTURES IN THE AREA OF THE SPECIFICATION,

DESIGN, IMPLEMENTATION AND USE AS STATED IN THE ACM/IEEE COMPUTING CURRICULA RECOMMENDATIONS.

7. ABILITY TO APPLY THE METHODS LEARNED IN THE COURSE TO DESIGN OF THE COUNTERS AND OTHER SEQUENTIAL SYSTEMS

Page 5: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

1

COURSE EXPECTATIONS

COURSE CODE: COSC 2007 COURSE NAME: DATA STRUCTURES II FACULTY MEMBER: RENATA SMOLIKOVA-WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces data structures and their algorithms. Topics include: self-adjusting lists, binomial heaps, binary search trees, balanced trees, B-trees, and recursive programming.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEMONSTRATE AN UNDERSTANDING OF ADVANCED TREES AND THEIR APPLICATIONS BY DESCRIBING THE MAIN CHARACTERISTICS OF RED-BLACK, AVL, N-ARY, AND B+ TREES.

2. DISCUSS USEFUL APPLICATIONS OF ADVANCED TREE DATA STRUCTURES. 3. DISCUSS TREE-BALANCING STRATEGIES AND THEIR IMPORTANCE. 4. DEMONSTRATE AN UNDERSTANDING OF GRAPHS AND THEIR APPLICATIONS BY DESCRIBING

GRAPH CHARACTERISTICS AND COMPONENTS (EDGES, VERTICES, ETC.). 5. DESCRIBE SOME OF THE MAIN THEORETICAL RESULTS OF GRAPH THEORY (I.E. SHORTEST

PATH, ETC.). 6. DISCUSS USEFUL APPLICATIONS OF GRAPH DATA STRUCTURES. 7. DEMONSTRATE AN UNDERSTANDING OF HASH TABLES BY COMPLETELY WORKING A CODING

EXAMPLE. 8. DESCRIBE AND FULLY DOCUMENT RECURSIVE ALGORITHMS. 9. CHOOSE AN APPROPRIATE DATA STRUCTURE FOR A GIVEN APPLICATION, AND DISCUSS WHY

THAT CHOICE WAS MADE. 10. DISCUSS THE COMPUTATIONAL EFFICIENCY OF INSERTING AND RETRIEVING DATA FROM

VARIOUS DATA STRUCTURES. 11. ANALYZE ALGORITHMS AND COMPUTE EXPRESSIONS FOR THEIR COMPUTATIONAL

COMPLEXITY USING STANDARD TERMINOLOGY (E.G. “BIG-OH” NOTATION). 12. DESCRIBE THE CONCEPT OF SELF-ADJUSTING DATA STRUCTURES AND THEIR APPLICATIONS

IN FUTURE SOFTWARE DEVELOPMENT.

Page 6: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

2

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. AN UNDERSTANDING OF ABSTRACT DATA TYPES (TREES, GRAPHS, HASH STRUCTURES, ADAPTIVE ALGORITHMS).

2. AN ABILITY TO DISCERN AND TO SELECT VARIOUS DATA STRUCTURES TO SOLVE SPECIFIC PROBLEMS.

3. AN ABILITY TO USE DATA STRUCTURES PROPERLY. 4. AN ABILITY TO IMPLEMENT AND USE ADVANCED SEARCHING AND SORTING

TECHNIQUES WITH A STANDARD HIGH-LEVEL PROGRAMMING LANGUAGE. 5. AN ABILITY TO WRITE PROGRAMS EMPLOYING SEVERAL OF THE DATA STRUCTURES

COVERED. 6. THE ABILITY TO ANALYZE ALGORITHMS FOR COMPUTATIONAL COMPLEXITY. 7. A GROWTH IN THE ABILITY TO THINK INDEPENDENTLY. 8. AN ABILITY TO CRITICALLY READ AND TO ANALYZE BASIC LITERATURE DEVOTED TO

ALGORITHM ANALYSIS. 9. THE ABILITY TO WRITE RECURSIVE ALGORITHMS IN A HIGH-LEVEL PROGRAMMING

LANGUAGE. 10. AN UNDERSTANDING OF THE FIELD OF ANALYSIS OF ALGORITHMS, AND WHY IT IS

IMPORTANT IN BOTH THEORETICAL AND APPLIED COMPUTER SCIENCE.

Page 7: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 2106 COURSE NAME: MACHINE STRUCTURES I FACULTY MEMBER: BOGUSLAW SCHREYER 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces basic components and computer structured organization. Topics include: combinational circuits, sequential circuits, memories, microprocessors, interfacing; microprogramming, microarchitecture, machine language, addressing, instructions, computer arithmetic; introduction to operating systems, assembly language programming and assembly process.

EXPECTATIONS:

BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF THE COMPUTER ARITHMETIC INCLUDING THE REPRESENTATION AND OPERATIONS ON INTEGERS, SIGNED NUMBERS AND FLOATING POINT

2. DEMONSTRATE UNDERSTANDING OF BOOLEAN ALGEBRA AND DIGITAL LOGIC BY BEING ABLE TO APPLY THEM TO ANALYSIS OF THE COMPUTER HARDWARE

3. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF COMPUTER ARCHITECTURE, SPECIFICALLY THE INSTRUCTION FORMATS, INSTRUCTION TYPES, ADDRESSING, PIPELINING , SEVERAL ISA EXAMPLES

4. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF MACHINE LANGUAGE AND ASSEMBLY LANGUAGEBY WRITING SIMPLE PROGRAMS IN BOTH LANGUAGES

5. DEMONSTRATE UNDERSTANDING OF THE COMPILERS, ASSEMBLERS AND OPERATING SYSTEMS BY BEING ABLE TO DISTINGUISH AMONG VARIETY OF THOSE SOFTWARES

6. UNDERSTAND THE INTERRUPTS, TRAPS, RESOURCE PROTECTION

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. SOME UNDERSTANDING OF HISTORICAL DEVELOPMENT OF COMPUTER SCIENCE AND ITS PRESENT STRUCTURE

2. BROAD UNDERSTANDING OF MAIN TOPICS IN COMPUTER SCIENCE, INCLUDING COMPUTER HARDWARE, SUCH AS MEMORIES, INPUT/OUTPUT , STORAGE SYSTEMS, MICROPROCESSORS

3. BROAD UNDERSTANDING OF MAIN TOPICS IN SOFTWARE SUCH AS MACHINE LANGUAGE, ASSEMBLY LANGUAGE, ASSEMBLERS AND COMPILERS

4. UNDERSTANDING OF STANDARD PROBLEM-SOLVING IDEAS AND TECHNIQUES IN COMPUTER SCIENCE USING THE ASSEMBLY LANGUAGE

5. INITIAL ABILITY TO GATHER, COMPREHEND AND ANALYZE NEW COMPUTER SCIENCE KNOWLEDGE FROM VARIOUS SOURCES

Page 8: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

6. ABILITY TO UNDERSTAND AND WRITE SIMPLE PROGRAMS IN ASSEMBLY LANGUAGE 7. ABILITY TO COMMUNICATE COMPUTER SCIENCE IDEAS RELATED TO COMPUTER HARDWARE

BOTH ORALLY AND IN WRITING

Page 9: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 2107 COURSE NAME: MACHINE STRUCTURES II FACULTY MEMBER: BOGUSLAW SCHREYER 2012-13 CALENDAR COURSE DESCRIPTION:

This course is the continuation of COSC2106. Topics include: microprogrammed control, assembly language programming techniques, macroasemblers, conditional assembly, and practical application of assembly language programming.

EXPECTATIONS:

BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEMONSTRATE THEORETICAL AND PRACTICAL KNOWLEDGE IN MACHINE ARCHITECTURE AND INTERFACING BY BEING ABLE TO SET UP THE HARDWARE AND SOFTWARE COMPONENTS FOR SIMPLE INTERFACE SYSTEMS

2. DEMONSTRATE DEEPER UNDERSTANDING THE ASSEMBLY LANGUAGE PROGRAMMING THROUGH ITS APPLICATIONS TO THE ROBOTICS AND OTHER REAL TIME PROCESSES BY BEING ABLE TO WRITE THE SIMPLE PROGRAMS

3. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF ADDRESS DECODING 4. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF DATA INPUT AND OUTPUT

HARDWARE AND ASSEMBLY LANGUAGE INSTRUCTIONS 5. DEMONSTRATE UNDERSTANDING OF THE UNIVERSAL RECEIVERS-TRANSMITTERS,

INCLUDING THE MUART 6. UNDERSTAND AND APPLY THE ASSEMBLY LANGUAGE PROGRAMS FOR THE UNIVERSAL

RECEIVERS-TRANSMITTERS. 7. UNDERSTAND AND BE ABLE TO MAKE ASSEMBLY LANGUAGE PROGRAMS FOR THE SERIAL

DATA COMMUNICATION, A/D CONVERTERS AND MICROPROCESSOR/DAC INTERFACING 8. UNDERSTAND AND ABLE TO CREATE THE ASSEMBLY LANGUAGE PROGRAMS FOR THE

MICROPROCESSOR CONTROL OF THE REAL TIME PROCESSES IN APPLICATION TO ROBOTICS

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. GOOD UNDERSTANDING OF MICROPROCESSOR INTERFACING AND APPLICATIONS 2. INITIAL ABILITY TO APPLY THE I/O HARDWARE TO REAL-LIFE PROBLEMS AND TO CREATE

SOLUTIONS FOR SUCH PROBLEMS, IN PARTICULAR IN THE FORM OF ASSEMBLY LANGUAGE CODES

3. ABILITY TO CREATE ALGORITHMS AND ASSEMBLY LANGUAGE PROGRAMMING CODE

Page 10: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

4. UNDERSTANDING OF STANDARD PROBLEM-SOLVING IDEAS AND TECHNIQUES IN COMPUTERS SCIENCE, SPECIFICALLY IN THE AREA OF REAL TIME CONTROL APPLIED TO ROBOTICS

5. INITIAL ABILITY TO GATHER, COMPREHEND, AND ANALYZE NEW KNOWLEDGE ON ASSEMBLY LANGUAGE REAL TIME PROGRAMMING, FROM VARIOUS SOURCES

6. ABILITY TO COMMUNICATE COMPUTER SCIENCE IDEAS RELATED TO COMPUTER I/O HARDWARE , AND SOME REAL TIME CONTROL BOTH ORALLY AND IN WRITING

7. ABILITY TO SOLVE THE REAL TIME CONTROL WITH PROGRAMMABLE DEVICES, LIKE MUART, AND RELATED TO SERIAL COMMUNICATION, HANDSHAKING AND REAL-TIME CONTROL APPLICATIONS.

8. UNDERSTAND THE BASICS OF MACHINE STRUCTURES IN THE AREA OF THE SPECIFICATION, DESIGN, IMPLEMENTATION AND USE AS STATED IN THE ACM/IEEE COMPUTING CURRICULA RECOMMENDATIONS

Page 11: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 2116 COURSE NAME: ARTIFICIAL NEURAL NETWORKS FACULTY MEMBER: BOGUSLAW SCHREYER 2012-13 CALENDAR COURSE DESCRIPTION:

This course will introduce principles of Artificial Neural Networks (ANN) computing and its applications. The key models of ANN will be presented and analyzed. Multilayer feedforward networks and Hopfield networks, the principles of Boltzman machines, supervised and unsupervised learning will be presented and discussed. Several applications of ANN will be analyzed, among them applications to mathematical logic, pattern and image recognition and system control. Students will create and analyze their own models of ANN.

EXPECTATIONS:

BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. GOOD UNDERSTANDING OF THE CONCEPT OF MOST OF EXISTING ANNS, INCLUDING SUPERVISED AND NON-SUPERVISED ANNS

2. DEMONSTRATE DEEPER UNDERSTANDING OF THE LINEAR SEPARABILITY 3. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF HEBBIAN LEARNING 4. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF AN ARTIFICIAL NEURON,

PERCEPTRON AND ADALINE 5. UNDERSTAND AND APPLY THE COMPETITIVE LEARNING USING THE KOHONNEN MAPS 6. UNDERSTAND AND BE ABLE TO MAKE THE COMPUTER MODELS OF SEVERAL TYPES OF THE

ANN WITH SUPERVISED LEARNING 7. UNDERSTAND AND BE ABLE TO MAKE THE COMPUTER MODELS OF SEVERAL TYPES OF THE

ANN WITH UNSUPERVISED LEARNING 8. UNDERSTAND AND BE ABLE TO MAKE THE CODES FOR THE APPLIED PATTERN AND IMAGE

RECOGNITION ANNS 9. UNDERSTAND AND ABLE TO CREATE THE CODES FOR THE VARIETY OF THE ANNS,

INCLUDING THE FEEDFORWARD, BACKPROPAGATION AND COUNTER PROPAGATION ANNS

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. GOOD UNDERSTANDING AND ABILITY TO CREATE THE COMPUTER MODELS OF THE ANN, INCLUDING PATTERN CLASSIFICATORS AND ASSOCIATORS, COMPETITIVE NETS, BACKPROPAGATION NETS, AND MANY OTHER

2. ABILITY TO ANALIZE THE REAL LIFE PROBLEMS AND APPLY THE ANN TECHNIQUES TO SOLVE THOSE PROBLEMS

Page 12: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

3. INITIAL ABILITY TO GATHER, COMPREHEND, AND ANALYZE NEW COMPUTER SCIENCE KNOWLEDGE ON ANN FROM VARIOUS SOURCES

4. ABILITY TO COMMUNICATE COMPUTER SCIENCE IDEAS RELATED TO THE ANNS 5. UNDERSTAND THE BASICS OF ANNS IN THE AREA OF THE SPECIFICATION, DESIGN,

IMPLEMENTATION AND USE AS STATED IN THE ACM/IEEE COMPUTING CURRICULA RECOMMENDATIONS

Page 13: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

1

COURSE EXPECTATIONS

COURSE CODE: COSC 2206 COURSE NAME: MATHEMATICAL COMPUTATION FACULTY MEMBER: RENATA SMOLIKOVA-WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course provides an introduction to MATLAB, MAPLE or other math computation software. Topics include: problem-solving techniques in several domains of mathematics – calculus, algebra, differential equations, and statistics; symbolic mathematics problem solving; applications to artificial intelligence and image and voice processing; analysis and simulation of dynamic linear and non-linear systems; and several other practical applications. This course may be credited towards Mathematics.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEMONSTRATE A KNOWLEDGE OF ARRAYS AND ARRAY OPERATIONS, MULTIDIMENSIONAL ARRAYS, AND CELL ARRAYS AND STRUCTURES.

2. WORK WITH CHARACTER STRINGS, CONTROL FLOW, AND RELATIONAL AND LOGICAL OPERATIONS IN MATHEMATICAL COMPUTATION.

3. DEMONSTRATE AN UNDERSTANDING OF MATHEMATICAL SOFTWARE, HIGH-LEVEL LANGUAGES, AND SCRIPTING LANGUAGES.

4. APPLY KNOWLEDGE OF MATRIX ALGEBRA AND MATRICES. 5. APPLY TWO AND THREE-DIMENSIONAL GRAPHICS AS IT IS USED IN MATHEMATICAL

COMPUTATION. 6. DEMONSTRATE AN UNDERSTANDING OF BASIC IMAGING TECHNIQUES BY MODIFYING IMAGE

DATA AND MANIPULATING MATRICES. 7. DISCUSS APPLICATIONS OF SCIENTIFIC ALGORITHMS AND MATHEMATICAL COMPUTATION.

Page 14: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

2

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. A FUNDAMENTAL KNOWLEDGE AND PRACTICAL ABILITIES IN MATHEMATICAL FRAMEWORKS, ESPECIALLY MATLAB AND MAPLE, AND THE ABILITY TO UTILIZE THESE TOOLS IN SCIENTIFIC COMPUTATIONS AND VISUALIZATION.

2. A GENERAL KNOWLEDGE AND UNDERSTANDING OF PROBLEM SOLVING USING MATHEMATICAL TOOLS (MATLAB AND MAPLE).

3. AN ABILITY TO PROGRAM SCRIPTS AND FUNCTIONS USING MATHEMATICAL DEVELOPMENT ENVIRONMENT.

4. AN ABILITY TO CREATE 2D AND 3D MATHEMATICAL PLOTS AND TO UNDERSTAND THEIR MEANINGS.

5. A KNOWLEDGE OF DATA STRUCTURES IN MATHEMATICAL ENVIRONMENTS, INCLUDING, STRINGS, CONSTANTS, VECTORS, MATRICES, AND MULTIDIMENSIONAL DATA.

6. THE ABILITY TO IMPLEMENT SCIENTIFIC ALGORITHMS USING MATLAB.

Page 15: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 2406 COURSE NAME: INTRODUCTION TO GAME DESIGN AND DEVELOPMENT FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces the fundamental issues in computer game design, development, interfaces, and programming. Important aspects of game design, including game balance and level design, storytelling and narrative, basic game architecture, graphical representation of scenes, user interaction, game hardware and consoles, and game development toolkits will be presented.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEFINE INDUSTRY-SPECIFIC TERMS USED IN THE COMPUTER GAME INDUSTRY. 2. DOCUMENT THE GAME DEVELOPMENT PROCESS FROM IDEATION TO DELIVERABLE. 3. DRAW A FLOWCHART OF THE ITERATIVE PROCESSES INVOLVED IN GAME DESIGN AND

DEVELOPMENT. 4. COMPARE, ANALYZE, COMPARE, AND CONTRAST GOOD AND POOR EXAMPLES OF GAME

WORLDS IN REAL GAMES. 5. IDENTIFY GOOD AND POOR EXAMPLES OF GAME USER INTERFACES, AND EXPLAIN WHAT

MAKES THEM GOOD OR BAD. 6. EXPLAIN HOW “SERIOUS GAMES” CAN BE USED FOR TRAINING, SIMULATION, HEALTH, AND

REHABILITATION BY DISCUSSING SPECIFIC SERIOUS GAMES, THEIR BENEFITS, AND THEIR DESIGNS.

7. COMPARE AND CONTRAST DIFFERENT COMPUTER GAME HARDWARE PLATFORMS, DELINEATING THEIR ADVANTAGES AND SHORTCOMINGS.

8. OUTLINE THE STRUCTURE OF A REAL-TIME PROGRAM. 9. DESCRIBE RENDERING HARDWARE: AUDIO, VISUAL, AND TACTILE, AND EXPLAIN THEIR

SAMPLING FREQUENCIES AND BASIC INTERCOMMUNICATIONS WITH COMPUTER HARDWARE. 10. DESCRIBING THE MAIN FEATURES AND FUNCTIONS OF A COMMERCIAL GAME ENGINE. 11. SELECT, STUDY, PRESENT, AND CRITIQUE A CURRENT TECHNICAL OR SCIENTIFIC PAPER IN

THE FIELD. 12. DEVELOP, WRITE, AND TEST A BASIC GAME COMPONENT IN A HIGH-LEVEL OR SCRIPTING

PROGRAMMING LANGUAGE.

Page 16: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. A GENERAL KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND

METHODOLOGIES IN GAME DESIGN, DEVELOPMENT, AND TECHNOLOGY. 2. AN ABILITY TO PROGRAM SIMPLE, BUT MEANINGFUL SHORT PROGRAMS IN A

SCRIPTING LANGUAGE USED IN THE GAME INDUSTRY. 3. THE ABILITY TO DESIGN A RUDIMENTARY GAME. 4. THE ABILITY TO ANALYZE AND TO IDENTIFY THE COMPONENTS OF GAME ENGINES. 5. A FAMILIARITY WITH AND AN ABILITY TO PLAN, WRITE, AND ANALYZE, TEST, AND

REVISE SIMPLE PROGRAMS IN C, C++, C#, OR JAVA (THROUGH LABORATORY WORK). 6. AN ABILITY TO PLAN, WRITE, ANALYZE, AND REVISE TECHNICAL REPORTS AND

SCIENTIFIC DOCUMENTATION (THROUGH LABORATORY WORK). 7. AN ABILITY TO FIND, ACCESS, AND STUDY SCIENTIFIC AND TECHNICAL LITERATURE

RELATED TO GAME TECHNOLOGY. 8. AN UNDERSTANDING OF THE BENEFITS AND CHALLENGES IN SERIOUS GAMES. 9. A BASIC ABILITY TO WORK IN SMALL GROUPS. 10. AN ABILITY TO COMMUNICATE THE ENGINEERING ASPECTS OF GAME TECHNOLOGY. 11. AN ABILITY TO SEE FLAWS, ADVANTAGES, AND BENEFITS IN HUMAN COMPUTER

INTERACTION FOR GAMES.

Page 17: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 2667 COURSE NAME: OPERATING SYSTEMS I FACULTY MEMBER: BOGUSLAW SCHREYER 2012-13……2013-14 CALENDAR COURSE DESCRIPTION:

Operating systems are an essential part of any computer system. This course will provide students with the basic concept of batch, time-sharing, multiprogramming and other operating systems. The students will examine the concepts of operating systems’ structure, processes, threads, CPU scheduling, process synchronization, and storage management. Students will be exposed to the Unix-like and other operating system environments.

EXPECTATIONS:

BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEMONSTRATE THEORETICAL KNOWLEDGE AND UNDERSTANDING OF THE BASIC TYPES OF OPERATING SYSTEMS, ITS COMPONENTS AND CONCEPTS, INCLUDING THEIR ORGANIZATION, OPERATIONS, PROCESS AND MEMORY MANAGEMENT, PROTECTION AND SECURITY

2. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF THE BATCH OS VS OTHER OSS 3. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF TIMESHARING AND

MULTIPROGRAMMING 4. DEMONSTRATE A PRACTICAL ABILITY OF SOLVING BASIC PROBLEMS IN THE DOMAIN OF

OPERATING SYSTEMS, INCLUDING SCHEDULING AND SYNCHRONIZATION 5. DEMONSTRATE DEEPER UNDERSTANDING OF THE OS AS EVENT DRIVEN AND IMPORTANCE

OF THE INTERRUPTS 6. DEMONSTRATE UNDERSTANDING OF THE THREADS, MULTITHREADING AND PROCESSES 7. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF DEADLOCKS AND ITS MODELING 8. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF MEMORY MANAGEMENT

INCLUDING SWAPPING, PAGING AND SEGMENTATION 9. DEMONSTRATE UNDERSTANDING OF THE CONCEPT OF LINUX OS, MAC OS, AND

WINDOWS OS ACQUIRED ON THE LAB SESSIONS.

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. GOOD UNDERSTANDING OF THE CONCEPT OF THE MOST IMPORTANT OPERATING SYSTEMS, INCLUDING UNIX, WINDOWS, MAC’ OS AND LINUX

2. GOOD UNDERSTANDING OF THE BASIC CONCEPTS OF THE OS, LIKE PROCESSES, THREADS, CPU SCHEDULING, PROCESS SYNCHRONIZATION, DEADLOCKS, MEMORY MANAGEMENT, FILE SYSTEM, I/O SYSTEMS

Page 18: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

3. PRACTICAL KNOWLEDGE OF THE SOLARIS SYSTEM, WINDOWS 7 AND UBUNTU, BASED ON THE LABS

4. ABILITY TO CREATE MODELS OF THE PROCESS SYNCHRONIZATION AND AND SCHEDULING 5. INITIAL ABILITY TO GATHER, COMPREHEND, AND ANALYZE NEW COMPUTER SCIENCE

KNOWLEDGE IN THE AREA OF OS FROM VARIOUS SOURCES 6. ABILITY TO COMMUNICATE COMPUTER SCIENCE IDEAS RELATED TO THE OS 7. UNDERSTAND THE BASICS OF ANNS IN THE AREA OF THE SPECIFICATION, DESIGN,

IMPLEMENTATION AND USE AS STATED IN THE ACM/IEEE COMPUTING CURRICULA RECOMMENDATIONS

Page 19: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

1

COURSE EXPECTATIONS

COURSE CODE: COSC 3006 COURSE NAME: NUMERICAL METHODS I FACULTY MEMBER: RENATA SMOLIKOVA-WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course provides the mathematical background for numerical methods as well as a variety of computer applications in the solution of practical problems. Topics covered include Taylor polynomials, computer representation of numbers, error computation, root-finding, interpolation and approximation methods, numerical differentiation and integration; the solution of systems of linear equations, and the numerical solution of differential equations. This course may be credited towards Mathematics.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEMONSTRATE KNOWLEDGE OF POLYNOMIAL APPROXIMATION OF FUNCTIONS (E.G. MCLAURIN SERIES, TAYLOR SERIES, ETC.).

2. APPLY KNOWLEDGE OF BINARY NUMBERS AND FLOATING POINT FORMATS. 3. EXPLAIN THE IMPORTANCE OF ERROR IN NUMERICAL COMPUTATIONS, AND WHY ERROR

MUST BE FACTORED INTO ANY SOLUTION. 4. DEMONSTRATE AN UNDERSTANDING OF SOLVING EQUATIONS IN ITS VARIOUS FORMS BY

USING DIFFERENT METHODS. 5. DEMONSTRATE A BASIC UNDERSTANDING OF NUMERICAL ALGEBRA, AND ITS RELEVANT

ALGORITHMS. 6. DEMONSTRATE A BASIC UNDERSTANDING OF NUMERICAL APPROACHES IN CALCULUS. 7. DEMONSTRATE AN UNDERSTANDING OF THE FITTING OF DATA, INTERPOLATION AND

LEAST SQUARED METHODS AND IMPLEMENTING THESE METHODS. 8. DEMONSTRATE AN UNDERSTANDING OF NUMERICAL DIFFERENTIATION AND INTEGRATION

BY DIFFERENTIATING AND INTEGRATING FUNCTIONS THAT ARE HARD-TO-SOLVE ANALYTICALLY, AND FUNCTIONS THAT HAVE NO ANALYTIC SOLUTION.

9. DEMONSTRATE AN UNDERSTANDING OF NUMERICAL METHODS BY IMPLEMENTING ALGORITHMS FOR A VARIETY OF ENGINEERING, SCIENTIFIC, MATHEMATICAL, AND MULTIDISCIPLINARY APPLICATIONS.

10. IMPLEMENT NUMERICAL ALGORITHMS IN A HIGH-LEVEL COMPUTER PROGRAMMING LANGUAGE, E.G. MATLAB.

Page 20: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

2

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. A GENERAL KNOWLEDGE AND UNDERSTANDING OF THE THEORETICAL AND PRACTICAL ASPECTS OF THE USE OF NUMERICAL METHODS.

2. AN ABILITY TO APPLY KNOWLEDGE OF CALCULUS AND MATRIX ALGEBRA TO CONSTRUCT AND EXPLORE ALGORITHMS FOR SOLVING SCIENCE AND ENGINEERING PROBLEMS.

3. THE ADVANTAGES AND DISADVANTAGES OF USING NUMERICAL METHODS. 4. AN ABILITY TO ACCOUNT FOR ERROR IN NUMERICAL COMPUTATIONS. 5. AN ABILITY TO IMPLEMENT BASIC NUMERICAL ALGORITHMS IN A HIGH-LEVEL

COMPUTER LANGUAGE AND IN MATHEMATICAL SOFTWARE FRAMEWORKS, E.G. MATLAB AND MAPLE.

6. AN ABILITY TO READ, UNDERSTAND, AND ANALYZE SCIENTIFIC AND TECHNICAL LITERATURE RELATED TO CONCEPTS IN NUMERICAL METHODS.

7. AN ABILITY TO WORK IN SMALL GROUPS AND TO PRESENT WORK BOTH ORALLY AND IN WRITING.

Page 21: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 3007 COURSE NAME: ARTIFICIAL INTELLIGENCE FACULTY MEMBER: BOGUSLAW SCHREYER 2013-14 CALENDAR COURSE DESCRIPTION: This course introduces the history and applications of artificial intelligence. Topics include: state spaces and search strategies, machine learning. genetic algorithms, artificial neural networks; capabilities and limitations of artificial intelligence; applications in expert systems, natural languages, robotics, speech, and vision; interacting with an existing expert system; construction of a small expert system; using artificial neural networks to perform image recognition and system control.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. A BROAD AND DETAILED KNOWLEDGE AND CRITICAL UNDERSTANDING OF THE KEY CONCEPTS OF ARTIFICIAL INTELLIGENCE SUCH AS INTELLIGENT AGENTS, KNOWLEDGE AND REASONING, LEARNING, COMMUNICATING, PERCEIVING AND ACTING

2. DEMONSTRATE THE UNDERSTANDING AND ABILITY TO APPLY THE CONCEPTS OF THE STATE SPACES AND SEARCH STRATEGIES TO THE REAL LIFE PROBLEMS

3. DEMONSTRATE UNDERSTANDING AND ABILITY TO APPLY THE MACHINE LEARNING CONCEPTS AND GENETIC ALGORITHMS

4. DEMONSTRATE THE UNDERSTANDING AND ABILITY TO APPLY OF THE EXPERT SYSTEMS 5. DEMONSTRATE THE UNDERSTANDING AND ABILITY TO APPLY THE AI METHODOLOGIES TO

ROBOTICS, SPEECH AND VISION 6. DESIGN A VARIETY OF THE AI METHODOLOGIES TO IMAGE AND PATTERN RECOGNITION

AND SYSTEM CONTROL

OUTCOMES: SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. ABILITY TO READ AND ANALYZE THE AI TEXTS 2. ABILITY TO ANALYZE AND APPLY THE AI KNOWLEDGE TO REAL-LIFE PROBLEMS AND

CREATE SOLUTIONS TO SUCH PROBLEMS 3. DEVELOP CRITICAL THINKING AND ADVANCED ANALYTICAL, PROBLEM-SOLVING SKILLS 4. ABILITY TO GATHER, COMPREHEND, AND ANALYZE NEW AI KNOWLEDGE FROM VARIOUS

SOURCES AND APPLY IT IN VARIOUS CONTEXTS 5. ABILITY TO COMMUNICATE AI IDEAS, ALGORITHMS, QUESTIONS, SOLUTIONS, BOTH ORALLY

AND IN WRITING

Page 22: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

6. ABILITY TO WORK IN TEAMS IN ORDER TO SOLVE THE COMPLEX AI PROBLEMS 7. A BROAD UNDERSTANDING OF THE AI IN THE AREA OF THE SPECIFICATION, DESIGN,

IMPLEMENTATION AND USE AS STATED IN THE ACM/IEEE COMPUTING CURRICULA RECOMMENDATIONS.

Page 23: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 3017 COURSE NAME: INTRODUCTION TO ROBOTICS FACULTY MEMBER: BOGUSLAW SCHREYER 2013-14 CALENDAR COURSE DESCRIPTION: This course introduces the basic concepts and components of robotics. The hardware of robot manipulators and mobile robot and the resulting theoretical background will be discussed. The concept of environmental feedback and sensors necessary for the robots, including intelligent ones, will also be discussed. Some mobile robotics concepts will be introduced, including: path planning, localization, obstruction avoidance and mapping, and SLAM problems. The elements of robotic vision will also be introduced.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. A BROAD AND DETAILED KNOWLEDGE OF THE KEY CONCEPTS OF ROBOTICS, INCLUDING I/O HARDWARE, STABILITY, SENSORS, END EFFECTORS, VISUAL SENSING, PLANNING, NAVIGATION AND SLAM PROBLEMS

2. DEMONSTRATE THE UNDERSTANDING AND ABILITY TO APPLY THE CONCEPTS ENVIRONMENTAL FEEDBACK AND SENSORS AND ABLE TO APPLY THE ASSEMBLY LANGUAGE PROGRAMS TO CONTROL THOSE SENSORS

3. DEMONSTRATE UNDERSTANDING AND ABILITY TO APPLY THE AI TO ROBOTICS SOLUTIONS INCLUDING ANN METHODS FOR IMAGE AND PATTERN RECOGNITION

4. DEMONSTRATE THE UNDERSTANDING AND ABILITY TO APPLY OF THE CONCEPTS OF PATH PLANNING, LOCALIZATION, OBSTRUCTION AVOIDANCE AND MAPPING INCLUDING THE PROBLEMS OF GLOBAL AND LOCAL PLANNING, VORONOI DIAGRAMS, MONTE-CARLO METHODS,

5. DEMONSTRATE THE UNDERSTANDING AND ABILITY TO APPLY THE ROBOTICS METHODOLOGIES TO SLAM PROBLEMS SUCH AS MAP GENERATION, VESCO AND GRIDSLAM AND FASTSLAM AND GMAPPING UTILITIES,

6. DEMONSTRATE THE UNDERSTANDING AND ABILITY TO DESIGN THE ROBOTIC VISION SYSTEMS AND METHODS SUCH AS FEATURE TRACKING METHODS, ANN METHODS, THE OPTICAL FLOW UTILITIES, FEATURE TRACKING, AND EDGE DETECTION.

OUTCOMES: SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

Page 24: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

1. ABILITY TO READ, UNDERSTAND , AND ANALYZE THE ROBOTICS TEXTS INCLUDING THE NOVEL ROBOT APPLICATIONS IN MEDICINE, SPACE SCIENCES, EDUCATION AND MANY OTHER

2. ABILITY TO SET THE NETWORK COMMUNICATION WITH ROBOTS AS WELL AS ABILITY TO CREATE THE ROBOT CONTROL PROGRAMS

3. GOOD UNDERSTANDING OF ROBOT CONTROL ARCHITECTURE (DELIBERATIVE, REACTIVE, HYBRID, BEHAVIOUR-BASED) AS WELL AS THE ASPECTS OF TIME SCALE, MODULARITY AND REPRESENTATION

4. GOOD UNDERSTANDING OF EMERGENT BEHAVIOURS, NAVIGATION, ROBOT LEARNING, AI AND GROUP ROBOTICS

5. DEVELOP CRITICAL THINKING AND ADVANCED ANALYTICAL, PROBLEM-SOLVING SKILLS ALLOWING TO CREATE THE STRATEGIC CONCEPTS FOR VARIETY OF ROBOT APPLICATIONS

6. ABILITY TO GATHER, COMPREHEND, AND ANALYZE NEW ROBOTICS KNOWLEDGE FROM VARIOUS SOURCES AND APPLY IT IN VARIOUS CONTEXTS

7. ABILITY TO COMMUNICATE ROBOTICS IDEAS, QUESTIONS, SOLUTIONS, BOTH ORALLY AND IN WRITING

8. A BROAD UNDERSTANDING OF THE ROBOTICS IN THE AREA OF THE SPECIFICATION, DESIGN, IMPLEMENTATION AND USE AS STATED IN THE ACM/IEEE COMPUTING CURRICULA RECOMMENDATIONS.

Page 25: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

1

COURSE EXPECTATIONS

COURSE CODE: COSC 3206 COURSE NAME: THEORY OF COMPUTATION FACULTY MEMBER: RENATA SMOLIKOVA-WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

The course introduces the theory of computability, automata theory and formal languages. The topics include automata and regular, context-free and context-sensitive languages, general theory of computability including Turing machines, recursive functions, decidability and undecidability. Approaches to formal program semantics are presented and analyzed, leading to an introduction

to formal program verification. EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEMONSTRATE AN UNDERSTANDING OF WHAT COMPUTATION ENTAILS. 2. DISCUSS THE PRACTICAL NEED FOR THEORY OF COMPUTING. 3. DEMONSTRATE AN UNDERSTANDING OF THE BASIC CONCEPTS BY ANALYSING AND

DESIGNING FINITE AUTOMATA, PUSH-DOWN AUTOMATA, AND TURING MACHINES. 4. SPECIFY FORMAL LANGUAGES AND GRAMMARS BY DRAWING A CHART OF THE GRAMMARS. 5. DEMONSTRATE AN UNDERSTANDING OF COMPUTABILITY, DECIDABILITY, UNDECIDABILITY,

AND COMPLEXITY THROUGH PROBLEM SOLVING. 6. DEMONSTRATE AN UNDERSTANDING OF CHURCH-TURING THESIS BY DISCUSSING ITS

IMPORTANCE. 7. DEFINE CLASSES P, NP, THE NOTIONS OF POLYNOMIAL TIME REDUCTION, NP-HARDNESS,

AND NP-COMPLETENESS AND GIVE EXAMPLES OF ALGORITHMS THAT FALL INTO EACH CLASS.

8. DISCUSS APPLICATIONS OF THE THEORY OF COMPUTATION.

Page 26: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

2

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. A GENERAL KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND METHODOLOGIES IN THEORY OF COMPUTATION.

2. AN ABILITY TO USE BASIC KNOWLEDGE OF PROOF TECHNIQUES. 3. A GENERAL UNDERSTANDING OF THEORY OF COMPUTATION AND ITS CONNECTION

WITH OTHER SCIENCES, AS WELL AS ITS APPLICATIONS. 4. A GENERAL UNDERSTANDING OF THE RELATIONS BETWEEN AUTOMATA,

LANGUAGES AND GRAMMARS. 5. AN ABILITY TO IMPLEMENT CONCEPTS IN THEORY OF COMPUTATION USING A

VARIETY OF PROGRAMMING LANGUAGES AND PARADIGMS. 6. AN ABILITY TO READ, UNDERSTAND, AND ANALYZE SCIENTIFIC AND TECHNICAL

LITERATURE RELATED TO CONCEPTS COVERED IN THEORY OF COMPUTATION. 7. A KNOWLEDGE OF CURRENT ISSUES IN COMPUTATIONAL COMPLEXITY AS WELL AS

ITS THEORETICAL AND PRACTICAL IMPORTANCE.

Page 27: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 3207 COURSE NAME: COMPUTER GRAPHICS FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces the principles and methods of computer graphics and their applications. Topics include: PC video cards and storage; display devices; representing objects; raster algorithms for lines, circles and region filling; 2-D and 3-D graphics software; object transformations, fractal construction and animation software.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DRAW A FLOWCHART OF THE GRAPHICS PIPELINE. 2. OUTLINE (E.G. DRAW A FLOWCHART) THE STEPS INVOLVED IN RENDERING. 3. SOLVE MATHEMATICAL PROBLEMS IN 3D TRIGONOMETRY, LINEAR ALGEBRA, AND

GEOMETRY THAT ARE RELEVANT FOR COMPUTER GRAPHICS. 4. DESIGN, WRITE, AND IMPLEMENT WORKING COMPUTER GRAPHICS PROGRAMS IN STANDARD

PROGRAMMING LANGUAGES (C, C++, JAVA). 5. COMPARE AND CONTRAST GEOMETRY AND TOPOLOGY, AND THEIR IMPORTANCE IN

COMPUTER GRAPHICS, AND INCORPORATE BOTH INTO A WORKING GEOMETRIC MODEL. 6. SOLVE MATHEMATICAL PROBLEMS INVOLVING 2D AND 3D GEOMETRIC TRANSFORMATIONS

THAT ARE USED IN COMPUTER GRAPHICS. 7. EXPLAIN, DEMONSTRATE, AND GIVE EXAMPLES OF BASIC AND FUNDAMENTAL ALGORITHMS

USED IN COMPUTER GRAPHICS. 8. PERFORM TRANSFORMATIONS BETWEEN VARIOUS COLOUR MODELS.

Page 28: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. A GENERAL KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND

METHODOLOGIES IN 2D AND 3D COMPUTER IMAGE GENERATION (GRAPHICS) FROM GEOMETRY.

2. AN ABILITY TO PLAN, WRITE, AND REVISE TECHNICAL REPORTS (THROUGH LABORATORY WORK).

3. AN ABILITY TO PLAN, IMPLEMENT, TEST, AND ANALYZE WORKING ALGORITHMS AND SOFTWARE THAT GENERATE COMPUTER GRAPHICS (THROUGH LABORATORY WORK).

4. AN ABILITY TO WORK IN SMALL GROUPS. 5. AN ABILITY TO WORK INDEPENDENTLY. 6. AN ABILITY TO SEARCH, ACCESS, STUDY, AND UNDERSTAND SCIENTIFIC AND

TECHNICAL LITERATURE IN COMPUTER GRAPHICS. 7. AN ABILITY TO SOLVE MATHEMATICAL PROBLEMS ARISING IN COMPUTER GRAPHICS. 8. PROFICIENCY IN ORAL AND WRITTEN COMMUNICATION (THROUGH CLASS

PRESENTATIONS AND LABORATORY REPORTS, RESPECTIVELY). 9. THE ABILITY TO CORRECTLY AND THOROUGHLY DOCUMENT CODE.

Page 29: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 3306 COURSE NAME: PROGRAMMING PARADIGMS FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces the alternative programming paradigms and languages. Lecture topics include: overview of functional, logic, and object-oriented paradigms and languages, designing programs with these paradigms, advantages and disadvantages of alternative programming paradigms vs. procedural programming. Applications in AI, database and software design are introduced.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEFINE KEY TECHNICAL TERMS ASSOCIATED WITH PROGRAMMING LANGUAGES AND COMPILERS.

2. COMPARE AND CONTRAST THE DIFFERENT PARADIGMS: SEQUENTIAL, FUNCTIONAL, OBJECT-ORIENTED, LOGICAL, AND PARALLEL.

3. WRITE BASIC PROGRAMS IN FUNCTIONAL AND LOGICAL LANGUAGES. 4. WRITE A BASIC PARALLEL PROGRAM IN A HIGH-LEVEL PROGRAMMING LANGUAGE. 5. EXPLAIN THE MOTIVATION AND RATIONALE OF NEW PARALLEL PROGRAMMING PARADIGMS. 6. EXPLAIN WHY ALTERNATIVE PROGRAMMING LANGUAGES ARE IMPORTANT, AND DESCRIBE

SOME OF THEIR DISADVANTAGES. 7. COMPARE AND CONTRAST THE DIFFERENCES IN THE SOFTWARE DEVELOPMENT PROCESS

AMONGST THE VARIOUS PARADIGMS. 8. DISCUSS NEW AND EMERGING PARADIGMS AND APPLICATIONS IN NEW PROGRAMMING

LANGUAGES BY DESCRIBING A LEADING-EDGE EXAMPLE. 9. EXPLAIN PERFORMANCE ISSUES WITH ALTERNATIVE LANGUAGES. 10. WRITE A SMALL BUT NON-TRIVIAL “APP” USING OBJECTIVE-C (A NEW LANGUAGE).

Page 30: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. A KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND METHODOLOGIES IN

PROGRAMMING LANGUAGE TECHNOLOGY. 2. THE ABILITY TO WRITE BASIC PROGRAMS IN LANGUAGES FROM DIFFERENT

PARADIGMS. 3. THE ABILITY TO PLAN, IMPLEMENT, AND TEST PROGRAMS IN NEW LANGUAGES. 4. AN ABILITY TO PLAN, WRITE, ANALYZE, AND REVISE TECHNICAL REPORTS AND

SCIENTIFIC DOCUMENTATION, BOTH INDIVIDUALLY AND THROUGH GROUP EFFORTS, ACCOMPLISHED THROUGH PROGRAMMING LABORATORY PROJECTS.

5. A FAMILIARITY WITH RESEARCH METHODS, TECHNICAL, AND SCIENTIFIC LITERATURE RELATED TO PROGRAMMING LANGUAGES.

6. A KNOWLEDGE OF PARALLEL PROGRAMMING PARADIGMS AND THEIR IMPORTANCE. 7. AN UNDERSTANDING OF LEADING EDGE PROGRAMMING PARADIGMS IN “APPS” AND

MOBILE DEVICES. 8. AN UNDERSTANDING OF THE ADVANTAGES AND DISADVANTAGES OF THE VARIOUS

PROGRAMMING LANGUAGES AND PARADIGMS.

Page 31: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 3307 COURSE NAME: 3D COMPUTER GRAPHICS FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces the fundamentals of computer graphics in three dimensions, including 3D curves and surfaces, viewing in three dimensions, three dimensional transforms, and elements of 3D vision and animation.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. EXPLAIN (E.G. VIA A FLOWCHART) HOW 3D GEOMETRY IS TRANSFORMED INTO IMAGES (GRAPHICS) ON A DISPLAY SCREEN.

2. APPLY ALGEBRAIC, GEOMETRIC, TRIGONOMETRIC, AND LINEAR ALGEBRAIC MATHEMATICAL CONCEPTS TO SOLVE REALISTIC PROBLEMS USED TO CREATE AND GENERATE 3D COMPUTER IMAGERY.

3. DESIGN, WRITE, ANALYZE, AND TEST SOPHISTICATED 3D GRAPHICS APPLICATIONS WITH WIDELY-USED INDUSTRY STANDARD FRAMEWORKS (OPENGL, OPENGL/SL, DIRECTX) AND PROGRAMMING LANGUAGES (C, C++, JAVA).

4. PLAN, DEVELOP, ANALYZE, AND TEST APPLICATIONS TO DEMONSTRATE THE FUNDAMENTALS OF IMAGE PROCESSING.

5. PLAN, WRITE, ANALYZE, AND TEST NON-TRIVIAL PROGRAMS EMPLOYING GRAPHICS PROCESSING UNITS.

6. APPLY AND COMPUTE ADVANCED 3D GEOMETRIC TRANSFORMATIONS (3D ROTATIONS, SHEARING, SCALING), AND EXPLAIN THE DERIVATION AND USE OF THESE TRANSFORMATIONS.

7. SELECT, CRITICALLY READ, ANALYZE, AND DISSEMINATE LITERATURE (BROADLY DEFINED) CONCERNING IMPORTANT SCIENTIFIC AND TECHNICAL ISSUES INVOLVED IN 3D GRAPHICS.

8. DESCRIBE HOW 3D GRAPHICS CONTRIBUTES TO IMPORTANT VISUALIZATION APPLICATIONS. OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. A GENERAL KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND

METHODOLOGIES 3D COMPUTER IMAGE GENERATION (GRAPHICS) FROM GEOMETRY.

2. AN ABILITY TO PLAN, WRITE, AND REVISE ADVANCED TECHNICAL REPORTS (THROUGH LABORATORY WORK).

Page 32: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

3. MATHEMATICAL MATURITY THROUGH IMAGING AND 3D GRAPHICS LABORATORY WORK.

4. AN ABILITY TO PLAN, IMPLEMENT, TEST, AND ANALYZE WORKING ALGORITHMS AND SOFTWARE THAT GENERATE COMPUTER GRAPHICS (THROUGH LABORATORY WORK).

5. A BASIC ABILITY TO WORK IN SMALL GROUPS. 6. A BASIC ABILITY TO WORK INDEPENDENTLY. 7. AN ABILITY TO SEARCH, ACCESS, STUDY, AND UNDERSTAND SCIENTIFIC AND

TECHNICAL LITERATURE IN 3D COMPUTER GRAPHICS. 8. BASIC PROGRAMMING PROFICIENCY ON GRAPHICS PROCESSING UNITS. 9. AN ABILITY TO DESIGN, IMPLEMENT, TEST, AND ANALYZE SOPHISTICATED

ANIMATION (DYNAMIC) PROGRAMS USING A 3D GRAPHICS PROGRAMMING INTERFACE (OPENGL, DIRECTX).

10. PROFICIENCY IN ORAL AND WRITTEN COMMUNICATION (THROUGH CLASS PRESENTATIONS AND LABORATORY REPORTS, RESPECTIVELY).

11. THE ABILITY TO CORRECTLY AND THOROUGHLY DOCUMENT CODE.

Page 33: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 3406 COURSE NAME: ADVANCED GAME DESIGN AND DEVELOPMENT FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course presents a rigorous approach to the design and development of computer games, emphasizing the computational and programming tasks involved. Students will learn the basics of physics simulation, graphics, audio, 2D/3D art, and software engineering, as applied to game development. Topics such as the game engine, sound, rendering, modeling, and user interfaces will also be explored. Knowledge of these topics will be applied to the development of game-oriented projects. This is primarily a hands-on course where real-world skills, including design, teamwork, management, documentation, and effective communication are critical.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. PRESENT AND DISCUSS A GAME INDUSTRY CASE STUDY IN DETAIL. 2. PROGRAM VARIOUS ASPECTS OF A WORKING GAME IN A HIGH-LEVEL PROGRAMMING

LANGUAGE (C, C++, C#) BY CREATING A LARGE TEAMWORK-BASED GAME DEVELOPMENT/IMPLEMENTATION PROJECT.

3. DESIGN AND IMPLEMENT A WORKING GAME USER INTERFACE. 4. EMPLOY ADVANCED COMPUTATIONAL ARCHITECTURES FOR GAMES (MULTICORE

PROCESSORS AND GRAPHICS PROCESSING UNITS) IN A WORKING GAME COMPONENT. 5. DESCRIBE THE PROCESSES INVOLVED IN GAME ART, MODELING, AND ANIMATION. 6. SELECT, PRESENT, AND CRITICALLY ASSESS A CASE STUDY IN LEADING-EDGE GAME

TECHNOLOGIES. 7. SELECT, READ, PRESENT, AND CRITIQUE A REPRESENTATIVE SCIENTIFIC PAPER ON GAME

TECHNOLOGY. 8. EXPLAIN, OUTLINE, AND ANALYZE THE MATHEMATICS, ALGORITHMS AND TECHNIQUES

USED IN GAME TECHNOLOGY. 9. DESIGN, DEVELOP, IMPLEMENT, TEST, AND DEMONSTRATE A FUNCTIONAL GAME IN A

TEAM-BASED EFFORT, APPLYING SOFTWARE ENGINEERING PRINCIPLES.

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. AN ADVANCED KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND

METHODOLOGIES IN GAME DESIGN, DEVELOPMENT, AND TECHNOLOGY. 2. THE ABILITY TO IMPLEMENT COMPLEX PROGRAMS IN A HIGH LEVEL PROGRAMMING

LANGUAGE (C, C++, C#).

Page 34: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

3. A FAMILIARITY WITH AND AN ABILITY TO PLAN, WRITE, AND ANALYZE, TEST, AND REVISE LARGE-SCALE PROGRAMS IN A GAME DEVELOPMENT FRAMEWORK (E.G. XNA/C#) (THROUGH LABORATORY WORK AND AN EXTENSIVE PROJECT).

4. AN ABILITY TO PLAN, WRITE, ANALYZE, AND REVISE TECHNICAL REPORTS AND SCIENTIFIC DOCUMENTATION, BOTH INDIVIDUALLY AND THROUGH GROUP EFFORTS, ACCOMPLISHED THROUGH EXTENSIVE LABORATORY PROJECTS.

5. AN ABILITY TO COORDINATE AND CONTRIBUTE TO GROUP EFFORTS IN LARGE-SCALE SOFTWARE DEVELOPMENT.

6. AN ADVANCED FAMILIARITY WITH RESEARCH METHODS, TECHNICAL, AND SCIENTIFIC LITERATURE.

7. AN UNDERSTANDING OF THE MATHEMATICAL AND COMPUTATIONAL ASPECTS OF VIDEO, GRAPHICS, AND AUDIO.

8. PROFICIENCY IN ORAL AND WRITTEN COMMUNICATION (THROUGH CLASS PRESENTATIONS AND LABORATORY REPORTS, RESPECTIVELY).

9. THE ABILITY TO APPLY SOFTWARE ENGINEERING PRINCIPLES TO INDIVIDUAL AND GROUP PROJECTS.

10. THE ABILITY TO CORRECTLY AND THOROUGHLY DOCUMENT CODE. 11. AN AWARENESS OF EMERGING TRENDS IN GAME TECHNOLOGY AND ALGORITHMS.

Page 35: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

1

COURSE EXPECTATIONS

COURSE CODE: COSC 3606 COURSE NAME: DATABASES AND DATA MANAGEMENT FACULTY MEMBER: RENATA SMOLIKOVA-WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

Introduction to database systems and management of large collections of data. Methods used for storage, selection, presentation and retrieval of data. Theory and analysis of relational, hierarchical and other database models. The design of database management systems.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEFINE KEY TECHNICAL TERMS ASSOCIATED WITH DATABASE SYSTEMS. 2. OUTLINE THE MAJOR PARTS OF A RELATIONAL DATABASE MANAGEMENT SYSTEM (DBMS). 3. DEFINE AND GENERATE A DATABASE WITH SQL DDL, AND QUERY AND UPDATE DATABASES

WITH SQL DML. 4. WRITE PROGRAMS IN HIGH-LEVEL PROGRAMMING LANGUAGES (C, C++, JAVA) THAT

CONNECT TO A DMBS AND THAT EMPLOY EMBEDDED SQL. 5. COMPARE AND CONTRAST RELATIONAL AND OBJECT-ORIENTED DATABASES, EXPLAINING

THE ADVANTAGES AND DISADVANTAGES OF EACH. 6. EXPLAIN THE ROLE OF DBMS IN DAILY LIFE. 7. OUTLINE SECURITY AND PRIVACY CONCERNS IN DBMS, AND EXPLAIN HOW THESE

CONCERNS ARE CURRENTLY ADDRESSED. 8. PLAN A DBMS FROM SPECIFICATIONS. 9. DISCUSS NEW AND EMERGING PARADIGMS IN DBMS BY DESCRIBING A LEADING-EDGE

EXAMPLE. 10. EXPLAIN PERFORMANCE ISSUES WITH DBMS AND DESCRIBE METHODS TO INCREASE DBMS

PERFORMANCE.

Page 36: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

2

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. A KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND METHODOLOGIES IN

DBMS AND DATABASE TECHNOLOGY. 2. THE ABILITY TO WRITE BASIC DBMS PROGRAMS IN A HIGH LEVEL PROGRAMMING

LANGUAGE (C, C++, C#) WITH SQL. 3. THE ABILITY TO PLAN, IMPLEMENT, AND TEST SQL QUERIES. 4. AN ABILITY TO PLAN, WRITE, ANALYZE, AND REVISE TECHNICAL REPORTS AND

SCIENTIFIC DOCUMENTATION, BOTH INDIVIDUALLY AND THROUGH GROUP EFFORTS, ACCOMPLISHED THROUGH DBMS LABORATORY PROJECTS.

5. A FAMILIARITY WITH RESEARCH METHODS, TECHNICAL, AND SCIENTIFIC LITERATURE RELATED TO DBMS.

6. A BASIC KNOWLEDGE OF DATA MINING AND ONLINE ANALYTIC PROCESSING, AND HOW IT RELATES TO DBMS.

7. AN UNDERSTANDING OF LEADING EDGE DBMS APPLICATIONS, INCLUDING CONTENT-DRIVEN SEARCHES AND BUSINESS INTELLIGENCE.

8. THE ABILITY TO CORRECTLY AND THOROUGHLY DOCUMENT THE ENTIRE PROCESS OF DBMS DEVELOPMENT, FROM INCEPTION TO FINAL TESTING.

Page 37: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

1

COURSE EXPECTATIONS

COURSE CODE: COSC 3657 COURSE NAME: DISTRIBUTED SYSTEMS FACULTY MEMBER: RENATA SMOLIKOVA-WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

Introduction to computer networks and computer systems interconnected by networks, including both the hardware and software of selected LANs and WANs. The issues of reliable and secure communication, layered models, distributed file systems, and concurrency will be discussed.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEFINE BASIC CONCEPTS AND TECHNIQUES IN DISTRIBUTED SYSTEMS AND THE DESIRED PROPERTIES OF SUCH SYSTEMS.

2. DEMONSTRATE KNOWLEDGE OF THE NATURE OF DISTRIBUTED SYSTEMS BY UNDERLYING EXAMPLES AND LATEST TRENDS.

3. APPLY DISTRIBUTED SYSTEMS TECHNIQUES. 4. DEMONSTRATE AN UNDERSTANDING OF NETWORK PRINCIPLES AND INTERNET PROTOCOLS

BY IMPLEMENTING ALGORITHMS. 5. IDENTIFY CHALLENGES WHEN DESIGNING A RELIABLE DISTRIBUTED SYSTEM. 6. IDENTIFY SECURITY ISSUES WHEN DESIGNING AND IMPLEMENTING DISTRIBUTED SYSTEMS

AND/OR PROTOCOLS. 7. WRITE DISTRIBUTED SYSTEM SOFTWARE USING OPERATING SYSTEM MECHANISMS AND

HIGHER-LEVEL MIDDLEWARE AND LANGUAGES.

OUTCOMES: SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. A GENERAL KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND TERMS IN DISTRIBUTED SYSTEMS.

2. AN UNDERSTANDING OF HOW TO DESIGN A DISTRIBUTED SYSTEM AND SPECIFY THE DESIRED PROPERTIES OF SUCH SYSTEMS.

3. AN ABILITY TO APPLY KNOWLEDGE OF OBJECT-ORIENTED PROGRAMMING (E.G. JAVA), OPERATING SYSTEMS, AND ELEMENTARY COMPUTER ARCHITECTURE.

4. AN ABILITY TO IMPLEMENT DISTRIBUTED AND NETWORKED ALGORITHMS USING HIGH-LEVEL PROGRAMMING LANGUAGES.

5. AN ABILITY TO SELECT APPROPRIATE TOOLS FOR BUILDING DISTRIBUTED COMPUTER SYSTEMS AND NETWORKS.

Page 38: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

2

6. FAMILIARITY WITH PAST AND CURRENT RESEARCH ISSUES IN DISTRIBUTED SYSTEMS AND NEW CHALLENGES IN THIS FIELD.

Page 39: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS COURSE CODE: COSC 3807 COURSE NAME: Project Management Faculty Member: Haibin Zhu □2012-13 □2013-14 Calendar Course Description: This course introduces several aspects of project management in a variety of environments. Topics include: team project organization and accounting; resources and cost management; human factors; analysis, tools and document preparation; technological and safety standards; product testing, verification and validation; reducing PC/LAN costs in the enterprise; capital and administrative costs; technical support.

EXPECTATIONS: By the end of the course students should be able to:

1. Describe the four P’s importance in a project, i.e., project, people, process, and product.

2. Define the roles in a project, i.e., responsibilities, duties, and rights. 3. Demonstrate through involvement in a team project the central elements of team

building and team management. 4. Prepare a project plan for a software project that includes estimates of size and effort,

a schedule, resource allocation, configuration control, change management, and project risk identification and management.

5. Indicate an approach to risk that will help to secure the on-time delivery of software. 6. Compare and contrast the different methods and techniques used to assure the quality

of a software product. 7. Define the concepts of hazard and risk, hazard. 8. Recognize common security risks in at least two operating systems. 9. Describe the categories of threats to networked computing systems. 10. Display a systematic approach to the task of identifying hazards and risks in a

particular situation. 11. Apply the basic principles of risk management in a variety of simple scenarios

including a security situation.

OUTCOMES:

Successful graduates of this course will demonstrate 1. The ability of assessing needs and planning development activities. 2. The understanding of qualities and competencies of a project manager by explaining to

team members. 3. The understanding of project structures and software development life cycle(SDLC)

by writing the document of a project.

Page 40: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

4. The ability of defining and categorising projects, the life cycle of the project, the lean and mean approach, and feasibility and risk in projects.

5. The ability of testing and assessing the feasibility of the project by writing a testing plan.

6. The ability of assessing and managing risk by computing related figures. 7. The ability of working with and leading people (project teams) by managing the

project team members; managing creativity and conflict; designing internal and external roles and responsibilities; and managing relationships.

8. The understanding of the project closure stage by planning and activating the closure point; and being familiar with a project closure template.

Page 41: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 3997 COURSE NAME: SENIOR PRACTICUM FACULTY MEMBER: BOGUSLAW SCHREYER 2012-13 2013-14 CALENDAR COURSE DESCRIPTION: In this course, the senior student works an approved project, either while placed in a business enterprise/organization or supervised by a faculty member on campus. Projects may range from practical/experimental to theoretical, and the student is expected t5o successfully integrate theory and skills learned in the program. Evaluation of the student’s final report and presentation is on a pass/fail basis.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEMONSTRATE UNDERSTANDING OF THE KEY CONCEPTS OF COMPUTER SCIENCE, SPECIFIC DOMAIN TO THE PROJECT. THE PROJECT DOMAINS MAY VARY SIGNIFICANTLY DEPENDING ON PROFESSOR’S AND STUDENT’D INTEREST

2. DEMONSTRATE THE UNDERSTANDING AND ABILITY TO APPLY THE CONCEPTS IN A GIVEN DOMAIN, MOSTLY BY WRITING THE APPLICATIN SOFTWARE

3. SHOW INDEPENDENCE IN WORKING ON A COMPLEX PROJECT, WHICH MAY INVOLVE SEVERAL CSC DOMAINS WITH DIRECTIONS BUT WITH MINIMUM HELP FROM A FACULTY

OUTCOMES: SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE

1. A BROAD AND DETAILED KNOWLEDGE AND CRITICAL UNDERSTANDING OF THE KEY

CONCEPTS OF SPECIFIC CSC DOMAIN(S) 2. ABILITY TO READ, UNDERSTAND , AND ANALYZE THE RELATED CSC TEXTS 3. ABILITY TO SELECT AND APPLY THE APPROPRIATE KNOWLEDGE TO REAL-LIFE PROBLEMS

AND CREATE SOLUTIONS TO SUCH PROBLEMS 4. DEVELOP CRITICAL THINKING AND ADVANCED ANALYTICAL, PROBLEM-SOLVING SKILLS 5. ABILITY TO GATHER, COMPREHEND, AND ANALYZE NEW CSC KNOWLEDGE FROM VARIOUS

SOURCES AND APPLY IT IN VARIOUS CONTEXTS 6. ABILITY TO THINK INDEPENDENTLY 7. ABILITY TO COMMUNICATE ROBOTICS IDEAS, QUESTIONS, SOLUTIONS, BOTH ORALLY AND IN

WRITING

Page 42: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 4107 COURSE NAME: INTERFACING AND COMMUNICATION FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces the fundamentals of input/output control. Techniques for interrupt handling are discussed. Course topics include input/output control methods, interrupts; interrupt acknowledgement; synchronization, Open loop, handshaking; communication protocols; external storage, physical organization and drives; user interfaces.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEFINE AND EXPLAIN THE TERMINOLOGY USED IN INTERFACING AND COMMUNICATION PROTOCOLS.

2. COMPARE AND CONTRAST VARIOUS INTERFACING TECHNOLOGIES. 3. DESCRIBE SYNCHRONIZATION, AND OUTLINE ITS IMPORTANCE IN STATE-OF-THE-ART

SYSTEMS. 4. LIST IMPORTANT CURRENT ISSUES IN COMPUTER INTERFACING AND COMMUNICATION. 5. DESCRIBE, AT AN ADVANCED LEVEL, STORAGE MECHANISMS, INTERFACES, MEMORY, AND

PHYSICAL ORGANIZATION. 6. DESCRIBE AND EXPLAIN (CRITICALLY) A LEADING-EDGE EXAMPLE OF AN ASPECT OF

INTERFACING AND COMMUNICATION. 7. WRITE A FUNCTIONAL PROGRAM AND/OR DRIVER TO INTERFACE COMPUTER EQUIPMENT

WITH DEVICES.

Page 43: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. A KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND METHODOLOGIES IN

INTERFACING AND COMMUNICATION. 2. THE ABILITY TO WRITE DRIVERS AND INTERFACES IN PROGRAMMING LANGUAGES

(C, C++, C#, MATLAB, ASSEMBLY). 3. AN ABILITY TO PLAN, WRITE, ANALYZE, AND REVISE TECHNICAL REPORTS AND

SCIENTIFIC DOCUMENTATION, BOTH INDIVIDUALLY AND THROUGH GROUP EFFORTS, ACCOMPLISHED THROUGH LABORATORY PROJECTS.

4. A KNOWLEDGE OF PROGRAMMING LANGUAGES, TECHNIQUES, AND PARADIGMS (E.G. USB) REQUIRED IN INTERFACING COMPUTER EQUIPMENT WITH DEVICES.

5. PROFICIENCY IN ORAL AND WRITTEN COMMUNICATION (THROUGH CLASS PRESENTATIONS AND LABORATORY REPORTS, RESPECTIVELY).

6. AN UNDERSTANDING OF THE POTENTIAL AND LIMITATIONS OF STATE-OF-THE-ART INTERFACING AND COMMUNICATION PARADIGMS.

7. THE ABILITY TO CORRECTLY AND THOROUGHLY DOCUMENT CODE. 8. AN AWARENESS OF EMERGING TRENDS IN COMPUTER INTERFACING.

Page 44: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 4127 COURSE NAME: REAL-TIME PROGRAMMING FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces the fundamentals of tools and techniques of real-time programming and computer system control. The course topics include microcomputer architecture, real-time programming language and operating system, data acquisition and communication, microprocessor and microcontroller applications, interfacing techniques.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEFINE AND EXPLAIN THE TERMINOLOGY USED IN EMBEDDED SYSTEMS AND REAL-TIME SOFTWARE ENVIRONMENTS.

2. OUTLINE THE PROCESS OF REAL-TIME SYSTEMS DEVELOPMENT. 3. DEVELOP AND TEST SIMPLE, YET USEFUL, REAL-TIME SYSTEMS IN A HIGH-LEVEL

PROGRAMMING LANGUAGE (C, C++, C#, MATLAB, VISUAL BASIC). 4. SOLVE MATHEMATICAL PROBLEMS IN ANALOG-TO-DIGITAL AND DIGITAL-TO-ANALOG

CONVERTERS BY SOLVING MATHEMATICAL PROBLEMS IN A-D AND D-A CONVERSION. 5. COMPARE AND CONTRAST VARIOUS REAL-TIME SYSTEMS. 6. DESCRIBE AN ACTUAL CASE STUDY OF REAL-TIME SYSTEM FAILURE, AND EXPLAIN HOW THE

SYSTEM FAILED. 7. LIST IMPORTANT CURRENT AND FUTURE APPLICATIONS OF EMBEDDED PROCESSORS AND

REAL-TIME SYSTEMS. 8. UNDERSTAND DIFFERENCES BETWEEN EMBEDDED AND NON-EMBEDDED PROGRAMMING

LANGUAGES BY CREATING A COMPARATIVE TABLE. 9. DESCRIBE AND EXPLAIN (CRITICALLY) A LEADING-EDGE EXAMPLE OF A REAL-TIME SYSTEM. 10. COMPARE AND CONTRAST COMPUTATIONAL RESOURCES (MEMORY, PROCESSOR SPEED,

DATA BANDWIDTH, ETC.) IN REAL-TIME AND NON-REAL-TIME SYSTEMS. 11. SIMULATE REAL TIME SYSTEMS IN REAL-TIME MODELING ENVIRONMENTS.

Page 45: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. A KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND METHODOLOGIES IN

EMBEDDED SYSTEMS TECHNOLOGY. 2. THE ABILITY TO WRITE BASIC REAL-TIME PROGRAMS IN A HIGH LEVEL

PROGRAMMING LANGUAGE (C, C++, C#, MATLAB, VISUAL BASIC). 3. A KNOWLEDGE OF THE DIFFERENCES BETWEEN REAL-TIME AND NON-REAL-TIME

SYSTEMS. 4. AN ABILITY TO PLAN, WRITE, ANALYZE, AND REVISE TECHNICAL REPORTS AND

SCIENTIFIC DOCUMENTATION, BOTH INDIVIDUALLY AND THROUGH GROUP EFFORTS, ACCOMPLISHED THROUGH EXTENSIVE LABORATORY PROJECTS.

5. AN ABILITY TO COORDINATE AND CONTRIBUTE TO GROUP EFFORTS IN REAL-TIME SOFTWARE DEVELOPMENT.

6. A FAMILIARITY WITH RESEARCH METHODS, TECHNICAL, AND SCIENTIFIC LITERATURE.

7. A KNOWLEDGE OF SOFTWARE ENGINEERING PRINCIPLES ASSOCIATED WITH REAL-TIME PROGRAMMING PROJECTS.

8. AN UNDERSTANDING OF THE MATHEMATICAL AND COMPUTATIONAL ASPECTS OF REAL-TIME AND EMBEDDED SYSTEMS.

9. PROFICIENCY IN ORAL AND WRITTEN COMMUNICATION (THROUGH CLASS PRESENTATIONS AND LABORATORY REPORTS, RESPECTIVELY).

10. AN UNDERSTANDING OF THE POTENTIAL AND LIMITATIONS OF REAL-TIME AND EMBEDDED SYSTEMS.

11. THE ABILITY TO CORRECTLY AND THOROUGHLY DOCUMENT CODE. 12. A BASIC KNOWLEDGE OF REAL-TIME SIMULATION TECHNIQUES. 13. AN AWARENESS OF EMERGING TRENDS IN EMBEDDED SYSTEMS TECHNOLOGY AND

ALGORITHMS.

Page 46: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 4206 COURSE NAME: TOPICS IN COMPUTER SCIENCE FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course provides advanced coverage of particular topics in Computer Science. The content varies according to the specialization of the faculty teaching the course.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. INVESTIGATE, EXAMINE, INTERPRET, AND ANALYZE LEADING-EDGE AND STATE-OF-THE-ART COMPUTER SCIENCE AND COMPUTER TECHNOLOGY CONCEPTS AND TOPICS.

2. DESIGN, IMPLEMENT, TEST, AND ANALYZE ORIGINAL COMPUTER IMPLEMENTATIONS TO SOLVE USEFUL PROBLEMS.

3. EXPLAIN, DISCUSS, AND PRESENT ORIGINAL WORK, AS WELL AS FINDINGS FROM THE TECHNICAL AND SCIENTIFIC LITERATURE, BROADLY DEFINED.

4. DISSEMINATE (ORALLY AND IN WRITING) ORIGINAL FINDINGS AND STATE-OF-THE-ART TECHNOLOGIES.

OUTCOMES: SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE:

1. AN IN-DEPTH KNOWLEDGE AND UNDERSTANDING OF RELEVANT, USEFUL, AND TIMELY COMPUTER SCIENCE TOPICS.

2. THE ABILITY TO CRITICALLY READ, ASSESS, AND REPORT ON (BOTH ORALLY AND IN WRITING) LEADING-EDGE AND STATE-OF-THE-ART COMPUTER SCIENCE LITERATURE.

3. A SOPHISTICATED KNOWLEDGE OF SOFTWARE ENGINEERING AND ALL PHASES OF SOFTWARE DEVELOPMENT.

4. AN ABILITY TO PLAN, WRITE, ANALYZE, AND REVISE TECHNICAL REPORTS AND SCIENTIFIC DOCUMENTATION, ACCOMPLISHED THROUGH EXTENSIVE LABORATORY PROJECTS.

5. AN AWARENESS OF EMERGING TRENDS IN ALGORITHMS, COMPUTER SCIENCE, AND COMPUTER TECHNOLOGY.

Page 47: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 4207 COURSE NAME: SEMINARS IN COMPUTER SCIENCE FACULTY MEMBER: ALL COSC FACULTY 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This seminar course provides coverage of particular topics of current importance. Reading and research will be conducted in the areas of interest of students and faculty teaching the course. Students will present seminars and prepare essays.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. EXPLAIN, DISCUSS, SUMMARIZE, AND CRITIQUE RELEVANT AND IMPORTANT PROBLEMS AND OPPORTUNITIES IN COMPUTER SCIENCE TECHNOLOGY AND RESEARCH.

2. DESIGN, IMPLEMENT, TEST, AND ANALYZE ORIGINAL COMPUTER IMPLEMENTATIONS TO SOLVE USEFUL PROBLEMS.

3. ANALYZE AND INTERPRET RESULTS FROM ORIGINAL INVESTIGATIONS. 4. COMPARE AND CONTRAST DIFFERENT COMPUTATIONAL APPROACHES TO PROBLEMS. 5. DISCUSS (ORALLY AND IN WRITING) ORIGINAL WORK AS WELL AS FINDINGS FROM THE

TECHNICAL AND SCIENTIFIC (BROADLY DEFINED) LITERATURE IN COMPUTER SCIENCE.

OUTCOMES: SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE:

1. AN IN-DEPTH KNOWLEDGE AND UNDERSTANDING OF RELEVANT, USEFUL, AND TIMELY COMPUTER SCIENCE TOPICS.

2. THE ABILITY TO INDEPENDENTLY AND CRITICALLY READ, ASSESS, ANALYZE AND REPORT ON (BOTH ORALLY AND IN WRITING) LEADING-EDGE AND STATE-OF-THE-ART COMPUTER SCIENCE LITERATURE.

3. A SOPHISTICATED KNOWLEDGE OF RESEARCH METHODS AND R&D IN COMPUTER SCIENCE AND TECHNOLOGY.

4. AN ABILITY TO PLAN, WRITE, ANALYZE, AND REVISE TECHNICAL REPORTS AND SCIENTIFIC DOCUMENTATION, ACCOMPLISHED THROUGH EXTENSIVE LABORATORY AND RESEARCH PROJECTS.

5. AN AWARENESS OF EMERGING TRENDS, OPPORTUNITIES, AND LIMITATIONS IN COMPUTER ALGORITHMS AND TECHNOLOGY.

Page 48: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 4607 COURSE NAME: SECURITY AND PROTECTION FACULTY MEMBER: MARK WACHOWIAK 2012-13 2013-14 CALENDAR COURSE DESCRIPTION:

This course introduces physical security, privacy, capabilities and access lists, authentication mechanisms and formalisms. The course topics include: overview of system security, security methods and devices, memory protection, recovery management, secure operating systems, hardware/software redundancy.

EXPECTATIONS: BY THE END OF THE COURSE STUDENTS SHOULD BE ABLE TO:

1. DEFINE KEY TECHNICAL TERMS ASSOCIATED WITH COMPUTER AND NETWORK SECURITY. 2. COMPARE AND CONTRAST THE DIFFERENT TYPES OF ELECTRONIC “ATTACKS”, AND THE

MECHANISMS FOR PREVENTION AND AMELIORATION. 3. WRITE PROGRAMS THAT IMPLEMENT BASIC SECURITY MEASURES IN COMPUTER SYSTEMS. 4. EXPLAIN THE STEPS AND PROCEDURES INVOLVED IN USER-LEVEL COMPUTER SECURITY. 5. EXPLAIN THE MECHANISMS BY WHICH TRANSACTIONS ARE SECURED IN A NETWORKED

ENVIRONMENT. 6. COMPARE AND CONTRAST THE DIFFERENCES IN SECURITY FOR DIFFERENT OPERATING

SYSTEMS (WINDOWS, MACOS, LINUX, UNIX). 7. DISCUSS NEW AND EMERGING PARADIGMS IN COMPUTER SECURITY BY DESCRIBING A

LEADING-EDGE EXAMPLE. 8. EXPLAIN THE MECHANISMS BY WHICH “VIRUSES”, “WORMS”, “ADWARE”, AND OTHER

“MALWARE” COMPROMISE COMPUTER SECURITY, AND OUTLINE STEPS NEEDED TO PROTECT AGAINST MALWARE.

9. WRITE ENCRYPTION AND DECRYPTION CODE IN A HIGH-LEVEL PROGRAMMING LANGUAGE (E.G. JAVA).

10. COMPARE AND CONTRAST VARIOUS ENCRYPTION METHODS.

Page 49: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

OUTCOMES:

SUCCESSFUL GRADUATES OF THIS COURSE WILL DEMONSTRATE 1. A KNOWLEDGE AND UNDERSTANDING OF KEY CONCEPTS AND METHODOLOGIES IN

COMPUTER SECURITY. 2. THE ABILITY TO WRITE BASIC PROGRAMS DEALING WITH COMPUTER SECURITY

ISSUES. 3. THE ABILITY TO CREATE AND IMPLEMENT A SECURITY PLAN FOR VARIOUS

OPERATING SYSTEMS AND ENVIRONMENTS (STANDALONE AND NETWORKED). 4. A MATHEMATICAL AND COMPUTATIONAL KNOWLEDGE OF CRYPTOGRAPHY

(ENCRYPTION AND DECRYPTION). 5. A FAMILIARITY WITH RESEARCH METHODS, TECHNICAL, AND SCIENTIFIC

LITERATURE RELATED TO COMPUTER SECURITY. 6. A THEORETICAL UNDERSTANDING OF POTENTIAL FUTURE SECURITY RISKS (E.G.

QUANTUM COMPUTING TO BREAK RSA CODES). 7. AN UNDERSTANDING OF LEADING EDGE COMPUTER SECURITY MECHANISMS. 8. A BASIC UNDERSTANDING BIOMETRICS. 9. A BASIC UNDERSTANDING OF MALWARE, WHAT IT DOES, AND HOW TO PROTECT

AGAINST IT. 10. A THEORETICAL KNOWLEDGE OF OPERATING SYSTEM SECURITY MECHANISMS FOR

THE WINDOWS, LINUX, UNIX, AND MACOS OPERATING SYSTEMS.

Page 50: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 4896 COURSE NAME: Honours Research I Faculty Member: All COSC Faculty ☒2012-13 ☒2013-14 Calendar Course Description:

An individualized studies course in which a senior student conducts research in a topic not specifically covered in other courses, under the supervision of a faculty member with expertise in that area. Each student will be required to make oral presentations on their work to faculty and students at several seminar sessions held for this purpose, and to submit a final report, written in the format of a journal article.

EXPECTATIONS: By the end of the course students should be able to:

1. EXPLAIN, DESCRIBE, AND PRESENT (BOTH ORALLY AND IN WRITING) THE KEY THEORETICAL AND PRACTICAL CONCEPTS OF COMPUTER SCIENCE SPECIFICALLY RELATED TO ADVANCED RESEARCH (PROJECT DOMAINS VARY DEPENDING ON THE INTERESTS OF THE SUPERVISING PROFESSOR AND THE STUDENT).

2. STUDY, ANALYZE, AND CRITIQUE ADVANCED STATE-OF-THE-ART AND LEADING-EDGE COMPUTER SCIENCE CONCEPTS.

3. SHOW INDEPENDENCE IN WORKING ON ADVANCED RESEARCH, WHICH MAY INVOLVE SEVERAL COMPUTER SCIENCE DOMAINS WITH DIRECTIONS, BUT WITH MINIMUM HELP FROM FACULTY.

4. EXPLAIN THE OPPORTUNITIES AND LIMITATIONS OF COMPUTER-BASED APPROACHES FOR PROBLEM-SOLVING.

5. USE AND UNDERSTAND ADVANCED RESEARCH METHODS.

OUTCOMES: Successful graduates of this course will demonstrate

1. A BROAD AND DETAILED KNOWLEDGE AND CRITICAL UNDERSTANDING OF THE KEY

CONCEPTS OF SPECIFIC COMPUTER SCIENCE DOMAIN(S). 2. ABILITY TO READ, UNDERSTAND, ANALYZE, AND CRITIQUE THE RELATED COMPUTER

SCIENCE AND RELATED LITERATURE. 3. ABILITY TO RELATE THEORETICAL TO PRACTICAL KNOWLEDGE. 4. DEVELOP CRITICAL THINKING AND ADVANCED ANALYTICAL, PROBLEM-SOLVING SKILLS. 5. ABILITY TO GATHER, COMPREHEND, AND ANALYZE NEW COMPUTER SCIENCE AND RELATED

KNOWLEDGE FROM THE SCIENTIFIC LITERATURE AND APPLY IT IN VARIOUS CONTEXTS. 6. ABILITY TO SYNTHESIZE KNOWLEDGE GAINED OVER THE STUDENT’S ENTIRE COURSE OF

STUDY. 7. ABILITY TO THINK INDEPENDENTLY.

Page 51: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

8. ABILITY TO COMMUNICATE IDEAS, QUESTIONS, AND SOLUTIONS, BOTH ORALLY AND IN WRITING.

Page 52: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 4897 COURSE NAME: Honours Research II Faculty Member: All COSC Faculty ☒2012-13 ☒2013-14 Calendar Course Description:

An individualized studies course in which a senior student conducts research in a topic not specifically covered in other courses, under the supervision of a faculty member with expertise in that area. Each student will be required to make oral presentations on their work to faculty and students at several seminar sessions held for this purpose, and to submit a final report, written in the format of a journal article.

EXPECTATIONS: By the end of the course students should be able to:

1. EXPLAIN, DESCRIBE, AND PRESENT (BOTH ORALLY AND IN WRITING) THE KEY THEORETICAL AND PRACTICAL CONCEPTS OF COMPUTER SCIENCE SPECIFICALLY RELATED TO ADVANCED RESEARCH (PROJECT DOMAINS VARY DEPENDING ON THE INTERESTS OF THE SUPERVISING PROFESSOR AND THE STUDENT).

2. STUDY, ANALYZE, AND CRITIQUE ADVANCED STATE-OF-THE-ART AND LEADING-EDGE COMPUTER SCIENCE CONCEPTS.

3. SHOW INDEPENDENCE IN WORKING ON ADVANCED RESEARCH, WHICH MAY INVOLVE SEVERAL COMPUTER SCIENCE DOMAINS WITH DIRECTIONS, BUT WITH MINIMUM HELP FROM FACULTY.

4. EXPLAIN THE OPPORTUNITIES AND LIMITATIONS OF COMPUTER-BASED APPROACHES FOR PROBLEM-SOLVING.

5. USE AND UNDERSTAND ADVANCED RESEARCH METHODS.

OUTCOMES: Successful graduates of this course will demonstrate

1. A BROAD AND DETAILED KNOWLEDGE AND CRITICAL UNDERSTANDING OF THE KEY

CONCEPTS OF SPECIFIC COMPUTER SCIENCE DOMAIN(S). 2. ABILITY TO READ, UNDERSTAND, ANALYZE, AND CRITIQUE THE RELATED COMPUTER

SCIENCE AND RELATED LITERATURE. 3. ABILITY TO RELATE THEORETICAL TO PRACTICAL KNOWLEDGE. 4. DEVELOP CRITICAL THINKING AND ADVANCED ANALYTICAL, PROBLEM-SOLVING SKILLS. 5. ABILITY TO GATHER, COMPREHEND, AND ANALYZE NEW COMPUTER SCIENCE AND RELATED

KNOWLEDGE FROM THE SCIENTIFIC LITERATURE AND APPLY IT IN VARIOUS CONTEXTS. 6. ABILITY TO SYNTHESIZE KNOWLEDGE GAINED OVER THE STUDENT’S ENTIRE COURSE OF

STUDY. 7. ABILITY TO THINK INDEPENDENTLY.

Page 53: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

8. ABILITY TO COMMUNICATE IDEAS, QUESTIONS, AND SOLUTIONS, BOTH ORALLY AND IN WRITING.

Page 54: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

COURSE EXPECTATIONS

COURSE CODE: COSC 4997 COURSE NAME: Honours Practicum Faculty Member: All COSC Faculty ☒2012-13 ☒2013-14 Calendar Course Description: In this course, the honours student works on an approved project, either while placed in a business

enterprise/organization or supervised by a faculty member on campus. Projects may range from practical/experiential

to theoretical, and the student is expected to successfully integrate theory and skills learned in the program. Evaluation

of the student's final report and presentation is on a pass/fail basis.

EXPECTATIONS: By the end of the course students should be able to:

1. EXPLAIN, DESCRIBE, AND PRESENT (BOTH ORALLY AND IN WRITING) THE KEY THEORETICAL AND PRACTICAL CONCEPTS OF COMPUTER SCIENCE SPECIFICALLY RELATED TO AN ADVANCED PROJECT (PROJECT DOMAINS VARY DEPENDING ON THE INTERESTS OF THE SUPERVISING PROFESSOR AND THE STUDENT).

2. APPLY ADVANCED COMPUTER SCIENCE CONCEPTS TO A SPECIFIC DOMAIN, MOSTLY BY SOFTWARE DEVELOPMENT AND IMPLEMENTATION.

3. SHOW INDEPENDENCE IN WORKING ON A COMPLEX PROJECT, WHICH MAY INVOLVE SEVERAL COMPUTER SCIENCE DOMAINS WITH DIRECTIONS, BUT WITH MINIMUM HELP FROM FACULTY.

4. MAKE APPROPRIATE USE OF ADVANCED SOFTWARE ENGINEERING PRINCIPLES IN DEVELOPING THE PROJECT.

OUTCOMES: Successful graduates of this course will demonstrate

1. A BROAD AND DETAILED KNOWLEDGE AND CRITICAL UNDERSTANDING OF THE KEY

CONCEPTS OF SPECIFIC COMPUTER SCIENCE DOMAIN(S). 2. ABILITY TO READ, UNDERSTAND, ANALYZE, AND CRITIQUE THE RELATED COMPUTER

SCIENCE LITERATURE AND TECHNICAL DOCUMENTATION. 3. ABILITY TO SELECT AND APPLY THE APPROPRIATE KNOWLEDGE TO REAL-WORLD PROBLEMS

AND CREATE SOLUTIONS TO SUCH PROBLEMS. 4. DEVELOP CRITICAL THINKING AND ADVANCED ANALYTICAL, PROBLEM-SOLVING SKILLS. 5. ABILITY TO GATHER, COMPREHEND, AND ANALYZE NEW COMPUTER SCIENCE KNOWLEDGE

FROM VARIOUS SOURCES AND APPLY IT IN VARIOUS CONTEXTS.

Page 55: COURSE EXPECTATIONS COURSE CODE: COSC 1666 … · standard computer-aided design (cad) system. ... draw a flowchart of the computerized and automated manufacturing process. ... digital

6. ABILITY TO APPLY AND SYNTHESIZE KNOWLEDGE GAINED OVER THE STUDENT’S ENTIRE COURSE OF STUDY.

7. ABILITY TO THINK INDEPENDENTLY. 8. ABILITY TO COMMUNICATE IDEAS, QUESTIONS AND SOLUTIONS, BOTH ORALLY AND IN

WRITING.