# Fundamental Computer Science Concepts Sequence TCSU CSCI SEQ A

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Fundamental Computer Science Concepts Sequence TCSU CSCI SEQ A A. Description Introduction to the discipline of computer science; covers the material traditionally found in courses that introduce problem solving, computer programming, algorithms, data structures, computer architecture, assembly programming and discrete structures. B. Recommended Preparation Pre-calculus with a grade of C or better C. Prerequisites None Specified D. Minimum Unit Requirement 12 semester units E. Course and Student I. Discrete Structures (DS) DS1. Functions, relations and sets: Minimum coverage time: 6 hours 1. Functions (surjections, injections, inverses, composition) 2. Relations (reflexivity, symmetry, transitivity, equivalence relations) 3. Sets (Venn diagrams, complements, Cartesian products, power sets) 4. Pigeonhole principle 5. Cardinality and countability 1. Explain with examples the basic terminology of functions, relations, and sets; 2. Perform the operations associated with sets, functions, and relations; 3. Relate practical examples to the appropriate set, function, or relation model, and interpret the associated operations and terminology in context; and 4. Demonstrate basic counting principles, including uses of diagonalization and the pigeonhole principle. DS2. Basic logic: Minimum coverage time: 10 hours 1. Propositional logic 2. Logical connectives 3. Truth tables 4. Normal forms (conjunctive and disjunctive) 5. Validity 6. Predicate logic 7. Universal and existential quantification

2 8. Modus ponens and modus tollens 9. Limitations of predicate logic 1. Apply formal methods of symbolic propositional and predicate logic; 2. Describe how formal tools of symbolic logic are used to model algorithms and real-life situations; 3. Use formal logic proofs and logical reasoning to solve problems such as puzzles; and 4. Describe the importance and limitations of predicate logic. DS3. Proof Techniques: Minimum coverage time: 12 hours 1. Notions of implication, converse, inverse, contrapositive, negation, and contradiction 2. The structure of formal proofs 3. Direct proofs 4. Proof by counterexample 5. Proof by contraposition 6. Proof by contradiction 7. Mathematical induction 8. Strong induction 9. Recursive mathematical definitions 10. Well orderings 1. Outline the basic structure of and give examples of each proof technique described in this unit; 2. Discuss which type of proof is best for a given problem; 3. Relate the ideas of mathematical induction to recursion and recursively defined structures; and 4. Identify the difference between mathematical and strong induction and give examples of the appropriate use of each. DS4. Basics of counting: Minimum coverage time: 5 hours 1. Counting arguments 2. Sum and product rule 3. Inclusion-exclusion principle 4. Arithmetic and geometric progressions 5. Fibonacci numbers 6. The pigeonhole principle 7. Permutations and combinations 8. Basic definitions 9. Pascal's identity 10. The binomial theorem 11. Solving recurrence relations 12. Common examples

3 1. Compute permutations and combinations of a set, and interpret the meaning in the context of the particular application; 2. Solve a variety of basic recurrence equations; and 3. Analyze a problem to create relevant recurrence equations or to identify important counting questions. DS5. Trees: Minimum coverage time: 3 hours 1. Trees and Graphs 2. Spanning trees 3. Traversal strategies 1. Demonstrate different traversal methods for trees and graphs; 2. Model problems in computer science using trees; and 3. Relate trees to data structures, algorithms, and counting. II. Programming Fundamentals (PF) PF1. Fundamental programming constructs: Minimum coverage time: 9 hours 1. Basic syntax and semantics of a higher-level language 2. Variables, types, expressions, and assignment 3. Simple I/O 4. Conditional and iterative control structures 5. Functions and parameter passing 6. Structured decomposition 1. Analyze and explain the behavior of simple programs involving the fundamental programming constructs covered by this unit; 2. Modify and expand short programs that use standard conditional and iterative control structures and functions; 3. Design, implement, test, and debug a program that uses each of the following fundamental programming constructs: basic computation, simple I/O, standard conditional and iterative structures, and the definition of functions; 4. Choose appropriate conditional and iteration constructs for a given programming task; 5. Apply the techniques of structured (functional) decomposition to break a program into smaller pieces; and 6. Describe the mechanics of parameter passing. PF2. Algorithms and problem-solving: Minimum coverage time: 6 hours 1. Problem-solving strategies 2. The role of algorithms in the problem-solving process 3. Implementation strategies for algorithms 4. Debugging strategies 5. The concept and properties of algorithms

4 1. Discuss the importance of algorithms in the problem-solving process; 2. Identify the necessary properties of good algorithms; 3. Create algorithms for solving simple problems; 4. Use pseudocode or a programming language to implement, test, and debug algorithms for solving simple problems; and 5. Describe strategies that are useful in debugging. PF3. Fundamental data structures: Minimum coverage time: 12 hours 1. Primitive types 2. Arrays 3. Records 4. Strings and string processing 5. Data representation in memory 6. Static, stack, and heap allocation 7. Runtime storage management 8. Pointers and references 9. Linked structures 10. Implementation strategies for stacks, queues, and hash tables 11. Implementation strategies for trees 12. Strategies for choosing the right data structure 1. Discuss the representation and use of primitive data types and built-in data structures; 2. Describe how the data structures in the topic list are allocated and used in memory; 3. Describe common applications for each data structure in the topic list; 4. Implement the user-defined data structures in a high-level language; 5. Compare alternative implementations of data structures with respect to performance; 6. Write programs that use each of the following data structures: arrays, records, strings, linked lists, stacks, queues, and hash tables; 7. Compare and contrast the costs and benefits of dynamic and static data structure implementations; and 8. Choose the appropriate data structure for modeling a given problem. PF4. Recursion: Minimum coverage time: 5 hours 1. The concept of recursion 2. Recursive mathematical functions 3. Simple recursive procedures 4. Divide-and-conquer strategies 5. Recursive backtracking 6. Implementation of recursion 1. Describe the concept of recursion and give examples of its use; 2. Identify the base case and the general case of a recursively defined problem;

5 3. Compare iterative and recursive solutions for elementary problems such as factorial; 4. Describe the divide-and-conquer approach; 5. Implement, test, and debug simple recursive functions and procedures; 6. Describe how recursion can be implemented using a stack; 7. Discuss problems for which backtracking is an appropriate solution; and 8. Determine when a recursive solution is appropriate for a problem. III. Architecture and Organization (AR) AR2. Machine level representation of data: Minimum coverage time: 3 hours 1. Bits, bytes, and words 2. Numeric data representation and number bases 3. Fixed- and floating-point systems 4. Signed and twos-complement representations 5. Representation of nonnumeric data (character codes, graphical data) 6. Representation of records and arrays 1. Explain the reasons for using different formats to represent numerical data; 2. Explain how negative integers are stored in sign-magnitude and twos complement representation; 3. Convert numerical data from one format to another; 4. Discuss how fixed-length number representations affect accuracy and precision; 5. Describe the internal representation of nonnumeric data; and 6. Describe the internal representation of characters, strings, records, and arrays. AR3. Assembly level machine organization: Minimum coverage time: 9 hours 7. Basic organization of the von Neumann machine 8. Control unit; instruction fetch, decode, and execution 9. Instruction sets and types (data manipulation, control, I/O) 10. Assembly/machine language programming 11. Instruction formats 12. Addressing modes 13. Subroutine call and return mechanisms 14. I/O and interrupts 1. Explain the organization of the classical von Neumann machine and its major functional units; 2. Explain how an instruction is executed in a classical von Neumann machine; 3. Summarize how instructions are represented at both the machine level and in the context of a symbolic assembler; 4. Explain different instruction formats, such as addresses per instruction and variable length vs. fixed length formats; 5. Write simple assembly language program segments; 6. Demonstrate how fundamental high-level programming constructs are implemented at the machine-language level; 7. Explain how subroutine calls are handled at the assembly level; and

6 8. Explain the basic concepts of interrupts and I/O operations. IV. Programming Languages (PL) PL1. Overview of programming languages: Minimum coverage time: 2 hours 1. History of programming languages 2. Brief survey of programming paradigms 3. Procedural languages 4. Object-oriented languages 5. Functional languages 6. Declarative, non-algorithmic languages 7. Scripting languages 8. The effects of scale on programming methodology 1. Summarize the evolution of programming languages illustrating how this history has led to the paradigms available today; 2. Identify at least one distinguishing characteristic for each of the programming paradigms covered in this unit; 3. Evaluate the tradeoffs between the different paradigms, considering such issues as space efficiency, time efficiency (of both the computer and the programmer), safety, and power of expression; and 4. Distinguish between programming-in-the-small and programming-in-the-large. PL4. Declarations and types: Minimum coverage time: 3 hours 1. The conception of types as a set of values together with a set of operations 2. Declaration models (binding, visibility, scope, and lifetime) 3. Overview of type-checking 4. Garbage collection 1. Explain the value of declaration models, especially with respect to programmingin-the-large; 2. Identify and describe the properties of a variable such as its associated address, value, scope, persistence, and size; 3. Discuss type incompatibility; 4. Demonstrate different forms of binding, visibility, scoping, and lifetime management; 5. Defend the importance of types and type-checking in providing abstraction and safety; and 6. Evaluate tradeoffs in lifetime management (reference counting vs. garbage collection). PL5. Abstraction mechanisms: Minimum coverage time: 3 hours 1. Procedures, functions, and iterators as abstraction mechanisms 2. Parameterization mechanisms (reference vs. value) 3. Activation records and storage management 4. Type parameters and parameterized types - templates or generics

7 5. Modules in programming languages 1. Explain how abstraction mechanisms support the creation of reusable software components; 2. Demonstrate the difference between call-by-value and call-by-reference parameter passing; 3. Defend the importance of abstractions, especially with respect to programmingin-the-large; and 4. Describe how the computer system uses activation records to manage program modules and their data. PL6. Object-oriented programming: Minimum coverage time: 10 hours 1. Object-oriented design 2. Encapsulation and information-hiding 3. Separation of behavior and implementation 4. Classes and subclasses 5. Inheritance (overriding, dynamic dispatch) 6. Polymorphism (subtype polymorphism vs. inheritance) 7. Class hierarchies 8. Collection classes and iteration protocols 9. Internal representations of objects and method tables 1. Justify the philosophy of object-oriented design and the concepts of encapsulation, abstraction, inheritance, and polymorphism; 2. Design, implement, test, and debug simple programs in an object-oriented programming language; 3. Describe how the class mechanism supports encapsulation and information hiding; 4. Design, implement, and test the implementation of is-a relationships among objects using a class hierarchy and inheritance; 5. Compare and contrast the notions of overloading and overriding methods in an object-oriented language; 6. Explain the relationship between the static structure of the class and the dynamic structure of the instances of the class; and 7. Describe how iterators access the elements of a container. V. Social and Professional Issues (SP) SP1. History of Computing: Minimum coverage time: 1 hour 1. Prehistory -- the world before History of computer hardware, software, networking 3. Pioneers of computing 1. List the contributions of several pioneers in the computing field; 2. Compare daily life before and after the advent of personal computers and the Internet; and 3. Identify significant continuing trends in the history of the computing field.

8 VI. Software and Engineering (SE) SE1. Software design: Minimum coverage time: 8 hours 1. Fundamental design concepts and principles 2. Design strategy 3. Software architecture 4. Structured design 5. Object-oriented analysis and design 6. Component-level design 7. Design for reuse 1. Discuss the properties of good software design; 2. Compare and contrast object-oriented analysis and design with structured analysis and design; 3. Evaluate the quality of multiple software designs based on key design principles and concepts; 4. Select and apply appropriate design patterns in the construction of a software application; 5. Create and specify the software design for a software product from a software requirement document, an accepted program design methodology (e.g., structured or object-oriented), and appropriate design notation; 6. Conduct a software design review using appropriate guidelines; 7. Evaluate a software design at the component level; and 8. Evaluate a software design from the perspective of reuse. SE2. Using APIs: Minimum coverage time: 5 hours 1. API programming 2. Class browsers and related tools 3. Programming by example 4. Debugging in the API environment 5. Introduction to component-based computing 1. Explain the value of application programming interfaces (APIs) in software development; 2. Use class browsers and related tools during the development of applications using APIs; and 3. Design, implement, test, and debug programs that use large-scale API packages. AL. Algorithms: Minimum coverage time: 2 hours 1. Big O notation 2. Basic sorting and searching algorithms 1. Explain the use of O notation; and 2. Explain the basic sorting and searching algorithms.

9 F. Justification 1. This 12 semester unit description has been approved by the CS group both at the IMPAC and the LDTP meetings. 2. The 12 semester unit described introduces students to a set of fundamental computer science topics. In the spirit of the ACM 2001 Curriculum Report, from which these topic groups are based, the disciplinary group is not specifying individual course content. 3. Most Community Colleges have an Introduction to Programming, Programming with Data Structures, Discrete Mathematics, Assembly/Architecture courses which would articulate after some modifications to their courses. 4. Individual institutions have the freedom, as they believe appropriate to package the material in any number of courses.

### COURSE DESCRIPTION FOR THE COMPUTER INFORMATION SYSTEMS CURRICULUM

COURSE DESCRIPTION FOR THE COMPUTER INFORMATION SYSTEMS CURRICULUM Course Code 2505100 Computing Fundamentals Pass/ Fail Prerequisite None This course includes an introduction to the use of the computer

### 1.1 Logical Form and Logical Equivalence 1

Contents Chapter I The Logic of Compound Statements 1.1 Logical Form and Logical Equivalence 1 Identifying logical form; Statements; Logical connectives: not, and, and or; Translation to and from symbolic

### Part A Course Outline

University of Macau Faculty of Science and Technology Department of Computer and Information Science Department of Electrical and Computer Engineering CISB111/ECEB222 Discrete Structures Syllabus 2 nd

### Glossary of Object Oriented Terms

Appendix E Glossary of Object Oriented Terms abstract class: A class primarily intended to define an instance, but can not be instantiated without additional methods. abstract data type: An abstraction

### Computing Curricula 2005: Guidelines for Associate-Degree Transfer Curriculum in

Computing Curricula 2005: Guidelines for Associate-Degree Transfer Curriculum in Software Engineering August 2005 The ACM Two-Year College Education Committee Robert D. Campbell, Rock Valley College Committee

### Domains and Competencies

Domains and Competencies DOMAIN I TECHNOLOGY APPLICATIONS CORE Standards Assessed: Computer Science 8 12 I VII Competency 001: The computer science teacher knows technology terminology and concepts; the

### Annex A1 COURSE DESCRIPTIONS AND LEARNING OBJECTIVES FOR:

Annex A1 COURSE DESCRIPTIONS AND LEARNING OBJECTIVES FOR: Discrete Math (Already in ACGM, course description has been revised, and learning outcomes have been added.) Electrical Circuits I (Already in

### Division of Mathematical Sciences

Division of Mathematical Sciences Chair: Mohammad Ladan, Ph.D. The Division of Mathematical Sciences at Haigazian University includes Computer Science and Mathematics. The Bachelor of Science (B.S.) degree

### Sample Syllabus (C++) CSCI 1301 Introduction to Programming Principles

Sample Syllabus (C++) CSCI 1301 Introduction to Programming Principles Knowledge Areas that contain topics and learning outcomes covered in the course Knowledge Areas Total Hours of Coverage Software Development

### INTERNATIONAL EDITION. Problem Solving with C++ Data Abstraction & SIXTH EDITION. Walls and Mirrors. Frank M. Carrano Timothy Henry

INTERNATIONAL EDITION Data Abstraction & Problem Solving with C++ Walls and Mirrors SIXTH EDITION Frank M. Carrano Timothy Henry Operator Meaning Associativity Usage * multiply left expr * expr / divide

### Curriculum Map. Discipline: Computer Science Course: C++

Curriculum Map Discipline: Computer Science Course: C++ August/September: How can computer programs make problem solving easier and more efficient? In what order does a computer execute the lines of code

### Chapter 126. Texas Essential Knowledge and Skills for Technology Applications. Subchapter C. High School

High School 126.C. Chapter 126. Texas Essential Knowledge and Skills for Technology Applications Subchapter C. High School Statutory Authority: The provisions of this Subchapter C issued under the Texas

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

Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

### vertex, 369 disjoint pairwise, 395 disjoint sets, 236 disjunction, 33, 36 distributive laws

Index absolute value, 135 141 additive identity, 254 additive inverse, 254 aleph, 466 algebra of sets, 245, 278 antisymmetric relation, 387 arcsine function, 349 arithmetic sequence, 208 arrow diagram,

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

Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

### Fundamentals of Java Programming

Fundamentals of Java Programming This document is exclusive property of Cisco Systems, Inc. Permission is granted to print and copy this document for non-commercial distribution and exclusive use by instructors

### KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

KITES TECHNOLOGY 360 Degree Solution www.kitestechnology.com/academy.php info@kitestechnology.com technologykites@gmail.com Contact: - 8961334776 9433759247 9830639522.NET JAVA WEB DESIGN PHP SQL, PL/SQL

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

MICHIGAN TEST FOR TEACHER CERTIFICATION (MTTC) TEST OBJECTIVES Subarea Educational Computing and Technology Literacy Computer Systems, Data, and Algorithms Program Design and Verification Programming Language

### SL-110: Fundamentals of Java Revision 15 October Sun Educational Services Instructor-Led Course Description

Sun Educational Services Instructor-Led Course Description Fundamentals of Java SL-110 The Fundamentals of the Java course provides students, with little or no programming experience, with the basics of

### Monfort College of Business Semester Course Syllabus (2015-2016)

Monfort College of Business Semester Course Syllabus (2015-2016) COURSE PREFIX/TITLE: BACS 387 Object Oriented System Development Sem. Hrs. 3 Ed. Cap: 40 CATALOG DESCRIPTION: Prerequisites: BACS 287. Business

### The Anatomy of Programming Languages

The Anatomy of Programming Languages Alice E. Fischer University of New Haven Frances S. Grodzinsky Sacred Heart University September 1992 ii Copyright c 1990, 1991, 1992 by Alice E. Fischer and Frances

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

VCU 1 COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.) The Bachelor of Science in Computer Science is built on a rigorous, highly concentrated, accredited curriculum of computer science courses. The program

### Java Application Developer Certificate Program Competencies

Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle

### Data Structures and the Java Collections Framework

Data Structures and the Java Collections Framework Third Edition William J. Collins Lafayette College JOHN WILEY & SONS, INC. CONTENTS Preface xvii CHAPTER 0 Introduction to Java 1 Chapter Objectives 1

### ML for the Working Programmer

ML for the Working Programmer 2nd edition Lawrence C. Paulson University of Cambridge CAMBRIDGE UNIVERSITY PRESS CONTENTS Preface to the Second Edition Preface xiii xv 1 Standard ML 1 Functional Programming

### Programming and Software Development CTAG Alignments

Programming and Software Development CTAG Alignments This document contains information about four Career-Technical Articulation Numbers (CTANs) for Programming and Software Development Career-Technical

### Java (12 Weeks) Introduction to Java Programming Language

Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short

### Formal Engineering for Industrial Software Development

Shaoying Liu Formal Engineering for Industrial Software Development Using the SOFL Method With 90 Figures and 30 Tables Springer Contents Introduction 1 1.1 Software Life Cycle... 2 1.2 The Problem 4 1.3

### Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,

### ABET General Outcomes. Student Learning Outcomes for BS in Computing

ABET General a. An ability to apply knowledge of computing and mathematics appropriate to the program s student outcomes and to the discipline b. An ability to analyze a problem, and identify and define

### Department of Computer Science

The University of Texas at San Antonio 1 Department of Computer Science The Department of Computer Science offers a Bachelor of Science degree in Computer Science and a Minor in Computer Science. Admission

### COURSE TITLE COURSE DESCRIPTION

COURSE TITLE COURSE DESCRIPTION CS-00X COMPUTING EXIT INTERVIEW All graduating students are required to meet with their department chairperson/program director to finalize requirements for degree completion.

### Course MS10975A Introduction to Programming. Length: 5 Days

3 Riverchase Office Plaza Hoover, Alabama 35244 Phone: 205.989.4944 Fax: 855.317.2187 E-Mail: rwhitney@discoveritt.com Web: www.discoveritt.com Course MS10975A Introduction to Programming Length: 5 Days

### Java 6 'th. Concepts INTERNATIONAL STUDENT VERSION. edition

Java 6 'th edition Concepts INTERNATIONAL STUDENT VERSION CONTENTS PREFACE vii SPECIAL FEATURES xxviii chapter i INTRODUCTION 1 1.1 What Is Programming? 2 J.2 The Anatomy of a Computer 3 1.3 Translating

### 50 Computer Science MI-SG-FLD050-02

50 Computer Science MI-SG-FLD050-02 TABLE OF CONTENTS PART 1: General Information About the MTTC Program and Test Preparation OVERVIEW OF THE TESTING PROGRAM... 1-1 Contact Information Test Development

### Computer Science/Software Engineering

292 School of Science and Engineering Computer Science/Software Engineering Everald E. Mills, PhD, Chair Objectives The computer science program seeks to prepare students for careers that require sophisticated

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

COMPUTER SCIENCE Computer science is a dynamically growing discipline. ABOUT THE PROGRAM The Department of Computer Science is committed to providing students with a program that includes the basic fundamentals

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

Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

### ROCHESTER INSTITUTE OF TECHNOLOGY COURSE OUTLINE FORM COLLEGE OF SCIENCE. School of Mathematical Sciences

! ROCHESTER INSTITUTE OF TECHNOLOGY COURSE OUTLINE FORM COLLEGE OF SCIENCE School of Mathematical Sciences New Revised COURSE: COS-MATH-190 Discrete Mathematics for Computing 1.0 Course designations and

Advanced C++ Programming Course ID CPP110 Course Description The comprehensive, five-day course consists of three modules. A preliminary module reviews topics, including inheritance, the ANSI C++ Standard

### 4. Factor polynomials over complex numbers, describe geometrically, and apply to real-world situations. 5. Determine and apply relationships among syn

I The Real and Complex Number Systems 1. Identify subsets of complex numbers, and compare their structural characteristics. 2. Compare and contrast the properties of real numbers with the properties of

### Semester Review. CSC 301, Fall 2015

Semester Review CSC 301, Fall 2015 Programming Language Classes There are many different programming language classes, but four classes or paradigms stand out:! Imperative Languages! assignment and iteration!

### ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40

SOFTWARE DEVELOPMENT, 15.1200.40 1.0 APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATION TECHNOLOGY 1.1 Describe methods and considerations for prioritizing and scheduling software development

### Course 10550A: Programming in Visual Basic with Microsoft Visual Studio 2010 OVERVIEW

Course 10550A: Programming in Visual Basic with Microsoft Visual Studio 2010 OVERVIEW About this Course This course teaches you Visual Basic language syntax, program structure, and implementation by using

### OKLAHOMA SUBJECT AREA TESTS (OSAT )

CERTIFICATION EXAMINATIONS FOR OKLAHOMA EDUCATORS (CEOE ) OKLAHOMA SUBJECT AREA TESTS (OSAT ) FIELD 081: COMPUTER SCIENCE September 2008 Subarea Range of Competencies I. Computer Use in Educational Environments

### AP Computer Science AB Syllabus 1

AP Computer Science AB Syllabus 1 Course Resources Java Software Solutions for AP Computer Science, J. Lewis, W. Loftus, and C. Cocking, First Edition, 2004, Prentice Hall. Video: Sorting Out Sorting,

### BHARATHIAR UNIVERSITY: COIMBATORE CENTRE FOR COLLABORATION OF INDUSTRY AND INSTITUTIONS(CCII) CERTIFICATE IN ADVANCED PROGRAMMING C++ LANGUAGE

Certificate in Advanced Programming - C++ Language Page 1 of 7 BHARATHIAR UNIVERSITY: COIMBATORE 641046 CENTRE FOR COLLABORATION OF INDUSTRY AND INSTITUTIONS(CCII) CERTIFICATE IN ADVANCED PROGRAMMING C++

### RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE. CISY 105 Foundations of Computer Science

I. Basic Course Information RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE CISY 105 Foundations of Computer Science A. Course Number and Title: CISY-105, Foundations of Computer Science B. New

### ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology)

ALLIED PAPER : DISCRETE MATHEMATICS (for B.Sc. Computer Technology & B.Sc. Multimedia and Web Technology) Subject Description: This subject deals with discrete structures like set theory, mathematical

### Instructional Design Framework CSE: Unit 1 Lesson 1

Instructional Design Framework Stage 1 Stage 2 Stage 3 If the desired end result is for learners to then you need evidence of the learners ability to then the learning events need to. Stage 1 Desired Results

### L - Standard Letter Grade P - Pass/No Pass Repeatability: N - Course may not be repeated

Course: MATH 26 Division: 10 Also Listed As: 200930, INACTIVE COURSE Short Title: Full Title: DISCRETE MATHEMATIC Discrete Mathematics Contact Hours/Week Lecture: 4 Lab: 0 Other: 0 Total: 4 4 Number of

### Chapter 1. Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages

Chapter 1 CS-4337 Organization of Programming Languages Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705 Chapter 1 Topics Reasons for Studying Concepts of Programming

### Language Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages

ICOM 4036 Programming Languages Preliminaries Dr. Amirhossein Chinaei Dept. of Electrical & Computer Engineering UPRM Spring 2010 Language Evaluation Criteria Readability: the ease with which programs

### DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING

DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING Fall 2000 The instructions contained in this packet are to be used as a guide in preparing the Departmental Computer Science Degree Plan Form for the Bachelor's

### Computer/Information Science Course Descriptions

Computer/Information Science Course Descriptions COMS 1003: Introduction to Computer Based Systems Provides students with both computer concepts and hands-on applications. Although little or no prior computer

### 22C:22 (CS:2820) Object-Oriented Software Development

The University of Iowa 22C:22 (CS:2820) Object-Oriented Software Development Fall 2012 The Object Model by Cesare Tinelli The Object Model of Development Built on the best ideas from previous technologies

### Computer Science. Computer Science 213. Faculty and Offices. Degrees and Certificates Awarded. AS Computer Science Degree Requirements

Computer Science 213 Computer Science (See Computer Information Systems section for additional computer courses.) Degrees and Certificates Awarded Associate in Science Degree, Computer Science Certificate

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

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science Program Schedule CTech Computer Science Credits CS101 Computer Science I 3 MATH100 Foundations of Mathematics and

### Curriculum Reform. Department of Computer Sciences University of Texas at Austin 7/10/08 UTCS

Curriculum Reform Department of Computer Sciences University of Texas at Austin 7/10/08 1 CS Degrees BA with a major in CS BS, Option I: Computer Sciences BS, Option II: Turing Scholars Honors BS, Option

### CSC 4304: Systems Programming

Course Outcomes CSC 4304 Credit Hours: 3 hours Prerequisites: CSC 4103 CSC 4304: Systems Programming Prerequisites By Topic: Basic programming knowledge in C/C++. Basic constructs of programming: e.g.

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

232 Computer Science Computer Science (See Computer Information Systems section for additional computer courses.) We are in the Computer Age. Virtually every occupation in the world today has an interface

### CS 16: Assembly Language Programming for the IBM PC and Compatibles

CS 16: Assembly Language Programming for the IBM PC and Compatibles First, a little about you Your name Have you ever worked with/used/played with assembly language? If so, talk about it Why are you taking

### Computer Science/Mathematics Curriculum Pepperdine University

Computer Science/Mathematics Curriculum Pepperdine University Background Seaver College is the undergraduate liberal arts college of Pepperdine University. This document describes the curriculum for the

### Overview. Software Design Principles and Guidelines 9/16/08. Adam Porter Sept. 16, Design Principles. Design Guidelines

Software Design Principles and Guidelines Adam Porter Sept. 16, 2008 Overview Design Principles Important design concepts Useful design principles Design Guidelines Motivation Design Rules 1 Goals of the

### Software Engineering Transfer Degree

www.capspace.org (01/17/2015) Software Engineering Transfer Degree This program of study is designed for associate-degree students intending to transfer into baccalaureate programs awarding software engineering

### Department of Computer Science

University of Denver 1 Department of Computer Science Office: Aspen Hall North, Suite 100 Mail Code: 2280 S. Vine St. Denver, CO 80208 Phone: 303-871-3010 Email: info@cs.du.edu Web Site: http://www.du.edu/rsecs/departments/cs

### Data Structures and Algorithms in C++

Data Structures and Algorithms in C++ Second Edition Michael T. Goodrich Department of Computer Science University of California, Irvine Roberto Tamassia Department of Computer Science Brown University

### Jeri R. Hanly and Elliot B. Koffman, Problem Solving and Program Design in C, 7th ed., 2012, Addison- Wesley. (Required)

University of Macau Faculty of Science and Technology Department of Computer and Information Science CISB110 Programming Science Syllabus 1 st Semester 2014/2015 Part A Course Outline Compulsory course

### Computer Science Program

Computer Science Program The Department of Computer Science was established along with the start of FCIT. The department aims at establishing strong academic knowledge and experiences so that students

### MATHEMATICS AND COMPUTER SCIENCE

Hendrix Catalog 2005-2006 249 MATHEMATICS AND COMPUTER SCIENCE Professors Collins and D. Sutherland Associate Professors Barel and Campbell (chair) Assistant Professors Burch and Ferrer Visiting Assistant

### PART-A Questions. 2. How does an enumerated statement differ from a typedef statement?

1. Distinguish & and && operators. PART-A Questions 2. How does an enumerated statement differ from a typedef statement? 3. What are the various members of a class? 4. Who can access the protected members

### Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

The Role of Programming in Informatics Curricula A. J. Cowling Department of Computer Science University of Sheffield Structure of Presentation Introduction The problem, and the key concepts. Dimensions

### Course Outline Computing Science Department Faculty of Science. COMP Computer Programming I (3,1,1)

Course Outline Computing Science Department aculty of Science COMP 1130 1 Computer Programming I (3,1,1) Instructor: Office: Phone/Voice Mail: E-Mail: Calendar Description Students are introduced to the

### EMC Publishing. Ontario Curriculum Computer and Information Science Grade 11

EMC Publishing Ontario Curriculum Computer and Information Science Grade 11 Correlations for: An Introduction to Programming Using Microsoft Visual Basic 2005 Theory and Foundation Overall Expectations

### Chapter I Logic and Proofs

MATH 1130 1 Discrete Structures Chapter I Logic and Proofs Propositions A proposition is a statement that is either true (T) or false (F), but or both. s Propositions: 1. I am a man.. I am taller than

### ROCHESTER INSTITUTE OF TECHNOLOGY COURSE OUTLINE FORM COLLEGE OF SCIENCE. School of Mathematical Sciences

! ROCHESTER INSTITUTE OF TECHNOLOGY COURSE OUTLINE FORM COLLEGE OF SCIENCE School of Mathematical Sciences New Revised COURSE: COS-MATH-200 Discrete Mathematics and Introduction to Proofs 1.0 Course designations

### Course: Introduction to Java Using Eclipse Training

Course: Introduction to Java Using Eclipse Training Course Length: Duration: 5 days Course Code: WA1278 DESCRIPTION: This course introduces the Java programming language and how to develop Java applications

### Introduction to Programming System Design. CSCI 455x (4 Units)

Introduction to Programming System Design CSCI 455x (4 Units) Description This course covers programming in Java and C++. Topics include review of basic programming concepts such as control structures,

### Course Code Course Title No. of credits COMP4804 Computing and data analytics project 6 Total for Capstone Experience 6

Computing & Data Analytics Faculty General Engineering Courses (18 credits) COMP2121 Discrete Mathematics 6 ENGG1111 Computer Programming and Applications 6 MATH1013 University mathematics II* 6 Total

### Computer Information Systems (CIS)

Computer Information Systems (CIS) CIS 113 Spreadsheet Software Applications Prerequisite: CIS 146 or spreadsheet experience This course provides students with hands-on experience using spreadsheet software.

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

University of Dayton Department of Computer Science Undergraduate Programs Assessment Plan DRAFT September 14, 2011 Department Mission The Department of Computer Science in the College of Arts and Sciences

### Computer Science. Computer Science 207. Degrees and Certificates Awarded. A.S. Computer Science Degree Requirements. Program Student Outcomes

Computer Science 207 Computer Science (See Computer Information Systems section for additional computer courses.) We are in the Computer Age. Virtually every occupation in the world today has an interface

### DISCRETE MATHEMATICS W W L CHEN

DISCRETE MATHEMATICS W W L CHEN c W W L Chen, 1982, 2008. This chapter originates from material used by the author at Imperial College, University of London, between 1981 and 1990. It is available free

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

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science updated 03/08/2012 Unit 1: JKarel 8 weeks http://www.fcps.edu/is/pos/documents/hs/compsci.htm

### Course 10266A: Programming in C# with Microsoft Visual Studio 2010 OVERVIEW

Course 10266A: Programming in C# with Microsoft Visual Studio 2010 OVERVIEW About this Course The course focuses on C# program structure, language syntax, and implementation detailswith.net Framework 4.0.

### Math/CSE 1019: Discrete Mathematics for Computer Science Fall Suprakash Datta

Math/CSE 1019: Discrete Mathematics for Computer Science Fall 2011 Suprakash Datta datta@cse.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cse.yorku.ca/course/1019 1

### CS422 - Programming Language Design

1 CS422 - Programming Language Design General Information and Introduction Grigore Roşu Department of Computer Science University of Illinois at Urbana-Champaign 2 General Information Class Webpage and

### "Charting the Course to Your Success!" MOC Programming in C# with Microsoft Visual Studio Course Summary

Description Course Summary The course focuses on C# program structure, language syntax, and implementation details with.net Framework 4.0. This course describes the new enhancements in the C# 4.0 language

### DATA STRUCTURES USING C

DATA STRUCTURES USING C QUESTION BANK UNIT I 1. Define data. 2. Define Entity. 3. Define information. 4. Define Array. 5. Define data structure. 6. Give any two applications of data structures. 7. Give

### Data Structures and Programming

Data Structures and Programming http://www.cs.sfu.ca/cc/225/johnwill/ John Edgar 2 Assignments and labs 30% Midterm exam in class 25% Final exam 45% John Edgar 3 Data Structures Algorithms Software Development

### 10CS35: Data Structures Using C

CS35: Data Structures Using C QUESTION BANK REVIEW OF STRUCTURES AND POINTERS, INTRODUCTION TO SPECIAL FEATURES OF C OBJECTIVE: Learn : Usage of structures, unions - a conventional tool for handling a

### We Use High Level Languages. HLL Assembly Language. Assembly Language Machine Language. Machine Language Inputs to Digital System

We Use High Level Languages High Level Language temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; There are many high level languages (HLLs) Java, C, C++, C#, Fortran, Basic, Pascal, Lisp, Ada, Matlab, etc. HLLs

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

820 REGULATIONS FOR THE DEGREE OF BACHELOR OF SCIENCE IN BIOINFORMATICS (BSc[BioInf]) (See also General Regulations) BMS1 Admission to the Degree To be eligible for admission to the degree of Bachelor

### Data Structures and Algorithms. with Object-Oriented Design Patterns in C++

Data Structures and Algorithms with Object-Oriented Design Patterns in C++ Data Structures and Algorithms with Object-Oriented Design Patterns in C++ Bruno R. Preiss B.A.Sc., M.A.Sc., Ph.D., P.Eng. Associate

### Department of Electrical and Computer Engineering Faculty of Engineering and Architecture American University of Beirut Course Information

Department of Electrical and Computer Engineering Faculty of Engineering and Architecture American University of Beirut Course Information Course title: Computer Organization Course number: EECE 321 Catalog

### Lecture 1: Introduction

Programming Languages Lecture 1: Introduction Benjamin J. Keller Department of Computer Science, Virginia Tech Programming Languages Lecture 1 Introduction 2 Lecture Outline Preview History of Programming

### COMPUTER SCIENCE (5651) Test at a Glance

COMPUTER SCIENCE (5651) Test at a Glance Test Name Computer Science Test Code 5651 Time Number of Questions Test Delivery 3 hours 100 selected-response questions Computer delivered Content Categories Approximate