ICSE 2001 Logo
ICSE 2001 LogoToronto Skyline Sponsor Logos

Welcome
Site Map
Lectures
Assignment 1
Due Wed, Sep 27
Assignment 2
Due Fri, Oct 20

Assignment 3
Due Tue, Nov 8

Assignment 4
Due Fri, Dec 1
Midterm
Fri, Oct 13

Final
Wed, Dec 13, 2-5 pm

Course description
Course outline
Course requirements
Grading
Policies

Marks
Architecture resources
Contact Us
About This Site
E-Mail URL to a Friend

Assignment 4

Due date

Friday, December 1, 2000

Objectives

  • Introduction to software architecture tools

  • Applying reverse engineering technology

  • Extracting software architecture

  • Keeping architecture and source code up-to-date and current

Instructions

A key objective for this course is to learn how to extract software architecture artifacts from the descriptions (i.e., code and documentation) of a subject software system and how to document software architecture effectively. In this assignment you are to analyze the Unix gawk utility (20-30 KLOC) using the Rigi reverse engineering environment.

You are to investigate gawk interactively using the analysis tools provided by Rigi through menus. Rigi accepts RSF (Rigi Standard Format) as input. gawk is a C program and it was parsed for you into RSF. The result of this investigation is a conceptual model of the architecture of gawk. This process involves building a subsystem hierarchy.

You are then to write RCL scripts, which automate the process you have just gone through manually using the Rigi menus. Given the RCL scripts the hierarchy of subsystems can be built repeatedly using one command even if the source code underneath the conceptual model changes. Finally, write a brief report that illustrates both the manual and automated process you have gone through.

The report is intended for third year computer science students. Thus, you can assume basic software engineering terms and knowledge.

As an additional requirement for this course, graduate students are expected to write more Tcl scripts than undergraduate students. In particular, graduate students are to compose more than one subsystem hierarchy and, hence, develop two sets of scripts which will lead to two different conceptual models.

Your report should address the following questions:

  • Describe the manual investigation of gawk.

  • Describe the design and implementation of the Tcl scripts in detail.

  • Briefly describe the architecture of gawk.

Hints

What to turn in

The report should be written as an HTML document. The length of the report, including diagrams and references, should not exceed 6 printed pages using a reasonable font size (i.e., 10-12 point for text and 14 point for headings).

Submit your assignment by e-mail to hausi@csr.uvic.ca.M



Site last updated: Friday, November 17, 2000 5:41 AM.