`

CS 878a

Software Evolution

 

Course Outline: Fall or Autumn 2005

 

Logistics and Instruction:

Venue & Time: MC 316, Tu: 11.30-12.30pm; Th: 12.30-2.30pm;

                           

Name

Email/Office

Office Hours

Prof. Nazim H. Madhavji (Instructor)

MC 381

Anytime, anywhere

 

Course description: click here.

 

Important Announcements

NEW or

RECENT

Date

Description

20-Oct-05

·        Lecture Notes: click here

·        Check also for any new resources

                                                           

13-Sep-05

·        Noteworthy points: click here

26-Sep-05

·        Class presentation topics: click here                                                           

 

 

 

 

Course Description

Unlike most engineering artifacts, such as bridges, building, automobiles, etc., a software system, following its release for use for the first time, generally needs to be “evolved” on an on-going basis in order to maintain user satisfaction over time. This, evolution, phase of a software system constitutes anywhere from 60-80% of the total cost of a software system over its life. It is also considered more difficult to evolve a system than to build it initially.

 

In this seminar-style course, students will learn material primarily from published and other literature through reading (ahead of the class time) and in-class presentations and discussions. Selected readings will form a basis for in-class assessment through oral questions and answers. Also, there shall be a class project, in teams, where many versions of selected software systems will be analysed to understand properties of their evolution and interpret their implications.

 

 

Prerequisites

  • Undergraduate level Software Engineering courses (e.g., design, architectures, testing, requirements analysis, project work, etc.); basic statistical knowledge, including metrics. If in doubt, please ask the instructor.
  • Proficiency in programming languages such as C, C++ and Java; Unix; UML, and related modelling tools (e.g., Rational Rose). One who is lacking proficiency in one or more of these and still wants to take this course will be expected to learn it on his or her own through appropriate resources.

 

Individual Class Presentations

Each individual in the class will read assigned literature and present it in the class using powerpoint slides. The number of presentations will depend on the class size. The presentation topics and detailed evaluation criteria are described separately.

 

 

Team Project

The class will be divided into one or more project teams. Each team will typically analyse open (or if available, closed, significant) source software systems of their choosing from an evolutionary perspective. Any scholarly perspective (e.g., system size growth, architectural degradation, complexity measure, etc.) is acceptable. Alternate proposal will be considered. The team will submit a proposal, periodic progress presentations and discussions in the class, final presentation and project documentation and any software deliverable. Project requirements are described separately.

 

Back to the top of the document.

Student Evaluation

  • In-class presentations of literature.
  • Team project.
  • There is no midterm or final exam.
  • If for any reason any evaluation component tabulated below cannot be adhered to by the instructors, the rest of the marks will be prorated.

 

Component

Wt.

Configuration

Dates

In-class presentation

40%

Individual

As per the schedule

Project: analysis of systems**

60%

Team work

Whole term*

* The precise date will be set following discussions in the class.

** The project description will be given in the class.

   

Email Contact

Please submit your departmental email address to the instructor. We may need to send email messages to the whole class, or to students individually. You must make sure that you read your email on a frequent and regular basis, or have it forwarded to an alternative email address if you prefer to read it there. Negative consequences arising out of failure to read an email will not be excused.