CSE 1110 (Approved): Introduction to Computing Technology

489
CSE 1110: Introduction to Computing Technology Course Description A course of general interest giving experience with personal computer software, e.g., word processors and spreadsheets; provides fundamental computer literacy; neither teaches nor requires programming. Prior Course Number: CSE 100 Transcript Abbreviation: Intr Comptg Techn Grading Plan: Letter Grade Course Deliveries: Classroom, Greater or equal to 50% at a distance Course Levels: Undergrad Student Ranks: Freshman Course Offerings: Autumn, Spring, Summer Flex Scheduled Course: Never Course Frequency: Every Year Course Length: 14 Week Credits: 2.0 Repeatable: No Time Distribution: 2.0 hr Lec Expected out-of-class hours per week: 4.0 Graded Component: Lecture Credit by Examination: No Admission Condition: No Off Campus: Never Campus Locations: Columbus, Lima, Newark Prerequisites and Co-requisites: Exclusions: Not open to students with credit for CSE 1111 or CSE 1113 or CSE 100 or CSE 101 Cross-Listings: Course Rationale: Existing course. The course is required for this unit's degrees, majors, and/or minors: No The course is a GEC: No The course is an elective (for this or other units) or is a service course for other units: Yes Subject/CIP Code: 14.0901 Subsidy Level: Baccalaureate Course Course Goals Be competent with understanding the role of computers in our society. Be competent with using four of the most popular kinds of software on the market: spreadsheets, database managers, presentation graphics, and word-processing. Be familiar with using computer hardware by understanding how instructions are executed, information is input/output, binary no. system, storage devices, telecommunications. Be familiar with using the computer as a tool for problem solving in many areas: business, manufacturing, medicine, art, education, the military, government, etc. Be familiar with how computers have evolved, the history of the computer industry, and the dramatic speed at which computer technology has evolved and continues to do so. Be familiar with security issues, computer crime, the implications of natural disasters on computers, inadvertent tampering, and what can be done about each. Be exposed to social and ethical issues, including new social and ethical questions that need to be addressed because of computer technology.

Transcript of CSE 1110 (Approved): Introduction to Computing Technology

Page 1: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1110: Introduction to Computing Technology

Course DescriptionA course of general interest giving experience with personal computer software, e.g., word processors and spreadsheets; provides fundamental computer literacy; neither teaches nor requires programming.

Prior Course Number: CSE 100Transcript Abbreviation: Intr Comptg TechnGrading Plan: Letter GradeCourse Deliveries: Classroom, Greater or equal to 50% at a distanceCourse Levels: UndergradStudent Ranks: FreshmanCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: Columbus, Lima, NewarkPrerequisites and Co-requisites: Exclusions: Not open to students with credit for CSE 1111 or CSE 1113 or CSE 100 or CSE 101Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Course Goals Be competent with understanding the role of computers in our society.

Be competent with using four of the most popular kinds of software on the market: spreadsheets, database managers, presentation graphics, and word-processing.

Be familiar with using computer hardware by understanding how instructions are executed, information is input/output, binary no. system, storage devices, telecommunications.

Be familiar with using the computer as a tool for problem solving in many areas: business, manufacturing, medicine, art, education, the military, government, etc.

Be familiar with how computers have evolved, the history of the computer industry, and the dramatic speed at which computer technology has evolved and continues to do so.

Be familiar with security issues, computer crime, the implications of natural disasters on computers, inadvertent tampering, and what can be done about each.

Be exposed to social and ethical issues, including new social and ethical questions that need to be addressed because of computer technology.

Page 2: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be exposed to language issues, syntax and semantics, difficulties in using spoken languages for computers, what programming languages are, and what steps are involved in creating computer software.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to computers in society; word processing 4.0

Application software 2.0

The components of the system unit; spreadsheet application 4.0

Operating systems and utility programs 2.0

Computing input devices 2.0

Computing output devices 2.0

Storage technology; database software 4.0

Database management; communications and networks 3.0

Computers and society, security, privacy, and ethics; presentation software

4.0

Review and exams 3.0

MS Word tutorial and project

MS Excel tutorial and project

MS Access tutorial and project

MS PowerPoint tutorial and project

Aspect Percent

Homework/Quizzes 20%

Labs 30%

Midterm Exam 25%

Final Exam 25%

Title Author

Discovering Computers 2008 Shelly, Cashman, Vermaat

Office 2007: Brief Concepts and Techniques, Brief Edition Shelly, Cashman, Vermaat

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

Page 3: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

** f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

*** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 4: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1111 (Approved): Introduction to Computer-Assisted Problem Solving

Course DescriptionProblem solving techniques using productivity software; spreadsheets, formulas, conditional logic; relational databases, relational algebra; word processing; data presentation; graphics.

Prior Course Number: CSE 101Transcript Abbreviation: Intr Cmp Prob SolvGrading Plan: Letter GradeCourse Deliveries: Classroom, Greater or equal to 50% at a distanceCourse Levels: UndergradStudent Ranks: FreshmanCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 2.0 hr LabExpected out-of-class hours per week: 5.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: Columbus, Lima, Mansfield, Marion, NewarkPrerequisites and Co-requisites: Exclusions: Not open to students with credit for CSE 1112 or CSE 1113 or CSE 101 or CSE 105 or CSE 200Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: YesThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Course Goals

Course Topics

Be familiar with computer basics - hardware, software, OS, and communications.

Be familiar with using spreadsheets to solve problems - including relative/absolute cell referencing, boolean logic, reference functions and financial functions.

Be familiar with basic concepts of a relational database and use querying tools to obtain needed data.

Be familiar with using and integrating word processing and presentation graphics tools.

Be familiar with basic concepts about how the internet works.

Be familiar with applying computational skills to problems involving algebra and geometry in practical situations (i.e., direct contribution to the learning goals and objectives in the GEC quantitative and logical skills category).

Page 5: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Computer basics 1.5 1.5

Excel - writing formulas using simple functions and relative/absolute cell addressing

1.5 1.5

Excel - using Boolean logical functions - AND,OR, NOT, IF 4.0 3.0

Excel - Solving problems using multiple worksheets 2.0 1.5

Excel - using a LOOKUP function, using financial functions, charts.

4.0 4.0

Understanding relational database concepts; Access; 5.0 4.0

Powerpoint, object linking; Word, mail merge; 3.0 3.0

How the Internet works; simple webpages. 1.0 1.0

Logging into the system, file managment, email and web browsing

Solving problems using simple Excel functions and relative/absolute cell referencing

Solving problems using multiple worksheets and financial functions

Designing your own worksheet solutions to problems - including reference functions

Creating tables in MS Access; querying databases.

Using Word, Powerpoint.

Final project: integrating all tools to solve a business related problem

Aspect Percent

Lab assignments 20%

Homeworks 12%

Class participation 2%

Pop quizzes 6%

Midterm 20%

Final project 10%

Final exam 30%

Title Author

Shelly Cashman Series for Microsoft Office Bundle Including SAM Software Shelly Cashman

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

Page 6: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 7: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1112 (Approved): Introduction to Computer-Assisted Problem Solving for Construction Systems Management

Course DescriptionUsing productivity software, especially spreadsheets and databases, to solve problems for construction management; relative/absolute cell referencing, logic, functions; relational databases, querying, project integration.

Prior Course Number: CSE 105Transcript Abbreviation: Intr Computng CSMGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: FreshmanCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 2.0 hr LabExpected out-of-class hours per week: 5.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Not open to students with credit for CSE 1111 or CSE 1113 or CSE 101 or 105 or CSE 200Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Course Goals

Course Topics

Be familiar with computer basics: hardware, software, OS, and communications, including how the internet works.

Be familiar with designing and testing spreadsheets to aid in estimating all aspects of construction costs by using spreadsheet features including relative/absolute cell referencing, boolean logic, reference functions, and financial functions.

Be familiar with basic concepts of a relational database, with setting up a basic relational database including input and output forms, with writing queries to obtain needed information, and with developing reports.

Be familiar with linking of spreadsheets, databases, word processing, and presentation software to automate the development of reports and presentations.

Page 8: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Computer basics 2.0 2.5

Excel - writing formulas using simple functions and relative/absolute cell addressing; boolean functions; LOOKUP function; financial functions; charts

10.0 8.0

Access; database features of Excel 6.0 3.0

Powerpoint; object linking; Word, including mail merge 2.0 4.0

How the internet works and how to create a simple webpage 2.0 1.0

Logging into the system, file managment, email and web browsing

Solving problems using simple Excel functions and relative/absolute cell referencing

Solving problems using multiple worksheets and financial functions

Designing your own worksheet solutions to problems - including reference functions

Creating tables in MS Access

Querying an Access database

Using MS Word and MS PowerPoint

Final project: integrating all tools to solve a construction management problem

Aspect Percent

Labs 20%

Homework 12%

Class participation 2%

Pop quizzes 6%

Midterm 20%

Final project 10%

Final exam 30%

Title Author

Series for Microsoft Office Bundle Including SAM Software Shelly Cashman

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

Page 9: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 10: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1113 (Approved): Spreadsheet Programming for Business

Course DescriptionSpreadsheet modeling/programming concepts and techniques to solve business related problems; efficient/effective data handling, computational analysis and decision support.

Transcript Abbreviation: Spreadsheet ProgrgGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: FreshmanCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 7 WeekCredits: 1.0Repeatable: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: YesExam Types: EM Tests via Office of TestingAdmission Condition: NoOff Campus: NeverCampus Locations: Columbus, Lima, Mansfield, Marion, NewarkPrerequisites and Co-requisites: (Math 1130 or higher) or (Math 130 or higher under quarters)Exclusions: Not open to students with credit for CSE 1111 or CSE 1112 or CSE 2111 or CSE 101 or CSE 105 or CSE 200Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

This course teaches MS Excel and practical problem solving to develop student quantitative skills. Due to the accelerated pace of the course, students will be performing the practical lab assignments on their own. Thus, this course is suggested only for those students with strong mathematical skills and some basic familiarity with spreadsheet software.

Be competent with programming spreadsheets by appropriately using simple and nested functions, including logical and numerical functions, basic statistical functions, time and date functions, and table lookup functions.

Be competent with designing/engineering spreadsheets to minimize errors in construction and modification, including appropriately using relative/absolute cell referencing.

Be competent with aggregating and summarizing multivariate data sets, including both numerical and categorical variables.

Be competent with importing into spreadsheets from large data sets in text format and with more than one data source.

Page 11: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Be competent with applying sound spreadsheet engineering principles in business contexts such as pro forma income and balance sheets, basic analysis of large data sets, and fundamental computations for financial, marketing, and operational analysis.

Be competent with using spreadsheets to effectively communicate their purpose and process, both on the computer and on paper.

Be competent with using spreadsheets to effectively communicate results using appropriate numerical and graphical tools.

Topic Lec Rec Lab Cli IS Sem FE Wor

Course intro & spreadsheet basics - entering/editing data, formatting, filling a series

1.0

Writing formulas, order of precedence, precision vs. display, Relative/absolute referencing

1.0

Using functions:simple - SUM, MIN, MAX, COUNT, COUNTA, STD.DEV.,MEDIAN, MODE,

1.0

Functions requiring multiple arguments: ROUND, COUNTIF, SUMIF, LARGE, SMALL, RANK, SUMPRODUCT, PERCENTILE, QUARTILE

1.0

Using multiple worksheets, working with large spreadsheets (split screen, freeze panes, What-if Analysis & Goal Seek

1.0

Date/Time Functions 1.0

Boolean logic: Relational Operators, AND, OR, NOT functions

1.0

IF functions 1.0

Reference Functions (vlookup, hlookup) 1.0

Solving Larger Problems - Nesting formulas & Modeling Spreadsheet Solutions

1.0

Formula Auditing, Evaluate Formula tool, Calculation Options & other error checking

1.0

Database Concepts - Using Excel as a database: sort, filter, Subtotals, Data Tables, Pivot Tables

1.0

Importing & Exporting Data (csv), Embedding & Linking data, transposing data, Inserting symbols. Scenario Manager, Data Analysis Tools, Macros (other features)

1.0

Lab Assignment 1 - Writing Simple Spreadsheets

Lab Assignment 2 - Solving problems with functions

Lab Assignment 3 - Solving more complex problems, multiple worksheets, goal seek

Lab Assignment 4 - Using Boolean Logic in Problem Solving

Lab Assignment 5 - Modeling a spreadsheet solution for a large problems

Lab Assignment 6 - Using Excel as a database & using Excel tools

Aspect Percent

Spreadsheet programming lab assignments (done out of class) 20%

Midterm 30%

Final 50%

Page 12: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Additional Notes or CommentsLearning outcomes and topics, course delivery structure, and cr-hr designation as

requested by FCOB.

Prepared by: Debra Gross

Title Author

Course notes, Custom text D. Gross

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 13: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1114 (Approved): Introduction to databases using MS Access

Course DescriptionDatabase concepts and techniques for efficient/effective data handling, computational analysis and decision support.

Transcript Abbreviation: DBIntroWithAccessGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, Spring, May + SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.5Repeatable: NoTime Distribution: 1.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 2.5Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Not open to students with credit for CSE 1111 or 1112 or 2111 or CSE 101 or CSE 105 or CSE 200. Cross-Listings:

Course Rationale: GIS requested a database course specifically for their majors; and for other students

interested in an introductory relational database course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

Not intended for CIS or CSE majors. Not intended for engineering majors.

Be familiar with concepts of relational databases.

Be familiar with solving problems using MS Access Query tools including selection queries, sorts, aggregation, calculations,inner/outer joins, and situations with datasets containing many-to-many relationships using multiple queries.

Be familiar with using MS Access to create data tables, reports, and forms.

Be competant using macros.

Be exposed to SQL.

Page 14: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

ABET-EAC Criterion 3 Outcomes

Be exposed to tools that facilitate lifelong learning of technology.

Topic Lec Rec Lab Cli IS Sem FE Wor

Relational database management systems 1.0 1.0

Table Design, including primary/foreign keys, and referential data integrity

3.0 3.0

Table Relationships (inner and outer joins) 3.0 3.0

Use the query tool to find/organize information 3.0 3.0

Access Macros 1.0 1.0

SQL 1.0

Forms and Reports 2.0 2.0

Lab 1 Introduction to Access

Lab 2 Database Design

Lab 3 Simple Database Queries

Lab 4 Advanced Database Queries

Lab 5 Inner Joins

Lab 6 Advanced Inner Joins

Lab 7 Outer Joins

Lab 8 Data Integerity

Lab 9 Advanced Outer Joins

Lab 10 Forms and Reports

Lab 11 Macros

Lab 12 Putting it all together

Aspect Percent

Homework Assignments 15%

Lab Assignments 25%

Midterm Exam 20%

Class Attendance and Participation 10%

Final Exam 30%

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

Page 15: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Kathryn Reeves

Course Contribution College OutcomeCourse Contribution College Outcome

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 16: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1211 (Approved): Computational Thinking in Context: Images, Animation, and Games

Course DescriptionIntroduction to computational thinking, focusing on problem solving and programming concepts and skills needed to manipulate digital images and to create interactive graphics, animations, and games; creativity and imagination encouraged.

Prior Course Number: CSE 203 and CSE 204Transcript Abbreviation: Comput Thnkng: ArtGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: FreshmanCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 1.5 hr LabExpected out-of-class hours per week: 5.5Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Not open to students with credit for CSE 203 or CSE 204Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

Recommended for students with little or no computer programming experience or who are not confident in their programming background.

Be competent with using basic constructs provided by high-level imperative programming languages: sequencing, selection, and iteration.

Be familiar with algorithmic thinking.

Be familiar with simple media manipulation algorithms and how to apply them to solve interesting media manipulation problems.

Be familiar with using basic data structure interfaces such as arrays or lists in simple programs.

Page 17: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Be familiar with procedural composition.

Be familiar with many of the possibilities available for creative combination in programmed interactive animations.

Be familiar with working in a window-based computing environment.

Be familiar with using a modern interactive program development environment.

Be exposed to the virtual machine model of modern computer systems.

Topic Lec Rec Lab Cli IS Sem FE Wor

Course introduction, software installation, and basic concepts 1.5 1.0

Introduction to programming with media, images, colors, encodings

3.0 2.5

Loops, new definitions, simple image manipulations 3.0 2.5

Nested loops, conditionals, Boolean expressions, advanced image manipulations

6.0 4.0

Animation via sprite movement using iteration 1.5 1.5

Sequencing, iteration, and drawing 1.0 1.0

Selection and collision detection and polled input for user interaction

1.0 2.0

Managing sprite velocities 1.0 1.0

Course project: discussion and evaluation of preliminary ideas 2.0 1.0

Course project: discussion of problems encountered and possible solutions

2.0 1.0

Course project: presentation and evaluation of final projects 3.0 1.0

Midterms, quizzes, and exam reviews 3.0

Make a collage of several pictures using various transformations

Generate an animation, e.g., using digital image techniques learned earlier

Reproduce an interesting digital image effect from Photoshop/Gimp

"Create an interesting scene" (placement of sprites and words in the window using its coordinate system; program-controlled drawing using sequencing)

"Create an interesting animation" (movement of sprites by iterative relocation)

"Create an interesting animation where something bounces" (collision detection using continuation conditions)

"Create an interesting interactive situation" (user-influenced movement of sprites using selection)

Course project: "create an interactive education/information environment or a game"

Aspect Percent

Quizzes 5%

Midterm Exams 15%

Final Exam 20%

General Attendance 7%

Attendance at Project Presentations 3%

Homeworks 10%

Lab Assignments 20%

Page 18: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Aspect PercentAspect Percent

Course Project 20%

Title Author

Introduction to Computing and Programming in Python: A Multimedia Approach, Pearson Prentice Hall, 2005, ISBN 0-13-117655-2

Mark Guzdial

Phrogram (Windows Computer Program (Software)) The Phrogram Company

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 19: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1212 (Approved): Computational Thinking in Context: Mobile Applications

Course DescriptionIntroduction to computational thinking, focusing on problem solving and programming concepts and skills needed to develop applications for mobile platforms; creativity and imagination encouraged.

Transcript Abbreviation: Comp Thkng: MobileGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: FreshmanCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 1.5 hr LabExpected out-of-class hours per week: 5.5Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

Recommended for students with little or no computer programming experience or who are not confident in their programming background.

Be competent with using basic constructs provided by high-level imperative programming languages: sequencing, selection, and iteration.

Be familiar with algorithmic thinking.

Be familiar with using basic data structure interfaces such as arrays or lists in simple programs.

Be familiar with procedural composition.

Be exposed to procedural abstraction by defining new blocks.

Be familiar with many of the possibilities available for creative combination in programmed mobile applications.

Page 20: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with working in a window-based computing environment.

Be familiar with using a modern interactive program development environment.

Topic Lec Rec Lab Cli IS Sem FE Wor

Course introduction, software installation, and basic concepts 1.5 1.0

Introduction to programming for mobile platforms 3.0 2.5

Loops, new definitions, simple controls 3.0 2.5

Loops, conditionals, Boolean expressions, advanced controls 6.0 4.0

Nested loops, complex control structures 3.0 2.0

User interaction with buttons and text boxes 3.0 2.0

Course project: discussion and evaluation of preliminary ideas 2.0 1.0

Course project: discussion of problems encountered and possible solutions

3.0 1.0

Course project: presentation and evaluation of final projects 3.0 1.0

Students will build a drawing program similar to etch-a-sketch, including shaking to clear screen. Students will build a quiz-game using radio buttons and timers for user interaction

Aspect Percent

Quizzes 5%

Midterms 15%

Final 20%

Attendance 7%

Attendance at Project Presentations 3%

Homeworks 10%

Lab Assignments 20%

Project 20%

Title Author

Custom handouts and support documentation

On-line App Inventor manual, guide, and tutorials, all available through: http://appinventor.googlelabs.com/about/index.html

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

Page 21: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Rajiv Ramnath

Course Contribution College OutcomeCourse Contribution College Outcome

* d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 22: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1221 (Approved): Introduction to Computer Programming in MATLAB for Engineers and Scientists

Course DescriptionIntroduction to computer programming and problem solving techniques with applications in engineering and the physical sciences; algorithm development; programming lab experience.

Prior Course Number: CSE 205Transcript Abbreviation: Prgrmng MATLABGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 1.0 hr Lec, 2.0 hr LabExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: YesExam Types: Departmental ExamsAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Engr 1181 or Engr 1281 or Engr 181 or Engr 191 or ((Math 1151 or Math 1161 or Math 151 or Math 161) and (Phys 1250 or Phys 131))Exclusions: Not open to students with credit for Engr 1221 or CSE 205Cross-Listings: Engr 1221

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

MATLAB is taught.

Be competent with writing simple MATLAB programs performing numerical calculations

Be competent with use of basic constructs provided by high-level imperative programming languages: sequencing, selection, and iteration

Be familiar with algorithmic thinking

Be familiar with use of computational approaches to solving problems in science and engineering

Page 23: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with using basic data structures such as arrays

Be familiar with procedural composition

Be exposed to computational science concepts, including simulation, optimization, and data analysis

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to computation, concept of algorithm 2.0

Variables, expressions and assignment 1.0 2.0

Selection statements: if, switch 1.0 3.5

Booleans, strings 1.0 2.0

Matrices and indexing 1.0 3.5

Loops: for and while; use of arrays 3.0 6.0

Graphing, input/output with files, scripts 1.0 2.0

Functions 1.0 3.5

Higher order operators on matrices 1.0 3.5

Review/exams 2.0

Aspect Percent

Homework 20%

Laboratory Assignments 30%

Two Midterm Examinations 25%

Final Examination 25%

Title Author

Introduction to Scientic Computation and Programming Daniel T. Kaplan

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 24: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: P Sadayappan

Page 25: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1222 (Approved): Introduction to Computer Programming in C++ for Engineers and Scientists

Course DescriptionIntroduction to computer programming and to problem solving techniques using computer programs with applications in engineering and the physical sciences; algorithm development; programming lab experience.

Prior Course Number: CSE 202Transcript Abbreviation: Prgrmng C++Grading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 1.5 hr LabExpected out-of-class hours per week: 5.5Graded Component: LectureCredit by Examination: YesExam Types: Departmental ExamsAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: co-req: Math 1151 or Math 1161Exclusions: Not open to students with credit for Engr 1281.01 or Engr 1281.02 or CSE 202Cross-Listings: Engr 1222

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

C++ is taught.

Be competent with writing simple C++ programs performing numerical calculations.

Be competent with using basic C++ constructs; declarations and various statements including loops and conditionals.

Be familiar with using C++ functions.

Be familiar with using C++ arrays.

Be familiar with using file input and output.

Page 26: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Be exposed to algorithms.

Be exposed to pointers.

Be exposed to the C++ string and vector classes.

Be exposed to defining C++ classes.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction, simple input and output, cin and cout. 2.0 1.5

Variables and assignments. 2.0 1.5

Selection statements, if, then, else. 2.0 1.5

Loops, for and while. 3.0 3.0

File input and output. 2.0 1.5

Formatting output. 1.0 1.5

Functions 3.0 1.5

Arrays. 4.0 3.0

2D arrays. 1.0 1.5

Pointers, new and delete[] operators. 2.0 1.5

C++ string and C++ vector classes. 2.0 1.5

Intro to defining C++ classes. 2.0

Programming assignment (due week 3): Download two C++ programs which contain compilation errors and fix the compilation errors so that the programs perform as specified.

Programming assignment (due week 4): Write a program that computes and outputs the intersection point of the two lines {(x,y): ax + by + c = 0} and {(x,y): a'x + b'y + c' = 0}. (Output a message if the lines are parallel.)

Programming assignment (due week 6): Write a program that reads in two integers a and b and computes and outputs all the prime numbers between a and b.

Programming assignment (due week 8): Let f be the function f(x,y) = cos(x)*sin(y)*ln(x+y+1). Write a program that reads in integers n and m and computes and writes f(i/5,j/5) to the file "outdata.txt" for 0 <= i < n and 0 <= j < m. Visualize the surface defined by the output of your program using Matlab.

Programming assignment (due week 10): The main routine of a program is provided in a file named vector_angle_template.cpp. Implement the five functions, normalize(), dot_product(), radians2degrees(), compute_vector_angle(), and output_angle() called by this main routine. The resulting program should read in a pair of 2D vectors and output the angle between the vectors in degrees.

Programming assignment (due week 12): Write a program that reads from a file a list of numbers representing the function values and outputs the original data, smoothed data and the first and second derivatives of the data points. (The formulas for smoothing the data and computing the first and second derivatives are provided in the assignment instructions.)

Programming assignment (due week 14): Write a program that reads in a list of integers, removes any duplicates from the list (leaving only the first occurrence of each integer) and then outputs the new list. Elements of the new list should be in the same order as in the original list.

Lab (week 1): Write a program to print your name, favorite color, favorite song and favorite food.

Lab (week 2): Write a program that reads an integer r and computes and outputs the surface area and volume of a sphere with radius r.

Lab (week 3): Write a program that reads in the coordinates of two points, computes the slope of the line through the two points, and outputs the message "Negative slope", "Zero slope", "Positive slope" or "Infinite slope" depending upon whether the slope is negative, zero, positive or infinite.

Lab (week 4): Write a program that reads in n numbers and outputs their average and standard deviation.

Page 27: CSE 1110 (Approved): Introduction to Computing Technology

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Lab (week 5): Write a program which reads in numbers a and b and computes a root of (a x^2 - b x ln(x)) up to a given precision \epsilon. (The incremental-search (bisection) algorithm for root finding is described in the text.)

Lab (week 6): Write a program that reads in numbers from a file and prints each number and its cosine to a second file.

Lab (week 7): Write a program which prints a table of conversions from radians to degrees starting at 0, incrementing by pi/10 and ending at 2*pi. Format the output so that the decimal points in each column line up.

Lab (week 8): The main routine of a program is provided in file triangle_area_template.cpp. Implement three functions, diff(), determinant() and output_area() called by the main routine. The resulting program should read in the three vertices of a triangle and output the area of the triangle.

Lab (week 9): Write a program to read in an array of integers and then output the elements of the array in reverse order.

Lab (week 10): The main routine of a program is provided in file distance_template.cpp. Write functions which compute the L1, L2 and L_inf distance between two n dimensional points given as arrays.

Lab (week 11): A distance matrix M is a matrix which stores distances to a point (x,y). More specifically, M[i,j] is the distance from (i,j) to (x,y). Write a program which reads the coordinates (x,y) of a point p and an integer N and computes an NxN distance matrix representing distances to p. Output the distance matrix so that decimal points in each column line up.

Lab (week 12): Write a program which reads in a list of numbers and then reorders the list so that all the negative numbers precede all the positive ones. Allocate and free arrays used in your program using the new and delete[] operations. (The algorithm for reordering uses three arrays: one containing the negative numbers, one containing the positive numbers and one containing the final result. The algorithm is given in the lab instructions.)

Lab (week 13): Write a program which reads text from a file and formats the text so that words are separated by a single blank space and each line has at most 80 characters.

Aspect Percent

Programming assignments. 30%

Labs 20%

Two midterms 25%

Final 25%

Title Author

Engineering Problem Solving with C++ Etter and Ingber

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 28: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Raphael Wenger

Page 29: CSE 1110 (Approved): Introduction to Computing Technology

CSE 1223 (Approved): Introduction to Computer Programming in Java

Course DescriptionIntroduction to computer programming and to problem solving techniques using computer programs; programming lab experience.

Prior Course Number: CSE 201Transcript Abbreviation: Prgrmng JavaGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: YesExam Types: Advanced Placement Program, Departmental ExamsAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Not open to students with credit for CSE 201Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

Not recommended for students planning to continue into CSE 2221

Be competent with using basic coding features provided by high-level imperative programming languages.

Be competent with writing computer programs to implement given simple algorithms.

Be familiar with analyzing simple real-life problems and choosing appropriate algorithms for their solution.

Be familiar with using basic data structures such as arrays in simple programs.

Be familiar with using methods and classes to help produce well-structured programs.

Page 30: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with reading and programming for APIs.

Be familiar with designing simple text-oriented user interfaces.

Be familiar with working in a window-based computing environment.

Be exposed to the services provided by an operating system.

Be exposed to the virtual machine model of modern computer systems.

Be exposed to data abstraction concepts and other more advanced programming ideas.

Topic Lec Rec Lab Cli IS Sem FE Wor

Course introduction and basic concepts 2.5 1.0

Primitive types and expressions; String; basic I/O 2.5 1.5

Flow of control and Boolean expressions 4.0 2.0

Defining methods 4.0 2.0

Arrays 3.0 1.5

Basic exception handling and standard Java I/O 2.5 1.5

Classes and objects 6.0 4.0

Midterm and exam reviews 3.0

Primitive types, assignment, arithmetic expressions, simple I/O

Control structures

Methods

Arrays

Standard I/O

Classes and objects

Aspect Percent

Midterm 20%

Final exam 30%

Homeworks 10%

Labs 35%

Class participation 5%

Title Author

Java: An Introduction to Computer Science & Programming (3rd Edition) Savitch, W.

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

Page 31: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 32: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2021 (Approved): Introduction to Modeling and Simulation

Course DescriptionConcepts of modeling and simulation; develop MATLAB skills to explore modeling concepts; project: design, implementation, verification/validation of model; oral and written project report.

Transcript Abbreviation: Modelng&SimulatnGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, JuniorCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Math 1151 (152) or equivalent, Phys 1250 (131)Exclusions: Not open to students with credit for ENGR 1221 or CSE 1221Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

MATLAB is taught.

Be competent with discussing the importance of modeling to science and engineering, the history and need for modeling, the cost effectiveness of modeling, the time-effect of modeling;

Be familiar with defining modeling terms, listing questions that would check/validate model results, describing future trends and issues in science and engineering, and identifying specific examples of modeling in science and engineering;

Be familiar with utilizing the Modeling Process to identify key parameters of a model, estimating model outcomes, and utilizing MATLAB to implement the mathematical representation of the model;

Be familiar with constructing difference-based computer models, conducting and explaining the transformation of continuous functions and dynamics equations into discrete computer representations;

Be competent with writing simple MATLAB programs performing numerical calculations as needed for modeling and simulation; be competent with implementing finite difference modeling equations and creating simulations in MATLAB;

Page 33: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with visualizing empirical data and the fitting function using MATLAB;

Be familiar with identifying different types of models and simulations; describing iterative development of a model; explaining use of models & simulations for hypothesis testing;

Be familiar with discussing methods for reviewing models, their verification and validation; differences between predictions of model, actual results and relevance of these differences to the problem; suitability/limits of model;

Be familiar with documenting the development and implementation of a model and presenting it in oral and written form.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to modeling; modeling concepts and definitions 4.0

Introduction to MATLAB, scripts 3.0

MATLAB arrays, array math 4.0

MATLAB programming mechanisms (conditionals, loops, etc.)

4.0

MATLAB i/0 1.0

Advanced graphing in MATLAB; curve fitting 4.0

Linear models 3.0

Nonlinear functions; modeling examples 4.0

Stochastic models 3.0

Final project overview and Requirements 3.0

Accuracy and precision in modeling; verification and validation; project plan

3.0

Project implementation; Project presentations 4.0

Review/exams 2.0

Aspect Percent

Homework 15%

Project 35%

Midterm Examination 1 12%

Midterm Examination 2 13%

Final Examination 25%

Title Author

Introduction to Computational Science: Modeling and Simulation for the Sciences Angela B. Shiflet and George W. Shiflet

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

Page 34: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Neelam Soundarajan

Course Contribution College OutcomeCourse Contribution College Outcome

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 35: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2111 (Approved): Modeling and Problem Solving with Spreadsheets and Databases

Course DescriptionSpreadsheet and database modeling/programming concepts and techniques to solve business related problems; efficient/effective data handling, computational analysis and decision support. Addl topics:computer concepts, networking, project integration.

Prior Course Number: CSE 200Transcript Abbreviation: Spreadsheets & DBsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, Spring, May + SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 1.0 hr Rec, 1.0 hr LabExpected out-of-class hours per week: 5.0Graded Component: LectureCredit by Examination: YesExam Types: EM Tests via Office of TestingAdmission Condition: NoOff Campus: NeverCampus Locations: Columbus, Lima, Mansfield, Marion, NewarkPrerequisites and Co-requisites: (Math 1130 or higher) or (Math 130 or higher under quarters)Exclusions: Not open to students with credit for CSE 1111 or CSE 1112 or CSE 101 or CSE 105 or CSE 200Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: YesThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

This course is a GEC for Quantitative and Logical Skills.

Be competent with programming spreadsheets by appropriately using simple and nested functions, including logical and numerical functions, basic statistical functions, time and date functions, and table lookup functions.

Be competent with designing/engineering spreadsheets to minimize errors in construction and modification, including appropriately using relative/absolute cell referencing.

Be competent with aggregating and summarizing multivariate data sets, including both numerical and categorical variables.

Page 36: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Be competent with importing into spreadsheets from large data sets in text format and with more than one data source.

Be competent with applying sound spreadsheet engineering principles in business contexts such as pro forma income and balance sheets, basic analysis of large data sets, and fundamental computations for financial, marketing, and operational analysis.

Be competent with using spreadsheets to effectively communicate their purpose and process, both on the computer and on paper.

Be competent with using spreadsheets to effectively communicate results using appropriate numerical and graphical tools.

Be familiar with concepts of relational databases

Be familiar with using MS Access to create data tables, simple reports, and forms.

Be competent with solving problems using Access Query tools including selection queries, sorts, aggregation, calculations, inner/outer joins, and situations with datasets containing many-to-many relationships using multiple queries.

Be exposed to basic concepts of computing, components of a computer, and concepts of how the internet works.

Be exposed to tools that facilitate lifelong learning of technology.

General Education overall goal statement: Students develop skills in quantitative literacy and logical reasoning including ability to identify valid arguments, use mathematical models, draw conclusions and critically evaluate results based on data.

General Education goal statement for Basic Computational Skills: Students demonstrate computational skills and familiarity with algebra and geometry, and apply these skills to practical problems.

General Education goal statement for Mathematical and Logical Analysis: Students comprehend mathematical concepts and methods to construct valid arguments, understand inductive and deductive reasoning, and increate general problem solving skills.

General Education goal statement for Data Analysis: Students understand basic concepts of statistics and probability, comprehend methods needed to analyze and critically evaluate statistical arguments, and recognize importance of statistical ideas.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to Computing - hardware, software, operating system.

2.0 1.0

Spreadsheet Basics - creating a simple spreadsheet, relative/absolute cell referencing, using functions, using multiple worksheets; simple data analysis.

5.0 3.0 3.0

Decision Making with Spreadsheets - using Boolean logical operators/functions.

2.0 1.0 1.0

Financial and Date Functions - solving problems with variable inputs, financial and date computations using reference.

3.0 1.0 2.0

Programming/Modeling - using spreadsheets and formula auditing for complex problems.

1.0 1.0 1.0

Introduction to Databases - theory and use of MS Access. 2.0 1.0

Writing Queries in Access - select queries, sorting, aggregating, writing expressions, using inner and outer joins.

3.0 2.0 2.0

Summarizing Data - using data with many-to-many relationships and advanced querying techniques.

1.0 1.0 0.5

Using MS PowerPoint - displaying data from Excel and Access; Object Linking and Embedding.

1.0 0.5

Using Excel as a Database - importing data, Excel data tables, filtering, sorting, subtotals, pivot tables; using text functions to manipulate data; advanced Excel tools: scenario manager, data analysis tools, and macros.

3.0 1.0 1.0

Additional Topics - MS Office integration using MS Word mailmerge; lifelong learning; finding information on new/unknown tools in computing.

1.0 0.5

Basics of Computer Networking - WWW architecture and protocols, and writing your own webpage.

2.0 0.5

Page 37: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Additional Notes or Comments

Lab 1 - Using the CSE computing environment, web Search on ethical use of technology. Creating a simple spreadsheet.

Lab 2 - Excel basics & writing simple formulas.

Lab 3 - Data analysis using Excel functions.

Lab 4 - Solving Problems with multiple worksheets& charts - requiring unit conversions (area/volume etc).

Lab 5 - Using Boolean Logic in Decision Making.

Lab 6 - Using spreadsheets with variable inputs (Reference functions) and financial calculations (Financial functions).

Lab 7 - Analysis of large problems and design/implementation of a spreadsheet solution.

Lab 8 - Using MS Access - tables, Preset Queries, Forms & Reports.

Lab 9 - Writing simple Queries.

Lab 10 - Advanced Querying in Access to relate data with many-many relationships.

Lab 11 - Data Retrieval & Analysis & Presentation using Access, Excel & PowerPoint .

Lab 12 - Importing Data & Data Manipulation in Excel.

Lab 13 - Mailmerge, Excel tools & Web page.

Aspect Percent

Labs 20%

Exams 40%

Final 40%

Title Author

Course notes, Custom text D. Gross

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 38: CSE 1110 (Approved): Introduction to Computing Technology

Students will solve problems within recitation, assigned homework, graded labs, and exams

which require them to perform data summarization (sum, average, count, min, max), pro-

rata proportionality (algebra) and calculation of areas and volumes; to analyze data into

groupings (sumif, countif & averageif functions); to formulate specific criteria to

answer specific questions requiring the use of relational and boolean logical operations

(AND, OR, NOT, IF) and logical constructs (none of, only) requiring combinations on

boolean logical operations. Students will be presented with large datasets as part of

their practical graded lab assignments requiring them to summarize and organize

information. They will be asked to look at two sets of data to see which is less

variable, which is closer to the desired outcome and make recommendations based on the

outcomes. They will also analyze outlying data be evaluation top and bottom 10 values

and compare percent change among datasets.

Prepared by: Bruce Weide

Page 39: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2112: Modeling and Problem Solving with Spreadsheets and Databases for Engineers

Course DescriptionSpreadsheet and database modeling/programming concepts and techniques to solve business and engineering related problems; efficient/effective data handling, computational analysis and decision support.

Transcript Abbreviation: Spreadsheet&DB4EngGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, JuniorCourse Offerings: Autumn, Spring, May + SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 1.5 hr Lec, 1.5 hr LabExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: 1211 (203) or 1212 or 1221 (205) or 1222 (202) or 1223 (201) or 204 or EnGraph 167 or Engr 1221, or 1281.01H, or 1281.02H, or CSE Placement Level A. Pre-req or Concur: Math 1151 or 1161.01 or 1161.02Exclusions: Not open to students with credit for CSE 2111, 1111 or 1112 or 1113 or CSE 101 or CSE 105 or CSE 200. Cross-Listings:

Course Rationale: ISE requested a spreadsheet and database course specifically for their majors and for

engineers in general.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

General Information

Course Goals

This course is a GEC for Quantitative and Logical Skills.

Not intended for CSE or CIS majors.

Be competent with programming spreadsheets by appropriately using simple and nested functions, including logical and numerical functions, basic statistical functions, time and date functions, and table lookup functions.

Page 40: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Be competent with designing/engineering spreadsheets to minimize errors in construction and modification, including appropriately using relative/absolute cell referencing.

Be competent with aggregating and summarizing multivariate data sets, including both numerical and categorical variables.

Be competent with importing into spreadsheets from large data sets in text format and with more than one data source.

Be competent with applying sound spreadsheet engineering principles in business contexts such as pro forma income and balance sheets, basic analysis of large data sets, and fundamental computations for financial, marketing, and operational analysis.

Be competent with using spreadsheets to effectively communicate their purpose and process, both on the computer and on paper.

Be competent with using spreadsheets to effectively communicate results using appropriate numerical and graphical tools.

Be familiar with concepts of relational databases.

Be familiar with using MS Access to create data tables, simple reports, and forms.

Be competent with solving problems using Access Query tools including selection queries, sorts, aggregation, calculations, inner/outer joins, and situations with datasets containing many-to-many relationships using multiple queries.

Be exposed to tools that facilitate lifelong learning of technology.

General Education overall goal statement: Students develop skills in quantitative literacy and logical reasoning including ability to identify valid arguments, use mathematical models, draw conclusions and critically evaluate results based on data.

General Education goal statement for Basic Computational Skills: Students demonstrate computational skills and familiarity with algebra and geometry, and apply these skills to practical problems.

General Education goal statement for Mathematical and Logical Analysis: Students comprehend mathematical concepts and methods to construct valid arguments, understand inductive and deductive reasoning, and increase general problem solving skills.

General Education goal statement for Data Analysis: Students understand basic concepts of statistics and probability, comprehend methods needed to analyze and critically evaluate statistical arguments, and recognize importance of statistical ideas.

Topic Lec Rec Lab Cli IS Sem FE Wor

Spreadsheet Design, IF and Boolean Functions, Scenario Manager and Goal Seek

3.0 3.0

More Boolean function options, calculations and reference functions.

3.0 3.0

Excel Solver, Pivot tables, graphing 2.0 2.0

Excel Statistical functions, Date functions, Text Functions and Data validation techniques

3.0 3.0

Programming in Excel VBA 3.0 3.0

Introduction to Database Design 1.0 1.0

Writing Queries in Access - select queries, sorting, aggregating, writing expressions, using inner and outer joins.

3.0 3.0

Summarizing Data - using data with many-to-many relationships and advanced querying techniques.

1.0 1.0

Access Forms and Reports, Macros, and Programming in Access

5.0 5.0

Using Excel as a Database - importing data, Excel data tables, filtering, sorting, subtotals, pivot tables; using text functions to manipulate data; advanced Excel tools: scenario manager, data analysis tools, and macros.

2.0 2.0

Lab 1 - Spreadsheet Design/IF and Boolean Functions

Lab 2 - Countif(s)/Sumif(s)/Large/Small/Rank

Lab 3 - Comprehensive Excel

Lab 4 - Data Analysis using Solver/Graphs/Pivot Tables

Page 41: CSE 1110 (Approved): Introduction to Computing Technology

Grades

ABET-EAC Criterion 3 Outcomes

Prepared by: Kathryn Reeves

Lab 5 - Working with Dates and Statistical Functions

Lab 6 - Data Validation/Text Functions

Lab 7 - Macros and Programming using Excel VBA

Lab 8 - Database Design and Database Queries

Lab 9 - Inner and Outer Joins

Lab 10 - Access Forms and Reports

Lab 11 - Macros and VBA in Access

Lab 12 - Using Excel as a Database

Aspect Percent

Homework and In-Class Assignments 15%

Lab Assignments 25%

Quizzes (2@10% each) 20%

Midterm Exam 20%

Final Exam 20%

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 42: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2122 (Approved): Data Structures Using C++

Course DescriptionIntroduction to programming in C++ and object-oriented programming; encapsulation using classes, inheritance, etc.

Prior Course Number: CSE 230Transcript Abbreviation: Data Struct C++Grading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 1222 or CSE 202Exclusions: Not open to students with credit for CSE 230Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Course Goals

Course Topics

Be competent with concepts of object-oriented programming and abstraction mechanisms.

Be competent with the concepts of classes, member functions and variables, constructors, destrctors, inheritence, and access mechanisms.

Be competent with the concepts of prototype functions, functions, parameters, return values, overloading, and operators.

Be familiar with control structures, dynamic memory allocation, arrays, and pointers.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to course computing environment 4.0

Basic features, getting started, basic data types 4.0

Page 43: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE WorTopic Lec Rec Lab Cli IS Sem FE Wor

Advanced data types, functions without returned values 4.0

Classes, members, constructors 6.0

Friends, destructors, returned values in functions 6.0

Operators 3.0

Inheritance 4.0

Flow of control, dynamic memory allocation, arrays and pointers

8.0

Reviews and midterm exam 4.0

Arrays and functions

Classes

I/O streams

Inheritance

Aspect Percent

Programming labs 30%

Midterms 30%

Final exam 40%

Title Author

Problem Solving with C++ Walter Savitch

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 44: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2123 (Approved): Data Structures Using Java

Course DescriptionSubroutines and modular programming; searching; basic data structures; recursion; introduction to sequential files.

Prior Course Number: CSE 214Transcript Abbreviation: Data Struct JavaGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 1223 or CSE 201Exclusions: Not open to students with credit for CSE 214Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Course Goals

Course Topics

Be competent with modular design and structured programming techniques

Be competent with commonly used data structures.

Be competent with how to design and implement abstract data types.

Be competent with sequential file I/O.

Topic Lec Rec Lab Cli IS Sem FE Wor

Object-oriented programming 9.0

Recursion 4.0

Sorting and binary search 8.0

Page 45: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE WorTopic Lec Rec Lab Cli IS Sem FE Wor

Linked lists 6.0

Stacks 3.0

Queues 3.0

Binary trees 4.0

Quizzes, exams, and review 4.0

Manipulating strings and file I/O

Towers of Hanoi using recursion

Sorting and recursion

Linked lists and databases

Trees and traversals

Aspect Percent

Homeworks 10%

Labs 25%

Quizzes 10%

Midter 20%

Final 35%

Title Author

Lecture Notes Instructor

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 46: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2133 (Approved): Business Programming with File Processing

Course DescriptionBusiness data processing principles and programming: sequential file processing algorithms, sorting, data validation; COBOL is taught.

Prior Course Number: CSE 314Transcript Abbreviation: File Prcsng COBOLGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, JuniorCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Prereq: 2123 (214).Exclusions: Not open to students with credit for 314.Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Course Goals

Course Topics

Be competent with the following algorithms: single and multiple control breaks; matching, verification, and merge/purge; 1- and 2-dimensional tables

Be competent with designing and coding of well-structured COBOL programs and subprograms to process sequential files using system flowcharts, hierarchy (structure) charts, flowcharts, pseudocode, print or screen charts

Be familiar with the COBOL reference card

Be familiar with debugging techniques including using the COBOL debugger

Be exposed to testing and data validation techniques

Be exposed to the definition, use and creation of makefiles

Page 47: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

Topic Lec Rec Lab Cli IS Sem FE Wor

Vocabulary; columns; margins; basic coding rules; typing in, compiling and running a COBOL program

3.0

Identification and environment division; data names; symbols; data division - file section; working storage

3.0

Picture clauses; value clauses; group items; literals; constants; figurative constants; non-numeric literals

3.0

Procedure division statements w/ file I/O (open, close, read, write); move statement (simple)

3.0

Perform statement (simple); putting it together; display; accept omitted; stop run; move statement rules; edited I/O

3.0

Compute and other arithmetic statements; accept time and date; scope terminators

3.0

Control structures; relational operators and relational expressions, sign and class tests; logical operators (AND,OR, NOT); implied conditions; condition names; evaluate statement

4.0

Single control break algorithm; string, unstring; double control break algorithm; debugging techniques; perform statement variations

6.0

Redefines; initialize; 2-dimensional tables; sort logic 3.0

Subprograms; sort/merge files 4.0

Makefiles; testing and data validation techniques; additional sequential processing issues

4.0

Type in, compile and run a given COBOL program

Simple report style COBOL program

Arithmetic statements and Edited I/O

Single Control Break

Double Control Break

Table (i.e., Array) processing

Sort, Search, Merge and Makefiles

Aspect Percent

Participation 5%

Projects 30%

Quizzes 10%

Midterm 25%

Final 30%

Title Author

COBOL for the 21st Century Stern, Stern & Ley

Page 48: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 49: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2193 (Approved): Individual Studies in Computer Science and Engineering

Course DescriptionPlanning, conducting, and reporting a special study appropriate to the needs of the students.

Prior Course Number: CSE 493Transcript Abbreviation: Indv Studies CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Planning, conducting, and reporting a special study appropriate to the needs of the students.

Page 50: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 51: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2193H (Approved): Individual Studies in Computer Science and Engineering

Course DescriptionPlanning, conducting, and reporting a special study appropriate to the needs of the students.

Transcript Abbreviation: Hon Indv Stud CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Planning, conducting, and reporting a special study appropriate to the needs of the students.

Page 52: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 53: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2194 (Approved): Group Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Prior Course Number: CSE 294, CSE 494Transcript Abbreviation: Group Studies CSEGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 54: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 55: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2194H (Approved): Group Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Transcript Abbreviation: Hon Grp Stud CSEGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 56: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 57: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2221 (Approved): Software I: Software Components

Course DescriptionIntellectual foundations of software engineering; design-by-contract principles; mathematical modeling of software functionality; component-based software from client perspective; layered data representation.

Prior Course Number: CSE 221, part of CSE 222Transcript Abbreviation: SW I: ComponentsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 3.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: YesExam Types: Departmental ExamsAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 1211 or CSE 1212 or CSE 1221 or CSE 1222 or CSE 1223 or CSE 201 or CSE 202 or CSE 203 or CSE 204 or CSE 205 or EG 167 or CSE Placement Level A; co-req: Math 1151 or Math 1161Exclusions: Not open to students with credit for CSE 321Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

General Information

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Java is taught and used

Page 58: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Be familiar with the reasons it is important that software be "correct", i.e., why "good enough" is not good enough when it comes to software quality

Be familiar with the reasons for designing software to minimize the impact of change, and why it is difficult to achieve this

Be familiar with using design-by-contract principles to write software that uses existing software components based on their interface contracts

Be familiar with using interface contracts that are described using simple predicate calculus assertions with mathematical integer, string, finite set, and tuple models

Be familiar with extending existing software components by layering new operations on top of existing operations

Be familiar with layering new software components' data representations on top of existing software components

Be familiar with using simple recursion

Be familiar with using simple techniques to test application software, layered implementations of extensions, and layered data representations, including developing and carrying out simple specification-based test plans

Be familiar with using simple techniques to debug application software, layered implementations of extensions, and layered data representations

Be exposed to using basic algorithm analysis techniques and notations to analyze and express execution times of operations whose implementations involve straight-line code and simple loops

Be competent with writing Java programs in a procedural style using the basic control structures, primitive value types, character strings, and input/output

Be familiar with writing Java programs using core language features including interfaces, classes, inheritance, and assertions

Be familiar with writing Java programs that use software components similar to (but simplified from) those in the Java collections framework

Be familiar with using an understanding of the difference between value types and reference types to trace the execution of simple Java code in situations involving both flavors of types, including their use as parameters to method calls

Be familiar with testing using JUnit

Be familiar with illustrating key dependencies between software components using UML class diagrams (or similar)

Be familiar with using the most important features of a modern IDE, e.g., Eclipse

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to Java; value types; control structures; basic input/output; introduction to Eclipse

6.0 2.0

Software components; packages; interfaces; design-by-contract; classes; reference types; methods, calls, and parameter passing; equals and toString methods; Text component; Natural component; introduction to UML class diagrams (or similar)

9.0 3.0

Layered implementations of new Text and Natural methods; introduction to recursion; introduction to specification-based testing and JUnit

6.0 2.0

Generics; Sequence component; Queue component; Stack component; List component; layered implementations of new Sequence, Queue, Stack, and List methods; more recursion

6.0 2.0

Set component; Map component; iterators 6.0 2.0

Layered data representation concepts; representation invariants and abstraction functions; Natural representation using a Stack; Sequence/Queue/Stack representation using a List

6.0 2.0

Layered methods for Text (e.g., replaceSubstring, concatenate, containsSubstring, removeFirstWord, ...)

Page 59: CSE 1110 (Approved): Introduction to Computing Technology

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Layered methods for Natural (e.g., multiply, power, root)

HTML table generator from series of heart-rate measurements

HTML "pretty-print" generator for some simple language (e.g., ancient mark-up for italics, bold, etc.)

HTML glossary generator, with internal links from definitions to other terms appearing in them

Sequence representation using two Stacks

Aspect Percent

Homework and Class Participation 8%

Closed Labs 12%

Programming Lab Assignments 30%

Midterm Exam 20%

Final Exam 30%

Title Author

On-line reference materials

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

Page 60: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 61: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2222 (Approved): Software I.5-Transition: Development of Software Components

Course DescriptionTemplates for generalization and decoupling; container components; component-based software from implementer's perspective; data representation using layering and using pointers. Transition course: requires CSE 221, serves as prereq for CSE 2231.01.

Prior Course Number: CSE 222Transcript Abbreviation: SW1.5: Dev SW CptsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 7 WeekCredits: 3.0Repeatable: NoTime Distribution: 4.0 hr Lec, 2.0 hr LabExpected out-of-class hours per week: 12.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 221Exclusions: Not open to students with credit for CSE 222Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

RESOLVE/C++ is used

This course is equivalent to CSE 222 and will be offered ONLY in Su 2012 for students who have taken CSE 221 in Sp 2012 (or earlier) and have not yet taken CSE 222. It will prepare them to take 2231.01 which will be offered ONLY in Au 2012.

Page 62: CSE 1110 (Approved): Introduction to Computing Technology

Course Goals

Course Topics

Representative Assignments

Be competent with using the computing environment (operating system, tools, language system, etc.) to complete lab assignments.

Be competent with using C++ class templates and classes, and related RESOLVE/C++ principles for clients, to write layered implementations of operations.

Be competent with using simple recursion to write layered implementations of operations.

Be competent with using simple techniques to test layered implementations of operations, including developing and carrying out simple specification-based test plans.

Be competent with using simple techniques to debug layered implementations of operations.

Be familiar with using the Array, Binary_Tree, List, Partial_Map, Queue, Record, Representation, Sequence, Set, Sorting_Machine, and Stack templates to write application programs and/or component implementations.

Be familiar with using basic C++ control structures and statements, RESOLVE/C++ class templates and classes, and related RESOLVE/C++ principles for clients and implementers, to write component realizations with layered data representations.

Be familiar with writing code that uses dynamic storage management and pointers for components that define new types with simple "raw C++" linked data representations.

Be familiar with using basic algorithm analysis techniques and notations to analyze and express execution time of operations whose implementations involve straight-line code and simple loops.

Be familiar with using simple formal logic assertions involving mathematical set models to understand and reason about an operation's behavior.

Be familiar with using simple techniques to test implementations of class templates that define new types, including developing and carrying out simple specification-based test plans.

Be familiar with using simple techniques to debug implementations of class templates that define new types.

Be exposed to using data representation conventions ("representation invariants") and correspondences ("abstraction relations") to reason about correctness of data representations.

Be exposed to using the RESOLVE/C++ principles for interface designers to guide the choice of mathematical model and operation behavior of a new software component.

Be exposed to using loop invariants to reason about loop behavior.

Topic Lec Rec Lab Cli IS Sem FE Wor

Review of generalization using templates and template instantiation

3.0 1.0

Decoupling using templates; utility classes 3.0 1.0

How recursion works; Partial_Map and its many uses 3.0 1.0

Implementer's view; data representation using other objects; representation invariant and abstraction relation; commutative diagram and correctness of data representation

6.0 2.0

Hashing 3.0 1.0

Binary trees; binary search trees 3.0 1.0

Pointers and dynamic storage allocation and deallocation; singly linked and doubly linked list data structures

6.0 2.0

Review and exams 3.0

E-mail classifier

Automated glossary generation

Partial_Map represented using Array of Queues of Records and hashing

Page 63: CSE 1110 (Approved): Introduction to Computing Technology

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Partial_Map represented using binary search tree

List represented using "raw C++" pointers

Aspect Percent

Class Participation 2%

Closed Labs 8%

Programming Lab Assignments 30%

Homework Assignments 10%

Midterm Exam 20%

Final Exam 30%

Title Author

Software Component Engineering with Resolve/C++, volumes 2 and 3 Weide, B.W., OSU UniPrint, 2007

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

Page 64: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or CommentsThis is a "bridge" course that will get students who have completed CSE 221 by the end of

Sp '12 ready to take the CSE 2231.01 in Au '12. Together, CSE 221, this course (2222),

and 2231.01 will be equivalent to Software I, II.

Sunset: This course will only be offered in Su 12.

Prepared by: Neelam Soundarajan

Course Contribution Program OutcomeCourse Contribution Program Outcome

** g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 65: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2231 (Approved): Software II: Software Development and Design

Course DescriptionData representation using hashing, search trees, and linked data structures; algorithms for sorting; using trees for language processing; component interface design; best practices in Java.

Prior Course Number: Parts of CSE 222, CSE 321, and CSE 421Transcript Abbreviation: SW II: Dev & DsgnGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: SophomoreCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 3.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2221; co-req: CSE 2321Exclusions: Not open to students with credit for CSE 2231.01 or CSE 321 or CSE 421Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

General Information

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Java is used

Page 66: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Be competent with using design-by-contract principles and related best practices, including separation of abstract state from concrete representation

Be competent with using interface contracts, representation invariants, and abstraction functions that are described using simple predicate calculus assertions with mathematical integer, string, finite set, and tuple models

Be competent with extending existing software components by layering new operations on top of existing operations

Be competent with layering new software components' data representations on top of existing software components

Be familiar with simple linked data representations, including why and when it is (and is not) appropriate to use them rather than layered data representations

Be competent with using simple recursion

Be competent with using simple techniques to test application software, layered implementations of extensions, and layered or linked data representations, including developing and carrying out simple specification-based test plans

Be competent with using simple techniques to debug application software, layered implementations of extensions, and typical data representations

Be familiar with using basic algorithm analysis techniques and notations to analyze and express execution times of operations whose implementations involve straight-line code, simple loops, and simple recursion (e.g., in manipulating binary trees)

Be competent with writing Java programs using core language features including interfaces, classes, inheritance, and assertions

Be competent with writing Java programs that use software components similar to (but simplified from) those in the Java collections framework

Be familiar with using many industry-standard "best practices" for Java design and development

Be familiar with working as part of a team on a software project with multiple milestones

Be exposed to using a version control system, e.g., CVS or SVN

Topic Lec Rec Lab Cli IS Sem FE Wor

Set and Map representations using an array of Queues with hashing

3.0 1.0

BinaryTree component; Set representation using a BinaryTree with binary search tree algorithms

3.0 1.0

Linked representations of Stack/Queue/List components and variations; singly-linked and doubly-linked lists

6.0 2.0

Tree component; language processing using trees; elaboration of small programming language compiler team project (with related programming lab assignments continuing beyond this module); introduction to version control

9.0 3.0

Component interface design principles and practices 6.0 2.0

Advanced Java language constructs and uses; best practices in Java

12.0 4.0

Map representation using a BinaryTree with binary search tree algorithms, and using hashing

List representation using a doubly-linked-list data structure

Various components of a simple programming language compiler

Simple component design (including interface contract) to meet stated requirements

Aspect Percent

Homework and Class Participation 8%

Page 67: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Aspect PercentAspect Percent

Closed Labs 12%

Programming Lab Assignments 30%

Midterm Exam 20%

Final Exam 30%

Title Author

On-line reference materials

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

Page 68: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 69: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2231.01 (Approved): Software II-Transition: Software Development and Design

Course DescriptionTransition from quarters to semesters, Resolve/C++ to Java; data representation using hashing, search trees, and linked data structures; sorting; using trees for language processing; component interface design; best practices in Java.

Prior Course Number: Part of CSE 201, CSE 321, and CSE 421Transcript Abbreviation: SW II: Dev & DsgnGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, SophomoreCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 3.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2222 or CSE 222 or CSE 222H; co-req: CSE 2321Exclusions: Not open to students with credit for CSE 321Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

General Information

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

This is a transition course to be offered ONLY in Au 2012. It is intended for students who have completed CSE 222 (prior to Su 2012) or who have completed CSE 2222 (in Su 2012).

Page 70: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Be competent with using design-by-contract principles and related best practices, including separation of abstract state from concrete representation

Be competent with using interface contracts, representation invariants, and abstraction functions that are described using simple predicate calculus assertions with mathematical integer, string, finite set, and tuple models

Be competent with extending existing software components by layering new operations on top of existing operations

Be competent with layering new software components' data representations on top of existing software components

Be familiar with the reasons for designing software to minimize the impact of change, and why it is difficult to achieve this

Be competent with using simple recursion

Be competent with using simple techniques to debug application software, layered implementations of extensions, and typical data representations

Be familiar with using simple techniques to test application software, layered implementations of extensions, and layered data representations, including developing and carrying out simple specification-based test plans

Be familiar with illustrating key dependencies between software components using UML class diagrams

Be familiar with using basic algorithm analysis techniques and notations to analyze and express execution times of operations whose implementations involve straight-line code and simple loops, and simple recursion (e.g., in manipulating binary trees)

Be competent with writing Java programs in a procedural style using the basic control structures, primitive value types, character strings, and input/output

Be competent with using an understanding of the difference between value types and reference types to trace the execution of simple Java code in situations involving both flavors of types, including their use as parameters to method calls

Be competent with writing Java programs using core language features including interfaces, classes, inheritance, and assertions

Be familiar with using JUnit for testing

Be competent with writing Java programs that use software components similar to (but simplified from) those in the Java collections framework

Be familiar with using the most important features of a modern IDE, e.g., Eclipse

Be familiar with working as part of a team on a software project with multiple milestones

Be exposed to using a version control system, e.g., CVS or SVN

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to Java; value types; main differences between Java and RESOLVE/C++; Java's control structures; basic input/output; introduction to Eclipse

3.0 1.0

Software components; packages; interfaces; design-by-contract; classes; reference types; methods, calls, and parameter passing; equals and toString methods; Text component; Natural component; introduction to UML class diagrams

6.0 2.0

Layered implementations of new Text and Natural methods; recursion; introduction to specification-based testing and JUnit

3.0 1.0

Generics; Sequence component; Queue component; Stack component; List component; layered implementations of new Sequence, Queue, Stack, and List methods; more recursion

3.0 1.0

Array component; Set and PartialMap representations using an Array of Queues with hashing; representation using a BinaryTree with binary search tree algorithms

4.0 1.5

Linked representations of Stack/Queue/List components and variations; singly-linked and doubly-linked lists;

4.0 1.5

Page 71: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE WorTopic Lec Rec Lab Cli IS Sem FE Wor

Tree component; language processing using trees; elaboration of small programming language compiler team project (with related programming lab assignments continuing beyond this module); introduction to version control

4.0 1.5

Component interface design principles and practices 4.0 1.5

Advanced Java language constructs and uses; best practices in Java

9.0 3.0

Review and exams 3.0 1.0

PartialMap representation using a BinaryTree with binary search tree algorithms

List representation using a doubly-linked-list data structure

Various components of a simple programming language compiler

Simple component design (including interface contract) to meet stated requirements

Aspect Percent

Homework and Class Participation 8%

Closed Labs 12%

Programming Lab Assignments 30%

Midterm Exam 20%

Final Exam 30%

Title Author

On-line reference materials

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 72: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Neelam Soundarajan

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 73: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2232 (Approved): Software II.5-Transition: Software Development in Java

Course DescriptionTransition from quarters to semesters, Resolve/C++ to Java; introduction to Java; tools for coding, testing, version control, documentation; language-specific best practices stemming from principles of component-based design.

Prior Course Number: 421Transcript Abbreviation: SW II.5: Dev & DsgGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: SophomoreCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 321Exclusions: Not open to students with credit for CSE 421 or CSE 2221 or CSE 2222 or CSE 2231 or CSE 2231.01Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

This is a transition course. It is intended for students who have completed CSE 321 but not 421. Under semesters, this material is covered in CSE 2221 and 2231.

Page 74: CSE 1110 (Approved): Introduction to Computing Technology

Course Goals

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

Master core Java language features including: objects, classes, interfaces, inheritance, and exceptions

Be competent with core SDK packages including: collections framework, logging, and IO

Be competent with core best practices for component-based development including: separation of abstract state and concrete representation and coding to the interface

Be competent with the use of a modern IDE, such as Eclipse

Be familiar with advanced language features including: iterators, generics, and assertions

Be familiar with foundations of an object-oriented paradigm, in particular: encapsulation, inheritance, and polymorphism

Be familiar with the application of design patterns including: immutable objects, factories, and singleton objects

Be familiar with best practices with regards to object equality, object cloning, and checked/unchecked exceptions

Be familiar with CVS, JUnit, and Javadoc

Be exposed to advanced SDK packages including: Swing for GUIs and network programming

Be exposed to exotic language features including: nested classes, nested interfaces, and annotations

Topic Lec Rec Lab Cli IS Sem FE Wor

Overview: compilation, primitive types, reference semantics 3.0

Language: Objects and classes, packages, generics, inheritance, interfaces, exceptions, reflection, garbage collection, nested classes, annotations

9.0

Packages: Collections, Logging, IO, Swing, Network Programming

5.0

Best Practices: equality, cloning, immutable objects, exceptions

5.0

Patterns: factories, singletons 2.0

Tools: Eclipse, CVS, Junit, Javadoc 6.0

Implementing, testing, and documenting an arbitrary-sized natural number type

GUI for data mining using Swing

N-gram generator using the collections framework

Aspect Percent

Individual assignments 50%

Team assignments 20%

Exams 25%

Participation 5%

Title Author

Core Java, Volume 1 Horstmann and Cornell

Page 75: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Prepared by: Paolo Sivilotti

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 76: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2233 (Approved): Business Programming with File Processing

Course DescriptionBusiness data processing principles and programming: sequential file processing algorithms, sorting, data validation; COBOL is taught.

Prior Course Number: CSE 314Transcript Abbreviation: File Prcsng COBOLGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, JuniorCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 1233 or CSE 214Exclusions: Not open to students with credit for CSE 314Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Course Goals

Course Topics

Be competent with the following algorithms: single and multiple control breaks; matching, verification, and merge/purge; 1- and 2-dimensional tables.

Be competent with designing and coding of well-structured COBOL programs and subprograms to process sequential files using system flowcharts, hierarchy (structure) charts, flowcharts, pseudocode, print or screen charts.

Be familiar with the COBOL reference card.

Be familiar with debugging techniques including using the COBOL debugger.

Be exposed to testing and data validation techniques.

Be exposed to the definition, use and creation of makefiles.

Page 77: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

Topic Lec Rec Lab Cli IS Sem FE Wor

Vocabulary; columns; margins; basic coding rules; typing in, compiling and running a COBOL program

3.0

Identification and environment division; data names; symbols; data division - file section; working storage;

3.0

Picture clauses; value clauses; group items; literals; constants; figurative constants; non-numeric literals;

3.0

Procedure division statements w/ file I/O (open, close, read, write); move statement (simple)

3.0

Perform statement (simple); putting it together; display; accept omitted; stop run; move statement rules; edited I/O

3.0

Compute and other arithmetic statements; accept time and date; scope terminators

3.0

Control structures; relational operators and relational expressions, sign and class tests; logical operators (AND,OR, NOT); implied conditions; condition names; evaluate statement

4.0

Single control break algorithm; string, unstring; double control break algorithm; debugging techniques; perform statement variations

6.0

Redefines; initialize; 2-dimensional tables; sort logic 3.0

Subprograms; sort/merge files; 4.0

Makefiles; testing and data validation techniques; additional sequential processing issues

4.0

Midterm, review 3.0

Type in, compile and run a given COBOL program

Simple report style COBOL program

Arithmetic statements and Edited I/O

Single Control Break

Double Control Break

Table (i.e., Array) processing

Sort, Search, Merge and Makefiles

Aspect Percent

Participation 5%

Projects 30%

Quizzes 10%

Midterm 25%

Final 30%

Title Author

COBOL for the 21st Century Stern, Stern & Ley

Page 78: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Neelam Soundarajan

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 79: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2321: Foundations I: Discrete Structures

Course DescriptionPropositional and first-order logic; basic proof techniques; graphs, trees; analysis of algorithms; asymptotic analysis; recurrence relations.

Transcript Abbreviation: Fndns 1: Discr StrGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: SophomoreCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: Columbus, LimaPrerequisites and Co-requisites: Prereq: 2122 (230), 2123 (214), or 2221 (222); and Math 1151 (152), or 1161. Concur (for students with credit for 2221): 2231.Exclusions: Not open to students with credit for 625 or 680.Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with using propositional logic

Be familiar with first-order predicate logic

Be familiar with proving by contradiction, by ordinary induction and by strong induction

Be familiar with using asymptotic notation

Be familiar with analyzing running time of simple iterative algorithms

Be familiar with graph theory

Page 80: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Be exposed to analyzing running time of recursive algorithms

Be exposed to sorting and searching

Be exposed to designing graph algorithms

Topic Lec Rec Lab Cli IS Sem FE Wor

Mathematical reasoning 12.0

Analysis of simple algorithms 6.0

Sorting and searching 9.0

Graph theory 9.0

Graph algorithms 6.0

Aspect Percent

Homework 20%

Classroom participation 10%

Midterms, final 70%

Title Author

Discrete Mathematics and its Applications Kenneth H. Rosen

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

Page 81: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Kathryn Reeves

Course Contribution Program OutcomeCourse Contribution Program Outcome

b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 82: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2331 (Approved): Foundations II: Data Structures and Algorithms

Course DescriptionDesign/analysis of algorithms and data structures; divide-and-conquer; sorting and selection, search trees, hashing, graph algorithms, string matching; probabilistic analysis; randomized algorithms; NP-completeness.

Prior Course Number: 680Transcript Abbreviation: Fndns II: DS & AlgGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, JuniorCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2321 or Math 366) and (Math 2566 or Math 566) and (Stat 3470 or Stat 427). Exclusions: Not open to students with credit for CSE 5331 or CSE 680Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: No

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with using asymptotic notation.

Be familiar with designing graph algorithms.

Be familiar with designing and analyzing divide-and-conquer algorithms.

Be familiar with the use of balanced trees.

Page 83: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with hashing.

Be familiar with heaps.

Be familiar with designing backtracking algorithms.

Be familiar with string matching.

Be exposed to selection algorithms.

Be exposed to probabilistic algorithms.

Be exposed to formal languages and finite automata.

Be exposed to NP-completeness.

Topic Lec Rec Lab Cli IS Sem FE Wor

Design and analysis of recursive algorithms. 6.0

Balanced trees and heaps. 9.0

Hashing. 3.0

Graph algorithms. 12.0

Backtracking algorithms. 6.0

Sorting and selection. 6.0

Design and implementation of a backtracking algorithm.

Implementation and experimental comparison of deterministic and randomized selection algorithms.

Aspect Percent

Homework 20%

Classroom participation 10%

Midterms, final 70%

Title Author

Introduction to Algorithms Cormen, Leiserson, Rivest and Stein

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

Page 84: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Kenneth Supowit

Course Contribution College OutcomeCourse Contribution College Outcome

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 85: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2421 (Approved): Systems I: Introduction to Low-Level Programming and Computer Organization

Course DescriptionIntroduction to computer architecture at machine and assembly language level; pointers and addressing; C programming at machine level; computer organization.

Prior Course Number: CSE 360 and CSE 459.21Transcript Abbreviation: Sys I: Comput OrgGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, JuniorCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 3.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 1232 or CSE 1233 or CSE 2231 or CSE 321) and (CSE 2321 or Math 2566 or Math 366)Exclusions: Not open to students with credit for CSE 360Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: No

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

To master programming with pointers in C

To be competent with application development and debugging in Unix environments

To be competent in programming with dynamic data structures in C, and in using C string and I/O features, bit operations, and function pointers

Page 86: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

To be familiar with overall organization and design of computer systems

To be competent with representation and manipulation of information in computer systems

To be familiar with machine encoding of instructions, and be competent with a particular real or hypothetical instruction set

To be familiar with programming in assembly language

To be familiar with Linking (static linking, relocatable object files, symbols and symbol tables, symbol resolution, relocation, loading executable object files)

Topic Lec Rec Lab Cli IS Sem FE Wor

Transitioning from Java to C, Basic C syntax, working in Unix Environments

6.0 2.0

C pointers and memory allocation/deallocation. Programming dynamic data structures with C (linked lists, arrays, including multi-dimensional arrays accessed through pointers, trees), string manipulation, pointer casting, null/void pointers.

6.0 2.0

Other misc C features: I/O operations, bit operations, function pointers, command line argument passing

3.0 1.0

Debugging in Unix with gdb/xgdb, Use of Makefile, Other Unix features

3.0 2.0

Introduction to Computer Systems Organization 3.0

Representation and manipulation of information (information storage, integer representation, integer arithmetic, floating point)

6.0 2.0

Machine level representation of programs (program encoding, data formats, accessing information, arithmetic and logical operations, control, procedures, array allocation and access, alignment)

9.0 2.0

Programming with an assembly language: simple use of registers and arithmetic operations, conditionals and loops, accessing arrays in assembly, procedure calls in assembly.

3.0 3.0

Linking (static linking, relocatable object files, symbols and symbol tables, symbol resolution, relocation, loading executable object files

3.0

Introductory C programming (for students with 2 semesters of advanced programming)

Dynamic data structure based programming in C

Use of command line argument passing and function pointers, advanced string/buffer manipulation

Using bit operations in C to simulate hardware computer arithmatic algorithms

Introductory assembly programming

Aspect Percent

Programming Assignments (6-7) 35%

Written Assignments 10%

Mid-term 20%

Final Exam 35%

Page 87: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Title Author

Computer Systems: A Programmer's Perspective Bryant and O'Hallaron

Pointers with C Kenneth Reek

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

Page 88: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Gagan Agrawal

Course Contribution Program OutcomeCourse Contribution Program Outcome

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 89: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2431 (Approved): Systems II: Introduction to Operating Systems

Course DescriptionIntroduction to operating system concepts: process, CPU scheduling, memory management, file system and storage, and multi-threaded programming.

Prior Course Number: CSE 660Transcript Abbreviation: Sys II: Oper SysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, JuniorCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2421 or ((CSE 360 or ECE 2560 or ECE 265) and (CSE 2451 or CSE 459.21 or CSE 459.22))Exclusions: Not open to students with credit for CSE 660Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with process concepts and CPU scheduling.

Be competent with memory hierarchy and memory management.

Be familiar with process control blocks, system calls, context switching, interrupts, and exception control flows.

Be familiar with process synchronization, inter-process communication, and threads.

Be familiar with multi-threaded programming.

Page 90: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

Be familiar with file systems and disk scheduling algorithms.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to operating systems, overview of related computer architecture concepts (CPU modes of operation, exceptions/interrupts, clock).

3.0

Process concepts, process control block, memory and CPU protection, process hierarchy, shell, process (Unix-like) related system calls, interactions between systems calls, context switching and underlying interrupt, timer mechanisms.

6.0

Process interactions, exception control flow (classes of exceptions, exception handling, private address space, user and kernel modes, process control, loading and running programs, Unix fork and exec system calls, signals).

3.0

Process synchronization (e.g., critical section problem, synchronization problems), deadlock and inter-process communication, threads.

6.0

Process (CPU) scheduling (various CPU scheduling algorithms).

3.0

Multi-thread programming. 3.0

Memory hierarchy 6.0

Memory management (contiguous allocation, paging, segmentation, virtual memory).

6.0

File systems (file system hierarchy, i-node, files, directories, file system management and optimization).

3.0

Disk allocation and disk arm scheduling. 3.0

Building a simple shell step by step, including system call invocation, signal handling, and file operations.

Implementing algorithms for a classic synchronization problem.

Designing and implementing multi-threaded programs.

Aspect Percent

Programming assignments (4-5) 35%

Written assignments (3-4) 10%

Mid-term 20%

Final exam 35%

Title Author

Operating System Concepts Silberschatz, Galvin, and Gagne

Computer Systems: A Programmer's Perspective Bryant and O'Hallaron

Page 91: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Prepared by: Bruce Weide

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 92: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2451 (Approved): Advanced C Programming

Course DescriptionAdvanced C features for students with significant programming experience in another language.

Transcript Abbreviation: Advanced C PrgmgGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2221 or CSE 222; co-req: CSE 2231Exclusions: Not open to students with credit for CSE 2421Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Course Goals

Course Topics

To master programming with pointers in C

To be competent with application development and debugging in Unix environments

To be competent in using C string and I/O features, bit operations, and function pointers

To be competent with key data structures like linked lists, (multi-dimensional) arrays, trees, stacks, and queues.

Topic Lec Rec Lab Cli IS Sem FE Wor

Transitioning to C, Basic C syntax, working in Unix Environments

6.0

Page 93: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE WorTopic Lec Rec Lab Cli IS Sem FE Wor

C pointers and memory (de)allocation. Programming dynamic data structures with C (linked lists, arrays, including multi-dimensional arrays accessed through pointers, trees, possibly queues and stacks), pointer casting and null and void pointers.

8.0

String manipulation and I/O in C 3.0

Other misc C features: function pointers, command line argument passing

3.0

Debugging in Unix with gdb/xgdb, Use of Makefile, Other Unix features

4.0

Bit operations and representative computer arithmatic algorithms

4.0

Introductory C programming (for students with significant prior programming experience)

Dynamic data structure based programming in C

Use of command line argument passing and function pointers, advanced string/buffer manipulation

Using bit operations in C to simulate hardware computer arithmatic algorithms

Aspect Percent

Programming Assignments (4-5 assignments) 45%

Mid-term 20%

Final 35%

Title Author

Pointers with C Kenneth Reek

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 94: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Gagan Agrawal

Page 95: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2501: Social, Ethical, and Professional Issues in Computing

Course DescriptionSocial, ethical, and professional issues facing computing professionals; ethical principles; discussion of case studies.

Prior Course Number: 601Transcript Abbreviation: Socl Ethcl IssuesGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, JuniorCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0Repeatable: NoTime Distribution: 1.5 hr LecExpected out-of-class hours per week: 1.5Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 1222 or CSE 1223 or CSE 2231 or CSE 214 or CSE 230 or CSE 222) and (CSE 2321 or Math 366) and (CSE 2421 or CSE 360)Exclusions: Not open to students with credit for CSE 601Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: No

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent in the identification of social and ethical issues that arise in the development and application of computing technology in modern society

Be competent in the appreciation for alternate points of view and broader perspectives in the analysis of social and ethical concerns arising in the context of computing technology

Be familiar with the immediate and long-term implications to society in the creation and use of computing technology

Be familiar with analyzing the potential benefits and risks of computing technology to society, both locally and globally

Page 96: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with the impact of computing technology on the economy at large as well as long-term trends

Be familiar with the codes of ethics of one or more professional societies related to computing technologies (e.g., ACM, IEEE, CISSP)

Be familiar with effective methods of written and oral communication

Be exposed to the distinction between a profession and a trade, and how this distinction relates to ethics and responsibility

Be exposed to some legal issues that computing professionals may encounter as part of their practice

Topic Lec Rec Lab Cli IS Sem FE Wor

Professional ethics 3.0

Effective communication 1.5

Privacy / Civil liberties 3.0

Security / Civil liberties 3.0

Intellectual property 3.0

Censorship 1.5

Computer risks 1.5

Computer crime 3.0

Global perspectives 1.5

Write a short paper (< 1000 words) on a topic chosen from a pick list of themes relevant to the course

Give an 8-10 minute in-class presentation on topic chosen from a pick-list of themes relevant to the course

Short response questions from topics raised in class

Aspect Percent

Short paper 30%

In-class presentation 30%

Short response homeworks 30%

Class participation 10%

Title Author

A Gift of Fire Sara Baase

Ethics for the Information Age Michael J. Quinn

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

Page 97: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Paolo Sivilotti

Course Contribution College OutcomeCourse Contribution College Outcome

e An ability to identify, formulate, and solve engineering problems.

*** f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

*** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

*** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

*** h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 98: CSE 1110 (Approved): Introduction to Computing Technology

CSE 2502S (Approved): Digital Bridge

Course DescriptionOrganization and information relationships in building community computing; technical inter-workings of components, wireless networking, and software; refurbishing computers and teaching customer service best practices.

Transcript Abbreviation: Digital BridgeGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, Junior, SeniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 0.0Repeatable: NoTime Distribution: 1.0 hr LecExpected out-of-class hours per week: -1.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Course Goals

Course Topics

Understand organization and information relationships in building community computing.

Acquire basic technical understanding of inter-workings of components, wireless networking and software.

Acquire skills for refurbishing computers.

Learn customer service best practices.

Topic Lec Rec Lab Cli IS Sem FE Wor

Organization and information relationships 1.0

Technical inter-workings of components, wireless networking and software

3.0

Page 99: CSE 1110 (Approved): Introduction to Computing Technology

Grades

ABET-EAC Criterion 3 Outcomes

Prepared by: Jayashree Ramanathan

Topic Lec Rec Lab Cli IS Sem FE WorTopic Lec Rec Lab Cli IS Sem FE Wor

Refurbishing computers 3.0

Customer service best practices 3.0

Additional topics based on student interests and background. 4.0

Aspect Percent

Homeworks 20%

Labs 40%

Participation 40%

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 100: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3231: Software Engineering Techniques

Course DescriptionSoftware engineering issues, techniques, methodologies and technologies; software lifecycle activities: requirements analysis, architecture, design, testing, deployment, maintenance; project management; enterprise software systems; frameworks.

Prior Course Number: CSE 757Transcript Abbreviation: Software EngGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Prereq: 3901 or 3902 or 3903.Exclusions: Not open to students with credit for 5231 (757).Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with structured and agile software engineering frameworks; specifically structured and agile software engineering methodologies for requirements identification, analysis, architecture, design, testing, deployment and project management

Be familiar with the characterization of enterprise software systems

Be familiar with frameworks for analyzing the business context of enterprise IT systems, the concept of Business-IT alignment and related issues, and Enterprise Architecture

Be exposed to the trends impacting enterprise systems

Page 101: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Be exposed to the need for frameworks for software engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Characteristics of enterprise softw. sys.: scale, heterogeneity, distribution, federation by nature, lack of complete knowledge; organizational challenges; external drivers

1.5

Understanding the business and the relationship between the business and information technology - business strategy, business-IT alignment and enterprise architecture

3.0

Software engineering process - broadly characterized as structured or agile processes. Scenario-driven, Incremental and iterative development. Introduction to work-products and work-product-oriented development. Agile principles

2.5

Requirements gathering. Structured and agile requirements work-products

4.0

Analysis - domain, problem and solution analysis. Exposure to UML. Structured and agile analysis work-products. CRC-card based analysis

4.0

Architecting softw. intensive sys: Designing, evaluating architectures; non-functional requirements & quality attributes in arch. Quality-driven design. Structured & agile architecture work-products

6.0

Software project management: Structured and Agile project planning and management, linear and parametric software estimation, Risk planning. Software configuration management. Agile boot camp ? LEGO-based workshop on Agile development

6.0

Software design: Responsibility-driven design concepts, application of responsibility-driven design in design patterns and enterprise technology frameworks, designing applications using enterprise technology frameworks

6.0

Testing: Testing methodologies for enterprise systems. Testing in agile methodologies

4.0

Deployment, Maintenance and Management: IT Infrastructure Library (ITIL) practices for infrastructure management

2.0

Case studies in software engineering 2.5

A small-team project that begins with the analysis of a business to identify where a software system might be of value, followed by the requirements identification, analysis and design of this system on paper.

Aspect Percent

Class participation 10%

Workshop participation 10%

Team Project 30%

In-class Quizzes 30%

Final examination 20%

Page 102: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Title Author

Software Engineering Sommerville

Software Engineering, A Practitioners Approach Pressman

Developing Object-Oriented Software, An Experience-Based Approach, 1997. Object-Oriented Technology Center, IBM

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

Page 103: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or CommentsMeans for Achieving Learning Outcomes

Inverted Classroom: Lectures have been pre-recorded and accessible online. Students are

expected to familiarize themselves with the lecture and prepare lecture notes before they

come to class.

Active Learning: Software Engineering has traditionally been a difficult subject to teach

in a purely lecture and examination based format. In this class we will attempt to teach

SE through in-class activities and discussion, and a project.

Class discussions: You are expected to participate in discussions about the lecture

material as well as the research presentations

Quizzes: There will be 15-minute quizzes at the beginning of each course segment.

Students may use their prepared notes on the lecture to answer the quiz. Students may not

refer to the actual lecture slides or the lecture itself for the quiz.

Workshop: In-class workshops will be used to provide hands-on experiences on certain

software engineering topics such as Agile development.

Project: There will be an integrative paper project. Class sessions will be reserved to

work on the project. However, students will need to reserve time outside of class to work

on the project

Course Policies

The following course policy applies to the classroom and team interactions you are

expected to show the same responsibility to your teammates as you do to me.

Attendance: You are expected to attend all classroom sessions and team meetings, and do

all the assigned work, self-study and readings.

Class preparation: You are expected to be prepared for class, participate in the

discussion, answer questions, etc., on the topic for the day.

Missed classes, exams, presentations, and meetings: You are responsible for all class

lectures, including handouts and notes. There will be no make up exams, presentations,

lectures, etc.

Assignments: Assignments (if any) are duein hardcopyat the beginning of class on the due

date. Assignments must be typed and formatted appropriately.

Workshops: We may reserve a weekly time outside of class for collaborative hands-on

workshops.

Contact and class information: The course web site (see above) and email communication

will be extensively used and relied upon for this course. Please familiarize yourself

with these resources, provide me with your email address in the questionnaire and check

Course Contribution Program OutcomeCourse Contribution Program Outcome

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 104: CSE 1110 (Approved): Introduction to Computing Technology

your email at least once every day.

Sharing and attribution of intellectual property and information: You are free to

exchange and use any information from each others projects. You may also freely research

and use information legally available from the Web or other sources. However, you must

properly attribute each piece of borrowed intellectual property.

Prepared by: Bruce Weide

Page 105: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3232 (Approved): Software Requirements Analysis

Course DescriptionInformation systems analysis; object-oriented analysis models and tools; use cases, system modeling using UML; requirements specification development; term project.

Prior Course Number: CSE 616Transcript Abbreviation: SW Rqmts AnalysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: SeniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3901 or CSE 3902 or CSE 560Exclusions: Not open to students with credit for CSE 5232 or CSE 616Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Master applying an object-oriented methodology to the analysis of a real-world problem.

Be competent with writing use cases to model functional requirements.

Be competent with using UML use case, class, sequence and collaboration diagrams to model data and behavior requirements.

Be competent with organizational dynamics as it applies to projects.

Be competent with the system lifecycle approach and its phases.

Be familiar with software engineering issues such as correctness, reliability, productivity.

Page 106: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with the distiction between analysis and design activities and skills.

Be familiar with working with a team to produce requirements specification document.

Be familiar with the purpose, structure and contents of a requirements specification document.

Be familiar with non-functional requirements such as security, integrity, response time and reliability.

Be familiar with using a UML tool.

Topic Lec Rec Lab Cli IS Sem FE Wor

Exams 4.0

Software engineering, software development life cycle, traditional vs object-oriented analysis

7.0

Teamwork and organizational dynamics 2.0

Data flow diagramming (as context model) 4.0

UML (use case diagram, sequence diagram, collaboration diagram, state chart diagram, class diagram)

15.0

Requirements elicitation (face-to-face meetings and presentations to real-world client)

8.0

Term project is designed to encourage students to apply principles of Systems Analysis in a Real World context. The project consists of these elements: 1) Students will meet several times with a selected industry client to elicit requirements for a system. 2) Students will prepare and present formally documented system requirements to the client using UML notation for feedback. 3) Students will deliver a detailed and complete Systems Requirement Specification, using traditional and object-oriented notations.

Homework assignments are designed to give students the opportunity to practice analysis concepts in a more controlled framework.

Aspect Percent

Homework (4) 20%

Quizzes (2) 20%

Team project (including weekly progress reports, presentation, drafts and final document -- weighted by peer evaluation)

35%

Final Exam 25%

Title Author

An Introduction to Object-Oriented Analysis Brown

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

Page 107: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Neelam Soundarajan

Course Contribution College OutcomeCourse Contribution College Outcome

*** e An ability to identify, formulate, and solve engineering problems.

*** f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 108: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3241: Introduction to Database Systems

Course DescriptionDatabase systems use; logical design; entity-relationship model; normalization; query languages and SQL; relational algebra and calculus; object relational databases; XML; active databases; database design project.

Prior Course Number: CSE 670Transcript Abbreviation: Intr Database SysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2321 or Math 366)Exclusions: Not open to students with credit for CSE 5241 or CSE 670Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Master using relational databases.

Master writing queries in relational data languages including SQL and relational algebra.

Master using mechanisms for data independence, including data models, languages and views.

Be competent with logical database design.

Be competent with conceptual database design.

Be familiar with object relational database technology.

Page 109: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be exposed to XML and active databases.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction; Entity-Relationship (ER) Model 4.0

The Structure of the Relational Data Model 2.0

Relational Algebra and Relational Calculus 6.0

Functional Dependencies and Normalization 8.0

ER-to-Relational Data Model 1.0

SQL 6.0

Graphical User Interfaces 2.0

Embedded SQL 2.0

Object Relational Databases 4.0

XML 3.0

Active Databases 2.0

Provide SQL code which declares, populates, and queries a database

Define and use a database using a database management systems software

Write a Java program with embedded SQL code

Aspect Percent

Homework 30%

Project 20%

Midterm Exam 20%

Final Exam 30%

Title Author

Fundamentals of Database Systems, Addison-Wesley, 5th edition Ramez Elmasri and Shamkant Navathe

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

Page 110: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Hakan Ferhatosmanoglu

Course Contribution College OutcomeCourse Contribution College Outcome

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 111: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3244: Data Management in the Cloud

Course DescriptionSystematic organization of data on cloud computing architectures; basic indexing techniques, including B-tree and hash-based indexing; fundamentals of query optimization, including access path selection and cardinality estimation; full and partial replication; data partitioning and distributed task scheduling.

Transcript Abbreviation: Data Mgmt in CloudGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Flex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Prereq: 3241 or 5241; 2421 or 3430.Exclusions: Cross-Listings:

Course Rationale: This will become a required course for data analytics majors. Also, it fills a gap in CSE

curriculum between 3241 and 5242.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Master using fundamental concepts in indexing and optimization techniques, including B-trees, hash-based indexing and cardinality estimation

Master using mechanisms of distributed data management, including full and partial replication strategies, data partitioning, fault tolerance models and consistency trade-offs

Be competent with data warehousing techniques, including on-line analytical processing (OLAP)

Page 112: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent with distributed algorithms and task scheduling in cloud environments

Be exposed to current cloud-based data management technologies

Topic Lec Rec Lab Cli IS Sem FE Wor

Review of relevant 3241/5241 Material 1.0

Indexing and Optimization 18.0

Data warehousing and OLAP 3.0

Cloud computing principles 5.0

Replication and partitioning strategies 6.0

Algorithms and platforms for cloud 9.0

Analyze public financial data in a cloud format (e.g. JSON) with a SQL-on-Hadoop tool. Evaluate query response time at scale on an IaaS platform.

Use an open-source cloud data processing platform (e.g. Hadoop) to create an inverted index from natural language dataset, e.g. Wikipedia.

Deploy iterative matrix-vector multiplication kernels on failure-prone cloud platforms. Evaluate the effects of replication on throughput.

Aspect Percent

Homework 25%

Lab assignments 25%

Midterm Exam 25%

Final Exam 25%

Title Author

Fundamentals of Database Systems Ramez Elmasri and Shamkant Navathe

Data-Intensive Text Processing with MapReduce Jimmy Lin and Chris Dyer

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 113: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Kathryn Reeves

Course Contribution College OutcomeCourse Contribution College Outcome

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 114: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3321 (Approved): Automata and Formal Languages

Course DescriptionMachine-based and grammatical models of computation; finite automata and regular languages; pushdown automata and context-free languages; Turing machines; non-determinism; Churchs Thesis; halting problem.

Prior Course Number: CSE 625Transcript Abbreviation: Automata Form LangGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2331 or Math 566) and (CSE 2421 or CSE 360)Exclusions: Not open to students with credit for CSE 5321 or CSE 625Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with using regular expressions and finite state machines.

Be competent with using context-free languages, context-free grammars, and push-down automata.

Be competent with proving by contradiction, by ordinary induction and by strong induction.

Be familiar with non-determinism.

Be familiar with Turing machines.

Page 115: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Be exposed to reductions.

Be exposed to decidability and recursive enumerability.

Be exposed to Churchs Thesis.

Be exposed to theory of parsing.

Topic Lec Rec Lab Cli IS Sem FE Wor

Formal languages. 3.0

Regular languages and finite automata. 15.0

Grammars. 3.0

Context-free languages and pushdown automata. 12.0

Recursively enumerable languages and Turing machines. 9.0

Aspect Percent

Homework 20%

Classroom participation 10%

Midterms, final 70%

Title Author

Introduction to Languages and the Theory of Computation J. C. Martin

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 116: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Kenneth Supowit

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

* c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 117: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3341 (Approved): Principles of Programming Languages

Course DescriptionFormal languages and grammars; recursive descent parsing; data types, expressions, control structures, parameter passing; compilers and interpreters; memory management; functional programming principles.

Prior Course Number: CSE 655Transcript Abbreviation: Prin Prgrmng LangsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2231 and (CSE 2331 or CSE 680) and CSE 2421 and (CSE 3901 or CSE 3902 or CSE 560)Exclusions: Not open to students with credit for CSE 5341 or CSE 655Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Master using syntax-directed parsing, printing, execution, and compilation for simple imperative language constructs.

Master distinguishing between compile-time vs. run-time activities.

Be competent with using syntax-related concepts including regular expressions and context-free grammars to describe the structure of languages.

Be competent with analyzing programming language design issues related to data types, expressions and control structures, parameter passing.

Page 118: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent with principles of object-oriented languages.

Be competent with implementing object-oriented languages.

Be familiar with memory management techniques for imperative languages, including object-oriented languages.

Be familiar with using functional programming languages.

Be exposed to analyzing variable bindings and scope rules.

Topic Lec Rec Lab Cli IS Sem FE Wor

Overview of types of languages; language design and evaluation criteria; implementation methods (compilers and interpreters)

3.0

Grammars (regular expressions, CFGs), abstract & concrete parse trees; recursive descent parsing;

6.0

Recursive descent interpretation, compilation; 3.0

Principles of OO languages (data abstraction, encapsulation, single and multiple inheritance, polymorphism (single and multiple dispatch), etc.)

7.0

Implementation of imperative languages including OO languages (stack, heap management; activation records etc; runtime dispatch in OO languages)

10.0

Functional programming principles (Scheme), including some discussion of implementation techniques

7.0

More advanced ideas (ML types/inferencing, dynamically-typed languages, ...?)

7.0

Implement a complete recursive descent interpreter for a simple imperative language.

Implement an application that involves use of one or two important patterns such as Visitor and Observer.

Implement a set of functions in Scheme to manipulate lists in a variety of ways (or, possibly: implement an application that does some symbolic computation such as a chess playing program).

Other homework assignments focusing on such things as CFGs.

Aspect Percent

Homeworks 15%

Programming projects 35%

Midterms, Finals 50%

Title Author

Programming language pragmatics M. Scott

Page 119: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Neelam Soundarajan

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 120: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3421: Introduction to Computer Architecture

Course DescriptionOrganization of hardware and software in modern computer systems, including instruction set design, processor control, ALU design, pipelining, multicores and accelerators, and memory subsystem design.

Prior Course Number: CSE 675.01, CSE 675.02Transcript Abbreviation: Intr Comput ArchGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2421 or CSE 360 or ECE 2560 or ECE 265) and (ECE 2000 or ECE 261) Exclusions: Not open to students with credit for CSE 5421 or CSE 675.01 or CSE 675.02Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with performance tradeoffs in computer architecture, especially as they relate to processor and memory design.

Be competent with the architectural components of a computer, especially the memory hierarchy and processor.

Be familiar with the design principles underlying modern instruction sets.

Be familiar with the RISC/MIPS programming

Be exposed to the structure of a processor cache

Page 121: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be exposed to multicores, multiprocessors, clusters/datacenters, and IO subsystems

Be exposed to the architectures underlying modern computer systems

Topic Lec Rec Lab Cli IS Sem FE Wor

State of the art in computer architecture, Moore's law, and the power wall

1.0

Quantifying performance and power tradeoffs 2.0

Design of instruction set architectures 6.0

Digital logic and circuit design 3.0

Architecture and design of memory, such as SRAM and DRAM

3.0

Design of integer arithmetic logic unit (ALU) 3.0

Floating point representation and arithmetic 3.0

Processor design: non-pipelined and pipelined 9.0

Advanced topics in memory hierarchy, such as cache lines, associativity, and cache coherence

4.0

Multicores, multiprocessors, interconnects, I/O subsystems, and clusters/data centers

5.0

Realization of architecture concepts in real systems 3.0

Aspect Percent

Homework 30%

Midterm 30%

Final 40%

Title Author

Computer Organization & Design: The Hardware/Software Interface D.A. Patterson & J.L. Hennessy

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

Page 122: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Christopher Stewart

Course Contribution College OutcomeCourse Contribution College Outcome

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

* k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 123: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3430 (Approved): Overview of Computer Systems For Non-Majors

Course DescriptionIntroduction to computer architecture and organization at machine and assembly level; pointers and addressing using C programming; introduction to operating system concepts: process, memory management, file system and storage, and multi-threaded programming.

Transcript Abbreviation: SystemsForNonMjrsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 4.0 hr LecExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Prereq: 2122 or 2123, and 2321 Exclusions: Not for CSE/CIS majors. Not open to students with credit for CSE 2421, 2431, 360, 660Cross-Listings:

Course Rationale: Combined "systems" course for students pursuing a minor in CIS or in related programs.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: No

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

General Information

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Not for CSE/CIS majors.

Page 124: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

To be competent programming with pointers in C

To be competent with application development and debugging in Unix environments

To be familiar with overall organization and design of computer systems

To be exposed to representation and manipulation of information in computer systems

Be competent with process concepts

Be familiar with memory hierarchy, storage,  and  I/O

Be familiar with process synchronization and threads.

Be familiar with multi-threaded programming.

Topic Lec Rec Lab Cli IS Sem FE Wor

Transitioning from Java/C++ to C, Basic C syntax, working in Unix Environments

6.0

C pointers and memory allocation/deallocation and programming dynamic data structures with  C

8.0 2.0

Other misc C features: I/O operations, bit operations, function pointers, command line argument passing

3.0 1.0

Debugging in Unix with gdb/xgdb, Use of Makefile, Other Unix features

2.0

Introduction to Computer Systems Organization 4.0

Integer representation and arithmetic, floating point 8.0 2.0

Memory hierarchy (including basics of virtual memory) 8.0

Process management 8.0

Process synchronization and concurrent programming 8.0

Input/output 4.0

Two labs on C programming (one simple, one with pointers)

One lab with memory hierarchy (file manipulation)

One lab with simple system calls  (fork/join, or similar)

One lab on process/thread synchronization

One lab on multi-core parallelization

Aspect Percent

Programming Assignments (3-5) 35%

Written Assignments 10%

Mid-term 20%

Final Exam 35%

Title Author

Computer Systems: A Programmer's Perspective Bryant and O'Hallaron

Page 125: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Additional Notes or Comments

Title AuthorTitle Author

Pointers with C Kenneth Reek

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 126: CSE 1110 (Approved): Introduction to Computing Technology

This course is NOT intended for CSE/CIS majors. That is why for each BS-CSE Program

Outcome, it lists "no contribution".

Prepared by: Neelam Soundarajan

Page 127: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3461: Computer Networking and Internet Technologies

Course DescriptionComputer networks, communication protocols, Internet TCP/IP and applications, wireless communications and network security.

Prior Course Number: CSE 677, part of CSE 678Transcript Abbreviation: Computer NetwrkingGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Prereq: 2421; or 2451 and ECE 2560 (265). Concur: 2431.Exclusions: Not open to students with credit for 5461 (677).Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with the basics of data communications and network architecture

Be competent with network layer control and protocols

Be competent with link layer control and protocols

Be competent with using the TCP/IP protocol suite

Be familiar with using high speed LANs

Page 128: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Be familiar with various internetworking technologies

Be exposed to designing advanced communication protocols

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to Internet 6.0

Internet application, TCP and IP layers 15.0

Internet data link and physical layers 3.0

Wireless networks 9.0

Network security 9.0

Aspect Percent

Lab projects or homeworks or Exam 1 30%

Midterm Exam 30%

Final Exam 40%

Title Author

Computer Networking: A Top-Down Approach James Kurose and Keith Ross

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

*** j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

Page 129: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or CommentsThe core of this course is Internet technologies.

Coordinator: Steve Lai

Prepared by: Kathryn Reeves

Course Contribution Program OutcomeCourse Contribution Program Outcome

* c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 130: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3521 (Approved): Survey of Artificial Intelligence I: Basic Techniques

Course DescriptionSurvey of basic concepts and techniques in artificial intelligence, including problem solving, knowledge representation, and machine learning.

Prior Course Number: CSE 630Transcript Abbreviation: Intr Artif IntellGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2331 or (CSE 222 and Math 366) or senior standingExclusions: Not open to students with credit for CSE 5521 or CSE 630Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Master basic search techniques for problem-solving, including systematic blind search, heuristically-guided search, and optimal search.

Be competent with game tree search methods and the requirements for expert-level game play.

Be familiar with using logic and proof as a basis for knowledge representation and automated reasoning.

Be familiar with multiple knowledge-representation formalisms.

Page 131: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be exposed to problems in common sense reasoning and language understanding.

Be exposed to integrated AI architectures as a platform for building AI systems.

Be exposed to machine learning techniques and the kinds of problem they solve.

Be exposed to state-of-the-art AI applications related to robotics, machine vision, speech recognition, and computer games.

Topic Lec Rec Lab Cli IS Sem FE Wor

Basic representation and problem solving methods. 6.0

Search techniques and game playing. 6.0

Knowledge representation using logic, automated proof techniques.

6.0

Machine learning, probabilistic inference. 6.0

Planning and common sense reasoning. 3.0

Perception and communication. 4.0

Applications. 6.0

AI & Games. 3.0

Compare breadth-first, depth-first, and A* search on a problem domain.

Apply reinforcement learning to maze navigation.

Aspect Percent

Homeworks and Labs 40%

Midterm 25%

Final 35%

Title Author

Artificial Intelligence, A Modern Approach (3rd edition) Stuart Russell and Peter Norvig

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 132: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: James Davis

Course Contribution College OutcomeCourse Contribution College Outcome

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 133: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3541 (Approved): Computer Game and Animation Techniques

Course DescriptionFundamental algorithms and mathematics in production of computer animation and video games, emphasizing control and rendering of animated characters.

Prior Course Number: CSE 683Transcript Abbreviation: Comp Game AnimatnGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3901 or CSE 3902 or CSE 560Exclusions: Not open to students with credit for CSE 5541 or CSE 683Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with basic interpolation techniques, speed control along a path, and automatic banking into curves along a path.

Be competent with forward and inverse kinematics or articulated linkages

Be competent with physics-based animation.

Page 134: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Be competent with behavioral animation.

Be competent with the generation and processing of sound in games and animation.

Be competent with the use of AI techniques in games.

Be competent with software architectures for computer games.

Be competent with the concept of a rendering pipeline and graphics state.

Be competent with hierarchical scene graphs and hierarchical animation.

Be familiar with computational issues associated with computer animation.

Be familiar with control devices for computer games and framework support for event notification.

Be exposed to computer animation production technology.

Be exposed to motion capture technology and its use in computer animation.

Be exposed to the history of animation and computer animation.

Topic Lec Rec Lab Cli IS Sem FE Wor

Overview, history, and foundation of computer games and computer animation

2.0

Matrices and transformations 1.0

Path-based animation; linear, cubic interpolation; splines, path following; acceleration, speed control; ease-in/ease-out; orientation rep., interpolation; quaternions, path following; Frenet Frame, banking, interpolation-based animation

3.0

Hierarchical modeling and animation: inverse kinematics, other IK techniques

3.0

Review of numerical integration 2.0

Constrained motion: ground clamping, collision detection, constrained physics

1.0

Review of physics: gravity, friction, rigid body, spring-mass systems, particle systems, collision response

3.0

Human figure animation: anatomy, biomechanics 3.0

Mocap, including visit to mocap lab; motion databases 2.0

Behavioral animation: flocking, prey-predator model 2.0

Crowd modeling: cellular and continuous models 1.0

Flexible body animation: non-uniform scaling, spring-mass-damper systems, blend shapes

3.0

Efficient and effective basic human motion modeling: reaching, grasping, walking/running, expressions, speech

3.0

Sound: physically based, sound effects 2.0

Rendering overview: models, textures, lights and cameras 6.0

Overview of AI in computer games 2.0

Scene management using octrees and cells and portals 3.0

Write a program, using piecewise cubic interpolation, that passes through an arbitrary number of points in 3-space

Write a program that controls the velocity (speed and direction) of an object that smoothly traverses a curve based on time constraints at arbitrary points along the curves. Additionally, the object should bank into curves.

Write a program that animates a linkage based on given angles at given times.

Page 135: CSE 1110 (Approved): Introduction to Computing Technology

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Write a program that animates a linkage based on given positions and orientations of its end effector at given times.

Write a program that animates a rigid body using gravity while it collides and bounces off of obstacles.

Write a program that animates a particle system.

Write a program that animates a flock of birds using principles of flocking behavior.

Write a program that incorporates both sound and principles of AI into the flocking animation previously written.

Aspect Percent

Lab assignments 60%

Midterm 15%

Final 25%

Title Author

Computer Animation: Algorithms & Techniques Rick Parent

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

Page 136: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Richard Parent

Course Contribution Program OutcomeCourse Contribution Program Outcome

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 137: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3901: Project: Design, Development, and Documentation of Web Applications

Course DescriptionIntensive group project involving design, development, and documentation of a web application; client-side and server-side scripting; communication skills emphasized; builds programming maturity.

Transcript Abbreviation: Proj: Web AppsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 3.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2321 or Math 366) and (CSE 2421 or ((CSE 360 or ECE 2560 or ECE 265) and (CSE 2451 or CSE 459.21 or CSE 459.22)) and Gen Ed Writing Level 2Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: YesThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent in the development of dynamic web applications using Java-based technologies.

Be competent in the development and formatting of static web content.

Be competent with writing, organizational, and presentation skills.

Be competent with analyzing the intended audience for a written document and writing an audience profile.

Page 138: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

Be familiar with making engineering decisions involving tradeoffs.

Be familiar with the use of SQL to access database content.

Be familiar with defining the purpose (persuade, inform, etc.) of a written document and select the appropriate rhetorical devices.

Be familiar with writing several pieces of documentation that have different purposes and to use appropriate organization to tie them together.

Be familiar with group project organization techniques including conducting group meetings, recording minutes, and tracking project progress.

Be familiar with using one structured approach to large software design to carry out a large group project.

Be exposed to the use of application frameworks for the deployment of web applications.

Be exposed to some basic security vulnerabilities sometimes found in web applications.

Be exposed to methods for internationalizing web applications.

Topic Lec Rec Lab Cli IS Sem FE Wor

Static web and networking (HTTP) 2.0 1.0

Document content and formatting (HTML, XHTML, XML, CSS)

6.0 1.0

Client-side scripting with JavaScript 3.0 1.0

Databases (MySQL, JDBC) 3.0 1.0

Model-view-controller design pattern 2.0 1.0

Server-side scripting with servlets and Java Server Pages 6.0 2.0

Sessions and state (JavaBeans) 2.0 1.0

Tag libraries (JSTL) 2.0 1.0

Authentication and security (SSL, SQL injection attacks, Cross-site scripting attacks)

3.0 1.0

Deployment frameworks (eg Struts, Webwork, Hibernate, Spring)

3.0 1.0

Internationalization and localization 1.0

Performance considerations 1.0

Technical writing 3.0

Improving responsiveness with asynchronous requests (Ajax) 3.0 1.0

Introduction to web services (SOAP/WSDL/UDDI) 3.0

An on-line task list organizer

An interview-day batch scheduling application

Aspect Percent

Lab assignments 60%

Midterm 15%

Exam 25%

Page 139: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Prepared by: Paolo Sivilotti

Title Author

Head First Servlets & JSP (2nd ed) Kathy Sierra, Bert Bates, Bryan Basham, Kathy Sierra, Bert Bates, Bryan Basham

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 140: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3902: Project: Design, Development, and Documentation of Interactive Systems

Course DescriptionIntensive group project involving design, development, and documentation of an interactive software system, a 2D interactive game; communication skills emphasized; builds programming maturity.

Transcript Abbreviation: Proj: Interact SysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 3.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2321 or Math 366) and (CSE 2421 or ((CSE 360 or ECE 2560 or ECE 265) and (CSE 2451 or CSE 459.21 or CSE 459.22)) and Gen Ed Writing Level 2Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with 2D graphics objects and rendering.

Be competent with event based programming.

Be familiar with elements of game engines such as AI, animation, memory management, and user control.

Be familiar with game content creation and editing tools.

Page 141: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

ABET-EAC Criterion 3 Outcomes

Be competent with writing, organizational, and presentation skills.

Be competent with analyzing the intended audience for a written document and writing an audience profile.

Be familiar with making engineering decisions involving tradeoffs (e.g., space-time tradeoffs in choosing a table implementation).

Be familiar with defining the purpose (persuade, inform, etc.) of a written document and select the appropriate rhetorical devices.

Be familiar with writing several pieces of documentation that have different purposes and to use appropriate organization to tie them together.

Be familiar with group project organization techniques including conducting group meetings, recording minutes, and tracking project progress.

Be familiar with using one structured approach to large software design to carry out a large group project.

Topic Lec Rec Lab Cli IS Sem FE Wor

Computer graphics and games overview 1.0

Event based programming 1.0

2D rendering pipeline 4.0

Image processing 4.0

Introduction to 3D graphics 4.0

Student project team meetings 14.0 7.0

Student project team design reviews, presentations, etc. 14.0 7.0

Game design document

Minimal game engine with documentation and revised game design document

Expanded game engine with updated documentation and game asset creation tools

Polished game engine with full documentation

Aspect Percent

Project Milestone 1 15%

Project Milestone 2 15%

Project Milestone 3 15%

Midterm 25%

Final 30%

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

Page 142: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Roger Crawfis

Course Contribution College OutcomeCourse Contribution College Outcome

** g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 143: CSE 1110 (Approved): Introduction to Computing Technology

CSE 3903: Project: Design, Development, and Documentation of System Software

Course DescriptionIntensive group project involving design, development, and documentation of system software including an assembler and a linking loader; communication skills emphasized; builds programming maturity.

Prior Course Number: 560Transcript Abbreviation: Proj: Sys SoftwareGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: JuniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 3.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2321 or Math 366) and (CSE 2421 or ((CSE 360 or ECE 2560 or ECE 265) and (CSE 2451 or CSE 459.21 or CSE 459.22)) and Gen Ed Writing Level 2Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with using and implementing each component of the the assemble-link-load-relocate-execute process

Be competent with using bit manipulation of integers and ascii characters to be able to emulate a simple computer that handles both integer and character I/O

Page 144: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

Be competent with writing, organizational, and presentation skills

Be competent with analyzing the intended audience for a written document and writing an audience profile

Be familiar with making engineering decisions involving tradeoffs

Be familiar with writing a relocating linking loader

Be familiar with subroutine linkage at the assembly level and with using different addressing modes

Be familiar with emulating in software, the fetch-decode-execute cycle of a CPU

Be familiar with using macros, including recursive and nested macros

Be familiar with software testing strategies including black-box versus white-box, unit testing, integration testing, top-down versus bottom-up testing, and construction and implementation of a test plan

Be familiar with defining the purpose (persuade, inform, etc.) of a written document and select the appropriate rhetorical devices.

Be familiar with writing several pieces of documentation that have different purposes and to use appropriate organization to tie them together.

Be familiar with group project organization techniques including conducting group meetings, recording minutes, and tracking project progress.

Be familiar with using one structured approach to large software design to carry out a large group project.

Be exposed to issues in systems programming as opposed to applications programming

Be exposed to memory management issues including caching and virtual memory

Be exposed to one-pass macro processing techniques

Topic Lec Rec Lab Cli IS Sem FE Wor

Architecture 4.0 2.0

Software engineering 4.0 2.0

Technical writing 3.0 2.0

System software 2.0 2.0

Assemblers: algorithm, pseudo operations, expressions 8.0 2.0

Searching and sorting 3.0

Tools: makefiles, CVS, lex and yacc 4.0 1.0

Linking and loading 4.0 2.0

Macro processors 4.0

Compilers: tokenizing, parsing, code generation 4.0 1.0

Basic absolute loader and simulator

Assembler

Relocating, direct linking loader (and modified assembler)

Aspect Percent

Lab assignments 55%

Midterm 20%

Exam 25%

Page 145: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Title Author

System Software - An Introduction to Systems Programming Leland Beck

The Practice of Programming Brian Kernighan and Rob Pike

A Writer's Reference Diana Hacker

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 146: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Paolo Sivilotti

Page 147: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4193 (Approved): Individual Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Prior Course Number: CSE 693Transcript Abbreviation: Indv Studies CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 148: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 149: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4193H (Approved): Individual Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Transcript Abbreviation: Hon Indv Stud CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Honors status; Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 150: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 151: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4194: Group Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Prior Course Number: CSE 694Transcript Abbreviation: Group Studies CSEGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 152: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 153: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4194H (Approved): Group Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Transcript Abbreviation: Hon Grp Stud CSEGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Honors status; Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 154: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 155: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4221 (Approved): Introduction to Object-Oriented Programming

Course DescriptionIntroduction to object-oriented programming for experienced procedural programmers; interfaces, classes, packages; implements and extends relationships; design patterns; best practices.

Prior Course Number: CSE 502Transcript Abbreviation: Intr OO PgmngGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Previous programming experience in a procedural languageExclusions: Not open to CSE or CIS majors; not open to students with credit for CSE 502Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

General Information

Course Goals

Java is taught and used

Be competent with using control structures, built-in types, and OO program units of Java (interface, class, and package), and relationships (implements and extends), to write application program.

Be familiar with using reference types/variables, and with handling the problems they create compared to value types/variables.

Be familiar with designing and developing new interfaces, classes, and packages.

Be familiar with using some of the most important object-oriented design patterns.

Be familiar with using UML class diagrams.

Page 156: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with using formal specifications in interfaces.

Be exposed to the virtual machine model of modern computer systems.

Be exposed to software engineering issues.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to the course; component-based software and component relationships; UML class diagrams; Java control structures, built-in types, I/O; specifications with preconditions and postconditions; reasoning about program behavior; testing

14.0

Interfaces, classes, and packages; reference types/variables and the problems they cause vis-a-vis value types/variables; template method pattern; abstract factory pattern

18.0

Graphical user interfaces; event handling; observer pattern 9.0

Write a program (using a language and programming style you already know) to find the area of a simple polygon, and test it

Write a program in Java to compute the n-th root of a real number using a numerical algorithm of choice, and test it

Extend a natural number component family, and test it

Implement a natural number calculator with graphical user interface, and test it

Implement a natural number component, and test it

Implement a numerical integration component in two different ways, and test it

Aspect Percent

Lab assignments 42%

Homeworks 4%

Class participation 4%

Midterm exam 25%

Final exam 25%

Title Author

Core Java 2: Volume I - Fundamentals Horstmann and Cornell

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

Page 157: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 158: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4231 (Proposed): Software II: Software Development and Design

Course DescriptionData representation using hashing, search trees, and linked data structures; algorithms for sorting; using trees for language processing; component interface design; best practices in Java.

Prior Course Number: Parts of CSE 222, CSE 321, and CSE 421Transcript Abbreviation: SW II: Dev & DsgnGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 2.0 hr LabExpected out-of-class hours per week: 5.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2221 or CSE 4221Exclusions: Not open to students with credit for CSE 2231.01 or CSE 321 or CSE 421 or CSE 2231Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Java is used

Be competent with using design-by-contract principles and related best practices, including separation of abstract state from concrete representation

Page 159: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Be competent with using interface contracts, representation invariants, and abstraction functions that are described using simple predicate calculus assertions with mathematical integer, string, finite set, and tuple models

Be competent with extending existing software components by layering new operations on top of existing operations

Be competent with layering new software components' data representations on top of existing software components

Be familiar with simple linked data representations, including why and when it is (and is not) appropriate to use them rather than layered data representations

Be competent with using simple recursion

Be competent with using simple techniques to test application software, layered implementations of extensions, and layered or linked data representations, including developing and carrying out simple specification-based test plans

Be competent with using simple techniques to debug application software, layered implementations of extensions, and typical data representations

Be familiar with using basic algorithm analysis techniques and notations to analyze and express execution times of operations whose implementations involve straight-line code, simple loops, and simple recursion (e.g., in manipulating binary trees)

Be competent with writing Java programs using core language features including interfaces, classes, inheritance, and assertions

Be competent with writing Java programs that use software components similar to (but simplified from) those in the Java collections framework

Be familiar with using many industry-standard "best practices" for Java design and development

Be familiar with working as part of a team on a software project with multiple milestones

Be exposed to using a version control system, e.g., CVS or SVN

Topic Lec Rec Lab Cli IS Sem FE Wor

Set and Map representations using an array of Queues with hashing

3.0 1.0

BinaryTree component; Set representation using a BinaryTree with binary search tree algorithms

3.0 1.0

Linked representations of Stack/Queue/List components and variations; singly-linked and doubly-linked lists

6.0 2.0

Tree component; language processing using trees; elaboration of small programming language compiler team project (with related programming lab assignments continuing beyond this module); introduction to version control

9.0 3.0

Component interface design principles and practices 6.0 2.0

Advanced Java language constructs and uses; best practices in Java

12.0 4.0

Map representation using a BinaryTree with binary search tree algorithms, and using hashing

List representation using a doubly-linked-list data structure

Various components of a simple programming language compiler

Simple component design (including interface contract) to meet stated requirements

Aspect Percent

Homework and Class Participation 8%

Closed Labs 12%

Programming Lab Assignments 30%

Page 160: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Aspect PercentAspect Percent

Midterm Exam 20%

Final Exam 30%

Title Author

On-line reference materials

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

Page 161: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or CommentsThis course offering will be combined with CSE 2231.

Prepared by: Kathryn Reeves

Course Contribution Program OutcomeCourse Contribution Program Outcome

* m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 162: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4251: The UNIX Programming Environment

Course DescriptionIntroduction to the UNIX programming environment including: shell programming (csh); regular expressions; makefiles; grep, sed, and awk programming languages.

Prior Course Number: CSE 459.11Transcript Abbreviation: UNIX Prgrmng EnvGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0Repeatable: NoTime Distribution: 1.0 hr LecExpected out-of-class hours per week: 2.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2231 or CSE 321Exclusions: Not open to students with credit for CSE 459.11Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Course Topics

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be familiar with csh programming.

Be familiar with UNIX regular expressions.

Be familiar with using basic sed commands.

Be familiar with using awk commands to filter through data files.

Page 163: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction 1.0

C Shell: filename metacharacters, i/o redirection, command history, building complex command, job/process control, directory control

3.0

C Shell programming: script introduction, script examples, debugging scripts

4.0

Regular expressions in Unix (grep) 3.0

make, sed, awk 3.0

Working with environment variables, command history

Simulating the "trash" basket of Windows/Mac

Cleaning up the "trash basket"

Use grep, sed and awk to process some text files

Lab using make

Aspect Percent

Lab 1 20%

Lab 2 20%

Lab 3 20%

Lab 4 20%

Lab 5 20%

Title Author

UNIX in a Nutshell, A Desktop Quick Reference for SVR4 and Solaris 7, 3rd Edition Arnold Robbins

UNIX SHELLS by Example, 3rd Edition Ellie Quigley

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

Page 164: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 165: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4252 (Approved): Programming in C++

Course DescriptionSyntax and pragmatics of C++ programming; C++ types, arrays, classes, pointers; objects and classes; compile-time vs. run-time picture; inheritance; template classes.

Prior Course Number: CSE 459.22Transcript Abbreviation: C++ PrgrmngGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0Repeatable: NoTime Distribution: 1.0 hr LecExpected out-of-class hours per week: 2.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2231Exclusions: Not open to students with credit for CSE 459.22Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with using C++ classes, member functions, constructors, destructors, etc.

Be competent with using templates and the C++ standard template library (STL).

Be competent with using inheritance including using virtual functions.

Be familiar with using arrays and pointers to work with collections of objects and with allocating and releasing memory.

Be familiar with using .h and .cpp files to organize large programs.

Page 166: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with the relation between the runtime picture and the source-level picture of moderately complex programs; and using this to build reliable programs.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction; Compiling and running C++ programs (including use of .h and .cpp files);

0.5

Overview of simple types in C++; arrays, classes, address types (pointers and references);

1.5

Distinction between objects and classes; compile-time picture vs. runtime; member functions are invoked on objects; exception: static members (both data and functions);

2.0

Stack vs. heap objects; automatic vs. explicit creation; constructors and destructors; new and delete; "this" pointer; complex structures such as trees;

3.0

Inheritance; public vs. private vs. protected; overriding; virtual methods, pure virtual methods, abstract classes; virtual vs. non-virtual methods; runtime dispatch and how it works;

3.0

Exceptions, namespaces; 2.0

Templates; examples using STL. 2.0

Programming assignment involving a few simple classes such as simple bank accounts;

Programming assignment involving the use of non-trivial constructors, destructors;

Programming assignment involving pointers, new, delete, "this" variable, complex structures such as trees;

Programming assignment involving inheritance, virtual methods;

Aspect Percent

Class attendance, participation 15%

Programming assignments 85%

Title Author

The C++ Programming Language B. Stroustrup

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

Page 167: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 168: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4253 (Approved): Programming in C#

Course DescriptionC# programming for students well-versed in programming with another object-oriented language.

Prior Course Number: 459.24Transcript Abbreviation: C# PrgrmngGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0Repeatable: NoTime Distribution: 1.0 hr LecExpected out-of-class hours per week: 2.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2231Exclusions: Not open to students with credit for CSE 459.24Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Master C# programming language constructs and built-in types.

Master using C# delegates and events.

Be competent in using language interfaces, in particular, those defined in the .NET framework.

Be competent in using inheritance in C#.

Be competent with using .NET collections (sets, lists, dictionaries.

Be exposed to the Common Language Runtime (CLR), garbage collection, and assemblies.

Be familiar with GUI programming on Windows.

Page 169: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be exposed to C# documentation and community web sites.

Topic Lec Rec Lab Cli IS Sem FE Wor

Overview of the course, the .NET platform and C# 1.0

C# language basics 1.0

Hands-on workshop on Visual Studio 1.0

Review of Object-oriented design, programming to interfaces, C# interfaces, C# inheritence and C# class definitions.

1.0

C# Generics and generic collection classes in .Net 1.0

Enumerations and Iterators 2.0

Windows Forms and basic GUI development 2.0

Delegates and Events 1.0

Extension methods 0.5

Equality, comparisons and hashing in .NET 1.0

Anonymous types 0.5

Lambda Expressions 0.5

Language integrated queries (LINQ) and functional programming with C#

1.5

Develop a simple Windows Console Application that reads text from the Clipboard and prints out a list of unique sorted words.

Create a C# type library (Class libary) and associated dll file that contains both interfaces and concrete class implementations for a computer graphics scenegraph. Create a simple Console Application that test the creation and traversal of the scenegraph with simple textual output to the console.

Create a GUI application to create scenegraphs (textually).

Refactor the Class libraries to use a plug-in Architecture with the interface types specified in their own dll.

Aspect Percent

Quizes 40%

Programming Assignments 60%

Title Author

C# in a Nutshell Joseph Albahari and Ben Albahari

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

Page 170: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

*** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

*** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 171: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4254 (Approved): Programming in Lisp

Course DescriptionLisp programming for students well-versed in programming with another language.

Prior Course Number: CSE 459.31Transcript Abbreviation: Lisp PrgrmngGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0Repeatable: NoTime Distribution: 1.0 hr LecExpected out-of-class hours per week: 2.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2231Exclusions: Not open to students with credit for CSE 459.31Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Course Topics

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with basic components of Common Lisp, such as s-expressions, data structures, and program flow.

Be familiar with the Lisp family of progrmaming languages, with particular emphasis on ANSI Common Lisp.

Be familiar with the Lisp top-level and debugger.

Be exposed to the functional programming paradigm.

Page 172: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Data structures 3.0

Program control and structure 3.0

Functions 2.0

I/O and symbols 2.0

Numbers and macros 1.0

Advanced topics, style, tricks, and review. 3.0

Write a recursive function which will collapse a list, accepting a list of atoms or lists of arbitrary depth as a parameter and returning a list of atoms, e.g., (collapse '(a b (c (d) ((e) f))) should return (a b c d e f).

Write a function find equivalents, e.g., (equiv-classes '((a b) (b c) (d e))) should return ((a b c) (d e)), without using iteration or assignment.

Write a program useful for some real application demonstrating understanding of data structures. Past examples include a wine catalog and food pairing program, a video game, and a graphics manipulation program.

Aspect Percent

Introductory and basic skill-building labs 60%

Labs for solving real problems with Lisp as the implementation language 40%

Title Author

ANSI Common Lisp Paul Graham

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 173: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 174: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4255 (Approved): Programming in Perl

Course DescriptionSyntax and pragmatics of Perl programming; Perl mechanisms for text and file processing, scripting, client-server programming, etc.; powerful ways to combine these mechanisms.

Prior Course Number: 459.51Transcript Abbreviation: Perl PrgrmngGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0Repeatable: NoTime Distribution: 1.0 hr LecExpected out-of-class hours per week: 2.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2231 and CSE 2331 and CSE 2421Exclusions: Not open to students with credit for CSE 459.51Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with Perl's data types;

Be competent with text and file manipulations using Perl;

Be competent with combining Perl's mechanisms and techniques to solve complex, practical problems.

Be familiar with using DBI to access a database;

Be familiar with basic CGI scripts written in Perl;

Page 175: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to Perl, basic skeleton, scalar variables; 1.5

Arrays, lists, subroutines; 1.5

Hashes, basic I/O; 1.0

Regular expressions; 1.0

Control structures; 1.0

File and directory manipulations; 1.0

Process orchestration; 1.5

String manipulations and sorting; 1.0

Perl DBI; CGI scripting; 1.0

Other common Perl modules; 1.0

Combining Perl's mechanisms and techniques to solve complex problems;

1.5

Object-oriented Perl. 1.0

Basic Perl skeleton, basic input/output commands and control structures;

Use of hashes for storing and presenting reports on a set of data;

Read in a configuration file and write a simulation program to use that configuration data;

Fetch data from a database using DBI, and produce simple reports;

Use of several advanced sorting methods.

CGI-based.

Aspect Percent

Programming labs 100%

Title Author

Learning Perl, 3rd Edition Randal L. Schwartz and Tom Phoenix

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

Page 176: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Neelam Soundarajan

Course Contribution College OutcomeCourse Contribution College Outcome

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 177: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4471: Information Security

Course DescriptionIntroduction to security of digital information; threats and attacks; regulations; risk management; attack detection and response; cryptography; forensics; technical training and certifications.

Prior Course Number: CSE 551Transcript Abbreviation: Info SecurityGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Sophomore, Junior, SeniorCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Prereq: 2231 and 2321, or 321.Exclusions: Not open to students with credit for 551.Cross-Listings:

Course Rationale: Renumbering of 5471 as 4471 (already approved by CCAA several years ago).

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Be competent with information security governance, and related legal and regulatory issues

Be competent with understanding external and internal information security threats to an organization

Be competent with information security awareness and a clear understanding of its importance

Be competent with how threats to an organization are discovered, analyzed, and dealt with

Be familiar with a high-level understanding of how information security functions in an organization

Be familiar with the structure of policies, standards and guidelines

Page 178: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Information security, roles within an organization 1.5

Legal, regulatory issues 3.0

Threats, vulnerabilities, exploits 3.0

Governance, policy, standards, guidelines 3.0

Risk management 3.0

Firewalls, Intrusion Detection, Incident Response, Forensics, Honeypots, VPN, Vulnerability Scanning

6.0

Cryptography 3.0

Access Control 1.5

Physical Security, Personnel, Training, Education, Awareness, Certification

3.0

Presentations by the students 9.0

Overview, wrap-up 3.0

Compare/contrast security policies and standards at several Universities

Create attack trees for various scenarios

Aspect Percent

Exam 50%

Survey and Presentations 35%

Homework 15%

Title Author

Principles of Information Security, Thomson/Course Technology, ISBN 0-619-21625-5, Third Edition, 2009.

Michael E. Whitman and Herbert J. Mattord

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

** f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 179: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Additional Notes or Commentsrenumbering of 5471 as an UG course to bring college database in sync with official

(university) version

Prepared by: Paolo Sivilotti

Course Contribution College OutcomeCourse Contribution College Outcome

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

* c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

* k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 180: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4521 (Approved): Survey of Artificial Intelligence for Non-Majors

Course DescriptionSurvey of the basic concepts and techniques in artificial intelligence, including problem solving, knowledge representation, and machine learning.

Prior Course Number: CSE 630Transcript Abbreviation: AI for Non MajrsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 1211 or CSE 1221 or CSE 1222 or CSE 1223 or CSE 2221 or graduate standingExclusions: Not open to CSE or CIS majors; not open to students with credit for CSE 3521 or CSE 5521 or CSE 630Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

General Information

Course Goals

Intended audience is minors in cognitive science or CIS, or graduate students in related fields. Course assumes some prior exposure to quantitative and/or computational thinking. Students who satisfy the course prerequisite by appeal to graduate standing are strongly advised to consult the instructor if they are in any doubt about the suitability of their preparation.

Master basic search techniques for problem-solving, including systematic blind search, heuristically-guided search, and optimal search.

Be familiar with game tree search methods and the requirements for expert-level game play.

Page 181: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with using logic and proof as a basis for knowledge representation and automated reasoning.

Be exposed with multiple knowledge-representation formalisms.

Be exposed to problems in common sense reasoning and language understanding.

Be exposed to integrated AI architectures as a platform for building AI systems.

Be exposed to machine learning techniques and the kinds of problem they solve.

Be exposed to state-of-the-art AI applications related to robotics, machine vision, speech recognition, and computer games.

Be familiar with the implications of widely deployed AI technology for society in general and for a sample of other academic disciplines.

Topic Lec Rec Lab Cli IS Sem FE Wor

Basic representation and problem solving methods 6.0

Overview of data abstractions for search; definitions of graphs, trees, tree and graph traversals

2.0

Search techniques and game playing 7.0

Knowledge representation using logic, automated proof techniques

5.0

Machine learning, probabilistic inference 6.0

Planning and common sense reasoning 3.0

Perception and communication 4.0

Applications 5.0

AI and games 3.0

Compare breadth-first, depth-first, and A* search on a problem domain.

Apply reinforcement learning to maze navigation.

Aspect Percent

Homeworks and labs 40%

Midterm 25%

Final 35%

Title Author

Artificial Intelligence, A Modern Approach (3rd edition) Stuart Russell and Peter Norvig

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

Page 182: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: John Fosler-Lussier

Course Contribution College OutcomeCourse Contribution College Outcome

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 183: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4689 (Approved): Professional Practice in Industry

Course DescriptionPreparation and submission of a comprehensive report based on actual employment experience in a co-op job in industry.

Prior Course Number: 489Transcript Abbreviation: Prof ExperienceGrading Plan: Progress - S/UCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Freshman, Sophomore, Junior, SeniorCourse Offerings: Autumn, Spring, May, SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 0.0Repeatable: YesMaximum Repeatable Credits: 0.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoTime Distribution: Expected out-of-class hours per week: 0.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of the CSE Advising OfficeExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.9999Subsidy Level: Baccalaureate Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

Page 184: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Maintains full-time student enrollment status while working. It will not maintain student athletes' full-time status at this time. Being a full-time student while on co-op or intern work assignment ensures being able to... Pick up or purchase athletic tickets Get an RPAC pass at the student rate Get an OSU golf course pass at the student rate Obtain enrollment verification for insurance, if covered under your parents' car and/or health policies

Verifies a continuing full-time student for financial aid purposes. If a student typically receives financial aid and does not enroll in CSE 4689, the student will be placed on leave of absence status which could result in the student being required to start re-payment of their student loans before graduation.

Course is a prerequisite to employment for some employers, since enrollment in such a course fits the legal requirements outlined in Ohio Revised Code Section 4141.01(B)(3)(e)(ii). These employers will contact ECIP to verify enrollment.

Transcript formally documents co-op or internship experience. In Ohio, as in many states, co-op and internship experience counts toward the 4-year field work requirement to obtain the Professional Engineer (PE) license. Note: only experience from the junior year in major onward applies. [This is not the same as junior rank based on accumulated elective credits.]

Enables student to waive your residence hall contract if you are working outside of the Columbus metro area.

Ensures student will be eligible for student health insurance for the quarter worked -- health insurance is required to participate as a co-op or intern.

Topic Lec Rec Lab Cli IS Sem FE Wor

Students complete a cooperative assignment in private industry or for a government agency; assignments supervised by the employer and monitored and evaluated by the CSE Advising Office.

Aspect Percent

Graded S - Satisfactory or U - Unsatisfactory, based on satisfactory completion of the co-op activity and the completion of the assignment from the CSE Advising Office.

100%

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 185: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Neelam Soundarajan

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 186: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4901 (Approved): Project: Design, Development, and Documentation of Web Applications

Course DescriptionIntensive group project involving design, development, and documentation of a web application; client-side and server-side scripting; communication skills emphasized; builds programming maturity.

Transcript Abbreviation: Proj: Web AppsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 3.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Programming maturity and graduate standingExclusions: Not open to CSE and CIS majors; not open to students with credit for CSE 3901Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Course Goals Be competent in the development of dynamic web applications using Java-based technologies.

Be competent in the development and formatting of static web content.

Be competent with writing, organizational, and presentation skills.

Be competent with analyzing the intended audience for a written document and writing an audience profile.

Be familiar with making engineering decisions involving tradeoffs.

Be familiar with the use of SQL to access database content.

Be familiar with defining the purpose (persuade, inform, etc.) of a written document and select the appropriate rhetorical devices.

Be familiar with writing several pieces of documentation that have different purposes and using an appropriate organization to tie them together.

Be familiar with group project organization techniques including conducting group meetings, recording minutes, and tracking project progress.

Page 187: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with using one structured approach to large software design to carry out a large group project.

Be exposed to the use of application frameworks for the deployment of web applications.

Be exposed to some basic security vulnerabilities sometimes found in web applications.

Be exposed to methods for internationalizing web applications.

Topic Lec Rec Lab Cli IS Sem FE Wor

Static web and networking (HTTP) 2.0 1.0

Document content and formatting (HTML, XHTML, XML, CSS)

6.0 1.0

Client-side scripting with JavaScript 3.0 1.0

Databases (MySQL, JDBC) 3.0 1.0

Model-view-controller design pattern 2.0 1.0

Server-side scripting with servlets and Java Server Pages 6.0 2.0

Sessions and state (JavaBeans) 2.0 1.0

Tag libraries (JSTL) 2.0 1.0

Authentication and security (SSL, SQL injection attacks, Cross-site scripting attacks)

3.0 1.0

Deployment frameworks (eg Struts, Webwork, Hibernate, Spring)

3.0 1.0

Internationalization and localization 1.0

Performance considerations 1.0

Technical writing 3.0

Improving responsiveness with asynchronous requests (Ajax) 3.0 1.0

Introduction to web services (SOAP/WSDL/UDDI) 3.0

An on-line task list organizer

An interview-day batch scheduling application

Aspect Percent

Lab assignments 60%

Midterm 15%

Exam 25%

Title Author

Head First Servlets & JSP (2nd ed) Kathy Sierra, Bert Bates, Bryan Basham

Page 188: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or Comments* Moved exclusion from General Information to Exclusions. --rowland

Prepared by: Neelam Soundarajan

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 189: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4902 (Approved): Project: Design, Development, and Documentation of Interactive Systems

Course DescriptionIntensive group project involving design, development, and documentation of an interactive software system, a 2D interactive game; communication skills emphasized; builds programming maturity.

Transcript Abbreviation: Proj: Interact SysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 3.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Programming maturity and graduate standingExclusions: Not open to CSE and CIS majors; not open to students with credit for CSE 3902Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Course Goals Be competent with 2D graphics objects and rendering.

Be competent with event based programming.

Be familiar with elements of game engines such as AI, animation, memory management, and user control.

Be familiar with game content creation and editing tools.

Be competent with writing, organizational, and presentation skills.

Be competent with analyzing the intended audience for a written document and writing an audience profile.

Be familiar with making engineering decisions involving tradeoffs (e.g., space-time tradeoffs in choosing a table implementation).

Be familiar with defining the purpose (persuade, inform, etc.) of a written document and select the appropriate rhetorical devices.

Be familiar with writing several pieces of documentation that have different purposes and using an appropriate organization to tie them together.

Page 190: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

ABET-EAC Criterion 3 Outcomes

Be familiar with group project organization techniques including conducting group meetings, recording minutes, and tracking project progress.

Be familiar with using one structured approach to large software design to carry out a large group project.

Topic Lec Rec Lab Cli IS Sem FE Wor

Computer graphics and games overview 1.0

Event based programming 1.0

2D rendering pipeline 4.0

Image processing 4.0

Introduction to 3D graphics 4.0

Student project team meetings 14.0 7.0

Student project team design reviews, presentations, etc. 14.0 7.0

Game design document

Minimal game engine with documentation and revised game design document

Expanded game engine with updated documentation and game asset creation tools

Polished game engine with full documentation

Aspect Percent

Project Milestone 1 15%

Project Milestone 2 15%

Project Milestone 3 15%

Midterm 25%

Final 30%

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 191: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or Comments* Moved exclusion from General Information to Exclusions. --rowland

Prepared by: Neelam Soundarajan

Page 192: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4998 (Approved): Undergraduate Research in Computer Science and Engineering

Course DescriptionOpportunity for undergraduate student to conduct research in Computer Science and Engineering.

Prior Course Number: CSE 699Transcript Abbreviation: UG Research CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Opportunity for undergraduate student to conduct research in Computer Science and Engineering.

Page 193: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 194: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4998H (Approved): Undergraduate Research in Computer Science and Engineering

Course DescriptionOpportunity for undergraduate student to conduct research in Computer Science and Engineering.

Transcript Abbreviation: HonUG Research CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Honors status; Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Opportunity for undergraduate student to conduct research in Computer Science and Engineering.

Page 195: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 196: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4999 (Approved): Computer Science and Engineering Research for Thesis

Course DescriptionSupervised research and project work arranged individually.

Prior Course Number: CSE 699Transcript Abbreviation: UG Research CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Supervised research and project work arranged individually 15.0

Page 197: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 198: CSE 1110 (Approved): Introduction to Computing Technology

CSE 4999H (Approved): Computer Science and Engineering Research for Thesis

Course DescriptionSupervised research and project work arranged individually for honors students

Prior Course Number: CSE 783HTranscript Abbreviation: HonUG Research CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: UndergradStudent Ranks: Junior, SeniorCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Honors status; Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

BS CSE BS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Supervised research and project work arranged individually

Page 199: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 200: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5032 (Approved): Foundations I: Discrete Structures

Course DescriptionPropositional and first-order logic; basic proof techniques; graphs, trees; analysis of algorithms; asymptotic analysis; recurrence relations.

Transcript Abbreviation: Fndns I: Discr StrGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Sophomore, Junior, Senior, Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: 5022 or equivalentExclusions: Not open to students with credit for 625 or 680 or 2321.Cross-Listings:

Course Rationale: To give non-majors (G and UG) the option to pick up pre-reqs in order to be prepared to

take more advanced CSE courses.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

At least one term of calculus is highly recommended

Be competent with using propositional logic.

Be familiar with first-order predicate logic.

Page 201: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Be familiar with proving by contradiction, by ordinary induction and by strong induction.

Be familiar with using asymptotic notation.

Be familiar with analyzing running time of simple iterative algorithms.

Be familiar with graph theory.

Be exposed to analyzing running time of recursive algorithms.

Be exposed to sorting and searching.

Be exposed to designing graph algorithms.

Topic Lec Rec Lab Cli IS Sem FE Wor

Mathematical reasoning. 12.0

Analysis of simple algorithms. 6.0

Sorting and searching. 9.0

Graph theory. 9.0

Graph algorithms. 6.0

Aspect Percent

Homework 20%

Classroom participation 10%

Midterms, final 70%

Title Author

Discrete Mathematics and its Applications Kenneth H. Rosen

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 202: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Kathryn Reeves

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 203: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5042 (Proposed): Systems I: Introduction to Low-Level Programming and Computer Organization

Course DescriptionIntroduction to computer architecture at machine and assembly language level; pointers and addressing; C programming at machine level; computer organization.

Prior Course Number: CSE 360 and CSE 459.21Transcript Abbreviation: Sys I: Comput OrgGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Sophomore, Junior, Senior, Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 4.0 hr LecExpected out-of-class hours per week: 5.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: 2122 (230) or 2123 (314) or 2231 or 321, and 2321 or Math 2366 or Math 366Exclusions: Not open to students with credit for 360 or 2421.Cross-Listings:

Course Rationale: To give non-majors the option to pick up pre-reqs in order to be prepared to take more

advanced CSE courses.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

This course is appropriate for non-CSE majors only.

Page 204: CSE 1110 (Approved): Introduction to Computing Technology

Course Goals

Course Topics

Representative Assignments

Grades

To master programming with pointers in C

To be competent with application development and debugging in Unix environments

To be competent in programming with dynamic data structures in C, and in using C string and I/O features, bit operations, and function pointers

To be familiar with overall organization and design of computer systems

To be competent with representation and manipulation of information in computer systems

To be familiar with machine encoding of instructions, and be competent with a particular real or hypothetical instruction set

To be familiar with programming in assembly language

To be familiar with Linking (static linking, relocatable object files, symbols and symbol tables, symbol resolution, relocation, loading executable object files)

Topic Lec Rec Lab Cli IS Sem FE Wor

Transitioning from Java to C, Basic C syntax, working in Unix Environments

6.0 2.0

C pointers and memory allocation/deallocation. Programming dynamic data structures with C (linked lists, arrays, including multi-dimensional arrays accessed through pointers, trees), string manipulation, pointer casting, null/void pointers.

6.0 2.0

Other misc C features: I/O operations, bit operations, function pointers, command line argument passing

3.0 1.0

Debugging in Unix with gdb/xgdb, Use of Makefile, Other Unix features

3.0 2.0

Introduction to Computer Systems Organization 3.0

Representation and manipulation of information (information storage, integer representation, integer arithmetic, floating point)

6.0 2.0

Machine level representation of programs (program encoding, data formats, accessing information, arithmetic and logical operations, control, procedures, array allocation and access, alignment)

9.0 2.0

Programming with an assembly language: simple use of registers and arithmetic operations, conditionals and loops, accessing arrays in assembly, procedure calls in assembly.

3.0 3.0

Linking (static linking, relocatable object files, symbols and symbol tables, symbol resolution, relocation, loading executable object files

3.0

Introductory C programming (for students with 2 semesters of advanced programming)

Dynamic data structure based programming in C

Use of command line argument passing and function pointers, advanced string/buffer manipulation

Using bit operations in C to simulate hardware computer arithmatic algorithms

Introductory assembly programming

Page 205: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Aspect Percent

Programming Assignments (~5) 15%

Written Assignments (~3) 12%

In-Class Assignments 8%

Mid-term 1 15%

Midterm 2 20%

Final Exam 30%

Title Author

Computer Systems: A Programmer's Perspective Bryant and O'Hallaron

Pointers with C Kenneth Reek

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

Page 206: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Kathryn Reeves

Course Contribution Program OutcomeCourse Contribution Program Outcome

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 207: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5043 (Approved): Overview of Computer Systems For Non-Majors

Course DescriptionIntroduction to computer architecture and organization at machine and assembly level; pointers and addressing using C programming; introduction to operating system concepts: process, memory management, file system and storage, and multi-threaded programming.

Transcript Abbreviation: SystemsForNonMjrsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Junior, Senior, Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 4.0 hr LecExpected out-of-class hours per week: 5.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Prereq: 5022 or equivalent, and 5032 or equivalentExclusions: Not for CSE/CIS majors. Not open to students with credit for CSE 2421 or 5042 or 2431 or 3430 or 360 or 660Cross-Listings:

Course Rationale: Combined "systems" course for students pursuing a minor in CIS or in related programs.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

General Information

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Not for CSE/CIS majors.

Page 208: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

To be competent programming with pointers in C

To be competent with application development and debugging in Unix environments

To be familiar with overall organization and design of computer systems

To be exposed to representation and manipulation of information in computer systems

Be competent with process concepts

Be familiar with memory hierarchy, storage,  and  I/O

Be familiar with process synchronization and threads.

Be familiar with multi-threaded programming.

Topic Lec Rec Lab Cli IS Sem FE Wor

Transitioning from Java/C++ to C, Basic C syntax, working in Unix Environments

6.0

C pointers and memory allocation/deallocation and programming dynamic data structures with  C

8.0 2.0

Other misc C features: I/O operations, bit operations, function pointers, command line argument passing

3.0 1.0

Debugging in Unix with gdb/xgdb, Use of Makefile, Other Unix features

2.0

Introduction to Computer Systems Organization 4.0

Integer representation and arithmetic, floating point 8.0 2.0

Memory hierarchy (including basics of virtual memory) 8.0

Process management 8.0

Process synchronization and concurrent programming 8.0

Input/output 4.0

Two labs on C programming (one simple, one with pointers)

One lab with memory hierarchy (file manipulation)

One lab with simple system calls  (fork/join, or similar)

One lab on process/thread synchronization

One lab on multi-core parallelization

Aspect Percent

Programming Assignments (3-5) 35%

Written Assignments 10%

Mid-term 20%

Final Exam 35%

Title Author

Computer Systems: A Programmer's Perspective Bryant and O'Hallaron

Page 209: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Additional Notes or Comments

Title AuthorTitle Author

Pointers with C Kenneth Reek

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 210: CSE 1110 (Approved): Introduction to Computing Technology

This course is NOT intended for CSE/CIS majors. That is why for each BS-CSE Program

Outcome, it lists "no contribution".

Prepared by: Kathryn Reeves

Page 211: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5194 (Proposed): Legal Topics for Computer Engineers

Course DescriptionThis course introduces students to areas of law that govern computer engineering and design. The goals of the course include mastery of a set of legal doctrines, as well as immersion in the legal method used by lawyers to analyze problems and by judges to decide cases. Students can expect to learn how to evaluate computer engineering methods and projects through the lens of legal analysis.

Transcript Abbreviation: LegalTopicsforCSEGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Even YearsCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2501, CSE 39xyExclusions: Cross-Listings:

Course Rationale: Train students to be fluent in the legal mechanisms that touch on the computer engineering

profession; Expose students to multidisciplinary pathways.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: Subsidy Level:

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent in the identification of legal issues that arise in the development and application of computing technology in modern society

Page 212: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent in the ability to formulate and advocate for multiple points of view in analyzing legal disputes arising in the context of computing technology

Be familiar with the larger legal, business, and societal contexts in which decisions are made regarding the creation, development, and use of computing technology

Be familiar with weighing the potential costs and benefits of pursuing different legal strategies with respect to computing technology

Be familiar with effective methods of written and oral communication

Be exposed to legal issues that computing professionals may encounter as part of their practice

Topic Lec Rec Lab Cli IS Sem FE Wor

Trade secrets 6.0

Patents 12.0

Copyrights 12.0

Trademarks 9.0

Designs 3.0

Read edited excerpts from judicial opinions and background texts

Write short responses to selected prompts

Midterm exams

Final paper analyzing the legal dimensions of a computer science project

Aspect Percent

Short response pieces or midterm exams 40%

Class participation 20%

Final paper 40%

Title Author

Intellectual Property Law: Cases & Materials Lydia Pallas Loren & Joseph Scott Miller

Internet Law: Cases and Problems James Grimmelmann

Software & Internet Law Mark A. Lemley et al.

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

Page 213: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Brian Choi

Course Contribution College OutcomeCourse Contribution College Outcome

*** f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

*** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

*** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

*** g an ability to communicate effectively with a range of audiences;

*** h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 214: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5194.01 (Proposed): Group Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Prior Course Number: CSE 694Transcript Abbreviation: Group Studies CSEGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Junior, Senior, MastersCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: YesTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Graduate standing or permission of instructorExclusions: Cross-Listings:

Course Rationale: Existing quarter course (cse694), but had no semester equivalent.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Masters Course

Programs

Course Topics

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

Page 215: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 216: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Kathryn Reeves

Page 217: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5194.02 (Proposed): Group Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Prior Course Number: CSE 694Transcript Abbreviation: Group Studies CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Junior, Senior, MastersCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: YesGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing quarter course (cse694), but had no semester equivalent, including this with an

S/U option.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Masters Course

Programs

Course Topics

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

Page 218: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 219: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Kathryn Reeves

Page 220: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5194.99 (Proposed): [Draft, Still Editing] Data Intensive Query Interfaces

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Transcript Abbreviation: DataInterfacesGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: AlwaysCourse Frequency: Even YearsCourse Length: 14 WeekCredits: 3.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: YesTime Distribution: 3.0 hr IS, 3.0 hr SemExpected out-of-class hours per week: 3.0Graded Component: SeminarCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 5242 or CSE 5244, or permission of instructorExclusions: Cross-Listings:

Course Rationale: Existing quarter course (cse694), but had no semester equivalent.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Masters Course

Programs

Course Topics

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Page 221: CSE 1110 (Approved): Introduction to Computing Technology

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies in data-intensive query interfaces not otherwise offered.

Aspect Percent

Paper Readings 50%

Research Project 50%

Title Author

Search User Interfaces Marti Hearst

The Design of Everyday Things Don Norman

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

Page 222: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Arnab Nandi

Course Contribution Program OutcomeCourse Contribution Program Outcome

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 223: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5231 (Approved): Software Engineering Techniques

Course DescriptionSoftware engineering issues, techniques, methodologies and technologies; software lifecycle activities: requirements analysis, architecture, design, testing, deployment, maintenance; project management; enterprise software systems; frameworks.

Prior Course Number: CSE 757Transcript Abbreviation: Software EngGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3901 or CSE 3902 or CSE 560Exclusions: Not open to students with credit for CSE 3231 or CSE 757Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with structured and agile software engineering frameworks; specifically structured and agile software engineering methodologies for requirements identification, analysis, architecture, design, testing, deployment and project management

Be familiar with the characterization of enterprise software systems.

Be familiar with frameworks for analyzing the business context of enterprise IT systems, the concept of Business-IT alignment and related issues, and Enterprise Architecture.

Page 224: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Be exposed to the trends impacting enterprise systems

Be exposed to the need for frameworks for software engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Characteristics of enterprise softw. sys.: scale, heterogeneity, distribution, federation by nature, lack of complete knowledge; organizational challenges; external drivers.

1.5

Understanding the business and the relationship between the business and information technology - business strategy, business-IT alignment and enterprise architecture.

3.0

Software engineering process broadly characterized as structured or agile processes. Scenario-driven, Incremental and iterative development. Introduction to work-products and work-product-oriented development. Agile principles.

2.5

Requirements gathering. Structured and agile requirements work-products.

4.0

Analysis domain, problem and solution analysis. Exposure to UML. Structured and agile analysis work-products. CRC-card based analysis.

4.0

Architecting softw. intensive sys: Designing, evaluating architectures; non-functional requirements & quality attributes in arch. Quality-driven design. Structured & agile architecture work-products.

6.0

Software project management: Structured and Agile project planning and management, linear and parametric software estimation, Risk planning. Software configuration management. Agile boot camp LEGO-based workshop on Agile development.

6.0

Software design: Responsibility-driven design concepts, application of responsibility-driven design in design patterns and enterprise technology frameworks, designing applications using enterprise technology frameworks.

6.0

Testing: Testing methodologies for enterprise systems. Testing in agile methodologies.

4.0

Deployment, Maintenance and Management: IT Infrastructure Library (ITIL) practices for infrastructure management.

2.0

Case studies in software engineering 2.5

A small-team project that begins with the analysis of a business to identify where a software system might be of value, followed by the requirements identification, analysis and design of this system on paper.

Aspect Percent

Class participation 10%

Workshop participation 10%

Team Project 30%

In-class Quizzes 30%

Page 225: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Additional Notes or CommentsMeans for Achieving Learning Outcomes

Inverted Classroom: Lectures have been pre-recorded and accessible online. Students are

expected to familiarize themselves with the lecture and prepare lecture notes before they

come to class.

Active Learning: Software Engineering has traditionally been a difficult subject to teach

in a purely lecture and examination based format. In this class we will attempt to teach

SE through in-class activities and discussion, and a project.

Class discussions: You are expected to participate in discussions about the lecture

material as well as the research presentations

Quizzes: There will be 15-minute quizzes at the beginning of each course segment.

Students may use their prepared notes on the lecture to answer the quiz. Students may not

refer to the actual lecture slides or the lecture itself for the quiz.

Workshop: In-class workshops will be used to provide hands-on experiences on certain

software engineering topics such as Agile development.

Aspect PercentAspect Percent

Final examination 20%

Title Author

Software Engineering Sommerville

Software Engineering, A Practitioners Approach Pressman

Developing Object-Oriented Software, An Experience-Based Approach, 1997. Object-Oriented Technology Center, IBM

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 226: CSE 1110 (Approved): Introduction to Computing Technology

Project: There will be an integrative paper project. Class sessions will be reserved to

work on the project. However, students will need to reserve time outside of class to work

on the project

Course Policies

The following course policy applies to the classroom and team interactions you are

expected to show the same responsibility to your teammates as you do to me.

Attendance: You are expected to attend all classroom sessions and team meetings, and do

all the assigned work, self-study and readings.

Class preparation: You are expected to be prepared for class, participate in the

discussion, answer questions, etc., on the topic for the day.

Missed classes, exams, presentations, and meetings: You are responsible for all class

lectures, including handouts and notes. There will be no make up exams, presentations,

lectures, etc.

Assignments: Assignments (if any) are duein hardcopyat the beginning of class on the due

date. Assignments must be typed and formatted appropriately.

Workshops: We may reserve a weekly time outside of class for collaborative hands-on

workshops.

Contact and class information: The course web site (see above) and email communication

will be extensively used and relied upon for this course. Please familiarize yourself

with these resources, provide me with your email address in the questionnaire and check

your email at least once every day.

Sharing and attribution of intellectual property and information: You are free to

exchange and use any information from each others projects. You may also freely research

and use information legally available from the Web or other sources. However, you must

properly attribute each piece of borrowed intellectual property.

* Moved exclusion from General Information to Exclusions. --rowland

Prepared by: Bruce Weide

Page 227: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5232 (Approved): Software Requirements Analysis

Course DescriptionInformation systems analysis; object-oriented analysis models and tools; use cases, system modeling using UML; requirements specification development; term project.

Prior Course Number: CSE 616Transcript Abbreviation: SW Rqmts AnalysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3901 or CSE 3902 or CSE 560Exclusions: Not open to students with credit for CSE 3232 or CSE 616Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master applying an object-oriented methodology to the analysis of a real-world problem.

Be competent with writing use cases to model functional requirements.

Be competent with using UML use case, class, sequence and collaboration diagrams to model data and behavior requirements.

Be competent with organizational dynamics as it applies to projects.

Be competent with the system lifecycle approach and its phases.

Page 228: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with software engineering issues such as correctness, reliability, productivity.

Be familiar with the distiction between analysis and design activities and skills.

Be familiar with working with a team to produce requirements specification document.

Be familiar with the purpose, structure and contents of a requirements specification document.

Be familiar with non-functional requirements such as security, integrity, response time and reliability.

Be familiar with using a UML tool.

Topic Lec Rec Lab Cli IS Sem FE Wor

Software engineering, software development life cycle, traditional vs object-oriented analysis

7.0

Teamwork and organizational dynamics 2.0

Data flow diagramming (as context model) 4.0

UML (use case diagram, sequence diagram, collaboration diagram, state chart diagram, class diagram)

15.0

Requirements elicitation (face-to-face meetings and presentations to real-world client)

8.0

Term project is designed to encourage students to apply principles of Systems Analysis in a Real World context. The project consists of these elements: 1) Students will meet several times with a selected industry client to elicit requirements for a system. 2) Students will prepare and present formally documented system requirements to the client using UML notation for feedback. 3) Students will deliver a detailed and complete Systems Requirement Specification, using traditional and object-oriented notations.

Homework assignments are designed to give students the opportunity to practice analysis concepts in a more controlled framework.

Aspect Percent

Homework (4) 20%

Quizzes (2) 20%

Team project (including weekly progress reports, presentation, drafts and final document -- weighted by peer evaluation)

35%

Final Exam 25%

Title Author

An Introduction to Object-Oriented Analysis Brown

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

Page 229: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bettina Bair

Course Contribution College OutcomeCourse Contribution College Outcome

*** e An ability to identify, formulate, and solve engineering problems.

*** f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 230: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5234 (Approved): Distributed Enterprise Computing

Course DescriptionCurrent application and middleware frameworks for distributed enterprise computing; XML; Enterprise Java; SOAP and REST web services; AJAX and JSON; enterprise service bus; Hadoop; mobile computing.

Prior Course Number: CSE 769Transcript Abbreviation: Distr Enterpr CompGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3431 or CSE 5431 or CSE 660Exclusions: Not open to students with credit for CSE 769Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with the technologies of enterprise computing that are most important in the software industry.

Be competent with the advantages of architectures, specifically three tier architectures over two tier architectures.

Be competent with how to build scalable distributed systems.

Be competent with standards in describing data.

Page 231: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with how to apply enterprise computing to scientific problems.

Be familiar with the importance of distributed computing through hands on experience.

Be familiar with the issues involved in enterprise mission critical applications.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to Distributed Enterprise Systems 1.0

Overview of the technologies used for distributed enterprise systems

2.0

XML 3.0

Javascript, AJAX and JSON 4.0

Object-relational mapping (ORM) 4.0

Enterprise Java 4.0

Designing enterprise applications 3.0

SOAP and REST Web Services 4.0

Enterprise integration via the Enterprise Service Bus 4.0

Cloud computing toolkits 4.0

Mobile and edge computing 4.0

High-volume computing on mainframe computers 4.0

A small-team project to implement a small integrated enterprise application using the technologies covered in lecture.

Aspect Percent

Midterm 20%

Term Paper 10%

Project 40%

Final Exam 30%

Title Author

XML & Related Technologies Atul Kahate

Effective Enterprise Java Ted Neward

Service Oriented Java Business Integration: Enterprise Service Bus integration solutions for Java developers

Binildas A. Christudas

Mobile Applications: Architecture, Design, and Development Valentino Lee; Heather Schneider; Robbie Schell

Introduction to the New Mainframe: z/OS Basics Mike Ebbers; John Kettner; Wayne O'Brien; Bill Ogden; Rama Ayyar; Myriam Duhamel; Per Fremstad; Luis Martinez Fuentes; Miriam Gelinski; Michael Grossmann; Olegario Hernandez; Roberto Yuiti Hiratzuka; Georg Mller; Rod Neufeld; Paul Newton; Bill Seubert; H

Page 232: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Additional Notes or CommentsThis is a course introducing current application and middleware technologies for

distributed enterprise computing. Technologies include XML, JavaScript, Ajax, Flex,

Enterprise Java, Web Services, an Enterprise Service Bus and emerging cloud computing

toolkits. The objective of this course is to learn about current technologies in

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 233: CSE 1110 (Approved): Introduction to Computing Technology

distributed enterprise computing and apply them in small projects in a disciplined

manner. The class is organized into teams of two people each. The same projects are

assigned to each team. Teams must develop and apply an appropriate software design

methodology to the project. They are expected to meet outside the usual class periods for

the project and maintain and present the project workbook in electronic form on the Web.

Maintenance of the work-products on the web site is part of the class project, and their

work-products on the web site are electronically archived at the end of the course.

The projects are intended to be small application components that build on each other to

finally create a complete application.

Prepared by: Rajiv Ramnath

Page 234: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5235 (Approved): Applied Enterprise Architectures and Services

Course DescriptionModeling/analysis of complex enterprise architectures; enterprise patterns (workflow, broker, warehousing); methods for service performance (lean, ontologies, data mining, etc.); emerging topics in semantic cyber-infrastructures, social computation.

Transcript Abbreviation: Enterprise ArchitGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 5911 or CSE 5912 or CSE 5913 or CSE 5914 or CSE 5915 or CSE 682 or CSE 731 or CSE 758 or CSE 762 or CSE 772 or CSE 778Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Students who have not taken a CSE capstone course but have had a significant industry internship or job experience should contact the instructor to discuss permission to enroll.

Page 235: CSE 1110 (Approved): Introduction to Computing Technology

Course Goals

Course Topics

Representative Assignments

Master enterprise architecture modeling concepts such as external context, service goals, workflows, roles, service and operating level performance, complex components, service provisioning, metrics, and performance measurement.

Be competent with conceptual enterprise modeling, goals and trade-offs, and gap analysis to identify service changes and needed performance improvement.

Be competent with developing specifications for service improvement leading to design.

Be competent with related governance and technology standards (Federal Enterprise Architectures, ISO20000, W3C, and OMG.

Be familiar with the applications of broker, data warehousing, and workflow architecture patterns and their performance improvement through industry cases.

Be familiar with tools and methods for service improvement like data mining tools, social network services, ontologies/OWL/RDF.

Be familiar with the industry practice of applying architecture knowledge for developing strategic options using IT solutions.

Be familiar with techniques to develop a business case for the stakeholders by articulating priorities and their ability to meet service goals.

Topic Lec Rec Lab Cli IS Sem FE Wor

Syllabus and course administration, process of research, identifying references, and ethics.

1.0

Introduction to vocabulary HCI, business processes, supply chains, enterprise architectures and systems, and symbiotic computing; declarative modeling and analysis methods using case studies.

4.0

Use of performance linkages between services in-the-large and in-the-small, for service level and policy formulation, and evaluation; service life-cycle.

4.0

Patterns and principles for co-engineering Adaptive Complex Systems to achieve behaviors like Lean, chargeback and capacity alignment, accountability, competitiveness, and innovation.

4.0

Role of emerging technologies (sensors, mobile, service-oriented architectures) in achieving performance objectives; enterprise architecture patterns (warehousing, mining of operational data, symbiotic computing, social computing, standards).

4.0

Portfolio development and program management; project specific presentations of research and best practices; guest lecturers from industry representing IT operations management and middleware technologies.

4.0

Edge-to-enterprise case studies covering trends such as social networking services and their impact on enterprise architectures.

4.0

Team project methodology, team meetings, and project-relevant research presentations.

15.0

The configuration management of complex IT installations for effective problem resolution at ODJFS.

Chargeback model for IT services at the City of Columbus.

New middleware requirements arising from the changing roles of media and knowledge companies such as the Dispatch and McGraw Hill.

Page 236: CSE 1110 (Approved): Introduction to Computing Technology

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Design of recommender web environments to promote growth of communities of interest at the City of Columbus.

Architecture enhancements for knowledge management within the help desk operations environment at Ohio Health.

Aspect Percent

Class participation 20%

Midterm research report 30%

Poster 10%

Research report 30%

Final presentation 10%

Title Author

Various on-line and on-reserve readings from the literature

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

*** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

*** g an ability to communicate effectively with a range of audiences;

Page 237: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or Comments(Representative list below. Will be available in electronic form or on reserve.)

1.Selected readings in Service Science, Balanced Score Card, Five Forces Model, OWL and

Ontologies, Social Networks, and Enterprise Transactions.

2.ITIL version 3. http://www.ogc.gov.uk/guidance_itil_4899.asp. "The Official

Introduction to the ITIL Service Lifecycle", TSO publications (www.tso.co.uk).

3.TOFAF: A Framework for Information System Architecture. IBM Systems Journal, 26(3),

276-292. Zachman J.A., (1987).

4.A Taxonomy of a Living Model Of The Enterprise. Proceedings of the 2001 Winter

Simulation Conference, Larry Whitman, Kartik Ramachandran, Vikram Ketkar.

5.Patterns in Enterprise Software. Fowler, M. (2005).

http://www.martinfowler.com/articles/enterprisePatterns.html (accessed August 18, 2006).

6.Symbiotic Computing: Concept, Architecture and Its Applications. Takuo Suganuma1,

Kenji Sugawara, and Norio Shiratori. Indulska et al. (Eds.): UIC 2007, LNCS 4611, pp.

10341045, 2007. Springer-Verlag Berlin Heidelberg 2007

7.Swarm Creativity: Competitive Advantage through Collaborative Innovation Networks.

Gloor, Peter. Oxford University Press. 2006.

8.Co-engineering the Adaptive Business and Technologies, Collaborative Service-Ontology

and Enterprise Architecture Principles for Best Practice Deployment and Performance, IGI

Publishing, 2009. Jay Ramanathan and Rajiv Ramnath,

9.Adaptive Complex Systems. (2005 May). Communications of the ACM, 48(5).

10.Relationships Between Game Attributes and Learning Outcomes. Review Simulation Gaming

2009 40: 217, originally published online 26 August 2008, Shawn Burke, Jamie L. Estock,

Kara L. Orvis and Curtis Conkey, Katherine A. Wilson, Wendy L. Bedwell, Elizabeth H.

Lazzara, Eduardo Salas, C. and Research Proposals.

http://sag.sagepub.com/content/40/2/217. The online version of this article can be found

at: DOI: 10.1177/1046878108321866.

11.GISolve Toolkit: Advancing GIS through Cyberinfrastructure. Shaowen Wang. Department

of Geography and National Center for Supercomputing Applications University of Illinois

at Urbana Champaign.

12.Other papers as identified during class projects.

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

*** h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 238: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5236 (Approved): Mobile Application Development

Course DescriptionMobile application development frameworks; Architecture, design and engineering issues, techniques, methodologies for mobile application development.

Transcript Abbreviation: Mobile App DevGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3901 or CSE 3902 or CSE 5901 or CSE 5902 or CSE 560Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with the characterization and architecture of mobile applications.

Be competent with understanding enterprise scale requirements of mobile applications

Be competent with designing and developing mobile applications using at least 2 mobile application development frameworks

Be competent with comparatively evaluating the capabilities of at least 2 mobile application development frameworks.

Be exposed to technology and business trends impacting mobile applications

Page 239: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Characteristics of mobile applications 1.5

History of mobile application frameworks 1.5

Overview of mobile application development languages - Objective C and Java

3.0

Application models of mobile application frameworks 3.0

User-interface design for mobile applications 3.0

Managing application data 1.5

Integrating with cloud services 3.0

Creating enriched user interfaces. Multi-touch and gesture-based applications

6.0

Integrating networking, the OS and hardware into mobile-applications

3.0

Addressing enterprise requirements in mobile applications performance, scalability, modifiability, availability and security

7.5

Testing methodologies for mobile applications 3.0

Publishing, deployment, maintenance and management 1.5

Case studies in mobile applications 4.5

Students will be required to implement components of an enterprise-scale mobile application on two separate platforms.

Aspect Percent

Class participation 10%

Project 40%

Midterm 20%

Final 30%

Title Author

Mobile Applications: Architecture, Design, and Development Valentino Lee; Heather Schneider; Robbie Schell, Publisher: Prentice Hall

Mobile Design and Development Brian Fling, Publisher: O'Reilly

Programming the Mobile Web Maximiliano Firtman, Publisher: O'Reilly Media

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

Page 240: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Rajiv Ramnath

Course Contribution College OutcomeCourse Contribution College Outcome

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 241: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5239 (Approved): Intermediate Studies in Software Engineering

Course DescriptionIntermediate-level topics in software engineering.

Prior Course Number: 788Transcript Abbreviation: Interm: SW EngGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 242: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in software engineering 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 243: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 244: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5241 (Approved): Introduction to Database Systems

Course DescriptionDatabase systems use; logical design; entity-relationship model; normalization; query languages and SQL; relational algebra and calculus; object relational databases; XML; active databases; database design project.

Prior Course Number: CSE 670Transcript Abbreviation: Intr Database SysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2321 or Math 366)Exclusions: Not open to students with credit for CSE 3241 or CSE 670Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master using relational databases.

Master writing queries in relational data languages including SQL and relational algebra.

Master using mechanisms for data independence, including data models, languages and views.

Be competent with logical database design.

Be competent with conceptual database design.

Page 245: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with object relational database technology.

Be exposed to XML and active databases.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction; Entity-Relationship (ER) Model 4.0

The Structure of the Relational Data Model 2.0

Relational Algebra and Relational Calculus 6.0

Functional Dependencies and Normalization 8.0

ER-to-Relational Data Model 1.0

SQL 6.0

Graphical User Interfaces 2.0

Embedded SQL 2.0

Object Relational Databases 4.0

XML 3.0

Active Databases 2.0

Provide SQL code which declares, populates, and queries a database

Define and use a database using a database management systems software

Write a Java program with embedded SQL code

Aspect Percent

Homework 30%

Project 20%

Midterm Exam 20%

Final Exam 30%

Title Author

Fundamentals of Database Systems, Addison-Wesley, 5th edition Ramez Elmasri and Shamkant Navathe

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

Page 246: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or Comments* Moved exclusion from General Information to Exclusions. --rowland

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 247: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5242 (Approved): Advanced Database Management Systems

Course DescriptionTransaction management; query processing and optimization; organization of database systems, advanced indexing, multi-dimensional data, similarity-based analysis, performance evaluation, new database applications.

Prior Course Number: 770Transcript Abbreviation: Advanced DBMSGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3241Exclusions: Not open to students with credit for CSE 770Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master transaction processing, concurrency control and crash recovery

Master query processing and optimization

Master advanced indexing and data organization for DBMS

Be competent with similarity-based querying

Page 248: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with new data management applications

Topic Lec Rec Lab Cli IS Sem FE Wor

Transaction Management: Concurrency Control and Serializability; Recoverability and Strictness; Two-phase locking; Two-phase commit

7.0

Query Processing and Optimization: (a) Relational algebra transformations (b) Query size and I/O cost estimation (c) I/O cost for basic data management algorithms

7.0

Advanced Indexing and Query Processing, Multi-dimensional Index Structures

10.0

Data Warehouse Design and Implementation 4.0

New Topics and Applications, e.g., (a) Information Retrieval (b) Bioinformatics (c) Incomplete and Uncertain Databases (d) Non-relational Databases, (e) Data Stream Management

10.0

Scalable Data Storage, Parallel and Distributed Databases Database Performance Buffer and Storage Management

4.0

Build a simple data warehouse with its essential components including reporting of OLAP queries.

Implement a data organization algorithm that orders data to minimize the query costs and/or maximizes the compression ratio when using a run-length encoder.

Build an advanced indexing method (e.g., VA-file) and analyze its performance both in terms of time and quality of the queries.

Aspect Percent

Homeworks & Programming Assignments 35%

Presentations 15%

Project 20%

Final Exam 30%

Title Author

Database System Implementation, Prentice-Hall, 2000. Hector Garcia-Molina, Jeffrey Ullman, and Jennifer Widom

Concurrency Control and Recovery in Database Systems, Addison-Wesley Pub. Co., 1987.

Philip A. Bernstein, Vassos Hadzilacos, and Nathan Goodman

Foundations of Multidimensional and Metric Data Structures, First Edition, Morgan Kaufmann, 2006.

Hanan Samet

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

Page 249: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Hakan Ferhatosmanoglu

Course Contribution College OutcomeCourse Contribution College Outcome

** c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

* c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 250: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5243 (Approved): Introduction to Data Mining

Course DescriptionKnowledge discovery, data mining, data preprocessing, data transformations; clustering, classification, frequent pattern mining, anomaly detection, graph and network analysis; applications.

Prior Course Number: 674Transcript Abbreviation: Intr Data MiningGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2331 and CSE 3241Exclusions: Not open to students with credit for CSE 674Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with anamoly detection algorithms and graph/network analysis algorithms

Master the knowledge discovery process

Be competent with simple data preprocessing and data transformation techniques

Master key classification and clustering algorithms

Page 251: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Master major frequent pattern mining algorithms

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to the Knowledge Discovery Process and Background

3.0

Elements of Data Preprocessing and Data Transformations 3.0

Data Clustering 9.0

Data Classification 6.0

Frequent Pattern Mining 7.5

Analyzing Graphs and Networks 7.5

Anomaly Detection 3.0

Applications (Bioinformatics, Social Networks) 3.0

Data Preprocessing and Data Transformation Project/Assignment

Clustering and Classification Project/Assignment

Frequent Pattern Mining Project/Assignment

Network Analysis Project/Assignment

Aspect Percent

Homeworks 20%

Midterm 20%

Final Exam 30%

Project/Programming Work 30%

Title Author

Introduction to Data Mining Tan, Steinbach and Kumar, Addison Wesley, 2006

Data Mining: Concepts and Techniques J. Han, M. Kamber : Morgan Kaufmann, 2006

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

Page 252: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Srinivasan Parthasarathy

Course Contribution College OutcomeCourse Contribution College Outcome

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 253: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5244 (Proposed): Data Management in the Cloud

Course DescriptionSystematic organization of data on cloud computing architectures; basic indexing techniques, including B-tree and hash-based indexing; fundamentals of query optimization, including access path selection and cardinality estimation; full and partial replication; data partitioning and distributed task scheduling.

Transcript Abbreviation: Data Mgmt in CloudGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Junior, Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: 3241 or 5241, and 2421 or 3430; or grad standingExclusions: Cross-Listings: 3244

Course Rationale: This will become a required course for data analytics majors. Also, it fills a gap in CSE

curriculum between 3241 and 5242.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

Mastery over fundamental concepts in indexing and optimization techniques, including B-trees, hash-based indexing and cardinality estimation

Mastery of distributed data management, including full and partial replication strategies, data partitioning, fault tolerance models and consistency tradeoffs

Competency with data warehousing techniques, including on-line analytical processing (OLAP)

Page 254: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Competency with distributed algorithms and task scheduling in cloud environments

Exposure to current cloud-based data management technologies

Topic Lec Rec Lab Cli IS Sem FE Wor

Review of relevant 3241 Material 3.0

Indexing and Optimization 12.0

Data warehousing and OLAP 2.0

Cloud computing principles 1.0

Replication and partitioning strategies 4.0

Algorithms and platforms for cloud 6.0

Analyze public financial data in a cloud format (e.g. JSON) with a SQL-on-Hadoop tool. Evaluate query response time at scale on an IaaS platform.

Use an open-source cloud data processing platform (e.g. Hadoop) to create an inverted index from natural language dataset, e.g. Wikipedia.

Deploy iterative matrix-vector multiplication kernels on failure-prone cloud platforms. Evaluate the effects of replication on throughput.

Aspect Percent

Homework 25%

Lab assignments 25%

Midterm Exam 25%

Final Exam 25%

Title Author

Fundamentals of Database Systems Ramez Elmasri and Shamkant Navathe

Data-Intensive Text Processing with MapReduce Jimmy Lin and Chris Dyer

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 255: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Paolo Sivilotti

Course Contribution College OutcomeCourse Contribution College Outcome

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 256: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5245 (Approved): Introduction to Network Science

Course DescriptionIntroduction to Network Science; Global and Local Network Measures; PageRank; Community Discovery Algorithms; Network Models; Understanding the role of network analysis in Web and Social network applications

Transcript Abbreviation: Intr Netw ScienceGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, Spring, MayFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2331Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Baccalaureate Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Familiarity with network science as a discipline

Mastery over major macro- and micro- metrics used to describe various networks.

Mastery over key community discovery algorithms

Familiarity with generative models for networks and various network analysis tools.

Page 257: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Mastery of the role of network science in WWW and social network applications.

Topic Lec Rec Lab Cli IS Sem FE Wor

Motivation and Introduction to Basic Concepts 4.5

Fundamentals of Network Theory: Representation, Measures and Metrics

10.5

Graph Algorithms, Page Rank and Community Discovery 12.0

Network Models 6.0

The Web and Social Network Analysis: Putting It All Together

9.0

Extracting and Constructing a Network from Raw Data

Understanding and Experimenting with various Network Measures

Understanding, Implementing, and Exploring Community Discovery Algorithms and PageRank

Understanding Network Models of Evaluation

Application Case Study Project

Aspect Percent

Homeworks 20%

Project/Programming 25%

Midterm 25%

Final 30%

Title Author

Networks, An Introduction , Oxford University Press Mark Newman

Networks, Crowds, and Markets, Cambridge University Press D. Easley and J. Kleinberg

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 258: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Srinivasan Parthasarathy

Course Contribution College OutcomeCourse Contribution College Outcome

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

* c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 259: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5249 (Approved): Intermediate Studies in Databases

Course DescriptionIntermediate-level topics in databases.

Prior Course Number: 788Transcript Abbreviation: Interm: DatabaseGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 260: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in databases 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 261: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 262: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5321 (Approved): Automata and Formal Languages

Course DescriptionMachine-based and grammatical models of computation; finite automata and regular languages, pushdown automata and context-free languages, Turing machines; non-determinism; Churchs Thesis; halting problem.

Prior Course Number: CSE 625Transcript Abbreviation: Automata Form LangGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2331 or Math 566) and (CSE 2421 or CSE 360)Exclusions: Not open to students with credit for CSE 3321 or CSE 625Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with using regular expressions and finite state machines.

Be competent with using context-free languages, context-free grammars, and push-down automata.

Be competent with proving by contradiction, by ordinary induction and by strong induction.

Be familiar with non-determinism.

Page 263: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Additional Notes or Comments* Moved exclusion from General Information to Exclusions. --rowland

Be familiar with Turing machines.

Be exposed to reductions.

Be exposed to decidability and recursive enumerability.

Be exposed to Churchs Thesis.

Be exposed to theory of parsing.

Topic Lec Rec Lab Cli IS Sem FE Wor

Formal languages. 3.0

Regular languages and finite automata. 15.0

Grammars. 3.0

Context-free languages and pushdown automata. 12.0

Recursively enumerable languages and Turing machines. 9.0

Aspect Percent

Homework 20%

Classroom participation 10%

Midterms, final 70%

Title Author

Introduction to Languages and the Theory of Computation J. C. Martin

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 264: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Page 265: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5329 (Approved): Intermediate Studies in Computation Theory

Course DescriptionIntermediate-level topics in computation theory.

Prior Course Number: 788Transcript Abbreviation: Interm: Comp ThryGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 266: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in computation theory 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 267: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 268: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5331 (Approved): Foundations II: Data Structures and Algorithms

Course DescriptionDesign/analysis of algorithms and data structures; divide-and-conquer; sorting and selection, search trees, hashing, graph algorithms, string matching; probabilistic analysis; randomized algorithms; NP-completeness.

Prior Course Number: 680Transcript Abbreviation: Fndns II: DS & AlgGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2321 or Math 366) and (Math 2566 or Math 566) and (Stat 3470 or Stat 427)Exclusions: Not open to students with credit for CSE 2331 or CSE 680Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with using asymptotic notation.

Be familiar with designing graph algorithms.

Be familiar with designing and analyzing divide-and-conquer algorithms.

Page 269: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with the use of balanced trees.

Be familiar with hashing.

Be familiar with heaps.

Be familiar with designing backtracking algorithms.

Be familiar with string matching.

Be exposed to selection algorithms.

Be exposed to probabilistic algorithms.

Be exposed to formal languages and finite automata.

Be exposed to NP-completeness.

Topic Lec Rec Lab Cli IS Sem FE Wor

Design and analysis of recursive algorithms. 6.0

Balanced trees and heaps. 9.0

Hashing. 3.0

Graph algorithms. 12.0

Backtracking algorithms. 6.0

Sorting and selection. 6.0

Design and implementation of a backtracking algorithm.

Implementation and experimental comparison of deterministic and randomized selection algorithms.

Aspect Percent

Homework 20%

Classroom participation 10%

Midterms, final 70%

Title Author

Introduction to Algorithms Cormen, Leiserson, Rivest and Stein

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

Page 270: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or Comments* Moved exclusion from General Information to Exclusions. --rowland

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 271: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5339 (Approved): Intermediate Studies in Algorithms

Course DescriptionIntermediate-level topics in algorithms.

Prior Course Number: 788Transcript Abbreviation: Interm: AlgorithmsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 272: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in algorithms 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 273: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 274: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5341 (Approved): Principles of Programming Languages

Course DescriptionFormal languages and grammars; recursive descent parsing; data types, expressions, control structures, parameter passing; compilers and interpreters; memory management; functional programming principles.

Prior Course Number: CSE 655Transcript Abbreviation: Prin Prgrmng LangsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2231 and (CSE 2331 or CSE 680) and CSE 2421 and (CSE 3901 or CSE 3902 or CSE 560)Exclusions: Not open to students with credit for CSE 3341 or CSE 655Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master using syntax-directed parsing, printing, execution, and compilation for simple imperative language constructs.

Master distinguishing between compile-time vs. run-time activities.

Be competent with using syntax-related concepts including regular expressions and context-free grammars to describe the structure of languages.

Page 275: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent with analyzing programming language design issues related to data types, expressions and control structures, parameter passing.

Be competent with principles of object-oriented languages.

Be competent with implementing object-oriented languages.

Be familiar with memory management techniques for imperative languages, including object-oriented languages.

Be familiar with using functional programming languages.

Be exposed to analyzing variable bindings and scope rules.

Topic Lec Rec Lab Cli IS Sem FE Wor

Overview of types of languages; language design and evaluation criteria; implementation methods (compilers and interpreters)

3.0

Grammars (regular expressions, CFGs), abstract & concrete parse trees; recursive descent parsing;

6.0

Recursive descent interpretation, compilation; 3.0

Principles of OO languages (data abstraction, encapsulation, single and multiple inheritance, polymorphism (single and multiple dispatch), etc.)

6.0

Implementation of imperative languages including OO languages (stack, heap management; activation records etc; runtime dispatch in OO languages)

9.0

Functional programming principles (Scheme), including some discussion of implementation techniques

6.0

More advanced ideas (ML types/inferencing, dynamically-typed languages, ...?)

6.0

Implement a complete recursive descent interpreter for a simple imperative language.

Implement an application that involves use of one or two important patterns such as Visitor and Observer.

Implement a set of functions in Scheme to manipulate lists in a variety of ways (or, possibly: implement an application that does some symbolic computation such as a chess playing program).

Other homework assignments focusing on such things as CFGs.

Aspect Percent

Homeworks 15%

Programming projects 35%

Midterms, Finals 50%

Title Author

Programming language pragmatics M. Scott

Page 276: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or Comments* Moved exclusion from General Information to Exclusions replacing the old one for the

previous course number. --rowland

Prepared by: Bruce Weide

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 277: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5343 (Approved): Compiler Design and Implementation

Course DescriptionLexical and syntax analyses using compiler generation tools; type checking; intermediate code; control-flow analysis; dataflow analysis; code optimizations; code generation; compiler project.

Prior Course Number: 756Transcript Abbreviation: Cmplr Des & ImplGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 3901 or CSE 3902 or CSE 560) and (CSE 3341 or CSE 655)Exclusions: Not open to students with credit for CSE 756Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master using tools for generation of lexical analyzers and parsers;

Master generating intermediate code;

Be competent with control-flow and dataflow analysis;

Be competent with simple code optimizations;

Page 278: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with techniques for top-down and bottom-up parsing;

Be familiar with type checking;

Be familiar with generation of machine code;

Be familiar with optimizations for parallelism and locality;

Be exposed to techniques for lexical analysis;

Be exposed to register allocation;

Be exposed to instruction scheduling.

Topic Lec Rec Lab Cli IS Sem FE Wor

Compiler structure 2.0

Lexical analysis 3.0

Parsing 3.0

Type checking 3.0

Intermediate code 6.0

Control-flow analysis 3.0

Dataflow analysis 3.0

Code optimizations 6.0

Generation of machine code 6.0

Parallelism and locality 3.0

Instruction scheduling 2.0

Register allocation 2.0

Implement a lexical analyzer;

Implement a parser;

Implement type checking;

Implement generation of intermediate code;

Implement control-flow analysis;

Implement dataflow analysis;

Implement simple code optimizations.

Aspect Percent

Lab assignments 75%

Final exam 25%

Title Author

Compilers: Principles, Techniques, and Tools, Second Edition Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman

Page 279: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Neelam Soundarajan

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 280: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5349 (Approved): Intermediate Studies in Programming Languages

Course DescriptionIntermediate-level topics in programming languages.

Prior Course Number: 788Transcript Abbreviation: Interm: Prog LangsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 281: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in programming languages

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 282: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 283: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5351 (Approved): Introduction to Cryptography

Course DescriptionFoundations of cryptography; mathematical formulations/proofs of security goals; theory and practical constructions of encryption schemes, MACs, digital signatures; zero-knowledge proof systems; cryptographic protocols.

Prior Course Number: CSE 723Transcript Abbreviation: Intr CryptographyGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (Stat 3460 or Stat 3470 or Stat 427) and (CSE 2331 or CSE 5331 or CSE 680 or Math 4573 or Math 573 or Math 4580 or Math 580)Exclusions: Not open to students with credit for CSE 723 or CSE 794QCross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Students are expected to be comfortable with mathematical reasoning.

Page 284: CSE 1110 (Approved): Introduction to Computing Technology

Course Goals

Course Topics

Grades

Representative Textbooks and Other Course Materials

Master various symmetric-key and public-key encryption schemes.

Be competent with basic cryptographic protocols such as key exchange, identification, and commitment schemes.

Be familiar with cryptographic hash functions, message authentication codes, and digital signatures.

Be familiar with mathematical foundations of cryptography and mathematical formulations of security goals.

Be exposed to zero-knowledge proof systems.

Be exposed to advanced cryptographic protocols such as electronic voting and digital cash.

Be exposed to cryptographic attacks.

Topic Lec Rec Lab Cli IS Sem FE Wor

Mathematical background 3.0

Foundations of cryptography: computational indistinguishability, one-way functions/permutations, hard-core predicates, pseudorandom generators, pseudorandom functions/permutations.

3.0

Mathematical formulations of security goals: ciphertext indistinguishability against eavesdroppers, chosen-plaintext attackers, chosen-ciphertext attackers.

3.0

Symmetric-key encryption: encryption schemes based on pseudorandom generators/functions/permutations, practical encryption schemes such as DES and AES.

6.0

Public-key encryption: trapdoor one-way functions/permutations, RSA, attacks on RSA, padded-RSA, optimal asymmetric encryption padding (OAEP), random oracles, security against chosen-plaintext and chosen-ciphertext attacks, ElGamal encryption scheme.

6.0

Hash functions, message authentication codes, digital signatures

6.0

Zero-knowledge proof systems, commitment schemes, identification schemes.

6.0

Cryptographic protocols such as key exchange, entity authentication, watermarking, electronic voting, digital cash.

6.0

Aspect Percent

Homework 20%

Midterms 50%

Final 30%

Title Author

Introduction to Modern Cryptography Jonathan Katz & Yehuda Lindell

Introduction to Cryptography: Principles and Applications (2nd edition) Hans Delfs & Helmut Knebl

Page 285: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Prepared by: Ten-Hwang Lai

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

*** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

*** j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 286: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5359 (Approved): Intermediate Studies in Cryptography

Course DescriptionIntermediate-level topics in cryptography.

Prior Course Number: 788Transcript Abbreviation: Interm: CryptogrGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 287: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in cryptography 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 288: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 289: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5361 (Approved): Numerical Methods

Course DescriptionNumerical methods for scientific computation: computer arithmetic, rounding errors, machine precision, machine representation, root-finding, interpolation, integration, linear systems, splines, smoothing, curve-fitting, linear programming.

Prior Course Number: 541Transcript Abbreviation: Numerical MethodsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2231 and (Math 2568 or 568 or 571) and (Math 1151 or Math 151)Exclusions: Not open to students with credit for CSE 541Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master using the bisection method, Newton's method, and the secant method in single variable root finding.

Master central difference formula and Richardson extrapolation for numerical differentiation.

Master trapezoid rule, recursive trapezoid formula and Romberg algorithm for numerical integration.

Page 290: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Master Gaussian elimination with scaled partial pivoting.

Be competent with using IEEE single precision floating point arithmetic standard.

Be competent with loss of significant digits in numerical calculations.

Be competent with polynomial interpolation and Lagrange and Newton form.

Be competent with numerical computation of second derivative.

Be familiar with Simpson's and adaptive Simpson's algorithm.

Be exposed to calculating errors in polynomial interpolation.

Be exposed to Gaussian quadrature formulas.

Be exposed to solving linear systems using matrix factorization.

Be exposed to iterative solutions of linear systems.

Be exposed to method of least squares.

Be exposed to Monte Carlo simulation.

Topic Lec Rec Lab Cli IS Sem FE Wor

Taylor series 3.0

Computer arithmetic, rounding errors, machine precision, machine representation

6.0

Root finding 4.0

Polynomial interpolation 2.0

Numerical differentiation and integration 6.0

Systems of linear equations; Gaussian elimination and iterative methods

10.0

Monte Carlo Integration 1.0

Smoothing of data and least squares method 3.0

Splines 4.0

Linear Programming 3.0

Aspect Percent

Homeworks and implementation of simple numerical methods 30%

Midterm Exam 30%

Final Exam 40%

Title Author

Numerical Mathematics and Computing Cheney and Kincaid

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

Page 291: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: David Lee

Course Contribution College OutcomeCourse Contribution College Outcome

* c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

* c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 292: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5421 (Approved): Introduction to Computer Architecture

Course DescriptionOrganization of hardware and software in modern computer systems, including instruction set design, processor control, ALU design, pipelining, multicores and accelerators, and memory subsystem design.

Prior Course Number: CSE 675.01, CSE 675.02Transcript Abbreviation: Intr Comput ArchGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 or CSE 321) and (CSE 2421 or CSE 360 or ECE 2560 or ECE 265) and (ECE 2000 or ECE 261) Exclusions: Not open to students with credit for CSE 3421 or CSE 675.01 or CSE 675.02 Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with performance tradeoffs in computer architecture, especially as they relate to processor and memory design.

Be competent with the architectural components of a computer, especially the memory hierarchy and processor.

Be familiar with the design principles underlying modern instruction sets.

Page 293: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with the RISC/MIPS programming

Be exposed to the structure of a processor cache

Be exposed to the design of multicore processors and the tradeoffs presented by different memory technology

Be exposed to the architectural design and implementation of modern computer systems

Topic Lec Rec Lab Cli IS Sem FE Wor

State of the art in computer architecture, Moore's law, and the power wall

1.0

Quantifying performance and power tradeoffs 2.0

Design and architecture for reduced instruction set computers 6.0

Digital logic and circuit design 3.0

Architecture and design of memory, such as SRAM and DRAM

3.0

Design of integer arithmetic logic unit (ALU) 3.0

Floating point representation and arithmetic 3.0

Processor control and pipelining 9.0

Advanced topics in memory hierarchy, such as cache lines, associativity, and cache coherence

4.0

Multicores and multiprocessors with an introduction to accelerators and interconnects

5.0

Realization of architecture concepts in real systems 3.0

Aspect Percent

Homework 30%

Midterm 30%

Final 40%

Title Author

Computer Organization & Design: The Hardware/Software Interface D.A. Patterson & J.L. Hennessy

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 294: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or Comments* Removed exclusion from General Information as it was already in Exclusions. --rowland

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 295: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5429 (Approved): Intermediate Studies in Computer Architecture

Course DescriptionIntermediate-level topics in computer architecture.

Prior Course Number: 788Transcript Abbreviation: Interm: Comp ArchGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 296: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in computer architecture 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 297: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 298: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5431 (Approved): Systems II: Introduction to Operating Systems

Course DescriptionIntroduction to operating system concepts: process, CPU scheduling, memory management, file system and storage, and multi-threaded programming.

Prior Course Number: CSE 660Transcript Abbreviation: Sys II: Oper SysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2421 or ((ECE 2560 or ECE 265 or CSE 360) and CSE 2451)Exclusions: Not open to students with credit for CSE 2431 or CSE 660Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with process concepts and CPU scheduling.

Be competent with memory hierarchy and memory management.

Be familiar with process control blocks, system calls, context switching, interrupts, and exception control flows.

Be familiar with process synchronization, inter-process communication, and threads.

Page 299: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

Be familiar with multi-threaded programming.

Be familiar with file systems and disk scheduling algorithms.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to operating systems, overview of related computer architecture concepts (CPU modes of operation, exceptions/interrupts, clock).

3.0

Process concepts, process control block, memory and CPU protection, process hierarchy, shell, process (Unix-like) related system calls, interactions between systems calls, context switching and underlying interrupt, timer mechanisms.

6.0

Process interactions, exception control flow (classes of exceptions, exception handling, private address space, user and kernel modes, process control, loading and running programs, Unix fork and exec system calls, signals).

3.0

Process (CPU) scheduling (Various CPU scheduling algorithms).

3.0

Process synchronization (e.g., critical section problem, synchronization problems), deadlock and inter-process communication, threads.

6.0

Multi-thread programming. 3.0

Memory hierarchy. 6.0

Memory management (contiguous allocation, paging, segmentation, virtual memory).

6.0

File systems (file system hierarchy, i-node, files, directories, file system management and optimization).

3.0

Disk allocation and disk arm scheduling. 3.0

Building a simple UNIX shell step by step, including system call invocation, signal handling, and file operations.

Implementing algorithms for a classic synchronization problem.

Designing and implementing multi-threaded programs.

Aspect Percent

Programming assignments (4-5) 35%

Written assignments (3-4) 10%

Mid-term 20%

Final exam 35%

Title Author

Operating System Concepts Silberschatz, Galvin, and Gagne

Computer Systems: A Programmer's Perspective Bryant and O'Hallaron

Page 300: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Feng Qin

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 301: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5432: Mobile Handset Systems and Networking

Course DescriptionMobile handset architecture: processors, memory, I/O devices, sensors, virtual machine and power management; different ranges of wireless communication technologies; TCP/IP over wireless; mobile social networking.

Transcript Abbreviation: Mobile Sys & NetGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2421 or ((ECE 2560 or ECE 265) and (CSE 2451 or CSE 459.21))Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with mobile handset architecture processors, memory, I/O devices and sensors

Be familiar with mobile handset virtual machine and power management

Be competent with different ranges of mobile handset wireless communication technologies and TCP/IP over wireless

Be familiar with mobile social networking

Page 302: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Mobile handset: history and trends; overview of mobile handset systems architecture and operating systems; overview of mobile handset networking

3.0

Mobile handset processor architecture; memory systems; I/O devices and sensors

9.0

Virtual machine; system power management 9.0

GSM/3G/LTE (Long Term Evolution; WiFi direct; Bluetooth, Zigbee, NFC and other short range communication technologies;TCP/IP over wireless on mobile handsets; networking power management

13.0

Mobile social networking; security 6.0

Designing a power-efficient process scheduling algorithm for mobile handsets

Designing and building an ad hoc mobile handset network via short-range wirless commmunication channels

Designing a multi-cast protocol for mobile handset networks

Aspect Percent

Written assignments (4) 15%

Project and presentation 25%

Midterm exam 25%

Final exam 35%

Title Author

Mobile Handset Design Sajal K. Das

Smart Phone and Next Generation Mobile Computing Pei Zheng and Lionel M. Ni

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

** f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 303: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Dong Xuan

Course Contribution College OutcomeCourse Contribution College Outcome

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 304: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5433: Operating Systems Laboratory

Course DescriptionIntroduction to the internals of operating systems; designing and implementing components within commercial operating systems: system calls, CPU scheduling, context switching, process management, memory management, file systems.

Prior Course Number: CSE 662Transcript Abbreviation: Oper Sys LabGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 1.0 hr Lec, 2.0 hr LabExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2431 or CSE 5431 or (CSE 660 and (CSE 2451 or CSE 459.21))Exclusions: Not open to students with credit for CSE 662Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master compilation and configuration of building an OS.

Master internals of OS system call implementation.

Be competent with CPU scheduling and process management.

Page 305: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent with memory management systems.

Be competent with internals of file systems.

Topic Lec Rec Lab Cli IS Sem FE Wor

Linux basics (Overview of Linux, Building Linux, and kernel source tree)

2.0 4.0

Internals of system calls 2.0 5.0

Linux CPU scheduling and process management 3.0 6.0

Linux interrupt handling 1.0

Linux memory management 3.0 7.0

Linux file systems 3.0 8.0

Kernel configuration, compilation, and installation.

Adding a system call.

Implementing a new CPU scheduling policy.

Implementing a new memory management policy.

Implementing a file system.

Aspect Percent

Five lab assignments 100%

Title Author

Linux Kernel Development (2nd Edition) Robert Love

Understanding the Linux Kernel (3rd Edition) Daniel P. Bovet & Marco Cesati

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

Page 306: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Feng Qin

Course Contribution College OutcomeCourse Contribution College Outcome

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 307: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5434 (Approved): Comparative Operating Systems

Course DescriptionA careful examination of a number of representative computer operating systems.

Prior Course Number: 741Transcript Abbreviation: Compar Opr SystemsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Junior, Senior, Masters, DoctoralCourse Offerings: SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 7 WeekCredits: 2.0Repeatable: NoTime Distribution: 4.0 hr LecExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE2431 (660) or CSE5431Exclusions: Not open to students with credit for CSE 741Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 11.0501Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with the concept of an operating system and the resources they manage.

Be familiar with restrictions on potential parallelism.

Be familiar with the virtual memory illusion.

Be familiar with how the scheduler distributes work in space and time.

Be familiar with an OS service, an OS customer.

Page 308: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Fundamentals. 6.0

Process management. 6.0

Memory management. 4.0

Processor scheduling. 4.0

File management. 4.0

Performance management. The assembled package. 4.0

Basic linux system-call programming that implements a simple shell.

Implement a multilevel-queue-based scheduler.

Implement a disk cache based on the second-chance algorithm.

Aspect Percent

Term Paper 66%

Final Exam 34%

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

*** j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

Page 309: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Kathryn Reeves

Course Contribution Program OutcomeCourse Contribution Program Outcome

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 310: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5439 (Approved): Intermediate Studies in Operating Systems

Course DescriptionIntermediate-level topics in operating systems.

Prior Course Number: 788Transcript Abbreviation: Interm: Oper SysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 311: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in operating systems 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 312: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 313: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5441: Introduction to Parallel Computing

Course DescriptionParallel programming models; sequential and parallel performance issues; high-performance computer architecture; design, analysis, implementation and performance evaluation of parallel algorithms.

Prior Course Number: CSE 621Transcript Abbreviation: Intr Parallel CompGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Pre-req: (CSE 2231 and CSE 2321 and (CSE 2421 or ((ECE 2560 or ECE 265) and CSE 2451)) and (Math 2568 or Math 568 or Math 571)) or graduate standing.Exclusions: Not open to students with credit for CSE 621Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with the fundamental factors affecting the performance of sequential programs

Be competent with program transformations to enhance data locality and improve performance.

Be familiar with the prevalent parallel programming models.

Page 314: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Be familiar with design, implementation and analysis performance analysis of parallel programs.

Topic Lec Rec Lab Cli IS Sem FE Wor

Fundamental performance issues 1.5

Cache and its impact on performance 4.5

Loop Transformations for performance enhancement 3.0

Data dependence analysis 3.0

Overview of parallel architectures and programming models 3.0

Shared-memory parallel programming 6.0

Message passing 6.0

Programming GPUs 6.0

Programming for high performance with short-vector SIMD instruction sets

6.0

Aspect Percent

Assignments 40%

Midterm exam 25%

Final exam 35%

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

Page 315: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 316: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5449 (Approved): Intermediate Studies in Parallel Computing

Course DescriptionIntermediate-level topics in parallel computing.

Prior Course Number: 788Transcript Abbreviation: Interm: Par CompGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 317: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in parallel computing 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 318: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 319: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5461 (Approved): Computer Networking and Internet Technologies

Course DescriptionComputer networks, communication protocols, Internet TCP/IP and applications, wireless communications and network security.

Prior Course Number: CSE 677, part of CSE 678Transcript Abbreviation: Computer NetwrkingGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2421 or ((ECE 2560 or 265) and CSE 2451); co-req: CSE 2431Exclusions: Not open to students with credit for CSE 3461 or CSE 677Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with the basics of data communications and network architecture.

Be competent with network layer control and protocols.

Be competent with link layer control and protocols.

Page 320: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Additional Notes or CommentsThe core of this course is Internet technologies

Be competent with using the TCP/IP protocol suite.

Be familiar with using high speed LANs.

Be familiar with various internetworking technologies.

Be exposed to designing advanced communication protocols.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to Internet 6.0

Internet application, TCP and IP layers 15.0

Internet data link and physical layers 3.0

Wireless networks 9.0

Network security 9.0

Exams 2.0

Aspect Percent

Lab projects or homeworks or Exam 1 30%

Midterm Exam 30%

Final Exam 40%

Title Author

Computer Networking: A Top-Down Approach James Kurose and Keith Ross

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

*** j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 321: CSE 1110 (Approved): Introduction to Computing Technology

* Moved exclusion from General Information to Exclusions. --rowland

Prepared by: Bruce Weide

Page 322: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5462: Network Programming

Course DescriptionIP-based socket programming in C/C++, TinyOS programming in NesC.

Transcript Abbreviation: Ntwrk PrgrmngGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3461 or CSE 5461 or CSE 677Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Course Topics

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master socket programming in C or C++

Master TinyOS programming in NesC

Be competent with application development and debugging in Unix environments

Be competent with application development and debugging in TinyOS environment

Page 323: CSE 1110 (Approved): Introduction to Computing Technology

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Review of C pointers and memory allocation/deallocation 2.0 1.0

Review of the Unix environment 4.0 2.0

NesC 12.0 6.0

Communication using UDP sockets 4.0 2.0

Communication using TCP sockets 4.0 2.0

Develop a TCP like protocol using UDP sockets

NesC

Aspect Percent

Programming Assignments (2-4) 30%

Socket Programming Project 35%

TinyOS Programming Project 35%

Title Author

Unix Network Programming, Vol. 1: The Sockets Networking API, Third Edition, Addison Wesley Stevens, Fenner, and Rudoff

NesC (on-line materials)

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 324: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Prasun Sinha

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 325: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5463: Introduction to Wireless Networking

Course DescriptionFundamental concepts in cellular design, Wireless-LANs, MANETs, and sensor networks will be explored. Specific topics will include propagation, fading, cellular-design, power-management, routing, scheduling, and control.

Transcript Abbreviation: IntroWireNetwrksGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Junior, Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3461 or 677 or ECE 3367 or 561 or graduate standing in engineering or math & physical sciences.Exclusions: Cross-Listings: Cross-listed with ECE 5101.

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.1001Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Exposed to basics of propagation and fading

Be familiar with notions of SINR and cell design, as well as notions of handoffs and channel allocation.

Be familiar with different forms of multi-access systems (FDMA, CDMA, TDMA, OFDMA, etc.)

Page 326: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

ABET-EAC Criterion 3 Outcomes

Be familiar with power management and current implementations in cellular systems

Be familiar with routing and current implementations in both cellular

Be familiar with cellular scheduling as well as be exposed to scheduling in multi-hop networks

Be familiar with various wireless systems such as cellular, Wireless LAN, sensor, mobile ad hoc, sensor, etc.

Be exposed to some major issues facing the design of future wireless systems.

Topic Lec Rec Lab Cli IS Sem FE Wor

Historical Milestones and Current Wireless Networks 3.0

Understanding the Wireless Communication Channel 5.0

Multiple Access Techniques (FDMA, TDMA, CDMA) 3.0

Concept of Cellular Communications, Handoff, and Location Management

5.0

Power Control 3.0

Opportunistic Scheduling for cellular networks and extensions to multi-hop networks.

4.0

Proactive and Reactive Routing 5.0

Congestion control 2.0

System case studies (802.11, Bluetooth, etc.) 4.0

Energy management in sensor networks 5.0

Project presentations 3.0

Aspect Percent

Project 40%

Midterm 20%

Final 40%

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 327: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Ness Shroff

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 328: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5469 (Approved): Intermediate Studies in Computer Networking

Course DescriptionIntermediate-level topics in computer networking.

Prior Course Number: 788Transcript Abbreviation: Interm: Comp NetwGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 329: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in networking 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 330: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 331: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5471 (Archived): Information Security

Course DescriptionIntroduction to security of digital information; threats and attacks; regulations; risk management; attack detection and response; cryptography; forensics; technical training and certifications.

Prior Course Number: CSE 551Transcript Abbreviation: Info SecGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2231 and CSE 2321) or CSE 321Exclusions: Not open to students with credit for CSE 551Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with information security governance, and related legal and regulatory issues

Be competent with understanding external and internal information security threats to an organization

Be competent with information security awareness and a clear understanding of its importance

Be competent with how threats to an organization are discovered, analyzed, and dealt with

Page 332: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with a high-level understanding of how information security functions in an organization. 

Be familiar with the structure of policies, standards and guidelines

Topic Lec Rec Lab Cli IS Sem FE Wor

Information security, roles within an organization 1.5

Legal, regulatory issues 3.0

Threats, vulnerabilities, exploits 3.0

Governance, policy, standards, guidelines 3.0

Risk management 3.0

Firewalls, Intrusion Detection, Incident Response, Forensics, Honeypots, VPN, Vulnerability Scanning

6.0

Cryptography 3.0

Access Control 1.5

Physical Security, Personnel, Training, Education, Awareness, Certification...

3.0

Presentations by the students 9.0

Overview, wrap-up 3.0

Compare/contrast security policies and standards at several Universities

Create attack trees for various scenarios

Aspect Percent

Exam 50%

Survey and Presentations 35%

Homework 15%

Title Author

Principles of Information Security, Thomson/Course Technology, ISBN 0-619-21625-5, Third Edition, 2009.

Michael E. Whitman and Herbert J. Mattord

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

** f An understanding of professional and ethical responsibility.

Page 333: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Additional Notes or CommentsDraft, need to especially review the ABET-EC criteria, fix the pre-reqs

Withdrawn Date: 2017-06-01

Prepared by: Steve Romig

Course Contribution College OutcomeCourse Contribution College Outcome

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

* c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

* k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 334: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5472: Information Security Projects

Course DescriptionTeam-based projects: solve information security problems (mobile/static host/network hardening, intrusion detection and vulnerability scanning, forensics); results communicated through report writing and presentation.

Prior Course Number: CSE 652Transcript Abbreviation: Info Sec ProjectsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 2.0 hr Lec, 1.0 hr LabExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 3901 or CSE 3902 or CSE 560) and (CSE 3461 or CSE 5461 or CSE 5471)Exclusions: Not open to students with credit for CSE 652Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with the use of VMWare to create flexible, complex virtual computer networks.

Be competent with techniques for hardening various operating systems (Linux and Windows) and services running on these systems (web, database, others).

Page 335: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with issues involved in the configuration and use of firewalls, intrusion detection/prevention, and vulnerability scanning/exploit tools.

Be familiar with common software vulnerabilities and techniques for finding and fixing them.

Be familiar with host security standards and laws such as HIPAA, PCI, Ohio House Bill 104, OWASP, NSA, CSI and so on.

Be familiar with general goals of and issues pertaining to computer forensic analysis and incident response.

Be exposed to a wide variety of computer security tools, especially forensics and investigation tools and scanning tools.

Topic Lec Rec Lab Cli IS Sem FE Wor

Host hardening: configuration, patching, logging & monitoring, host-based intrusion detection, etc.

4.0 2.0

Network Security: vulnerability scanning and enumeration, web application scanning, VPN, sniffing, network-based intrusion detection, etc.

4.0 2.0

Computer Investigations: incident response, forensics, malware analysis, etc.

4.0 2.0

Miscellaneous topics relating to information security 2.0 1.0

VMware, project objectives 10.0 5.0

Group presentations 4.0 2.0

Host Hardening Project

Network Security Project

Computer Investigation Project

Aspect Percent

Host Hardening Project - paper, presentation, lab notebook 30%

Network Security Project - paper, presentation, lab notebook 30%

Computer Investigation Project - paper, presentation, lab notebook 30%

Participation, attendance, peer evaluations 10%

Title Author

Various, from the Internet

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

Page 336: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Dong Xuan

Course Contribution College OutcomeCourse Contribution College Outcome

*** f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

*** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

*** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

*** h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 337: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5473 (Approved): Network Security

Course DescriptionSecurity threats and services, elements of cryptography, protocols for security services, network and internet security, advanced security issues and technologies.

Prior Course Number: CSE 651Transcript Abbreviation: Netw SecurityGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3461 or CSE 5461 or CSE 677Exclusions: Not open to students with credit for CSE 651Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with some protocols for security services.

Be competent with network security threats and countermeasures.

Be familiar with fundamentals of cryptography.

Be familiar with network security designs using available secure solutions (such as PGP, SSL, IPSec, and firewalls).

Page 338: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with advanced security issues and technologies (such as DDoS attack detection and containment, anonymous communications, and security properties testing, verification and design).

Be exposed to original research in network security.

Topic Lec Rec Lab Cli IS Sem FE Wor

Security threats and services 3.0

Elements of cryptography: (1) Classic ciphers, modern ciphers, stream ciphers and block ciphers; (2) Secret key (symmetric): DES/AES and public key (asymmetric): RSA

10.0

Protocols for security services: (1) Key distribution and management, (2) Data integrity and message authentication codes, (3) User authentication; (4) Non-repudiation and digital signatures

10.0

Network and internet security: (1) Transport-level security, (2) Wireless network security, (3) Email security, (4) IP security

10.0

Advanced security issues and technologies such as firewalls, intrusion detection, active worm defense, DDoS attacks and defense, anonymous communications, security in routing (OSPF and BGP), sensor network security

9.0

Aspect Percent

Homework assignments and lab exercises 35%

Midterm exam 35%

Research project 30%

Title Author

Cryptography and Network Security: Principles and Practice William Stallings

Applied Cryptography (2nd Edition) Paul Campbell, et al.

Network Security: Private Communication in a Public World Charlie Kaufman, Radia Perlman and Mike Speciner

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

Page 339: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Anish Arora

Course Contribution College OutcomeCourse Contribution College Outcome

*** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

*** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 340: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5479 (Approved): Intermediate Studies in Computer Security

Course DescriptionIntermediate-level topics in computer security.

Prior Course Number: 788Transcript Abbreviation: Interm: Comp SecGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 341: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in computer security 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 342: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 343: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5501 (Approved): Social, Ethical, and Professional Issues in Computing

Course DescriptionSocial, ethical, and professional issues facing computing professionals; ethical principles; discussion of case studies.

Prior Course Number: CSE 601Transcript Abbreviation: Socl Ethcl IssuesGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0Repeatable: NoTime Distribution: 1.0 hr LecExpected out-of-class hours per week: 2.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 1222 or CSE 1223 or CSE 2231 or CSE 214 or CSE 230 or CSE 222) and (CSE 2321 or Math 366) and (CSE 2421 or CSE 360)Exclusions: Not open to students with credit for CSE 2501 or CSE 601Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

To be competent in the identification of social and ethical issues that arise in the development and application of computing technology in modern society

To be competent in the appreciation for alternate points of view and broader perspectives in the analysis of social and ethical concerns arising in the context of computing technology

Page 344: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

To be familiar with the immediate and long-term implications to society in the creation and use of computing technology

To be familiar with analyzing the potential benefits and risks of computing technology to society, both locally and globally

To be familiar with the impact of computing technology on the economy at large as well as long-term trends

To be familiar with the codes of ethics of one or more professional societies related to computing technologies (e.g., ACM, IEEE, CISSP)

To be familiar with effective methods of written and oral communication

To be exposed to the distinction between a profession and a trade, and how this distinction relates to ethics and responsibility

To be exposed to some legal issues that computing professionals may encounter as part of their practice

Topic Lec Rec Lab Cli IS Sem FE Wor

Professional ethics 2.0

Effective communication 1.0

Privacy / Civil liberties 2.0

Security / Civil liberties 2.0

Intellectual property 2.0

Censorship 1.0

Computer risks 1.0

Computer crime 2.0

Global perspectives 1.0

Write a short paper (< 1000 words) on a topic chosen from a pick list of themes relevant to the course

Give an 8-10 minute in-class presentation on topic chosen from a pick-list of themes relevant to the course

Short response questions from topics raised in class

Aspect Percent

Short paper 30%

In-class presentation 30%

Short response homeworks 30%

Class participation 10%

Title Author

A Gift of Fire Sara Baase

Ethics for the Information Age Michael J. Quinn

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

Page 345: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or Comments* Moved exclusion from General Information to Exclusions. --rowland

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

*** f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

*** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 346: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5521 (Approved): Survey of Artificial Intelligence I: Basic Techniques

Course DescriptionSurvey of the basic concepts and techniques in artificial Intelligence, including problem solving, knowledge representation, and machine learning.

Prior Course Number: CSE 630Transcript Abbreviation: Intr Artif IntellGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2331 or (CSE 222 and Math 366)Exclusions: Not open to students with credit for CSE 3521 or CSE 630Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master basic search techniques for problem-solving, including systematic blind search, heuristically-guided search, and optimal search.

Be competent with game tree search methods and the requirements for expert-level game play.

Be familiar with using logic and proof as a basis for knowledge representation and automated reasoning.

Page 347: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with multiple knowledge-representation formalisms.

Be exposed to problems in common sense reasoning and language understanding.

Be exposed to integrated AI architectures as a platform for building AI systems.

Be exposed to machine learning techniques and the kinds of problem they solve.

Be exposed to state-of-the-art AI applications related to robotics, machine vision, speech recognition, and computer games.

Topic Lec Rec Lab Cli IS Sem FE Wor

Basic representation and problem solving methods. 6.0

Search techniques and game playing. 6.0

Knowledge representation using logic, automated proof techniques.

6.0

Machine learning, probabilistic inference. 6.0

Planning and common sense reasoning. 3.0

Perception and communication. 4.0

Applications. 6.0

AI & Games. 3.0

Compare breadth-first, depth-first, and A* search on a problem domain.

Apply reinforcement learning to maze navigation.

Aspect Percent

Homeworks and Labs 40%

Midterm 25%

Final 35%

Title Author

Artificial Intelligence, A Modern Approach (3rd edition) Stuart Russell and Peter Norvig

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

Page 348: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 349: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5522 (Approved): Survey of Artificial Intelligence II: Advanced Techniques

Course DescriptionSurvey of advanced concepts, techniques, and applications of artificial intelligence, including knowledge representation, learning, natural language understanding, and vision.

Prior Course Number: CSE 730Transcript Abbreviation: Adv Artif IntelGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3521 or CSE 5521 or CSE 630 or grad standingExclusions: Not open to students with credit for CSE 730Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master advanced AI concepts, theories, and terminology.

Master computational techniques in typical AI subareas.

Master knowledge representation and reasoning methods in AI.

Page 350: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be exposed to current research topics in AI.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction, probability theory 3.0

Bayesian networks and probabilistic representations 6.0

Exact and approximate probabilistic inference 6.0

Machine learning 6.0

Computer vision 3.0

Computational audition 3.0

Automatic speech recognition 3.0

Natural language processing 3.0

Information retrieval 3.0

Diagrammatic reasoning and abductive inference 3.0

Probability theory -- pencil and paper problems, computing likelihood from distributions

Markov models and machine learning -- pencil and paper, perceptron learning rule, expectation-maximization

Computer vision -- edge detection

Speech recognition and natural language processing -- pencil and paper problems

Aspect Percent

Quizzes 30%

Project 35%

Homeworks 35%

Title Author

Artificial Intelligence: A Modern Approach, 3rd edition Stuart Russell and Peter Norvig

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 351: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: John Fosler-Lussier

Course Contribution College OutcomeCourse Contribution College Outcome

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

* m an 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;

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 352: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5523 (Approved): Machine Learning and Statistical Pattern Recognition

Course DescriptionIntroduction to basic concepts of machine learning and statistical pattern recognition; techniques for classification, clustering and data representation and their theoretical analysis.

Prior Course Number: CSE 735Transcript Abbreviation: Machine LearningGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 3521 or CSE 5521 or CSE 5243) and (CSE 5522 or Stat 3460 or Stat 3470)Exclusions: Not open to students with credit for CSE 735Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master basic techniques of machine learning, including linear methods, prototype-based methods, and kernel methods.

Master the statistical framework of machine learning and basic concepts, such as Bayes optimal classifier.

Page 353: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent with theoretical analysis of complexity and other properties of statistical learning techniques.

Be familiar with the broad spectrum of methods for classification, regression and clustering, including boosting, spectral clustering, and other methods.

Topic Lec Rec Lab Cli IS Sem FE Wor

Basics of statistical pattern recognition. Probability and statistical inference. Bayes decision theory.

8.0

Overview of techniques for regression and classification, parametric and non-parametric methods including prototype-based methods, linear and kernel methods.

9.0

Analysis of statistical algorithms. Empirical risk minimization and VC-theory. Generalization bounds.

6.0

Clustering. k-means algorithm. Gaussian mixture models and the EM algorithm. Spectral clustering.

5.0

Dimensionality reduction. Principal Components Analysis and Multidimensional Scaling.

4.0

Advanced topics in machine learning. 4.0

Discussion of applications, e.g. speech, language, and vision. 4.0

Aspect Percent

Homework 25%

Project 40%

Exam 30%

Participation 5%

Title Author

Pattern Recognition S. Theodoridis, K. Koutroumbas,

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 354: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Mikhail Belkin

Course Contribution College OutcomeCourse Contribution College Outcome

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 355: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5524 (Approved): Computer Vision for Human-Computer Interaction

Course DescriptionComputer vision algorithms for use in human-computer interactive systems; image formation, image features, segmentation, shape analysis, object tracking, motion calculation, and applications.

Prior Course Number: CSE 634Transcript Abbreviation: Computer VisionGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2331 or senior or grad standingExclusions: Not open to students with credit for CSE 634Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master fundamental computer vision algorithms.

Be competent with computer vision application design and evaluation.

Be familiar with Matlab programming environment.

Page 356: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be exposed to original research and applications in computer vision.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introductory computer vision 2.0

Image formation 2.0

Noise removal 2.0

Edge detection 2.0

Pyramids 1.0

Region segmentation 2.0

2-D shape 2.0

Template matching 2.0

Motion 4.0

Tracking 4.0

3-D 2.0

Event analysis 4.0

Features 2.0

Stereo 1.0

Clustering 1.0

Applications 2.0

Motion capture 4.0

Current research 2.0

Various programming assignments in Matlab based on topics in class.

Term project to give students an opportunity to expand on the ideas presented in class and explore interesting computer vision applications.

Aspect Percent

Homework assignments 40%

Exam 20%

Project 30%

Participation 10%

Title Author

Computer Vision Shapiro and Stockman

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

Page 357: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Deliang Wang

Course Contribution College OutcomeCourse Contribution College Outcome

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 358: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5525 (Approved): Foundations of Speech and Language Processing

Course DescriptionFundamentals of natural language processing, automatic speech recognition and speech synthesis; lab projects concentrating on building systems to process written and/or spoken language.

Prior Course Number: CSE 732 and CSE 733Transcript Abbreviation: Spch & Lang ProcGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 3521 or CSE 5521) and (CSE 5522 or Stat 3460 or Stat 3470)Exclusions: Not open to students with credit for CSE 733Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master the fundamentals of symbolic methods in language processing tasks, such as natural language parsing.

Be competent with fundamental concepts for natural language processing and automatic speech recognition, such as "hidden Markov models".

Page 359: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

Be competent with fundamental concepts in text-to-speech synthesis, such as concatenative synthesis and text analysis.

Be familiar with a finite state framework integrating all of speech processing.

Be familiar with a toolkit for text classification, part-of-speech tagging and sentiment mining.

Be familiar with methods of constructing speech recognition and synthesis systems.

Be exposed to current speech and language processing research.

Be exposed to toolkits for speech recognition and speech synthesis.

Topic Lec Rec Lab Cli IS Sem FE Wor

Course introduction, part-of-speech tagging 3.0

HMMs, expectation maximization and search 3.0

Parsing 3.0

Word senses 3.0

Language modeling 3.0

Text classification and opinion mining 3.0

Human hearing, acoustics, and phonetics 3.0

Finite state transducers and automatic speech recognition toolkits

3.0

Dynamic time warping and acoustic modeling 3.0

Text analysis and speech synthesis 3.0

Language processing in context (systems) 3.0

Quizzes and in-class assignments 2.0

Project presentations 4.0

Exercises in part-of-speech labeling using a statistical tagger

Modifying a bottom-up chart parser to use a different rule invocation strategy.

Evaluating the effectiveness of sentiment classification.

Implementing Lesk's word sense disambiguation system.

Exercises using the AT&T FSM toolkit, building pronunciation models for a digit recognizer

Rescore word hypothesis lattice using different language models

Text normalization using FSMs

Aspect Percent

Labs and homeworks 40%

Final project 30%

Exams (2 x 10%) 20%

Class Participation 10%

Title Author

Speech and Language Processing, 2nd Edition D. Jurafsky and J. Martin

Page 360: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Title AuthorTitle Author

Speech Synthesis and Recognition, 2nd edition J. Holmes and W. Holmes

Spoken Language Processing: A guide to theory, algorithms, and system development X. Huang, A. Acero, and H.-W. Hon

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

** h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 361: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Christopher Brew

Page 362: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5526 (Approved): Introduction to Neural Networks

Course DescriptionSurvey of fundamental methods and techniques of neural networks; single- and multi-layer perceptrons; radial-basis function networks; support vector machines; recurrent networks; supervised and unsupervised learning.

Prior Course Number: 779Transcript Abbreviation: Neural NetworksGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3521Exclusions: Not open to students with credit for CSE 779Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master basic neural network methods

Be competent with solving problems using neural network techniques

Be familiar with enough background about neural networks to take other specialty courses on neural networks

Page 363: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction and McCulloch-Pitts networks 3.0

Perceptrons 3.0

Regression and least mean square algorithm 6.0

Multilayer perceptrons 7.0

Radial-basis function networks 5.0

Support vector machines 6.0

Recurrent networks 3.0

Unsupervised learning and self-organization 2.0

Applications 2.0

Current research 3.0

Exam and discussion 2.0

Implement a two-layer perceptron with the backpropagation algorithm to solve the parity problem

Implement a radial basis function network for one input variable, one output variable and Gaussian basis function; the function to be approximated is a sine function with added noise

Aspect Percent

Homeworks 18%

Projects 30%

Midterm 22%

Final 30%

Title Author

Neural networks and learning machines Simon Haykin

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

Page 364: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: James Davis

Course Contribution College OutcomeCourse Contribution College Outcome

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 365: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5531 (Approved): Introduction to Cognitive Science

Course DescriptionInterdisciplinary survey of the fields of artificial intelligence, linguistics, neuroscience, philosophy of mind, and psychology; various aspects of cognitive perception, representation, and computation.

Prior Course Number: CSE 612Transcript Abbreviation: Intr Cogn SciGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: At least 12 sem-cr-hrs equivalent from at least two of the following four areas: computer science, linguistics, philosophy, and psychology; at most 6 sem-cr-hrs can come from any one areaExclusions: Not open to students with credit for CSE 612, Ling 612, Phil 612, or Psych 612Cross-Listings: Cross listed with Psychology, Linguistics, Philosophy

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master the lingua franca of cognitive science - the language of information processing.

Master specific concepts, theories, and experimental results in cognitive science.

Page 366: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Master multiple definitions of the foundational concepts of computation and representation and be able to discuss them from multiple points of view.

Be competent with the interdisciplinary nature of cognitive science, the diversity of viewpoints, the controversies and the areas of nascent consensus.

Be competent with reading and discussing research papers from multiple disciplines.

Be familiar with brain anatomy and physiology.

Be familiar with the basic cognitive architecture - how perception, memory, language, motor control, and so forth come together to produce adaptive behavior.

Be familiar with the components of a grammar: phonology, morphology, syntax, and semantics.

Be familiar with writing critical essays on topics outside ones area of specialization.

Be exposed to each of the five constituent disciplines and be familiar with its methods, key concepts, and focus of investigation.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction 1.5

Philosophy: Overview. Nativism vs. empiricism. Mind-body problem. Functionalism. Turing Test. Modularity of mind. Consciousness.

3.0

Neuroscience: Overview. Brain anatomy. Neuroimaging. Neurophysiology. Synaptic plasticity. Biological basis of learning. Brain damage. Amnesia. Aphasia. Agnosia.

6.0

Artificial Intelligence: Overview. Turing machines. Physical symbol systems. Heuristic search. Connectionism. Machine Learning.

6.0

Psychology: Overview. Behaviorism vs. cognitive psychology. Perception and psychophysics. Multiple memory systems. Executive control. High-level cognition.

6.0

Linguistics: Overview, Components of a grammar. Phonology. Syntax. Compositionality, systematicity, and productivity. Semantics. Language acquisition. Is language innate?

6.0

Integration: What is representation? Answers from all 5 disciplines. Cognitive architectures. ACT-R. Leabra.

3.0

Robotics and Embodied Cognition: Overview. Symbol grounding.

1.5

Advanced Topics 3.0

Exams 3.0

Write three summary papers from a choice of ten articles.

Aspect Percent

Summary papers (3 papers, 8% each) 24%

Attendance and participation 10%

Midterm Exam 1 20%

Midterm Exam 2 20%

Final Exam 26%

Page 367: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Title Author

Cognitive Science: An Introduction to the Study of Mind Friedenberg & Silverman

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

*** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

*** h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 368: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or CommentsBased on original syllabus by Alex Petrov, Psychology.

* Moved cross-listing from General Information to Cross-Listings. --rowland

Prepared by: John Fosler-Lussier

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 369: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5539 (Approved): Intermediate Studies in Artificial Intelligence

Course DescriptionIntermediate-level topics in artificial intelligence.

Prior Course Number: 788Transcript Abbreviation: Interm: Artif IntGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 370: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in AI 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 371: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 372: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5541 (Approved): Computer Game and Animation Techniques

Course DescriptionFundamental algorithms and mathematics in the production of computer animation and video games, emphasizing the control and rendering of animated characters.

Prior Course Number: CSE 683Transcript Abbreviation: Comp Game AnimatnGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 3.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3901 or CSE 3902Exclusions: Not open to students with credit for CSE 3541 or CSE 683Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with basic interpolation techniques, speed control along a path, and automatic banking into curves along a path.

Be competent with forward and inverse kinematics or articulated linkages

Be competent with physics-based animation.

Page 373: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Be competent with behavioral animation.

Be competent with the generation and processing of sound in games and animation.

Be competent with the use of AI techniques in games.

Be competent with software architectures for computer games.

Be competent with the concept of a rendering pipeline and graphics state.

Be competent with hierarchical scene graphs and hierarchical animation.

Be familiar with computational issues associated with computer animation.

Be familiar with control devices for computer games and framework support for event notification.

Be exposed to computer animation production technology.

Be exposed to motion capture technology and its use in computer animation.

Be exposed to the history of animation and computer animation.

Topic Lec Rec Lab Cli IS Sem FE Wor

Overview, history, and foundation of computer games and computer animation

2.0

Matrices and transformations 1.0

Path-based animation; linear, cubic interpolation; splines, path following; acceleration, speed control; ease-in/ease-out; orientation rep., interpolation; quaternions, path following; Frenet Frame, banking, interpolation-based animation

3.0

Hierarchical modeling and animation: inverse kinematics, other IK techniques

3.0

Review of numerical integration 2.0

Constrained motion: ground clamping, collision detection, constrained physics

1.0

Review of physics: gravity, friction, rigid body, spring-mass systems, particle systems, collision response

3.0

Human figure animation: anatomy, biomechanics 3.0

Mocap, including visit to mocap lab; motion databases 2.0

Behavioral animation: flocking, prey-predator model 2.0

Crowd modeling: cellular and continuous models 1.0

Flexible body animation: non-uniform scaling, spring-mass-damper systems, blend shapes

3.0

Efficient and effective basic human motion modeling: reaching, grasping, walking/running, expressions, speech

3.0

Sound: physically based, sound effects 2.0

Rendering overview: models, textures, lights and cameras 6.0

Overview of AI in computer games 2.0

Scene management using octrees and cells and portals 3.0

Write a program, using piecewise cubic interpolation, that passes through an arbitrary number of points in 3-space

Write a program that controls the velocity (speed and direction) of an object that smoothly traverses a curve based on time constraints at arbitrary points along the curves. Additionally, the object should bank into curves.

Write a program that animates a linkage based on given angles at given times.

Page 374: CSE 1110 (Approved): Introduction to Computing Technology

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Write a program that animates a linkage based on given positions and orientations of its end effector at given times.

Write a program that animates a rigid body using gravity while it collides and bounces off of obstacles.

Write a program that animates a particle system.

Write a program that animates a flock of birds using principles of flocking behavior.

Write a program that incorporates both sound and principles of AI into the flocking animation previously written.

Aspect Percent

Lab assignments 60%

Midterm 15%

Final 25%

Title Author

Computer Animation: Algorithms & Techniques Rick Parent

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 375: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5542 (Approved): Real-Time Rendering

Course DescriptionComprehensive list of topics in real-time rendering using OpenGL and GLSL, including coordinate systems, transformations, viewing, illumination, texture mapping, and shader-based algorithms.

Prior Course Number: CSE 781Transcript Abbreviation: RT RenderingGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 3901 or CSE 3902 or CSE 4901 or CSE 4902 or CSE 560) and (Math 2568 or Math 568 or Math 571)Exclusions: Not open to students with credit for CSE 781Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master graphics programming and the theory of real time rendering.

Be familiar with various techniques for creating 3D realism.

Be exposed to the state of the art in graphics hardware API.

Page 376: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Be competent with developing real time graphics applications

Topic Lec Rec Lab Cli IS Sem FE Wor

Overview of graphics APIs (OpenGL and GLSL) 1.0

Overview of graphics hardware - geometry processing, fragment procssing, pixel processing; graphics pipeline

2.0

Coordinate systems in rendering pipeline - local space, world space, eye space, clip space, window space

1.0

Modeling transformation - rotation, scaling, translation; hierarchical transformation; transformation between different spaces

3.5

3D viewing - viewing transformation, projection transformation

2.0

Basic lighting algorithms - Phong illumination model and Gouraud shading

1.0

Introduction to OpenGL Shading Language 0.5

OpenGL shader overview - vertex shaders, geometry shaders, fragment shaders

1.0

OpenGL vertex shaders 2.0

OpenGL geometry shaders 2.0

OpenGL fragment shaders 2.0

OpenGL raster operations - scissor test, stencil test, depth test, blending

1.0

OpenGL buffer objects - vertex buffer objects, frame buffer objects, pixel buffer objects

2.0

Real time shadow algorithms - planar shadows, shadow volumes, shadow maps

4.0

OpenGL texture mapping 2.0

Bump mapping 3.0

Environment mapping 2.0

Advanced texture mapping and anti-aliasing 3.0

Advanced shading and lighting algorithms - real time global illumination

3.0

Non-photorealistic rendering 2.0

Real time volumetric rendering 2.0

Write a basic OpenGL 2D render with hierarchical transformation

Augment the previous renderer with OpenGL lighting and texture mapping

OpenGL Shading Language - enhance the OpenGL with shaders support, bump mapping and environment mapping

Final project - advanced topics in graphics

Aspect Percent

Midterm exam 20%

Final exam 20%

Page 377: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Aspect PercentAspect Percent

Four lab assignments 60%

Title Author

Real-Time Rendering Tomas Akenine-Moller and Eric Haines

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

* k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

Page 378: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Han-Wei Shen

Course Contribution Program OutcomeCourse Contribution Program Outcome

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 379: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5543 (Approved): Geometric Modeling

Course DescriptionCommon algorithmic and mathematical techniques for modeling geometric objects in computer graphics and CAD applications; sample based modeling, mesh generation, and hierarchical representations.

Prior Course Number: CSE 784Transcript Abbreviation: Geom ModelingGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Math 2568 or Math 568 or Math 571Exclusions: Not open to students with credit for CSE 784Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master modeling curves and surfaces (B-splines and Bezier)

Master techniques for object creation, manipulation with extrusions, revolutions, lofting

Master techniques to generate meshes from point cloud data and CAD data

Be familiar with hierarchical representations

Page 380: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be exposed to parameterization techniques

Topic Lec Rec Lab Cli IS Sem FE Wor

Curve modeling (B-splines and Bezier) 5.0

Subdivision curves 3.0

Surface geometry and topology 3.0

Surface modeling (B-splines and Bezier) 4.0

Subdivision surfaces 4.0

B-rep, CSG, Boolean operations 3.0

Curve and surface reconstruction 5.0

Surface and volume simplification 5.0

Mesh generation 5.0

Parameterization 3.0

Midterm examination, review, discussions 2.0

Model Bezier and B-spline curves with various methods and user interfaces

Generate control polyhedra from the curves in Lab 1 above and several object generation techniques

Use the control polyhedra generated in Lab 2 above to generate subdivision surfaces

Remesh the surface generated in Lab 3 above with meshing and simplification techniques

Aspect Percent

Lab assignments 35%

Midterm 25%

Final 30%

Class participation 10%

Title Author

Geometric Modeling Mortenson

Course Notes Tamal Dey

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

Page 381: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Tamal Dey

Course Contribution College OutcomeCourse Contribution College Outcome

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 382: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5544: Introduction to Data Visualization

Course DescriptionPrinciples and methods for visualizing data from measurements and calculations in physical and life sciences, and transactional and social disciplines; information visualization; scientific visualization.

Prior Course Number: CSE 694LTranscript Abbreviation: Intr Data VisGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Prereq: 5361, Stat 3301, 3541, or 5541.Exclusions: Not open to students with credit for 694L.Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with design principles of creating viable visualizations

Be competent with visualization algorithms and data structures

Be competent with creation of interactive visualizations

Be competent with the collection and processing of diverse collections of data

Page 383: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Be competent with including perceptual considerations into visualization systems

Be familiar with with practical applications of visualization

Be familiar with visualization needs of domains from science, medicine, and commerce

Be familiar with the critiques of visualization systems

Be familiar with gaining insights into visualization problems and phenomenon

Topic Lec Rec Lab Cli IS Sem FE Wor

Historical remarks 1.0

Abstract visualization concepts and the visualization pipeline 1.0

Data acquisition and representation 2.0

Principles of visual design 2.0

Basic mapping concepts 1.0

Focus+context, and navigation+zoom 1.0

Perception and color theory 4.0

Case study: trends application 1.0

Visualization of matrices, graphs and trees 3.0

Visualization of high-dimensional data and dimensionality reduction techniques

5.0

Case study: bioinformatics 3.0

Visualization of scalar fields (color maps, isosurface extraction, volume rendering)

3.0

Case study: medical and biological imaging 3.0

Visualization of vector fields (particle tracing, texture-based methods, vector field topology)

3.0

Case study: flow visualizations 1.0

Evaluation and Interaction models 2.0

Visualization of Large data 1.0

Visualization of spatio-temporal data 2.0

Final Presentations 1.0

Familiarity with visualization software

Interactive visualization of trend data

Interactive visualization of gene expression data

Scalar visualization of medical images and volumetric data

Vector visualization of flow data

Aspect Percent

Laboratory assignments 40%

Midterm exam 20%

Final exam and/or projects 30%

Class participation 10%

Page 384: CSE 1110 (Approved): Introduction to Computing Technology

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Title Author

Visual Thinking for Design Colin Ware

Visualizing Data Ben Fry

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

** d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

* c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

** d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

Page 385: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Neelam Soundarajan

Course Contribution Program OutcomeCourse Contribution Program Outcome

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 386: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5545 (Approved): Advanced Computer Graphics

Course DescriptionAdvanced topics in computer graphics; image synthesis, lighting and rendering, sampling and material properties, volume rendering.

Prior Course Number: CSE 782Transcript Abbreviation: Adv Comp Grap VisGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 5541 or CSE 581Exclusions: Not open to students with credit for CSE 782Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with software realizations of physically based ray tracing

Be competent with underlying physics of optical transport

Be competent with algorithms of light propagation including volume rendering

Be competent with signal processing and texture mapping

Page 387: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with methods for efficient realization

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to Realistic Rendering and Literate Programming 2.0

Geometry, Transformations, Shapes 4.0

Acceleration Structures 5.0

Color and Radiometry 2.0

Sampling and Reconstruction 6.0

Reflection Models, Texture 3.0

Volume Rendering and Scattering 2.0

Monte Carlo Methods 4.0

Unbiased Light Transport 4.0

Biased/Importance-Sampled Light Transport, Photon Mapping, Metropolis Light Transport, Irradiance Caching

8.0

Project Presentations 1.0

Getting familiar with physically based ray tracing software infrastructure

Realizing robust and efficient intersection acceleration structures

Camera models and ray sampling distributions

Effectiveness of importance sampling schemes

Aspect Percent

Laboratories, Assignments 40%

Midterm 20%

Final Project 30%

Class Participaton 10%

Title Author

Physically Based Rendering Matt Pharr, Greg Humphreys

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

Page 388: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Raghu Machiraju

Course Contribution College OutcomeCourse Contribution College Outcome

** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

*** i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

*** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 389: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5559 (Approved): Intermediate Studies in Computer Graphics

Course DescriptionIntermediate-level topics in computer graphics.

Prior Course Number: 788Transcript Abbreviation: Interm: Comp GraphGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 390: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in computer graphics 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 391: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 392: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5889 (Proposed): Intermediate Studies in Multidisciplinary Computing

Course DescriptionIntermediate-level topics in multidisciplinary computing techniques

Prior Course Number: 788Transcript Abbreviation: Interm: MultidisplGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 8.0Total Completions Allowed: 4Allow Multiple Enrollments in Term: YesTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 393: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Current topics in multidisciplinary computing techniques 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 394: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Neelam Soundarajan

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 395: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5891 (Approved): Proseminar in Cognitive Science

Course DescriptionIn-depth examination of the interdisciplinary field of Cognitive Science; fundamental issues of each discipline; illustrations of representative research being conducted at OSU.

Prior Course Number: CSE 737Transcript Abbreviation: Cogn Sci SeminarGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 2.0Repeatable: YesMaximum Repeatable Credits: 4.0Total Completions Allowed: 2Allow Multiple Enrollments in Term: NoTime Distribution: 2.0 hr LecExpected out-of-class hours per week: 4.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 5531Exclusions: Cross-Listings: Cross-listed with Linguistics, Philosophy, Psychology

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Topics

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Page 396: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Interdisciplinary field of Cognitive Science 10.0

Fundamental issues of each discipline 10.0

Illustrations of representative research being conducted at OSU

10.0

Course Contribution College Outcome

* a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

* a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

** g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

m an 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;

Page 397: CSE 1110 (Approved): Introduction to Computing Technology

Additional Notes or Comments* Moved cross-listing from General Information to Cross-Listings. --rowland

Prepared by: Deliang Wang

Course Contribution Program OutcomeCourse Contribution Program Outcome

n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 398: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5911: Capstone Design: Software Applications

Course DescriptionCapstone design project: application of software engineering techniques, methodologies and technologies in software lifecycle activities using enterprise software frameworks; teamwork, written and oral communication.

Prior Course Number: CSE 758, CSE 762Transcript Abbreviation: Cpstn: SW AppsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 1.0 hr Lec, 3.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2501 or CSE 5501 or CSE 601) and (CSE 3901 or CSE 3902 or CSE 4901 or CE 4902 or CSE 560) and (CSE 3231 or CSE 5231 or CSE 757)Exclusions: Not open to students with credit for CSE 758 or CSE 762Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master synthesizing and applying prior knowledge to designing and implementing solutions to open-ended computational problems while considering multiple realistic constraints.

Master deadline driven software design and development in a team setting for an open-ended problem.

Be competent in evaluating design alternatives.

Page 399: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

Be competent with issues of teamwork, project scheduling, individual and group time management.

Be competent with presenting work to an audience of peers.

Be competent with techniques for effective oral and written communication for a range of purposes.

Master principles of structured and agile software eng. frameworks, specifically methodologies for requirements identification, analysis, architecture, design, deployment, testing, and project management.

Be competent with application of structured & agile software eng. frameworks, specifically methodologies for requirements identification, analysis, architecture, design, deployment, testing, and project management.

Be familiar with frameworks for analyzing the business context of enterprise IT systems, the concept of Business-IT alignment and related issues, and Enterprise Architecture frameworks for analyzing and achieving Business-IT alignment.

Be competent with the application of at least one industry-standard technology framework.

Be competent with professional and formal presentations and communications to a varied set of stakeholders customers, peers and superiors.

Topic Lec Rec Lab Cli IS Sem FE Wor

Course overview and project guidelines 1.0

Project selection and team formation 1.0

Software engineering methodology selection, High-level project plan consisting of high-level requirements, analysis, architecture, risk plan and acceptance plan. Development and target environment set up

6.0 10.0

Student presentations and demos of current progress 2.0 10.0

In-class team project design and development time 10.0

Midterm presentation 1.0 4.0

Final presentation 2.0 6.0

Poster presentation 1.0 2.0

Inception phase checkpoint: Process, requirements, technology demonstration, risk management plan.

Weekly status presentations (aka standup meetings)

Elaboration phase checkpoint.

Final checkpoint - completion of project.

Poster presentation.

Aspect Percent

Homeworks 10%

Group project (split into 5 milestones) 70%

Technology team presentations 20%

Title Author

Software Engineering, A Practitioners Approach, McGraw-Hill Publications Roger Pressman

Page 400: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Title AuthorTitle Author

Software Engineering, Prentice-Hall Publications Ian Sommerville

Developing Object-Oriented Software, An Experience-Based Approach IBM Object-Oriented Technology Center

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

** f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

*** i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

*** g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

*** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

*** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 401: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Rajiv Ramnath

Page 402: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5912: Capstone Design: Game Design and Development

Course DescriptionCapstone design project; conceptual and technical design and implementation of interactive game, integrating custom code and toolkits; teamwork, written and oral communication skills.

Prior Course Number: CSE 786Transcript Abbreviation: Cpstn: Game DevGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 1.0 hr Lec, 3.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2501 or CSE 5501 or CSE 601) and (CSE 3901 or CSE 3902 or CSE 4901 or CSE 4902 or CSE 560) and (CSE 3541 or CSE 5541 or CSE 581)Exclusions: Not open to students with credit for CSE 786Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master synthesizing and applying prior knowledge to designing and implementing solutions to open-ended computational problems while considering multiple realistic constraints.

Be competent in evaluating design alternatives.

Be competent with software design and development practices and standards.

Page 403: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

ABET-EAC Criterion 3 Outcomes

Be familiar with researching and evaluating computing tools and practices for solving given problems.

Be competent with deadline driven projects in a team setting.

Be competent with issues of project management, such as teamwork, project scheduling, individual and group time management.

Be competent with presenting work to a group of peers.

Be familiar with presenting work to a range of audiences.

Be competent with techniques for effective written communication for a range of purposes (user guides, design documentation, storyboards etc.)

Be familiar with analyzing professional issues, including ethical, legal and security issues, related to computing projects.

Master the development of a complete and functional computer game including elements of computer graphics, artificial intelligence, spatial sound, input controllers and GUI's.

Topic Lec Rec Lab Cli IS Sem FE Wor

Course overview and project guidelines 1.0

Game idea generation and game team formation 2.0

Software engineering for games, basic game structure, source code control, project management and agile software development concepts

3.0

Student presentations and demos of current progress on game design and development

4.0 14.0

Student presentations of team research on current trends, technologies and toolkits used in game programming such as three-dimensional sound, physics, scripting, networking, input controllers, etc.

3.0 14.0

In-class team game project design and development time 14.0

Game business and current trends 1.0

Timebox 1: Basic game structure and overall finite-state machine, including loading content, menu system, play start-up and cleanly terminating.

Timebox 2: Basic gameplay including 3D sound and interactivity. Packaging, compression and installation packages.

Timebox 3: Adding richness through better graphical models, shaders, sound system, AI behaviors and physics. Project goals and management for the next timeboxes.

Timebox 4: Student team-driven development of game based on previously specified objectives. Project goals and management for the next timeboxes.

Final Project: Continued development, forecast for the future and game post-mortem.

Aspect Percent

Homeworks 10%

Group project (split into 5 milestones) 70%

Technology team presentations 20%

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

Page 404: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Roger Crawfis

Course Contribution College OutcomeCourse Contribution College Outcome

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

** f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

*** i A recognition of the need for, and an ability to engage in life-long learning.

*** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

*** g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

*** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

*** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 405: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5913: Capstone Design: Computer Animation

Course DescriptionCapstone design project: conceptual and technical design and implementation of computer animation incorporating animation elements; teamwork, written and oral communication skills.

Prior Course Number: CSE 682Transcript Abbreviation: Cpstn: AnimationGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 1.0 hr Lec, 3.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2501 or CSE 5501 or CSE 601) and (CSE 3901 or CSE 3902 or CSE 4901 or CSE 4902 or CSE 560) and (CSE 3541 or CSE 5541 or CSE 683)Exclusions: Not open to students with credit for CSE 682Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master synthesizing and applying prior knowledge to designing and implementing solutions to open-ended computational problems while considering multiple realistic constraints.

Be competent in evaluating design alternatives.

Page 406: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent with software design and development practices and standards

Be familiar with researching and evaluating computing tools and practices for solving given problems.

Be competent with deadline driven projects in a team setting.

Be competent with issues of project management, such as teamwork, project scheduling, individual and group time management.

Be competent with presenting work to a group of peers.

Be familiar with presenting work to a range of audiences.

Be competent with techniques for effective written communication for a range of purposes (user guides, design documentation, storyboards etc.).

Be familiar with analyzing professional issues, including ethical, legal and security issues, related to computing projects.

Topic Lec Rec Lab Cli IS Sem FE Wor

Class software familiarization 6.0 4.0

Technical group reports 3.0

Animation group progress reports 12.0

Group work days 18.0

Project organization 2.0

Post-processing: sound, compositing, editing 6.0 4.0

Individual animation task of a solar system

Individual procedural software task of a bouncing ball

Individual procedural software task of a simple spring-mass-damper system

Technical group report on software approaches to some aspect of computer animation (e.g., modeling, lighting, rending, animation, post-processing)

Group Animation Production Project incorporating procedural animation

Aspect Percent

Assignments: individual animation tasks, technical group reports, individual scripting tasks 10%

Technology presentations 15%

Documentation 15%

Project animation 20%

Final presentation 40%

Title Author

MEL Scripting for MAYA Animators Mark Wilkins, Chris Kazmier

Page 407: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Richard Parent

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

*** i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

*** g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

*** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 408: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5914: Capstone Design: Knowledge-Based Systems

Course DescriptionCapstone design project; conceptual and technical design; theory and practice of knowledge-based systems; teamwork, written and oral communication skills.

Prior Course Number: CSE 731Transcript Abbreviation: Cpstn: Knowl SysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 1.0 hr Lec, 3.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2501 or CSE 5501 or CSE 601) and (CSE 3901 or CSE 3902 or CSE 4901 or CSE 4902 or CSE 560) and (CSE 3521 or CSE 5521 or CSE 630)Exclusions: Not open to students with credit for CSE 731Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master task-level analysis and problem solving methods for configuration (design) problems.

Be competent with methods for representing and reasoning with uncertain knowledge.

Be familiar with the analysis and methods of diagnosis problems.

Page 409: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Master synthesizing and applying prior knowledge to designing and implementing solutions to open-ended computational problems while considering multiple realistic constraints.

Be competent in evaluating design alternatives.

Be competent with software design and development practices and standards.

Be familiar with researching and evaluating computing tools and practices for solving given problems.

Be competent with deadline driven projects in a team setting.

Be competent with issues of project management, such as teamwork, project scheduling, individual and group time management.

Be competent with presenting work to a group of peers.

Be familiar with presenting work to a range of audiences.

Be competent with techniques for effective written communication for a range of purposes (user guides, design documentation, storyboards etc.).

Be familiar with analyzing professional issues, including ethical, legal and security issues, related to computing projects.

Master task-level analysis and problem solving methods for classification problems.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction and overview 1.0

Production system languages, CLIPS 2.0 3.0

Classification and diagnosis 2.0 3.0

Configuration and design 2.0 3.0

Reasoning with uncertain knowledge 2.0 3.0

Generic tasks and architectures; abduction methods 2.0 3.0

Current trends: Expert systems in industry 1.0

Design meetings, team work 18.0

Presentations 8.0

Final Project: Design and implement an expert system for a real-world problem.

Aspect Percent

Midterm exam 35%

Final project 60%

Attendance 5%

Title Author

Introduction to Knowledge Systems Stefik, M

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

Page 410: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: John Fosler-Lussier

Course Contribution College OutcomeCourse Contribution College Outcome

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

*** d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

** f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

*** i A recognition of the need for, and an ability to engage in life-long learning.

*** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

*** d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

*** g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

*** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

*** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 411: CSE 1110 (Approved): Introduction to Computing Technology

CSE 5915: Capstone Design: Information Systems

Course DescriptionCapstone design project; information system principles: database design methods and tools, indexing, searching, application development, testing, evaluation; teamwork, written and oral communication skills.

Prior Course Number: CSE 772Transcript Abbreviation: Capstn: Info SysGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: Undergrad, GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 4.0Repeatable: NoTime Distribution: 1.0 hr Lec, 3.0 hr LabExpected out-of-class hours per week: 8.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 2501 or CSE 5501 or CSE 601) and (CSE 3901 or CSE 3902 or CSE 4901 or CSE 4902 or CSE 560) and (CSE 3241 or CSE 5241 or CSE 670)Exclusions: Not open to students with credit for CSE 772Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master synthesizing and applying prior knowledge to designing and implementing solutions to open-ended computational problems while considering multiple realistic constraints.

Master design and implementation of an information systems project.

Master using database design methods and tools.

Page 412: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent in evaluating design alternatives.

Be competent with software design and development practices and standards.

Be competent with deadline driven projects in a team setting.

Be competent with issues of project management, such as teamwork, project scheduling, individual and group time management.

Be competent with presenting work to a range of audiences and peers.

Be competent with techniques for effective written communication for a range of purposes.

Be familiar with researching and evaluating computing tools and practices for solving given problems.

Be familiar with analyzing professional issues, including ethical, legal and security issues, related to computing projects.

Topic Lec Rec Lab Cli IS Sem FE Wor

Description of information systems projects 3.0

Multimedia (image, audio, video, text) and scientific data management

3.0

Web-based Information Systems 2.0

Requirement analysis, initial design, project proposals 10.0

Project design progress 10.0

User-interfaces, initial demonstrations 3.0 7.0

Project implementations, testing 15.0

Final demonstrations 3.0

Design and implementation of a large-scale content-based image/audio/video database and search tool

Design and implementation of a simple data warehouse with OLAP and data analytics functionality

Design and implementation of an online community where doctors and patients can share data and communicate important health issues

Design and implementation of a web-based protein database and search tool

Aspect Percent

Progress reports 15%

Presentations 15%

Midterm demo 15%

Final demo and report 45%

Participation 10%

Title Author

Fundamentals of Database Systems, Third Edition Ramez Elmasri and Shamkant B. Navathe

Principles of Multimedia Database Systems V.S. Subrahmanian

Practical Analysis & Design for Client/Server & GUI Systems D. A. Ruble

Page 413: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Hakan Ferhatosmanoglu

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

** f An understanding of professional and ethical responsibility.

*** g An ability to communicate effectively.

** h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

*** i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

** f an understanding of professional, ethical, legal, security and social issues and responsibilities;

*** g an ability to communicate effectively with a range of audiences;

** h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

*** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 414: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6193 (Approved): Individual Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Prior Course Number: CSE 793Transcript Abbreviation: Indv Studies CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: MastersCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Masters Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

MS CSE MS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 415: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 416: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6194 (Approved): Group Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Prior Course Number: CSE 794Transcript Abbreviation: Group Studies CSEGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: MastersCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Masters Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

MS CSE MS Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 417: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 418: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6231 (Approved): Formal Foundations of Software Engineering

Course DescriptionFormal approaches to program semantics and software properties; software specification and verification; model checking; static analysis; systematic testing.

Transcript Abbreviation: Frm Fnds Soft EngGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 3321 or CSE 5321 or CSE 625) and (CSE 3341 or CSE 5341 or CSE 655)Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be competent with using formal approaches to express program semantics and software properties

Be competent with techniques for software specification and verification

Be competent with model checking of software systems

Be competent with static analysis of software systems

Page 419: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Be familiar with techniques for systematic testing of software

Topic Lec Rec Lab Cli IS Sem FE Wor

Formal semantics 9.0

Specification and verification, including Hoare logic 12.0

Model checking 9.0

Static analysis 6.0

Software testing 6.0

Carry out, on paper, a correctness proof of a short program using Hoare logic or a similar proof system

Install and use some software verification tool to verify code similar to that in the above assignment

Aspect Percent

individual homework assignments 40%

Small-team projects 60%

Title Author

Logic in Computer Science Huth and Ryan

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 420: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Atanas Rountev

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

* l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

*** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 421: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6239 (Approved): Advanced Studies in Software Engineering

Course DescriptionAdvanced-level topics in software engineering.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: SW EngGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 422: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in software engineering 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 423: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6249 (Approved): Advanced Studies in Databases

Course DescriptionAdvanced-level topics in databases.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: DatabaseGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 424: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in databases

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 425: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6321 (Approved): Computability and Complexity

Course DescriptionTuring machines, decidability, recursive enumerability; many-to-one and polynomial-time reductions; NP-completeness, Cook-Levin Theorem; Recursion Theorem.

Prior Course Number: CSE 725Transcript Abbreviation: Cmptblty & CmplxtyGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 5321 or CSE 3321 or CSE 625Exclusions: Not open to students with credit for CSE 725Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master the use of reductions to prove certain problems undecidable.

Master the use of polynomial time reductions to prove certain problems NP-complete.

Be familiar with diagonalization.

Be familiar with Church's Thesis.

Page 426: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with various complexity classes.

Be familiar with the Cook-Levin Theorem.

Be exposed to theory of cardinalities.

Be exposed to approximation results for NP-complete problems.

Be exposed to complexity class hierarchies.

Be exposed to Savitch's Theorem.

Topic Lec Rec Lab Cli IS Sem FE Wor

Theory of cardinalities. 6.0

Turing machines and variant models of computation. 6.0

Decidabilty, recursive enumerability. 12.0

NP-completeness. 9.0

Approximation algorithms for NP-complete problems. 3.0

Hierarchy theorems, Savitch's Theorem. 3.0

Advanced topics (such as the Recursion Theorem). 3.0

Aspect Percent

Homework 20%

Classroom participation 10%

Midterms, final 70%

Title Author

Introduction to the Theory of Computation Michael Sipser

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 427: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Neelam Soundarajan

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 428: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6329 (Approved): Advanced Studies in Computation Theory

Course DescriptionAdvanced-level topics in computation theory.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: Comp ThryGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 429: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in computation theory 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 430: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6331 (Approved): Algorithms

Course DescriptionAlgorithm design paradigms; mathematical analysis of algorithms.

Prior Course Number: CSE 780Transcript Abbreviation: AlgorithmsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2331 or CSE 5331 or CSE 680Exclusions: Not open to students with credit for CSE 780Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master designing graph algorithms.

Be familiar with various algorithm design techniques, such as greedy, divide-and-conquer, dynamic programming, backtracking, and randomized algorithms.

Be exposed to linear programming algorithms and applications.

Be exposed to computational geometry.

Page 431: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Greedy algorithms. 6.0

Divide-and-conquer algorithms. 6.0

Dynamic programming algorithms. 6.0

Graph algorithms, backtracking. 6.0

Randomized algorithms. 6.0

Linear programming algorithms and applications. 6.0

Computational geometry. 6.0

Design and implement a dynamic programing algorithm for a given problem.

Implementation and experimental comparison of deterministic and randomized selection algorithms.

Aspect Percent

Homework 20%

Classroom participation 10%

Midterms, final 70%

Title Author

Introduction to Algorithms Cormen, Leiserson, Rivest and Stein

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

* b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 432: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Neelam Soundarajan

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

* b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 433: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6332 (Approved): Advanced Algorithms

Course DescriptionAdvanced graph algorithms, string algorithms, linear programming, matrix operations, Fourier transforms, randomized algorithms, approximation algorithms, geometric algorithms.

Prior Course Number: CSE 790Transcript Abbreviation: Advanced AlgsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 6331 or CSE 780Exclusions: Not open to students with credit for CSE 790 or CSE 794ACross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be familiar with advanced topics in algorithms such as advanced graph algorithms, string algorithms, linear programming, matrix operations, Fourier transforms, randomized algorithms, approximation algorithms, geometric algorithms

Master a subset of algorithms: Linear programming, advanced graph algorithms, approximation algorithms

Be familiar with how to design algorithms for problems in applications

Page 434: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Topic Lec Rec Lab Cli IS Sem FE Wor

Advanced graph algorithms 8.0

Linear programming 5.0

Fourier transforms and matrix operations 5.0

String algorithms 5.0

Randomized algorithms 6.0

Approximation algorithms 7.0

Geometric algorithms 6.0

Design an algorithm for a graph problem that needs to use network flow.

Design an approximation algorithm for a known NP-hard problem

Aspect Percent

Homework 30%

Midterm exam 30%

Final Exam 40%

Title Author

Introduction to Algorithms T.H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein

Course notes, papers Supplied by the instructor

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

*** i A recognition of the need for, and an ability to engage in life-long learning.

** j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 435: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Tamal Dey

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

*** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

** j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 436: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6333 (Approved): Distributed Algorithms

Course DescriptionFundamental concepts in distributed computing; algorithms for distributed control and data; impossibility and limits; algorithms for fault-tolerance; specification, design and verification of distributed programs.

Prior Course Number: CSE 763Transcript Abbreviation: Distributed AlgsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 6431 or CSE 760Exclusions: Not open to students with credit for CSE 763Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master the principles behind several specific classes of distributed algorithms for solving particular problems.

Master reading and understanding distributed algorithms.

Be familiar with writing and designing distributed programs.

Page 437: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with the analysis and verification of distributed programs.

Topic Lec Rec Lab Cli IS Sem FE Wor

Global Time and Order: logical clock, vector clock, causal order and broadcast, clock synchronization algorithms.

5.0

Global State and Predicate Detection: consistency, snapshots, termination detection algorithms.

4.0

Programming Notation and Logic: syntax and semantics for distributed programs, safety and progress properties, a UNITY-style temporal logic, proofs of program properties, examples, fairness.

9.0

Fault-Tolerance: consensus, impossibility of robust consensus, leader election, atomic commitment, Byzantine agreement, Paxos, self-stabilization, distributed reset.

9.0

Wait-freedom: atomic register algorithms. 2.0

Distributed and Concurrent Data Structures: queues, skip lists, hash sets, linearizability.

5.0

Scalability: local, geometric, dense network, small world algorithms.

4.0

Aspect Percent

Assignments 35%

Midterm 30%

Final 35%

Title Author

Elements of Distributed Computing Vijay K. Garg

Course Contribution College Outcome

** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

Page 438: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Anish Arora

Course Contribution College OutcomeCourse Contribution College Outcome

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 439: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6339 (Approved): Advanced Studies in Algorithms

Course DescriptionAdvanced-level topics in algorithms.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: AlgorithmsGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 440: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in algorithms 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 441: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6341 (Approved): Foundations of Programming Languages

Course DescriptionConceptual foundations of programming languages: attribute grammars; types; functional languages; language semantics; abstract interpretation.

Prior Course Number: CSE 755Transcript Abbreviation: Fndns Prog LangsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 3341 or CSE 5341 or CSE 655Exclusions: Not open to students with credit for CSE 755Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master using attribute grammars to specify context-sensitive conditions related to standard imperative language constructs.

Master using attribute grammars to specify code generation for standard imperative language constructs.

Be competent with principles of functional languages and techniques for their implementations.

Be competent with analyzing types in functional, imperative, and object-oriented languages.

Page 442: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent with analyzing the formal semantics of imperative languages.

Be familiar with abstract interpretation and its application to derive approximate semantics of programs.

Topic Lec Rec Lab Cli IS Sem FE Wor

Attribute grammars; using AGs to define context-sensitive syntax of languages;

6.0

Using AGs to define translational semantics of imperative languages;

3.0

Functional languages: typed and untyped (Lambda calculus, Lisp, ...); implementations of functional languages including memory management; meta-circular interpreters;

12.0

Types in programming languages: Type systems, type checking, type inference/ reconstruction, recursive types, subtypes, higher-order types; dynamically typed languages; implementation issues;

9.0

Formal semantics of programming languages: structured operational semantics; denotational semantics; abstract interpretation and static analysis;

9.0

Exams, review; 3.0

Homework assignments involving designing suitable AGs to express typical context-sensitive conditions and generation of code for standard imperative constructs;

Implement a complete interpreter for pure Lisp (plus function definitions);

Homework assignments involving analyzing type systems and relations in standard languages;

Implement a basic type-inferencing algorithm;

Homework assignments involving structural operational semantics and static analysis of variations of standard imperative constructs;

Aspect Percent

Homeworks 20%

Programming projects 35%

Midterms, Finals 45%

Title Author

Types and programming languages B. Pierce

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

Page 443: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Neelam Soundarajan

Course Contribution College OutcomeCourse Contribution College Outcome

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

*** e An ability to identify, formulate, and solve engineering problems.

* f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

*** e an ability to identify, formulate, and solve engineering problems;

* f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

** i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

*** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 444: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6349 (Approved): Advanced Studies in Programming Languages

Course DescriptionAdvanced-level topics in programming languages.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: Prog LangGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 445: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in programming languages

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 446: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6359 (Approved): Advanced Studies in Cryptography

Course DescriptionAdvanced-level topics in cryptography.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: CryptographyGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 447: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in cryptography 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 448: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6421 (Approved): Computer Architecture

Course DescriptionPrinciples and tradeoffs behind the design of modern computer architectures, including instruction-level parallelism, memory system design, advanced cache architectures, cache coherence, multiprocessors, energy-efficient and embedded architectures.

Prior Course Number: CSE 775Transcript Abbreviation: Comp ArchGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 3421 or CSE 5421 or CSE 675 or ECE 5362 or ECE 662) and (CSE 3431 or CSE 5431 or CSE 660)Exclusions: Not open to students with credit for CSE 775Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master quantitative and qualitative design issues in modern architectures.

Master techniques for exploiting instruction-level parallelism.

Page 449: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with instruction set architecture design principles.

Be familiar with multiprocessors and thread-level parallelism.

Be familiar with memory system design.

Master advanced cache architectures and cache coherence.

Be exposed to energy-efficient microprocessor design.

Be exposed to vector and VLIW architectures.

Be exposed to emerging directions in computer architecture.

Topic Lec Rec Lab Cli IS Sem FE Wor

Quantitative and qualitative design principles and introduction to modern computer architectures

5.0

Instruction set design principles 2.0

Techniques for exploiting instruction-level parallelism 11.0

Multiprocessors and thread-level parallelism 6.0

Memory system design, advanced cache architectures, cache coherence

8.5

Energy-efficient microprocessor design 3.0

Vector and VLIW architectures 3.0

Architectures for embedded systems 2.0

Emerging directions in computer architecture 1.5

Homework assignments from the textbook and other sources.

Laboratory assignments: - Out-of-order pipeline simulation and optimization - Cache system simulation and optimization - Multiprocessor system simulation

Aspect Percent

Homework assignments 20%

Laboratory assignments 20%

Midterm 25%

Final exam 35%

Title Author

Computer Architecture: A Quantitative Approach John Hennessy and David Patterson, Morgan Kauffman, 2007

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

Page 450: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Mircea-Radu Teodorescu

Course Contribution College OutcomeCourse Contribution College Outcome

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

* e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

* k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

* e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

* k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 451: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6422 (Approved): Advanced Computer Architecture

Course DescriptionFundamental design issues in parallel architectures, design of scalable shared memory and distributed memory systems, interconnection networks (on-chip and off-chip), multi-core architectures, accelerators, embedded systems, and exascale systems.

Prior Course Number: CSE 875Transcript Abbreviation: Advanced Comp ArchGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: (CSE 6421 or CSE 775) and (CSE 6441 or CSE 721)Exclusions: Not open to students with credit for CSE 875Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master the principles of advanced computer architecture

Master the implications of different ways of using hardware parallelism (processors, interconnection networks and accelerators)

Master the architectural design issues in shared memory, distributed-memory, distributed shared memory, and petascale/exascale systems

Master the design principles of interconnection networks

Page 452: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be familiar with the architectural designs of past and present (state-of-the-art)computer systems

Be familiar with analyzing and solving architectural design problems

Be exposed to the future trends in parallel computer architectures

Topic Lec Rec Lab Cli IS Sem FE Wor

Design issues of Parallel Architectures 3.0

Interconnection Network Design Principles (Classification of interconnection networks, basic switching techniques, virtual channels)

3.0

Design Principles (Cont'd): Deadlock, Livelock, and Starvation; Routing Algorithms for direct, indirect, and switch-based networks; System support, hardware implementations, and software implementations for collective communication

6.0

Latest Multi-core Architectures 3.0

On-Chip Interconnect Architectures 3.0

Design of Shared-Memory Multiprocessors (Cache Coherence, Memory Consistency, Snooping Protocols, Protocol Design Tradeoffs, Synchronization, and Implications on Software)

4.0

Snoop-based Multiprocessor (Symmetric Multiprocessor) Design (Single-level cache with an atomic bus, multi-level cache hierarchies and split-transaction bus.)

5.0

Acclerator Architectures 3.0

Issues in Designing Scalable Systems (DSM Systems with Directory-based Cache Coherence, Software DSM Systems, and Scalable Non Cache Coherent Systems Supporting PGAS Models)

3.0

Architectural Issues in Designing Power-Aware and Embedded Computing Systems

3.0

Overview of Current Multi-Petaflop Systems and Architecture for Emerging Exascale Systems

6.0

Aspect Percent

Homeworks 15%

Final Exam 40%

Project 35%

Class Participation and Discussion 10%

Title Author

Parallel Computer Architecture: A Hardware/Software Approach David Culler, Jaswinder Pal Singh and Anoop Gupta

Interconnection Networks: An Engineering Approach Jose Duato, Sudhakar Yalamanchili and Lionel Ni

Page 453: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Dhabaleswar Panda

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 454: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6429 (Approved): Advanced Studies in Computer Architecture

Course DescriptionAdvanced-level topics in computer architecture.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: Comp ArchGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 455: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in computer architecture 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 456: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6431 (Approved): Advanced Operating Systems

Course DescriptionAdvanced topics in operating systems and concurrency; introduction to distributed systems.

Prior Course Number: CSE 760Transcript Abbreviation: Advanced Op SystsGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: Autumn, SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 2431 or CSE 5431 or CSE 660Exclusions: Not open to students with credit for CSE 760Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Master language and operating system constructs such as semaphores and monitors and their use for process synchronization and mutual exclusion.

Master principles and algorithms for distributed mutual exclusion in distributed systems.

Be competent with basic issues in developing distributed systems, use of logical clocks, and techniques for interprocess communication.

Page 457: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Representative Assignments

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Be competent with principles and approaches for deadlock detection and avoidance, and fault-tolerance and avoidance in distributed systems.

Be competent with operating system support for database transactions, including ACID properties and serializability of transactions.

Be familiar with modern techniques for fault-detection and failure handling in servers, HPC systems, and data-intensive systems.

Be familiar with use of virtualization and cloud technologies.

Be familiar with software transactional memory (STM) based approaches.

Be exposed to the basic concepts of data consistency and data consistency models.

Topic Lec Rec Lab Cli IS Sem FE Wor

Introduction to distributed systems 3.0

Mutual exclusion and synchronization methods and examples 6.0

Foundational issues for distributed systems, like clock synchronization and logical clocks

3.0

Distributed mutual exclusion algorithms 4.5

Support for database transactions 4.5

Deadlock detection and avoidance analysis and techniques 6.0

Advanced Distributed Algorithms and Fault-tolerance methods

3.0

Modern fault-tolerance and failure-recovery: servers, HPC systems, and data-intensive systems

3.0

Virtualization technologies and clouds 3.0

Software Transactional Memory 3.0

Coherence and Consistency Models 3.0

Use of sychronization methods (semaphores or Java-based support)

Use of Virtualization and Cloud technologies

Aspect Percent

Written Assignments 15%

Programming Labs 15%

Mid-Term 25%

Final 45%

Title Author

Distributed Systems A. Tanenbaum, M. van Steen

Advanced Concepts in Operating Systems M. Singhal, N. Shivaratri

Page 458: CSE 1110 (Approved): Introduction to Computing Technology

BS CSE Program Outcomes

Prepared by: Gagan Agrawal

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

** b An ability to design and conduct experiments, as well as to analyze and interpret data.

* c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

** b an ability to design and conduct experiments, as well as to analyze and interpret data;

* c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

g an ability to communicate effectively with a range of audiences;

h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

* n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 459: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6439 (Approved): Advanced Studies in Operating Systems

Course DescriptionAdvanced-level topics in operating systems.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: Oper SysGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 460: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in operating systems 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 461: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6441 (Approved): Parallel Computing

Course DescriptionPrinciples and practice of parallel computing; design, implementation, and performance evaluation of parallel programs for shared-memory, distributed-memory and heterogeneous parallel systems.

Prior Course Number: CSE 721Transcript Abbreviation: Parallel ComputingGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Senior, Masters, DoctoralCourse Offerings: SpringFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: CSE 5441 or CSE 621Exclusions: Not open to students with credit for CSE 721Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

BS CSE BS Computer Science and Engineering

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Mastery of parallel algorithm design

Mastery of parallel programming for shared-memory and distributed-memory systems and GPUs

Familiarity with performance evaluation for parallel programs

Page 462: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

BS CSE Program Outcomes

Familiarity with architectural trends for parallel computers, including interconnection networks, GPUs, multicore processors, and distributed-memory systems

Topic Lec Rec Lab Cli IS Sem FE Wor

Parallel algorithm design 10.0

Parallel programming for shared-memory and distributed-memory systems and GPUs

10.0

Parallel programming for shared-memory and distributed-memory systems and GPUs

10.0

Architectural trends for parallel computers 10.0

Aspect Percent

Assignments 40%

Midterm exam 25%

Final exam 35%

Title Author

Introduction to Parallel Computing A. Grama, A. Gupta, G. Karypis, and V. Kumar

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

*** b An ability to design and conduct experiments, as well as to analyze and interpret data.

*** c An ability to design a system, component, or process to meet desired needs.

* d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

* h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

* i A recognition of the need for, and an ability to engage in life-long learning.

* j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Course Contribution Program Outcome

*** a an ability to apply knowledge of computing, mathematics including discrete mathematics as well as probability and statistics, science, and engineering;

*** b an ability to design and conduct experiments, as well as to analyze and interpret data;

Page 463: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: P Sadayappan

Course Contribution Program OutcomeCourse Contribution Program Outcome

*** c an ability to design, implement, and evaluate a software or a software/hardware system, component, or process to meet desired needs within realistic constraints such as memory, runtime efficiency, as well as appropriate constraints related to economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability considerations;

* d an ability to function on multi-disciplinary teams;

** e an ability to identify, formulate, and solve engineering problems;

f an understanding of professional, ethical, legal, security and social issues and responsibilities;

* g an ability to communicate effectively with a range of audiences;

* h an ability to analyze the local and global impact of computing on individuals, organizations, and society;

* i a recognition of the need for, and an ability to engage in life-long learning and continuing professional development;

* j a knowledge of contemporary issues;

*** k an ability to use the techniques, skills, and modern engineering tools necessary for practice as a CSE professional;

*** l an ability to analyze a problem, and identify and define the computing requirements appropriate to its solution;

** m an 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;

** n an ability to apply design and development principles in the construction of software systems of varying complexity.

Page 464: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6449 (Approved): Advanced Studies in Parallel Computing

Course DescriptionAdvanced-level topics in parallel computing.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: Par CompGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 465: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in parallel computing

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 466: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6461 (Approved): Computer Communication Networks

Course DescriptionFoundational understanding of network analysis, error-control, routing, congestion-control, multi-access, and their examples in the context of the existing communication networks.

Prior Course Number: CSE 861, CSE 862Transcript Abbreviation: Comp Comm NetworksGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: AutumnFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 3.0Repeatable: NoTime Distribution: 3.0 hr LecExpected out-of-class hours per week: 6.0Graded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Undergraduate course in probability or Stat 3470 or Math 530 or Stat 428 or Stat 520 or ECE 6001 or ECE 804Exclusions: Not open to students with credit for CSE 861, CSE 862, ECE 6101, ECE 861, or ECE 862Cross-Listings: Cross-listed with ECE 6101

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Goals

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Be exposed to a basic history of networking.

Be familiar with architectural concepts of layering and circuit and packet switching.

Master various error control techniques and their analyses.

Be familiar with different queueing models and their application to networking.

Page 467: CSE 1110 (Approved): Introduction to Computing Technology

Course Topics

Grades

Representative Textbooks and Other Course Materials

ABET-EAC Criterion 3 Outcomes

Master concepts in shortest path routing including analysis of correctness, convergence, and complexity, asynchronous routing protocols, routing on the Internet, and routing on other historical networks.

Be familiar with window-based flow control and its analysis using closed queueing networks.

Be familiar with TCP congestion control and its advantages and disadvantages.

Be familiar with multi-access systems such as polling and random access.

Be exposed to some of the open research problems in networking.

Topic Lec Rec Lab Cli IS Sem FE Wor

Historical Perspective in Networking 2.0

Circuit/Packet Switching and Statistical Multiplexing 1.0

Importance of Layering for Network Architecture 1.0

Description of Error Detection, Correction, and Recovery Mechanisms

1.0

Analysis of Error Recovery Mechanisms 3.0

Network Dimensioning and Elementary Queueing Analysis 10.0

Fundamentals of Routing 7.0

Internet Routing 2.0

Flow/Congestion Control 7.0

Multi-access Resource Shared Networks 8.0

Aspect Percent

Homework 20%

Project 20%

Midterm 25%

Final 35%

Title Author

Telecommunication Networks: Protocols, Modeling, and Analysis Mischa Schwartz

Communication Networks, Fundamental Concepts and Key Architectures A. Leon-Garcia and I. Widjaja

Course Contribution College Outcome

*** a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

** e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

* g An ability to communicate effectively.

Page 468: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Bruce Weide

Course Contribution College OutcomeCourse Contribution College Outcome

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

** i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

*** k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 469: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6469 (Approved): Advanced Studies in Computer Networking

Course DescriptionAdvanced-level topics in computer networking.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: Comp NetwGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 470: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in computer networking 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 471: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6479 (Approved): Advanced Studies in Computer Security

Course DescriptionAdvanced-level topics in computer security.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: Comp SecGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 472: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in computer security 25.0

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 473: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6539 (Approved): Advanced Studies in Artificial Intelligence

Course DescriptionAdvanced-level topics in artificial intelligence.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: Artif IntGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 474: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in AI

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 475: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6559 (Approved): Advanced Studies in Computer Graphics

Course DescriptionAdvanced-level topics in computer graphics.

Prior Course Number: CSE 888Transcript Abbreviation: Adv: Comp GraphGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, SummerFlex Scheduled Course: NeverCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 3.0Repeatable: YesMaximum Repeatable Credits: 15.0Total Completions Allowed: 8Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: NeverCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Details vary from term to term; check with department for specifics about current offerings.

Page 476: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

Current research topics in computer graphics

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 477: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6998 (Approved): MS Research in Computer Science and Engineering

Course DescriptionMS research in Computer Science and Engineering.

Prior Course Number: CSE 999Transcript Abbreviation: MS Research CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 100.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Open both to MS-track graduate students, and to PhD-track graduate students while pursuing MS prior to beginning PhD research.

Page 478: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

MS research in Computer Science and Engineering.

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 479: CSE 1110 (Approved): Introduction to Computing Technology

CSE 6999 (Approved): MS Thesis Research in Computer Science and Engineering

Course DescriptionMS research in Computer Science and Engineering, leading to a thesis.

Prior Course Number: CSE 999Transcript Abbreviation: MS Thesis Res CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Masters, DoctoralCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 100.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

General Information

Course Topics

Abbreviation Description

MS CSE MS Computer Science and Engineering

PhD CSE PhD Computer Science and Engineering

Open both to MS-track graduate students, and to PhD-track graduate students while pursuing MS prior to beginning PhD research.

Page 480: CSE 1110 (Approved): Introduction to Computing Technology

ABET-EAC Criterion 3 Outcomes

Prepared by: Bruce Weide

Topic Lec Rec Lab Cli IS Sem FE Wor

MS research in Computer Science and Engineering, leading to a thesis.

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 481: CSE 1110 (Approved): Introduction to Computing Technology

CSE 8193 (Approved): Individual Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Prior Course Number: CSE 793Transcript Abbreviation: Indv Studies CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Doctoral, ProfessionalCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

PhD CSE PhD Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 482: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 483: CSE 1110 (Approved): Introduction to Computing Technology

CSE 8194 (Approved): Group Studies in Computer Science and Engineering

Course DescriptionDesigned to give the student an opportunity to pursue special studies not otherwise offered.

Prior Course Number: CSE 894Transcript Abbreviation: Group Studies CSEGrading Plan: Letter GradeCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: Doctoral, ProfessionalCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 10.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: LectureCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Permission of InstructorExclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

PhD CSE PhD Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

Designed to give the student an opportunity to pursue special studies not otherwise offered.

Page 484: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 485: CSE 1110 (Approved): Introduction to Computing Technology

CSE 8998 (Approved): PhD Research in Computer Science and Engineering

Course DescriptionPhD research in Computer Science and Engineering.

Prior Course Number: CSE 999Transcript Abbreviation: PhD Research CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: DoctoralCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 100.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

PhD CSE PhD Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

PhD research in Computer Science and Engineering.

Page 486: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 487: CSE 1110 (Approved): Introduction to Computing Technology

CSE 8999 (Approved): PhD Dissertation Research in Computer Science and Engineering

Course DescriptionPhD research in Computer Science and Engineering, leading to a dissertation.

Prior Course Number: CSE 999Transcript Abbreviation: PhD Disser Res CSEGrading Plan: Satisfactory/UnsatisfactoryCourse Deliveries: ClassroomCourse Levels: GraduateStudent Ranks: DoctoralCourse Offerings: Autumn, Spring, May, Summer, May + SummerFlex Scheduled Course: AlwaysCourse Frequency: Every YearCourse Length: 14 WeekCredits: 1.0 - 10.0Repeatable: YesMaximum Repeatable Credits: 100.0Total Completions Allowed: 10Allow Multiple Enrollments in Term: NoGraded Component: Independent StudyCredit by Examination: NoAdmission Condition: NoOff Campus: SometimesCampus Locations: ColumbusPrerequisites and Co-requisites: Exclusions: Cross-Listings:

Course Rationale: Existing course.

The course is required for this unit's degrees, majors, and/or minors: NoThe course is a GEC: NoThe course is an elective (for this or other units) or is a service course for other units: Yes

Subject/CIP Code: 14.0901Subsidy Level: Doctoral Course

Programs

Course Topics

ABET-EAC Criterion 3 Outcomes

Abbreviation Description

PhD CSE PhD Computer Science and Engineering

Topic Lec Rec Lab Cli IS Sem FE Wor

PhD research in Computer Science and Engineering, leading to a dissertation.

Page 488: CSE 1110 (Approved): Introduction to Computing Technology

Prepared by: Brittany Jones

Course Contribution College Outcome

a An ability to apply knowledge of mathematics, science, and engineering.

b An ability to design and conduct experiments, as well as to analyze and interpret data.

c An ability to design a system, component, or process to meet desired needs.

d An ability to function on multi-disciplinary teams.

e An ability to identify, formulate, and solve engineering problems.

f An understanding of professional and ethical responsibility.

g An ability to communicate effectively.

h The broad education necessary to understand the impact of engineering solutions in a global and societal context.

i A recognition of the need for, and an ability to engage in life-long learning.

j A knowledge of contemporary issues.

k An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice.

Page 489: CSE 1110 (Approved): Introduction to Computing Technology