Robustness Analysis Dr. Neal CIS 480. Outline What is robustness analysis? Key roles in robustness...
-
date post
20-Dec-2015 -
Category
Documents
-
view
220 -
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/1.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/2.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/3.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/4.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/5.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/6.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/7.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/8.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/9.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/10.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/11.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/12.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/13.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/14.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/15.jpg)
“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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/16.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/17.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/18.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/19.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/20.jpg)
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.](https://reader035.fdocuments.us/reader035/viewer/2022062421/56649d445503460f94a2060c/html5/thumbnails/21.jpg)
What does the code look like?
• https://bdnet.bus.cba.nau.edu/gln/robustness/App/Menu.aspx