130 likes | 222 Views
YAWP Phase 2. CS673 Software Engineering Craig Cato Grace Hopkins Dan Spuches. Where We Left Off on Phase1. Created our SPMP, SCMP, SQMP, and Proposal YAWP - Yet Another Weight Program Concept based on a spreadsheet. Defects to Date.
E N D
YAWP Phase 2 CS673 Software Engineering Craig Cato Grace Hopkins Dan Spuches
Where We Left Off on Phase1 • Created our SPMP, SCMP, SQMP, and Proposal • YAWP - Yet Another Weight Program • Concept based on a spreadsheet...
Defects to Date • Inspection results and feedback handled as defects... • 19 defects filed in Google Code issue tracking system • 6 SQAP (1 duplicate) • 3 SCMP • 6 SPMP • 4 Proposal • SQAP • Added metric for defects per document • Goal: No more than 15 defects per document
Requirements • Getting Started... • What we realized: • We have some screens/states. • The lines look like events
Requirements (continued) That gave us a high level state transition for the GUI. Yes there should be returning lines from all the boxes - if someone knows how to do this in ArgoUML please let us know how!!
Use Case • 2.2.1 "User Identification" use case • Actor: User of YAWP • Use case description: • User enters name to the system. • System determines if user has previously used the system and that their profile exists. • If profile can not be found System gets needed profile information from the User and creates a new profile. • 2.2.5 Set Preferences • Actor: User of YAWP • Use case description: • User selects the Set Preferences option. • System presents the Preferences window with fields for entering data. • User enters data in the fields. • User selects Save Data. • System Saves Data. • Settings take effect immediately.
GUI Models • Main Screen • Journal Screen • Eclipse WindowBuilderGUI layout and underlying code automatically generated
GUI Models (continued) • Preferences Window • (modeled for windows OS) • Microsoft Visio • Windows look and feel and no code generated
Applying Abbott's... • Yes this could be better - if someone knows how to do this in ArgoUML correctly please let us know how!!
More and More Requirements... • Functional • Create User • Enter Weights • Show Chart(s) • Enter Journal • Set Preferences • Save Data • Export Data • Change User • Set Data Entry View • Non-Functional • Reliability • YAWP will not fail more than once in 1000 weight entries • Portability & Availability • Run on any PC running Java 1.6 • Windows, Mac, Linux • Security • Future release may include user authentication • Maintainability • Modifying data • No more than 4 clicks of the mouse to modify a data entry • Preferences • Any data defined at user creation can be modified at the preferences screen
Numbering and Organizing • Each requirement is assigned an identifier • 3.2.XX.# • XX - GUI component • MW - Main Window • PW - Preference Window • JW - Journal Window • CW - Chart Window • EW - Enter Weights Window • ... • # - Requirement number
Priorities • 47 Requirements • 100 * [T - |T/3 – essential| - |T/3 – desirable| - |T/3 – optional|] / T • E = 38 D = 8 O = 1 T = 47 • 100 * [47 - |16 – 38| - | 16 – 8| - |16 – 1| ] / 47 • 100 * [47 – 22 – 8 – 15] / 47 • 100 * [2] / 47 = 4.26 % • 0 is the worst; 100 is the best. • Priorities Revisited • E= 29 D = 8 O = 10 T=47 • 100 * [47 - [|16 - 29| - |16 - 8| - |16 - 10|] / 47 • 100 * [47 - 13 - 8 - 6] / 47 = 42.56%
Questions? Thank You