Course description



Download 0.51 Mb.
Page1/7
Date31.07.2017
Size0.51 Mb.
#25070
  1   2   3   4   5   6   7
COURSE DESCRIPTION

Department, Number

CIS 150

Course Title

Computer Science I

Semester hours

4

Course Coordinator

Dr. Louis Tsui

Current Catalog Description

This course provides a foundation for further studies in computer and information science and emphasizes a structured approach to problem solving and algorithm development. Topics include principles of program design, coding, debugging, testing, and documentation. Students are introduced to the Unified Modeling Language for requirements analysis using use-cases and activity diagrams, an object-oriented programming language (C++), and the fundamentals of computer hardware, system software, and components. The course will consist of three lecture hours and one two-hour laboratory.

Textbooks

N. Dale and C. Weems, Programming and Problem Solving with C++ (4th Edition), Jones and Bartlett, 2005

N. Dale, A Laboratory Course in C++ (4th Edition), Jones and Bartlett, 2005

Reference

M. Fowler, UML Distilled (3rd Edition), Addison-Wesley, 2003

Prerequisites by Topic



  • Concurrent calculus class

  • Analytical skill for problem analysis

  • Ability to design, modify, and trace simple algorithms.

  • Ability to use a computer for sending/receiving email, writing, and browsing.

Major Topics Covered in the Course

  • Overview of computer organization and components (1 hour)

  • Use of computers and operating systems (NT/2000/XP) (2 hours)

  • Problem solving and algorithm development (2 hours)

  • Requirements analysis using use cases and activity diagrams (2 hours)

  • C++ control structures, procedures, parameter transmission (10 hours)

  • C++ data types, arrays, records, strings, sets (10 hours)

  • Sequential data files (2 hours)

  • Program testing, verification, and debugging (3 hours)

  • Programming using class objects (2 hours)

  • Pointers and recursion (2 hours)

  • Algorithms, basic concept (sorting, searching,...) (3 hours)

  • Computing ethics and social responsibility (2 hours)

  • Exams (4 hours)

Estimate Curriculum Category Content (Semester hours)

Area

Core

Advanced

Area

Core

Advanced

Algorithms

0.25




Software design

0.25




Data structures

0.5




Concepts of programming languages

3




Computer organization and architecture
















Estimate CSAB Category Content




CORE




ADVANCED







CORE




ADVANCED

Data Structures

0.5




0.0




Computer Organization and Architecture

0.0




0.0

Algorithms Software Design

0.5




0.0




Concepts of Programming Languages

3.0




0.0

COURSE DESCRIPTION



Department, Number

CIS 200

Course Title

Computer Science II

Semester hours

4

Course Coordinator

Dr. Louis Tsui

Current Catalog Description

A presentation of techniques for the design, writing, testing, and debugging of medium-sized programs, and an introduction to data structures (stacks, queues, linked lists) using the C++ programming language. C++ topics covered include pointers, templates, and inheritance. The principles of UML modeling are also introduced. This course will consist of three lecture hours and one two-hour laboratory.

Textbooks

N. Dale, C++ Plus Data Structures (4th Edition), Jones and Bartlett, 2007

N. Dale, A Laboratory Course in C++ (4th Edition), Jones and Bartlett, 2005

M.G. Sobel, A Practical Guide to the Unix System (3rd Edition), Benjamin-Cummings, 1995

References

H. Deitel and P. Deitel, C++ How to Program, Prentice Hall, 2007

R.S. Pressman, Software Engineering: A Practitioner’s Approach, McGraw Hill, 2004

http://www.engin.umd.umich.edu/CIS/course.des/cis375/ppt/lec12a.ppt

http://www.ambysoft.com/essays/crcModeling.html

http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/crc_b/

http://www.engin.umd.umich.edu/CIS/course.des/cis375/ppt/lec8.ppt

Prerequisites by Topic



  • Ability to write small programs involving various control structures

  • Ability to write user defined functions

  • Ability to implement arrays and simple classes

Major Topics Covered in the Course

  • The generic activities associated with the software development process (1 hour)

  • UML class, sequence, state machine, and activity diagrams representing program designs (1 hour)

  • Create simple test cases and test plans for unit and integration testing of programs. (1 hour)

  • Use object-oriented design to create libraries of related classes that can be used to solve real-world problems. (1 hour)

  • Design of software so that it is easily modifiable (1 hour)

  • Professional codes of ethics and social responsibility (1 hour)

  • C++ files, streams, random access files (1 hours)

  • The tradeoff considerations for data design implementations (1 hour)

  • Analyze simple algorithms to determine their efficiency (2 hours)

  • Basic use of Unix (3 hours)

  • C++ classes (3 hours)

  • Templates (2 hours)

  • Pointers (2 hours)

  • Inheritance (1 hour)

  • Recursion and problem solving (2 hours)

  • Stacks, queues, linked lists (12 hours)

  • Sorting and searching algorithms (4 hours)

  • Exams (6 hours)

Estimate Curriculum Category Content (Semester hours)

Area

Core

Advanced

Area

Core

Advanced

Algorithms

0.5




Software design

1.5




Data structures

1.0




Concepts of programming languages

1.0




Computer organization and architecture
















Estimate CSAB Category Content




CORE




ADVANCED







CORE




ADVANCED

Data Structures

1










Computer Organization and Architecture










Algorithms Software Design

2










Concepts of Programming Languages

1






COURSE DESCRIPTION



Department, Number

CIS 275

Course Title

Computer Science II

Semester hours

4

Course Coordinator

Dr. Bruce Elenbogen

Current Catalog Description

An introduction to various topics in discrete mathematics, such as set theory, mathematical logic, trees, graph theory, finite-state machines, and BNF grammars. Applications to relational databases, modeling reactive systems, and program verification are also discussed.

Textbooks

K. Rosen, Discrete Mathematics and its Applications (6th Edition), McGraw Hill, 2007

K. Rosen, Discrete Mathematics and its Applications – Solutions Guide (6th Edition), McGraw Hill, 2007

References

N/A

Prerequisites by Topic



  • Ability to write small programs involving various control structures

  • Understand functions from a mathematical point of view

Major Topics Covered in the Course



  • Logic (3 hours)

  • Proof techniques (3 hours)

  • Correctness of algorithms using assertions (3 hours)

  • Relational databases (1 hour)

  • Sets (1 hour)

  • Relations and functions (5 hours)

  • Number theory (2 hours)

  • Algorithms and complexity (5 hours)

  • Counting (optional)

  • Recurrence relations (3 hours)

  • Graph theory (6 hours)

  • Trees (3 hours)

  • Boolean algebras (2 hours)

  • Circuits (optional)

  • Models of computation (14 hours)

    • Finite automata (should be able to apply to program)

    • Regular expressions

    • Non-determinism

    • Kleene’s theorem

    • Regular Grammars

    • BNF Grammars

  • Tests (7 hours)

Estimate Curriculum Category Content (Semester hours)

Area

Core

Advanced

Area

Core

Advanced

Algorithms

2.5




Software design







Data structures

0.5




Concepts of programming languages







Computer organization and architecture
















CSAB Content

1 hour of theory

1.5 hour algorithm analysis

1 hour algorithms

.5 hour data structures

COURSE DESCRIPTION



Department, Number

CIS 285

Course Title

Software Engineering Tools

Semester hours

3

Course Coordinator

Dr. Kiumi Akingbehin

Current Catalog Description

Coverage of various CASE tools, such as UML modeling and code generation tools, configuration management tools, defect management tools, an integrated development environment for coding and debugging, unit and testing tools, and build tools. Students will learn these tools in a laboratory environment. The course will be comprised of two lecture hours and one two-hour laboratory.

Textbooks

M. Fowler, UML Distilled (3rd Edition), AddisonWesley, 2004

A. Hunt and D. Thomas, Pragmatic Unit Testing in Java with JUnit, Pragmatic Bookshelf, 2003

A. Hunt and D. Thomas, Pragmatic Unit Testing in C# with NUnit (2nd Edition), Pragmatic Bookshelf, 2007

A. Hunt and D. Thomas, Pragmatic Version Control Using CVS (2nd Edition), Pragmatic Programmers, 2003

References

The Apache Ant Project, http://ant.apache.org/

Prerequisites by Topic



  • Fundamental of programming languages.

  • Analytical skill for problem analysis

  • Knowledge of data structure and algorithms

Major Topics Covered in the Course



  • Software lifecycle phases and associated tools (3 hours)

  • Software configuration management (6 hours)

  • Software defect management (3 hours)

  • Software build tools (make file, configure) (3 hours)

  • Software unit testing (6 hours)

  • Software test case management and system testing (3 hours)

  • Software requirements analysis and design artifacts

  • Requirements capture using use cases (3 hours)

  • Requirements analysis using activity diagrams (3 hours)

  • Fundamentals of objects and its relationships (3 hours)

  • Object interaction (3 hours)

  • State diagrams (3 hours)

  • Tests (2 hours)

Estimate Curriculum Category Content (Semester hours)

Area

Core

Advanced

Area

Core

Advanced

Algorithms







Software design







Data structures







Concepts of programming languages







Computer organization and architecture

















Estimate CSAB Category Content




CORE




ADVANCED







CORE




ADVANCED

Data Structures

0.0




0.5




Computer Organization and Architecture

0.0




0.5

Algorithms Software Design

0.0




1.5




Concepts of Programming Languages

0.0




0.0

COURSE DESCRIPTION



Department, Number

CIS 294

Course Title

Visual Basic Programming

Semester hours

3

Course Coordinator

Dr. Brahim Medjahed


Download 0.51 Mb.

Share with your friends:
  1   2   3   4   5   6   7




The database is protected by copyright ©ininet.org 2024
send message

    Main page