Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness...

21
Robustness Analysis Dr. Neal CIS 480
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    218
  • download

    0

Transcript of Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness...

Page 1: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Robustness Analysis

Dr. Neal CIS 480

Page 2: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Outline

• What is robustness analysis?• Key roles in robustness analysis• Object types found in discovery• Diagramming rules• Where are the diagram and objects placed in the

model• Updates to the static model• Robustness check list• Example robustness analysis• Design following robustness

Page 3: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

What Is Robustness Analysis?

Bridge between analysis and design, helps define objects

participating in use cases

Page 4: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Key Roles in Robustness Analysis

• Robustness Analysis– Class Discovery - fine missing classes like

<<control>>, <<boundary>> and <<interface>> types– Completeness Check – walk through use case

scenarios and make sure all alternative paths are covered

– Sanity Check – does the use case specify behavior that is reasonable and able to be implemented

– Establishes Basis for Sequence Diagrams – quickly drawn and can identify issues prior to building sequence diagrams

Page 5: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Object Types Found in Discovery

External facingwindows, screens,dialogs, menus, in our example webpages.

Map to databasetables for persistent objects

Applicationlogic and processcontrol

Readerobject

Accessesdatabase

Tables (author)

Page 6: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Diagramming Rules

Page 7: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Where are the diagram and objects placed in the model

• Under the design model since we are moving to design

• Each robustness class diagram and discovered objects are placed in a folder under a named use case, since these objects are the elaboration (realization) of the use case

Page 8: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Per Use Case: Robustness Class Diagram Realize Dependency Object Sequence Diagram

Discovered classes: <<boundary>> and <<control>> types go here within their respective layer, new <<entity>> types need to be added to the domain diagram in the Analysis Model

Design Class Diagrams: Exist by <<layer>> and overall within the Solution Domain Model

Page 9: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Updates To The Static Domain Model

• If new entity objects are discovered then the static domain model must be updated

• Any attributes that were discovered as a part of the process must also be added to the static domain classes

Page 10: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Updates To The Static Domain Model

Page 11: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Completion Check List

Page 12: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Robustness Example

TheEyesHaveIt.com

“Register a Seller”

Page 13: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Use Case Diagram

Register a sellerSeller

(f rom Actors)

Register

<<communicate>>

Register a Seller

Page 14: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Use Case “Register a Seller”• Preconditions

– SELLER must not exist in system

• Use Case Description– Primary Flow:

• The SELLER is directed to a secure Web page.• The SELLER must enter a user name, password, address, telephone, and e-mail

address.• All data is is validated when the SELLER submits request.• The password should be entered twice to verify typing errors. the submit button.

– Alternate Flow:• The SELLER can cancel the registration process and return to the main page.

– Alternate Flow:• Data entered is not complete causing registration form to be redisplayed with errors

highlighted.– Alternate Flow:

• The SELLER has previously registered or a duplicate name exists causing the registration form to be redisplayed

• Postconditions– An entry for SELLER information is created in the database.– An new ACCOUNT is created for the SELLER.

Page 15: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

“Register a Seller” UI Prototype

Incomplete data or duplicate person

Page 16: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Robustness Analysis New Objects

• Potential design objects include:– Registration Page <<boundary>> web page for

seller registration– Registration Controller <<controller>> controller

object for managing the registration process – Submit Button <<boundary>> part of the registration

web page– Cancel Button <<boundary>> part of the registration

web page– Validation Controller <<controller>> controls the

process of data validation

Page 17: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Example Robustness Analysis

Validation Controller

Registration Controller

process registration

Account(f rom Business Domain Model)

create

SellerEntity(f rom Business Domain Model)

1

1

1

1

create

Submit Button

registration info

Cancel Button

Registration Page

highlight bad entries

displaysdisplays

cancel

IN: new registration from authentication pageOUT: processed registration to authentication pageOUT: cancel to main menu

Seller

(f rom Actors)

Enter Info

submit

Cancel

Page 18: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

Object Discovery

New objects discovered during robustness

analysis

Validation Controller

Registration Controller

process registration

Account(f rom Business Domain Model)

create

SellerEntity(f rom Business Domain Model)

1

1

1

1

create

Submit Button

registration info

Cancel Button

Registration Page

highlight bad entries

displaysdisplays

cancel

IN: new registration from authentication pageOUT: processed registration to authentication pageOUT: cancel to main menu

Seller

(f rom Actors)

Enter Info

submit

Cancel

Page 19: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

DesignClasses

Page 20: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

ObjectSequence

Page 21: Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness analysis Object types found in discovery Diagramming.

What does the code look like?

• https://bdnet.bus.cba.nau.edu/gln/robustness/App/Menu.aspx