Engr 692-06: Special Topics in Engineering Science
(Software Families)
Fall 2007
Syllabus


Locations

The Fall 2007 class meets in Weir 235 from 8:00 until 9:15 on Tuesday and Thursday.

The class is taught by Prof. Conrad Cunningham, whose office is 203 Weir Hall. Prof. Cunningham's official office hours for this session are 10:00 a.m. to Noon on Wednesday or by appointment at other times.

Prof. Cunningham's voice telephone number is (662) 915-5358 and fax number is (662) 915-5623. His WWW home page is http://www.cs.olemiss.edu/~hcc/ and his email address is cunningham@cs.olemiss.edu (send?).

The WWW home page for this class is http://www.cs.olemiss.edu/~hcc/engr692fam/ .

The final examination for this class is scheduled for 8:00 a.m. on Tuesday, 4 December 2007.


Student Disabilities Services Statement

"It is the responsibility of any student with a disability who requests a reasonable accommodation to contact the Office of Disability Services (915-7128). Contact will then be made by that office through the student to the instructor of this class. The instructor will then be happy to work with the student so that a reasonable accommodation of any disability can be made."


Course Objectives

Upon completion of the course, the students should:

  1. understand the software engineering concepts of information hiding, abstract interfaces, design by contract, modularization, and software families (in particular software frameworks),
  2. be able to understand and apply software frameworks developed by others,
  3. know the basic domain and commonality/variability analysis techniques needed for development of software families,
  4. be able to design and implement software frameworks (i.e., families) using contemporary object-oriented programming languages such as Java or Scala and appropriate design patterns.


Course Description

This course will examine concepts, techniques, and tools for the analysis, design, and implementation of software families (e.g., software frameworks and software product lines) and other generic programming artifacts.


Prerequisites

This class is intended for students admitted in full standing to the graduate program of the Department of Computer and Information Science. Students are expected to have a background in object-oriented programming, algorithms, data structures, and programming languages similar to the undergraduate courses CSCI 111, 112, 211, 433, and 450. Students are expected to have a mature understanding of data abstraction, inheritance, polymorphism, composition, and other object-oriented concepts.

Graduate students in other fields should not be enrolled in this class without the explicit permission of the instructor and of their department. Any students in this category are expected to provide the instructor with a note from their advisor or department chair indicating such permission.


Source Materials

Readings:
Journal and conference articles, research reports, and other materials as appropriate. These will be listed on the lecture notes page on the Web site.


Course Topics

The actual topics and their order will be refined as the semester progresses.


Professional Conduct

As a student in Engr 692, you are expected to conduct yourself in a professional manner according to the Honor Code of the School of Engineering, the Information Technology Appropriate Use Policy, the M Book, and any other relevant policies.

Unless otherwise stated explicitly for an assignment, all assignments and projects in this class are covered by the School of Engineering's Honor Code statement on plagiarism. It is plagiarism "to knowingly deceive, copy, paraphrase, or otherwise misrepresent your work in a manner inconsistent with professional conduct".


Grading

The grading scale is A [90..100], B [80..90), C [70..80), D [60..70), and F [0..60).

Credit toward the semester grade will be allocated to each of the components as follows:

Presentations/Homeworks/Projects 50%
Examinations and quizzes 50%


Assignments


Examinations


[ ENGR 692 Home ]


Send any comments or suggestions to Prof. Conrad Cunningham, cunningham@cs.olemiss.edu.
Copyright © 2007, H. Conrad Cunningham
Last modified: 21 August 2007