COMP 3382: Software Engineering II

Homework 1 (100 points total)

Initial Iteration Due: Tuesday, June 28

Final Iteration Due: Tuesday, July 5


Reading for this assignment: Cheesman and Daniels Chapters 4-5


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.


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.


Since we are using an iterative process, there is no “right” answer for this assignment. You will be free to modify your models as needed as we proceed with the process.


  1. Requirements Definition (Chapter 4)

    1. Choose a business process that will yield 3-4 use cases. You may choose something from your work or something that interests you. Draw an UML activity diagram representing this process. Also write a brief explanation of the process to clarify the activity diagram. (15 points)

    2. Create a Business Concept Model that depicts the terms used in the business process. Add any other terms you feel are necessary to clarify the problem domain. You will most likely need to revisit this model several times. (10 points)

    3. Identify responsibilities in your business process. Show these responsibilities by adding swim lanes to a copy of your activity diagram. (5 points)

    4. Identify use cases. Draw a use case diagram that shows these use cases. Use include, extend, and generalization relationships to clarify and simplify your diagram. Using the use case description format found in the textbook, write descriptions for each use case. (15 points)

  2. Component Identification (Chapter 5)

    1. Identify system interfaces and operations. (Remember to start with one system interface per use case.) Draw each initial system interface and its initial operations as an interface type (see Figure 5.4). In addition, write a brief description adding any clarifications that are needed and explaining any choices you have made. (15 points)

    2. Create a business type model. (Remember that the starting point for this model is the business concept model.) Refine your business type model by defining business rules and identifying core types. (15 points)

    3. Using a copy of your business type model, identify business interfaces and create an interface responsibility diagram. (Remember that the general rule is to create one business interface for each core type.) Make sure to show navigability for any inter-interface associations. (15 points)

    4. Create an initial component specification architecture. Include both system and business components and show dependencies between these components. (10 points)