Upload
kishore-gaurav
View
239
Download
0
Embed Size (px)
Citation preview
Robustness Analysis
By gaurav
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
What Is Robustness Analysis?
Bridge between analysis and design, helps define objects
participating in use cases
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
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)
Diagramming Rules
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
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
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
Updates To The Static Domain Model
Completion Check List
Robustness Example
TheEyesHaveIt.com“Register a Seller”
Use Case Diagram
Register a sellerSeller
(f rom Actors)
Register
<<communicate>>
Register a Seller
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.
“Register a Seller” UI Prototype
Incomplete data or duplicate person
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
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
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
DesignClasses
ObjectSequence