COMP 3382: Software Engineering II

Homework 2 (100 points)

Initial Iteration Due: Tuesday, July 12

Final Iteration Due: Tuesday, July 19


Reading for this assignment: Cheesman and Daniels Chapters 6-7


Please bring several copies of your initial iteration to class on the initial iteration due date. We will meet in small groups to discuss your initial iteration. Be prepared to discuss any problems you encountered. A hard copy of the initial iteration should be submitted to the instructor before class on the initial iteration due date. The initial iteration will account for 50% of the grade. You should make a reasonable attempt to answer every question.


A hard copy of the final iteration of this assignment should be submitted to the instructor before class on the final iteration due date. Please include a copy of Homework 1 with your final submission.


You should include explanations of any decisions you have made. These explanations may be included as UML comments within the diagrams or brief textual descriptions that accompany the diagrams. Make sure to present your models in a way that is clear to your customers (in this case, me!) and colleagues. If you are unsure of the content or format of any of the artifacts, consult your textbook.


  1. Component Interaction (Chapter 6)

    1. Using the system interfaces you created in Homework 1, tackle the process of discovering business operations. You should draw one or more interaction (communication) diagrams for each operation in your system interfaces. Also, create any data types that you will need for the business operations. (30 points)

    2. Create a diagram that summarizes your current system and business interfaces. Include operation signatures. Be sure to indicate which interfaces are system interfaces and which are business interfaces. (See Figures 6.14 and 6.15) (10 points)


  1. Component Specification (Chapter 7)

    1. For each of your interfaces (system and business) create an interface information model. Create interface specification diagrams to show this information. (See Figures 7.2 and 7.4). Write a brief description of any decisions or choices you have made. (15 points)

    2. Write OCL pre- and postconditions for your operation. (20 points)

    3. Write OCL invariants for the information interface types and associations. (10 points)

    4. Finally, for each component, create a component specification diagram that includes offered and used interfaces. Include any additional information (such as constraints on component instances) and constraints on offered and used interfaces. (See Figures 7.9 and 7.10.) (15 points)