Department and Course Number

CEG 461

Course Coordinator Francis Quek
Course Title

Operating Systems

Total Credits 4

Catalog Description

Study of object-oriented design and programming. Programming topics emphasize the core concepts of encapsulation, inheritance, polymorphism, and dynamic binding. Additional topics include class organization, software maintenance, and design of reusable components. There is a project to be implemented in a modern object-oriented language such as C++, Eiffel, or Ada 95. Prerequisites: CEG 460.

Text Books

  1. Kayshav Dattatri, C++: Effective Object-Oriented Software Construction, Prentice Hall; ISBN: 0131041185, 1997
  2. Douglas A. Young, X Window System, The: Programming and Applications with Xt, OSF/Motif, Prentice Hall, ISBN: 0131238035, 1994

Home Page

www.cs.wright.edu/people/faculty/quek 

Course Goals

The student should have learned the following:

  1. The object-oriented programming paradigm.
  2. Reuse mechanisms in object-oriented languages.
  3. Requirement specifications and use cases.
  4. Object-oriented analysis and design methodologies.
  5. Design patterns.

The student should be able to apply the concepts above to the following:

  1. Communicate with clients and problem domain experts.
  2. Produce formal requirement specifications.
  3. Design object-oriented solutions
  4. Devise incremental/iterative implementation and testing strategies.
  5. Organize and contribute to team programming projects.

Prerequisites by Topic

  1. Fluency in C/C++
  2. Comfortable as a Unix user.
  3. Data structures: Stacks, Lists, and trees.
  4. The software lifecycle, requirements, specs, design and analysis

Major Topics Covered in the Course

Wk

Topic

Text

Ch

1

Introduction

Dattatri

1

2

Data Abstraction

Dattatri

2-3

3

Data Abstraction

Dattatri

2-3

4

Introduction-to-X

Young

1

5

C++-&-X/Motif

Young

2

6

Mid-Term, Initialization & Garbage-Collection

Dattatri

4

7

Initialization & Garbage-Collection, Inheritance

Dattatri

4

8

Multiple-Inheritance

Dattatri

6

9

Selective-Exports

Dattatri

7

10

Operator-Overloading, Generic-Types

Dattatri

8, 9

Laboratory Projects

There are programming assignments.

Estimate CSAB Category Content

Core Advanced Core Advanced
Data Structures   0.5 Concepts of PL   1.5
Algorithms   Comp Organization + Architecture    
Software Design   2.0 Other  

Oral and Written Communications

There are no oral presentations.  Students submit source code of their projects along with a "ReadMe", a text file that highlights the design details as well as problems and defects in their program.  We do not claim that the ReadMe.txt constitutes written communications.

Social and Ethical Issues

None.

Theoretical Content

None.

Problem Analysis

Detailed analyses of the requirements of the project, e.g., a GUI component, are performed by the student before implementing them.

Solution Design

The projects are about GUI etc. reduced in size and sophistication to fit a 10-week course.  Skeletal solutions of the project are given by the instructor at the conceptual level in the lectures. The student needs to design further details and implement them.