Comp 650
2024-05-04 15:42:33 UTC
Home
Lectures
Assignments
Tactics
UML
Queuing
Books
Web sites
 
Turnitin.com
Textbooks
Guidelines
Writing help
Plagiarism
 
Bulletin board
Contact
  Architecture documentation
ATTENTION! Weird thing about this project!

This project involves BOTH individual and group work. You will work on part 1 individually, and on parts two and three in a team of 1-3 people. Teams will form in or after the first class in week 1, and team membership can change through week 5.

Also, the subject matter of part 1 has nothing to do with the subject matter of parts 2 and 3. It is a warm-up to get you thinking about what works and what doesn't in architecture documentation.
END OF WEIRD THING

Points and due dates

1-1-1 avionics is worth 50 points and is due in week 2 (individual)

1-1-2 outline is worth 50 points and is due in week 3 (group)

1-1-3 documentation is worth 200 points and is due in week 7 (group)

Purpose

Practice the following important architecture skills:

  • Analyze forces in Architectural Business Cycle

  • Identify the styles and patterns of software architecture

  • Analyze the qualities of effective software architecture

  • Document an existing architecture effectively

Overview

The project has three parts:

  1. Brief assessment of the avionics system architecture description in the text book, due in week 2 and worth 50 points. This part aims to stimulate your thinking about what information is needed in an architecture description, using an example in the textbook. It is NOT directly related to any of the system choices. It is an INDIVIDUAL assignment.

  2. Your choice of system and an outline for your description of its architecture, due in week 3 and worth 50 points. You may choose any of the systems listed below. This is a group assignment.

  3. A description of the architecture of your chosen system, due in week 7 and worth 100 points.

Systems you can choose to document

  • Akamai

  • eBay

  • Eclipse platform (including plug-in architecture)

  • Microsoft Office

  • NEESGrid

  • Space shuttle avionics

Details

  1. The brief assessment, assignment 1-1-1, is described in the 650 online materials. You must answer the questions on the Week 1 assignment page. The "readings on Avionics systems" are Chapter 3, "A-7E Avionics System," in the textbook. Turn in an electronic copy to Turnitin, as described in the procedures for written assignments.

  2. The outline is intended to help you structure your paper. Your outline does not need to be incredibly detailed - you will probably not need more than one page. Things to keep in mind about the outline:

    • There is lots of architectural information on the web and in other sources such as the ACM Digital Library about your system. You will have to decide what to cover and what to skip.

    • Your outline should reflect the required elements of the finished paper (see #3 below)

    • Your outline is NOT binding on your finished paper. You may change your mind freely about how to organize your paper as you work on it. You can even change your mind about what system to document.

    • There's very little risk of plagiarism in these outlines, but I want you to submit them the same way as every other written assignment because I find the procedural consistency helpful.

  3. The paper should boil the architecture of your chosen system down to 5 - 10 pages, half pictures, and present it in the Bass/Clements/Kazman style we are studying in class. Required elements:

    • Your paper must include at least one view of each type as described by Bass, Clements, and Kazman. That is, you must include

      • At least one module view, which could be a
        • Decomposition structure
        • Uses structure
        • Layered structure
        • Class structure, often documented by UML class diagrams
      • At least one component and connector view, which could be a
        • Process structure, often documented by UML sequence diagrams or UML collaboration diagrams
        • Concurrency structure, often documented by UML activity diagrams
        • Shared-data structure, which could be documented by old-fashioned data flow diagrams
        • Client-server structure
      • At least one allocation view, which could be a
        • Deployment structure, often documented by UML deployment diagrams
        • Implementation structure, often documented by UML package diagrams
        • Work assignment structure
        • Resource budget
    • Your paper must present at least two quality attribute scenarios that capture qualities that are important to the system you have chosen.
    • For each of those scenarios, you must identify the tactics used in the architecture to achieve those qualities.
  4. Make sure you are familiar with the general information about written assignments.

  5. Rule of thumb for an ideal architecture document: it should be half pictures.

  6. The first team assignment (1-1-2) is due in week 3, so there isn't a lot of time to form teams. Sometimes people aren't able to find a team in time to do this assignment. If this happens to you, don't panic. Do an outline individually, and keep on looking for a team. You have until week 5 to join a team.

Turnitin.com assignment numbers and names

Number Name
1 1-1-1 avionics
1a Revision 1
2 1-1-2 outline
2a Revision 1
4 1-1-3 documentation
4a Revision 1

Notice the number gap between the outline and the paper. That is because assignments are numbered by due date, and there is another assignment (10-1) due between 1-1-2 and 1-1-3.