SDA SE Wiki

Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering

User Tools

Site Tools


Assignment 2: Requirements Analysis

Please have a look at the slides from the UML lecture of the last OOSC to make sure that you have the required knowledge about UML. In case you didn't already do so, we strongly recommend to work on our Tutorial: Object Oriented Programming. You won't get any points for that, but we would expect that you will get difficulties in getting points for other tasks in the assignment or in the final exam, if you don't have a sound understanding of the basic OO concepts.

Introductory Remarks

All solutions should be presented in the file ReverseVendingMachine.jude in your group's repository (T01-T04 is means T04-T07, sorry). You need the Community Edition of Jude 5.4 to view and edit this file. We have chosen this tool because it offers all what we need, it is lightweight and it is free. You need to register to download it.

how to download jude

Task 4: Use Case Model

Complete the textual description of the following Use Cases and create a Use Case Diagram:

  • Returning Item
  • Generate Daily Report
  • Change Item
  • Item is stuck
  • Credit Customer Card

You find the flow of events of the first and a short description of the other use cases in the file ReverseVendingMachine.jude under T01 in your group's repository.

Task 5: Domain Object Model (Abbott's method)

Take the Use Case Model from Task 4 and create a class diagram that gathers the knowledge you can gain from the texts following Abbots's method as described in the lecture.

Task 6: Domain Object Model (Domain-Neutral Component)

Create a model of the domain following Peter Coad's approach described in the lecture, the first chapter of his book, or this comprehensive website. You can start from scratch or reuse your result of Task 5. Whatever you prefer. In any case make sure that you have a good understanding, why you choose which archetype for which class. Remember that not always all four archetypes are required. We looked up the colors for you. You can find them in the file ReverseVendingMachine.jude in your group's repository.

Compare the approaches from Russel J. Abbott (Task 5) and Peter Coad (Task 6) and tell us which one you would choose. Give us at least three arguments. [(Added later, therefore not required:) Before judging which one is “better” it would be interesting to characterize the differences in a few sentences.]

Task 7: Analysis Object Model OR Robustness Analysis

Create an Analysis Object Model for the whole system (List boundaries, controller, entities; And add arrows denoting which object talks to which object). OR Create a Robustness Diagram for the Returning item and Item is stuck use case together.

Task 8 (optional!): Sequence Diagram

In case you finished task 7 you can get additional points for creating a sequence diagram for the Returning item and Item is stuck use case. Part of this task is to derive some operations of the different analysis objects. Give a list of the operations you found.

teaching/lectures/atsc/2008/assignment_2.txt · Last modified: 2018/05/09 01:59 (external edit)

SEWiki, © 2020