Classes Sequence Diagrams and Triangulation Simple Class Diagram

  • Slides: 18
Download presentation
Classes, Sequence Diagrams and Triangulation

Classes, Sequence Diagrams and Triangulation

Simple Class Diagram

Simple Class Diagram

Relationship Between Layers Presentation (Use cases) Middle (Classes) Data (Entities)

Relationship Between Layers Presentation (Use cases) Middle (Classes) Data (Entities)

A Single Class name Attributes (Properties) Operations (Methods)

A Single Class name Attributes (Properties) Operations (Methods)

Starting from the Event Table Subject User Verb Views User Filters User Adds User

Starting from the Event Table Subject User Verb Views User Filters User Adds User Updates User Deletes System Validates Object Response Address List Addresses are listed by the system Address List Address list is filtered based on pattern Address is added to the system Address is updated on the system Address is deleted from the system Address data is accepted or error is displayed

Starting from the Scenario At the end of each year students have purchased a

Starting from the Scenario At the end of each year students have purchased a number of books that are surplus to requirements by the end of the year / course. In order to recycle the books and possibly make a little money a system is required allowing students to sell their books on to students following them on lower years. The application will be web based allowing students to access sales and account details at home. Students will sign up to the site providing contact details. Once authenticated on the system a student will be able to add books that they no longer require. Initially books will be viewable only to the student themselves. To sell on a book the student must take the book to the book shop on the ground floor of Gateway house. The book will be handed to the system administrator (Brenda) who will place the book into stock, provide a receipt for the student and then flag the book on the system as “in stock”. Now that the book is in stock it is visible to other students on the system who may reserve the book for collection. Once reserved the purchasing student must visit the book shop and pay for the book. They will be issued with the book along with a receipt or they have the option of cancelling the transaction if the book was not what they expected (wrong edition of poor condition). As soon as the transaction is completed the seller of the book is notified. They need to visit the bookshop to claim the money paid by the buyer. Identify the nouns

How do we find Associations? Subject Verb Object Response Consultant Inputs Card Data accepted

How do we find Associations? Subject Verb Object Response Consultant Inputs Card Data accepted by the system System Checks Card Identifying duplicates Consultant Updates Card New data input Clues may be found looking at subjects and Object

Multiplicity how many of one class may be used by another class

Multiplicity how many of one class may be used by another class

Composition (Has relationship) Can an order line exist without an order? Order 1 Has

Composition (Has relationship) Can an order line exist without an order? Order 1 Has 0. . * Order Line Attributes Operations No – so we indicate a strong relationship Order 1 Has 0. . * Order Line Attributes Operations

Aggregation (Uses relationship) Can an address exist without a customer? Customer 1 Uses 1.

Aggregation (Uses relationship) Can an address exist without a customer? Customer 1 Uses 1. . * Address Attributes Operations Yes - so we express this with a clear diamond Customer 1 Uses 1. . * Address Attributes Operations

Don’t Forget Collection Classes 1 Collection class allows you to manage many instances of

Don’t Forget Collection Classes 1 Collection class allows you to manage many instances of the item class A good starting point is to consider 1 table needs 2 classes to control it

Triangulation Class Designs Use Cases Sequence Diagram Not a simple linear process Things we

Triangulation Class Designs Use Cases Sequence Diagram Not a simple linear process Things we discover later shed light on what we thought we knew previously

The Use Case Diagram

The Use Case Diagram

The Class Diagram

The Class Diagram

First go at the Sequence Diagram Actors Objects Swim lines Messages

First go at the Sequence Diagram Actors Objects Swim lines Messages

Important Questions to Ask Do we have an actor on the use case that

Important Questions to Ask Do we have an actor on the use case that matches the sequence diagram? Yes! Do we have a class that allows us to create the Companies object? Yes! Do we have methods in the class that are able to handle the messages? Filter. By. Company. Name – yes Filter. By. Company. No - no

The Sequence Diagram Allows us to cross check our use cases and classes The

The Sequence Diagram Allows us to cross check our use cases and classes The smoke and mirrors prototype informs this process Need to think in terms of what objects support our use cases…

The Process Uncertain at first Discuss your products with each other Develop Individual Event

The Process Uncertain at first Discuss your products with each other Develop Individual Event Tables Draw up initial use cases class diagrams Sequence diagrams Do they triangulate?