Home
GaTT - Software Design Specification
Contents
1. 4 1 3 Component Processing Detail 11 GaTT Software Design Specification read dropbox input username Input was none retum must choose a user message nput was usemame y record primaryGroup D grouplD in UserTBL for usemame return message of success 4 2 Description of Add User This component will allow the current user to add a user object to the system The newly created user object will be assigned to a group All users must be assigned to a group for security 4 2 1 Processing Narrative A user wishes to add a user object to the list of user objects In order to do this the user has to have been authenticated and authorized The user must go to the User Management tab on the main screen and click the button Add User The user then fills in required and optional information described in the interface description below 4 2 2 Interface Description The Add User function is activated when the current user clicks on the Add User button located in the User Management tab on the main screen When this button is selected the following interface will be visible on the screen There will be text boxes for the Login Name and User Name The Login Name is the name that the user will use to log in to the system The User Name is the name that the program will use to refer to the user For example a Login Name could be jdoe while a User Name might be Jane Doe There will also be a text box to specify the p
2. I l 1 I 1 information 1 1 I i I 1 1 1 I L 1 1 1 1 i i 1 I I 1 1 1 I I 14 Retum the Report Type 1 i l 1 i A EE La dled 3 l eq usd E 3 4 lt 1 Prompt User for User Name la User enters User Name 92 5 Sequence Diagrams GaTT Software Design Specification View Object Item Sequence Diagram The user wants to view an object in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 93 GaTT Software Design Specification w ALL 3 i 3 cio a i a a M i c c o PP mm a 4 ol 1 Prompt User for User Name 94 5 Sequence Diagrams GaTT Software Design Specification View Object Item List Sequence Diagram The user wants to view all the objects of a specific type in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 95 GaTT Software Design Specification 1 Prompt User for User Name 12 User enters User Name 19 Search for specific Object Type 10 Return List of Object Items I l l 11 Prompt User with List of Object Items 5 Sequente Diagrams 6 User interface Design 6 1 Description of the user interface 6 1 1 Watches ES New Menu Form _
3. 4 22 1 Processing Narrative 51 GaTT Software Design Specification Access Privileges from GroupTBL Does user have view privileges Yes Access WatchlD Title and Description from all Watch Items in TrackedObjectTBL Create list with information WatchlD Title and Description Display form with list and view add and delete buttons 4 23 Description of View Watch Object This component will allow a user to view the details of a Watch Item that is currently in the system 4 22 3 Component Processing Detail 52 GaTT Software Design Specification 4 23 1 Processing Narrative A user wishes to view the details of a Watch Item currently in the database In order to do this the user has to have been authenticated and authorized Next the user will click on the Watch Tab A list will then be given to the user of all the Watch Items The user will then highlight an item to view and click on the View button 4 23 2 Interface Description On the Watch tab a list will be given of the Watch Items The user will click on an item to highlight it and then click on the View button 4 23 3 Component Processing Detail 4 23 3 1 Algorithmic Model In WatchID from selection Out form that contains the details of the Watch Item ViewWatchList ObjectType This algorithm is described in the View Watch List component description Submit In WatchID from selection Out Form with Watch Object details On Error
4. I 1 8 7 User prompted to select a specific object 12 User highlights object item then clicks on the View button 12 User enters User Name 1 Prompt User for User Name 80 5 Sequence Diagrams GaTT Software Design Specification Delete Object Item Sequence Diagram The user wants to delete an object in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 81 GaTT Software Design Specification I l i 1 for User Name 1 i I I I l l l l I I I I i l t I sword i I I i invalid User l I i I I I 9 Search for specific Object Type ee nas I I I 11 Prompt User with List of Object Items I 12 User highlights an Object kem and clicks on the Delete button I I l I I 13 Prompt user to confirm delete 14 User dicks on Delete to Confirm 82 5 Sequence Diagrams GaTT Software Design Specification Email to Assigned To Person Sequence Diagram The user wants to send an email to the person in charge of a specific item in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 83 GaTT Software Design Specification I L I I I
5. 1 1 I I 14 Retum the Report Type 1 i l 1 i A EE La dled 3 l eq usd E 3 4 lt 1 Prompt User for User Name la User enters User Name 74 5 Sequence Diagrams GaTT Software Design Specification Attach External Object Sequence Diagram The user wants to attach an external object to an item in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 75 GaTT Software Design Specification 1 i 1 i i i i i I i i i i i i i I I 1 i 1 I l 1 i i 1 L i I i 1 1 I 1 1 1 1 i I 1 1 I i 1 I 1 1 i i i i 1 1 13 Search for the object Rem i 14 Return the object item and al its information I 1 1 i i i i A 1 i 1 11 Prompt User with List of Object Items 15 Prompt User with Object Item Information B User chooses Object 12 User highlights object item then clicks on the View button 12 User enters User Name o lt 1 Prompt User for User Name HH IN 2 HE P F I y 18 User highighes the link object and clicks the ok button 19 Update the Link Object field for the Object Item i 76 5 Sequence Diagrams GaTT Software Design Specification Authenticate User Sequence Diagram The user wants log into th
6. Gatt s a Tracking Tool GaTT Software Design Specification Build Version 3 built on Date 2005 11 11 01 22 10 0500 Fri 11 Nov 2005 Prepared for BC BSM by TeamBC GaTT Software Design Specification Table of Contents D HOCH P El 1 1 T Goals and obJectiVes oe ei etre o Ee e eA Ee ue e RE EN TREES 1 1 2 Statement of CODE iii lili ERE DM Ie i Dedi lace ER EP REEF Ee circos io 1 i MS ES TOI RR SR COME TOTO 1 1 4 Expected software respOnse cccecscccesscesencecseeceseceesaeceeaeceeaeecaeeesaecseaaeceaceceeneeceeeeesaecseaaeneaaeceeneeaes 2 AA 3 Qe le Data Str ctutes s cocer eere te ete ort o pe RO t Ei E RR TS 3 2 2 Database d scription nenori e ene Pe DE RR ERREUR NEUE N E YS ES E RRTS 3 3 Architectural Desigins EE 8 3 1 Program Str ctute 5 od Unai da encre eee e eet decet EYE Ceo e a 8 3 121 Architectural Diagram oe oov a rr OIM ORE EE SHEER 8 4 Component Level Desig 5 ee eet eos one en sa eva pa scoscsveceouessdsensdeedsoseveconseseadssssbecsencessseenesdeossts Soss SEES soos see 9 4 1 Description of Add Group o tenere tre e etie ite eere erro T ve ee BEA 9 2 1 1 Processing Narrative soe Den Ete ete EHE ERE ER E SE csi 9 4 1 2 Interface Description aa INCEST RA TRE ERE 9 4 1 3 Component Processing Detail sss enne enne
7. In All from above Out message validate inputs On Error send message of failure and exit the routine record to WatchesTBL Originator cmpolssueNum record to TrackedObjectTBL ShortDesc LongDesc CreateDat record to TrackedObjectTBL gt Type AssignedTo SystemArea BusinessSegment BusinessOwner record to WatchesTBL CriticalPathItem record to WatchesTBL recommendation if no errors occurred 4 27 2 Interface Description 61 GaTT Software Design Specification send message of success 4 27 3 2 Activity diagram for Modify Watch Module display SystemAreas in a dropbox with caption this WatchlD s SystemArea CriticalPathitem true Cs set checkbox checked CriticalPathltem false A set checkbox unchecked E access WatchesTBL for Recommendation display Recommendation in textbox e 4 27 3 Component Processing Detail 62 GaTT Software Design Specification 4 28 Description of Modify Inventory Object This component will allow a user to modify an inventory object that is in the inventory list 4 28 1 Processing Narrative A user wishes to modify an inventory object in the inventory list The user must be authenticated and authorized to do so To get to the inventory window the user must select the inventory tab on the main screen There will be a command button called modify inventory This will take the user to the modify inventory interface described below 4 28
8. In selection Out message This algorithm is described in the Modify Group component Delete In selection Out message This algorithm is described in the Delete Group component 4 4 Description of View User List This component will allow the current user to view a list of all the user objects currently stored in the system 4 4 1 Processing Narrative The current user wishes to view the list of groups In order to do this the user has to have been authenticated and authorized The user must go to the User Management tab on the main screen and select the View User List button The user then fills in required and optional information described in the interface description below 4 4 2 Interface Description The View User List function is activated when the user clicks on the View User List button located in the User Management tab on the main screen When this button is selected the following interface will be visible on the screen A list will be displayed containing for each user on the list the User Name the Login Name and the name of the group There will be a way to select an entry in this list There will be three command buttons one to view the details of the selected entry one to modify it and one to delete it If the current user does not have the correct privilege for one of the buttons that button will be disabled 4 3 2 Interface Description 14 GaTT Software Design Specification 4 4 3 Component Processi
9. NewValue newvalu UserName usernam Populate List with the following information FieldName OldValue NewValue UserNam if errors occurred send message of failure and exit the routine if no errors occurred return screen to login page of tracking tool 4 18 Description of Change Log for Inventory Item 42 GaTT Software Design Specification 4 18 3 2 Activity diagram for the Change Log for an Inventory Item Module 4 18 3 Component Processing Detail 43 GaTT Software Design Specification Access from ChangesetsTBL fieldName where POID value ItemiD Access from ChangesetsTBL oldValue where POID value ItemlD Access from ChangesetsTBL newValue where POID valuezltemlD Access from ModifiedByTBL ulD where POID valuezItemlD Access from UserTBL userName where uid valuezuid Create List with information FieldName OldValue NewValue UserName Return Message of success e 4 18 3 Component Processing Detail 44 GaTT Software Design Specification 4 19 Description of Email to the Assigned To Person of Watch List Item This component will allow the user to email a watch list item and details to a user 4 19 1 Processing Narrative A user wishes to email to the person assigned to a watch list item First the user must be logged on to the tracking tool On the Watch List Item form the user will click the Email button The user will be given a list of names of people
10. and the business owner There will be a recommendations text box All of these things are editable There will be a cancel command button that will enable the user to cancel the process of modifying a watch item at any time There will be a save button that will save the changes to the database 4 27 3 Component Processing Detail 4 27 3 1 Algorithmic Model In WatchID In Originator CreateDate ShortDesc LongDesc In Type AssignedTo In CriticalPathItem true fals In cpmolssueNum Recommendation In SystemArea BusinessSegment BusinessOwner Out message of success or message of failure ModifyWatch In WatchID On Error send message of failure and exit the routine lookup from WatchesTBL Originator cmpolssueNum lookup from TrackedObjectTBL gt ShortDesc LongDesc CreateDat Display Originator cmpolssueNum ShortDesc LongDesc CreateDate in text boxes For each ID in the TrackedObjectTBL populate a separate list for each of the following Type caption this WatchId s type AssignedTo caption this WatchID s AssignedTo SystemArea caption this WatchID s SystemArea BusinessSegment caption this WatchID s BusinessSegment BusinessOwner caption this WatchID s BusinessOwner lookup from WatchesTBL CriticalPathItem Recommendation if CriticalPathItem true set the corresponding checkbox control to checked else set it to unchecked populate a text box with Recommendation Save
11. caption this DesignID s BusinessOwner for each ID in the DesignTBL populate a separate list for each of the following ApplicationSystem TechnologyUsed Save In All from above Out message validate inputs On Error send message of failure and exit the routine record to TrackedObjectTBL DateCreated ShortDesc LongDesc record to DesignTBL gt Release PlannedDraftDate ActualDraftDate PlannedInternalReviewDate ActuallnternalReviewDate PlannedBusinessReviewDate ActualBusinessReviewDate PlannedQualityReviewDate ActualQualityReviewDate record to TrackedObjectTBL gt Type AssignedTo Team BusinessSegment SystemArea BusinessOwner record to DesignTBL gt ApplicationSystem TechnologyUsed if no errors occurred send message of success 4 28 3 2 Activity diagram for Modify Inventory Module 4 28 3 Component Processing Detail 64 GaTT Software Design Specification display aDraft alnternalReview aBusinessReview aActualReview in text boxes display Types in a dropbox with caption this DesignlD s Type display AssignedTos in a dropbox with caption this DesianID s AssignTo display Teams in a dropbox with caption this DesignID s Team display SystemAreas in a dropbox with caption this DesignID s SystemArea display BusinessOwners in a dropbox with caption this DesignlD s BusinessOwner access DesignTBL for ApplicationSystem TechnologyUsed display all ApplicationSystem items and a
12. the user must be on the main page of the tracking tool The user must click on the button labeled Log Off The user will be offically logged off of the tracking tool and must re enter their username and password to use the tool again 4 13 2 Interface Description This component will be a button named Log Off It will be located on the main page of the tracking tool 4 12 3 Component Processing Detail 31 GaTT Software Design Specification 4 13 3 Component Processing Detail 4 13 3 1 Algorithmic Model In Name In Password Out Name Out Password Out Login Screen or message of failure Submit In Name Password Out message and login Screen On Error send message of failure and exit th lookup from UserTBL where UserName value Name ID uId Add to LoginsTBL uId Value ID Add to LoginsTBL Date Value CurentDat Name Password if errors occurred send message of failure and exit th if no errors occurred return screen to login page of tracking tool 4 13 3 2 Activity diagram for the LogOut Module 4 13 3 Component Processing Detail 32 GaTT Software Design Specification Access UserTBL for UserName associated with UID Create record in LoginsTBL UID Date Set UserName and Password to Empty retum success message login screen 4 14 Description of Internal Link to an Object This component will allow the user to link an internal object to th
13. 04 05 00 48 21 by jgranz added id to end of Item for Change Log Algorithm e 11 04 05 00 39 33 by jgranz Correct spelling errors e 11 03 05 23 03 34 by jgranz Added Inventory and Watch View Oject and View List e 11 03 05 21 32 29 by gsymons got rid of more latin 1 characters e 11 03 05 21 20 13 by jgranz Added Linking Change Log Use Case Stories amp Modified Email To Use Case Stories e 11 03 05 21 10 41 by gsymons fixed latin 1 characters e 11 03 05 01 22 12 by arhedges No comment e 11 02 05 23 35 47 by jgranz Added both Email Use Cases e 11 02 05 21 42 26 by arhedges No comment e 11 02 05 21 29 49 by jgranz Added LogOut Module e 11 02 05 15 23 46 by arhedges fix some typos e 11 02 05 15 00 53 by arhedges No comment e 11 02 05 10 30 30 by smithswe Changed page formatting e 11 02 05 01 19 00 by arhedges No comment e 11 02 05 01 16 41 by arhedges No comment e 11 02 05 00 03 38 by jgranz changed quotation marks 11 01 05 20 57 50 by arhedges fixed smart quotes 11 01 05 01 57 18 by arhedges No comment 11 01 05 01 40 47 by arhedges No comment 11 01 05 01 04 25 by arhedges No comment 11 01 05 01 01 51 by arhedges No comment 11 01 05 00 49 40 by arhedges No comment e 10 31 05 13 50 00 by arhedges No comment e 10 30 05 23 55 38 by arhedges No comment e 10 30 05 23 43 04 by arhedges No comment e 10 30 05 20 01 13 by arhedges No comment
14. 19 37 58 by smithswe No comment e 10 17 05 21 46 02 by gsymons No comment 12 3 23 Changes for page ReportingModule e 11 03 05 18 57 39 by gsymons No comment e 11 03 05 18 56 38 by gsymons No comment e 11 01 05 15 07 05 by smithswe standardized page layout format e 10 20 05 19 55 20 by arhedges No comment 10 20 05 01 06 11 by gsymons Fixed spelling Again e 10 20 05 01 05 42 by gsymons Fixed spelling e 10 12 05 18 38 24 by smithswe Defined the reporting module 12 3 24 Changes for page UserStories e 11 03 05 23 12 57 by gsymons fixed header and cut project glossary from it e 10 25 05 19 36 06 by smithswe No comment e 10 20 05 19 57 55 by arhedges No comment e 10 17 05 22 20 49 by gsymons No comment 12 3 25 Changes for page TheCustomer e 11 01 05 14 55 38 by smithswe No comment e 10 25 05 16 13 30 by smithswe No comment 10 25 05 1 12 3 22 Changes for page ProjectVelocity 127
15. 62 deleting visio drawing and putting jpg pictures instead 11 04 05 03 13 14 by jgranz Changeset 63 jpg versions of the activity diagrams 11 04 05 03 16 35 by jgranz Changeset 64 had misspelling in image 11 04 05 03 51 41 by jgranz Changeset 65 corrected spelling 11 04 05 03 52 39 by jgranz Changeset 66 adding sequence diagrams 11 04 05 04 10 45 by jgranz Changeset 67 add sequence diagram 11 04 05 04 26 56 by jgranz Changeset 69 11 06 05 19 34 38 by smithswe Changeset 70 Resized the images to 680 pixels wide so they don t get cropped by HTMLDOC Also a windows Thumbs database maded it into the repository somehow It s gone now 11 07 05 02 51 44 by gsymons Changeset 72 Added Id to svn keywords for the html files 11 07 05 03 17 55 by gsymons Changeset 73 Autogenerated documentation commit 11 07 05 03 20 38 by Changeset 74 Autogenerated documentation commit 11 07 05 03 21 17 by Changeset 75 add diagrams 11 07 05 23 47 26 by arhedges Changeset 76 Added use case map and diagram to repository 11 08 05 17 08 48 by gsymons Changeset 77 resized images 11 08 05 17 37 19 by gsymons Changeset 79 Autogenerated documentation commit 11 08 05 20 24 02 by Changeset 82 Autogenerated documentation commit 11 08 05 20 33 14 by Changeset 83 Added completion chart to repository 11 08 05 20 45 31 by gsymons 12 3 Changes for Build 1 12 3 1 Changes for page ProjectOverv
16. EG EIER RE ES ir eoe cas 116 10 12 Project Watches cs a e ete te ee e FER obe vH EI Ree Er Ae ER eios 116 10 13 Project Velocity iie race oet eer He ORE REOR a Y GERE ARR eae 116 10 14 Reporting Module eee eh a BL aic edi eres 116 10 15 USES ONES o ioo esee ertet de tert re eee TALA de eere dte D dede Leda nequa 117 TOTO Phe C UStOTIEE dt rR ce AN ES 117 10 16 1 Blue Cross Blue Shield of Michigan esee enne 117 10 16 2 Primary Customer Contact sesno iee oe e o EEE TEE EEE E ete trennen 117 1017The TED iii ER e Etre pn HP een ea aaa a e a aaea 117 LOADS UU Ser Grop A era a A ee dye EA Ee EA A tada 118 AAA O EER 119 AO 120 12 1 Changes tot Build 3 inrer eee er er PO pin RYE P eds 120 12 1 1 Changes for page DataDesign sessi enhn 120 12 1 2 Changes for page ComponentLevelDesign eese 120 12 1 3 Changes for page SequenceDiagrams essesseseseeeeeeeenee eene 120 12 1 4 Changes for page UserInterfaceDesign eese 120 12 1 5 Changes for page TestinglIssues sssssseseeseeeeeeeeee enne ener enne enne 120 12 1 6 Changes for page AppendicesSection sese nennen 120 12 1 7 Changes to documentation repository 1teMS ee eeeeeeseeeseecesceeeeeeceeeeesseceeaeceeaeceeaeeetaees 120 12 2 Changes for Build De 5 ire eter P s PERSE EUER REUS MESSA EARS ERAN EE PS Ee sabe 121 12 2 1 Changes to documentatio
17. Group List The user can select a group from the list and select View Details From this screen there will also be a Delete command button 4 9 2 Interface Description When a Delete button is selected for a group the following interface will be visible on the screen A confirmation message box will appear on the screen If the user selects Yes the group will be deleted If the user selects No nothing will happen 4 9 3 Component Processing Detail 4 8 3 Component Processing Detail 26 GaTT Software Design Specification 4 9 3 1 Algorithmic Model In Delete yes no Out message of success or message of failure Yes Out message On Error send message of failure and exit the routine for each user in UserTBL that has PrimaryGroupId GroupId record to UserTBL gt PrimaryGroupId default clear the record out of the GroupTBL if no errors occurred send message of success do nothing 4 9 3 2 Activity diagram DeleteGroup display confirmation in popup message choices yes no Input is yes record primaryGrouplD defaultlD for all userlDs that have primaryGrouplD this grouplD clear the record for this grouplD out of GroupTBL return message of success 4 10 Description of Delete User This component will allow the current user to delete a user object from the system 4 10 1 Processing Narrative The current user wishes to delete a user object from the program In order to do this the
18. I j I I I I L I I I L I j l I I I L j L I L j j j I L I I I I I I L j L I I l I I I I i U I I H User Name or password are invalid User l I 1 11 Prompt User with List of Object Items 14 Retum the object item and all lts information 13 Search for the object item 15 Prompt User with Object Item Information 12 User highlights object item then clicks on the View button 84 5 Sequence Diagrams GaTT Software Design Specification Link Internal Object Sequence Diagram The user wants to link an internal object to an item in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 85 GaTT Software Design Specification i i 1 i i i i i I i i i i l i i i I 1 i 1 I 1 i i 1 L i I i i i I 1 1 1 1 i I 1 1 I i i I 1 I i i i i 1 1 I 1 13 Search for the object tem i 14 Return the object item and al its information I 1 1 i i i i e 1 i 1 i 1 i 1 1 i i I i 16 User clicks the Link Internal Object button 17 Prompt user with list of possible objects to link 11 Prompt User with
19. Link Module 4 15 1 Processing Narrative 36 GaTT Software Design Specification Access HyperLink List Create List of all Hyperlinks found Set LinkURL Selection value Add to ExternalLinkTBL record ItemlD LinkURL Return Message of success 4 16 Description of Add Attachement to an Item This component will allow the user to attach a file to the object type item 4 15 3 Component Processing Detail 37 GaTT Software Design Specification 4 16 1 Processing Narrative A user wishes to attach a file to an object type item First the user must be logged on to the tracking tool On the Oject Type Item form the user will click the Add Attachment button The user will be given a list of files to attach to the item The user will select a file and click the OK button 4 16 2 Interface Description This component will be a button named Add Attachment on the Item Screen 4 16 3 Component Processing Detail 4 16 3 1 Algorithmic Model In ItemID Out message of success or failure Submit In ItemID Out message of success or failure On Error send message of failure and exit the routine Populate a drop down list prompt with the following information File Names Ok In SelectedFile Out data Out MimeType copy selectedFile data to data copy selectedFile MimeType to MimeType return data and MimeType Add to AttachmentTBL record ItemID data MimeType if errors occurred send message of
20. List of Object Items 15 Prompt User with Object Item Information I 18 User hightigits the link object and clicks the ok button B User chooses Object 12 User highlights object item then clicks on the View button 12 User enters User Name AS 1 Prompt User for User Name Uu 19 Update the Link Object field for the Object Item 86 5 Sequence Diagrams GaTT Software Design Specification Link External Object Sequence Diagram The user wants to link an external object to an item in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 87 GaTT Software Design Specification i i 1 i i i i i I i i i i l i i i I 1 i 1 I 1 i i 1 L i I i i i I 1 1 1 1 i I 1 1 I i i I 1 I i i i i 1 13 Search for the object tem i i 14 Return the object item and al its information I 1 1 i i i i A 1 i 1 i c 1 1 1 i i I i 16 User clicks the Link External Object button 17 Prompt user with list of possible objects to link 11 Prompt User with List of Object Items 15 Prompt User with Object Item Information I 18 User hightigits the link object and clicks the ok button I I I I 12 User highlights object item then clicks on the V
21. Micra Pre e e He ER RENE ERES a EE SEE data 4 11 1 Processing N rtative nee Rete en ee eser Veget re erre Dn EY e axes 4 1 1 2 Interface Description n rr tetti re br aeta aves e Pe Re aee leta 4 11 3 Component Processing Detail ikiia eine eaa a i A en oei nene 4 12 Description of Change Password sess enne enne nne eterne innen nenne 4 1231 Processing Narr tiv cei eere repre NN REIS PER EE ata ia elas ates 4 122 Interface Description utere oe eren ere oe tere e e eet suds edi 4 12 3 Component Processing Detail sessi enne eene nne E 4 13 Description of Log Out eto een re PR Etc ge sabess 4 13 1 Processing Narrative ee cece bea ete tree EUR teu RARO RENT RR EN at 4 13 2Interiace Description 2 one tie t e prae ee ete rna bete t ce fiat 4 13 3 Component Processing Detail esses ennt enne 4 14 Description of Internal Link to an Object eese enne 4 141 Processing Narrative 2 5 Rete rer sa ente er t dye apte eee E DR eee 414 2 Interiace Description re coe ieget to ter rt rete ee EO eee iude debeo iaa caede 4 14 3 Component Processing Detail miniers iisisti a AEE EEE EEEE EE 4 15 Description of External Link to an Object enne enne 4 15 1 Processing Narrative 7er bete re eere e etes reet la 415 2 Interface Description ci acetone eh EHE RAIN e ieri ete tatis 4 15 3 Component Processing Detail essere nennen
22. Out message of success or message of failure Submit In Name CurrentPassword NewPassword NewPasswordConfirm Out message validate inputs On Error send message of failure and exit the routine 4 11 3 Component Processing Detail 30 GaTT Software Design Specification lookup from UserTBL where Name Value LoginName gt LoginName lookup from UserTBL where Password Value LoginPassword gt LoginPassword CorrectPassword LoginPassword if CorrectPassword is not Password Value send message of failure and exit the routine if NewPassword Value is not NewPasswordConfirm Value send message of failure and exit the routine record to UserTBL gt LoginPassword NewPassword Value if no errors occurred send message of success 4 12 3 2 Activity diagram ChangePassword read text input name currentPassword newPassword newPasswordConfirm Any input is null retum fields left blank error message access UserTBL for loginName and loginPassword loginPassword is not password value return incorrect password message newPassword value is not newPasswordConfirm value record loginPassword newPassword in UserTBL allow user to proceed to main form 4 13 Description of Log Out return new passwords do not match error message This component will allow the user to log out of the system 4 13 1 Processing Narrative A user wishes to log out of the system First
23. PrivilegeTBL where Module is X gt Create tru 4 7 2 Interface Description 20 GaTT Software Design Specification if Modify is true record to PrivilegeTBL where Module is X gt Modify true if Delete is true record to PrivilegeTBL where Module is X gt Delete tru if no errors occurred send message of success Add In SelB Out message validate inputs On Error send message of failure and exit the routine if SelB Value is None send message and exit the routine else lookup from GroupTBL GroupID TheID GroupID record to UserTBL gt PrimaryGroupID TheID if no errors occurred send message of success Remove In SelA Out message validate inputs On Error send message of failure and exit the routine if SelA Value is global UserName yourself send message and exit the routine else record to UserTBL gt PrimaryGroupID DefaultID refresh list of users that SelA came from if no errors occurred send message of success 4 7 3 2 Activity diagram ModifyGroup 4 7 3 Component Processing Detail GaTT Software Design Specification access PrivilegeTBL for all moduleNames display all moduleNames in a dropdown list User selects a module from access PrivilegeTBL for View 4 7 3 Component Preeessing Betai O Delete true d ene aae GaTT Software Design Specification 4 7 3 3 Activity diagram Save re
24. View User 18 GaTT Software Design Specification 4 6 3 2 Activity diagram ViewUser 4 7 Description of Modify Group This component will allow a user to modify the details of a group that is currently in the system 4 7 1 Processing Narrative A user wishes to modify the details of a group In order to do this the user has to have been authenticated and authorized There is more than one way to get to the modification interface e The user can go to the User Management tab on the main screen and click the button View Group List The user may select the Modify command button e The user can go to the User Management tab on the main screen and click the button View Group List The user may then select a group from the list and click View Details A user can also get to View Details through the View User section described in the View User component description From the View Details screen the user may select the Modify command button 4 7 2 Interface Description The name of the group and its description will be displayed These are editable There will also be a list of modules populated from the database into a control structure AII of the privileges for each module will also be displayed One possible way this could be achieved is a list box will store the names of the modules There will be an un editable checkbox control next to it containing the privileges When a module is selected its privileges become
25. assignee is the person who is given the object The assignee can be changed and both assignee and originator can be sent messages though email from the program This can be done by selecting the Email buttons directly to the right of the fields Now again starting at the left below the last set of controls and working down Title is the first field This is where the title of the object goes A description of the object goes in the Text Description field and along with title this is a required field Next is the System area identifies what area of the system is dose this object refers to Required end date is the date that the object is required to be 6 2 4 User Management 104 GaTT Software Design Specification completed for the business that is described in Business owner The user also can find the contact with that business though the field for Contact Last in this column of controls is the Close date field This shows the date that the tick was closed if the ticket was closed Now in the internal controls in the window are the Action history and Recommendation text areas both editable and the attachments and files box To edit the Recommendations and Action history text areas click on the notepad icons to the right Clicking on the icons will launch a window with a text field that the user can type in The user can then choose to save the changes or cancel with out appending them to the list The last item on the form is the inter
26. checked in the list of privileges The user will be able to edit these checked boxes and save the changes using the Save button 4 6 3 Component Processing Detail 19 GaTT Software Design Specification There will also be a list of user objects that are currently in the group This will also be put into a list structure that has been populated from the database The current user will be able to select one of these user objects from the list A selected user object can be deleted from the group when the current user selects the Remove command button When a user is removed from a group they are put in the default group There will also be an option to add users to this group There will be a control possibly a drop down menu populated with all of the users in the database who aren t already in the group To add a user to a group one would select a user from the control and click on the Add command button located nearby 4 7 3 Component Processing Detail 4 7 3 1 Algorithmic Model In the GroupID from the GroupTBL for a selected group In SelA possible selection from list of users in group In SelB possible selection from list of user not in group In GroupName In GroupDescription In Create true fals In View true fals In Modify true false In Delete true fals ModifyGroup In GroupID On Error send message of failure and exit the routine lookup from GroupTBL gt GroupName lookup from GroupTBL D
27. failure and exit the routine if no errors occurred send message of success and return to the item screen 4 16 3 2 Activity diagram for the Attachment Module 4 16 1 Processing Narrative 38 GaTT Software Design Specification Access File List Create List of all possible files found copy selectedFile data to data copy selectedFile MimeType to MimeType Add to AttachmentTBL record ltemiD data MimeType Retum Message of success 4 17 Description of Change Log for Watch Item This component allows the user to view all changes made to an Watch item in the tracking tool 4 16 3 Component Processing Detail 39 GaTT Software Design Specification 4 17 1 Processing Narrative First the user must be logged into the tracking tool The user must click on the tab labeled Watch The user sees a list of items The user hightlights an item and clicks on the View button The user will then see the Item Screen On this screen will be a button called Change Log Once the user clicks on the button the user can view changes made to the item 4 17 2 Interface Description This component will be a button named Change Log It will be located on the Watch Item screen of the tracking tool 4 17 3 Component Processing Detail 4 17 3 1 Algorithmic Model In ItemID Out UserName Out FieldName Out OldValue Out NewValue Out message of failure or list of changes made
28. id for every login to the database The Changesets table is slightly more complicated For every change to a stored object the field name of each field changed is stored along with the old value and the new value each converted to a text representation The author of a changeset is joined to the changeset using the ModifiedBy table 2 Data Design 3 GaTT Software Design Specification The ERD below has been split into four pages each labeled These four pages should be assembled in the following order Page 1 gid gid name name passwdHash passwdHash feldname fseldname oldvalue ol value newvalue newvalue has changesets is changeset of revision sequence of originator originator INTEGER criticalPathitem criticalPathitem BIT cpmolssuaNumber cpmolssueNumber VARCHAR 32 recommendation recommendation TEXT 10 2 2 Database description 4 GaTT Software Design Specification Page 2 has Watch attributes fre Watch attributes of has attributes Ayre attributes of O mega e Fi 2 2 Database description 5 GaTT Software Design Specification Page 3 2 2 Database description 6 GaTT Software Design Specification name name passwdHash passwdHash login nabied login nabled rs e pid pid INTEGER gid gid INTEGER 2 2 Database description 7 3 Architectural Design 3 1 Program Structure The program structure chosen f
29. on each From here users could access the same types of functionality in a much cleaner environment The other step to maintain simplicity was to keep as much of the content on each of these tabs as possible 6 4 UIDS description The system used to design the UI is the form builder in Microsoft Access 2003 6 2 7 Generic Add Window 105 7 Restrictions limitations and constraints 1 The tracking tool database must be able to operate on a Windows machine 2 Microsoft Access must be used as the tool to develop the user interface 3 A SQL server is currently being used at BCBSM 4 The deadline for software completion is December 20 2005 5 The tracking tool database will consist of at most 1000 records 7 Restrictions limitations and constraints 106 8 Testing Process 8 1 Classes of tests The following classes of tests will be used on the tracking tool 1 Unit Testing The goal of Unit Testing is the verificaton of each module of the tracking tool Its focus is on the internal processing logic and data structures within a module Some examples of test cases that we plan on having in the test plan are making sure an item is actually added to the database or making sure an item is actually deleted from the database 2 Integration Testing Integration Testing verifies that once the tracking tool is integrated that all modules work properly together and that overall system performance is achieved Some examples of test ca
30. on the team The user will select a name and click the OK button 4 19 2 Interface Description This component will be a button named Email on the Watch Item Screen 4 19 3 Component Processing Detail 4 19 3 1 Algorithmic Model In WatchListID In Name Out Name Out WatchListID Out Title Out Description Out Email or message of failure Submit In WatchListID Out WatchListID Out Name Out WatchListID Out Title Out Description Out message and email On Error send message of failure and exit the routine Populate a drop down list prompt with the following information UserNames of all Items in UserTBL Ok In Selection Out Name Name Selection value return Name lookup from TrackedObjectTBL where POid value WatchListID gt ObjectTitle lookup from TrackedObjectTBL where POid value WatchListID gt ObjectDescription Title OjectTitle Description ObjectDescription message Dear n Nr Watch List Item n with Title n is assigned to you Nr The descri if errors occurred send message of failure and exit the routine if no errors occurred send email to Name with message 4 19 Description of Email to the Assigned To Person of Watch List Item 45 GaTT Software Design Specification 4 19 3 2 Activity diagram for Email to Assigned To Person of a Watch Item Module Access all UserNames in UserTBL Create drop down list of UserNames Set EmailUserName Selection value Acce
31. send message of failure and exit the routine ViewWatchItem In WatchID Out ViewWatchItem Form lookup record from TrackedObjectTBL where POID value WatchID Fill in ViewWatchItem form with record attributes if errors occurred send message of failure and exit the routine if no errors occurred send message of success and return to the item screen 4 23 3 2 Activity diagram for View Watch Item Module 4 23 1 Processing Narrative 53 GaTT Software Design Specification Access Privileges from GroupTBL Does user have view privileges Yes Perform View Watch List Module User selects view Access record from TrackedObjec TBL where POID valuezWatchlD Display form with record attributes 4 24 Description of View Inventory Object This component will allow a user to view the details of an Inventory Item that is currently in the system 4 23 3 Component Processing Detail 54 GaTT Software Design Specification 4 24 1 Processing Narrative A user wishes to view the details of an Inventory Item currently in the database In order to do this the user has to have been authenticated and authorized Next the user will click on the nventory Tab A list will then be given to the user of all the Inventory Items The user will then highlight an item to view and click on the View button 4 24 2 Interface Description On the nventory tab a list will be given of the Inventory Items The user
32. to the item Submit In ItemID Out UserName Out FieldName Out OldValue Out NewValue Out LogInDate Out list of changes made to the item On Error send message of failure and exit the routine lookup from ChangesetsTBL where POID value ItemID gt fieldnam lookup from ChangesetsTBL where POID value ItemID gt oldvalue lookup from ChangesetsTBL where POID value ItemID gt newvalu lookup from ModifiedByTBL where POID value ItemID uid lookup from UserTBL where uid value uid usernam FieldName fieldnam OldValue oldvalue NewValue newvalu UserName usernam Populate List with the following information FieldName OldValue NewValue UserNam if errors occurred send message of failure and exit the routine if no errors occurred return screen to login page of tracking tool 4 17 3 2 Activity diagram for the Change Log for a Watch Item Module 4 17 1 Processing Narrative 40 GaTT Software Design Specification Access from ChangesetsTBL fieldName where POID value ItemiD Access from ChangesetsTBL oldValue where POID value ItemlD Access from ChangesetsTBL newValue where POID valuezltemlD Access from ModifiedByTBL ulD where POID valuezItemlD Access from UserTBL userName where uid valuezuid Create List with information FieldName OldValue NewValue UserName Return Message of success e 4 17 3 Component Processing Detail 41 GaTT Software Design Speci
33. user can go to the User Management tab on the main screen and click the button View User List The user may select the Modify command button The user can go to the User Management tab on the main screen and click the button View User List The user may then select a user object from the list and click View Details A user can also get to View Details through the View Group section described in the View Group component description From the View Details screen the user may select the Modify command button 4 8 2 Interface Description The name of the user and the user s log in name will be displayed These will be editable There will be a control possibly a drop down box populated with a list of groups The group that the user belongs to will be shown as the caption You can change the group that the user is in by selecting a group from the box All changes will be saved by selecting the Save command button 4 8 3 Component Processing Detail 4 8 3 1 Algorithmic Model In the UserID from the UserTBL for a selected user In possible selection from list of groups In UserName In LoginName In Group ModifyUser In UserID On Error send message of failure and exit the routine lookup from UserTBL UserNam lookup from UserTBL LoginName lookup from UserTBL PrimaryGroupID Populate a drop box with the following information the GroupName for each ID in the GroupTBL Lookup from GroupTBL GroupName where GroupID is P
34. user has to have been authenticated and authorized There is more than one way to access the delete interface The user can go to the User Management tab on the main screen and select the button View User List The user may then select a user object from the list and select Delete 4 9 3 Component Processing Detail GaTT Software Design Specification e The user can go to the User Management tab on the main screen and select the button View User List The user can select a user object from the list and select View Details From this screen there will also be a Delete command button 4 10 2 Interface Description When a Delete button is selected for a user object the following interface will be visible on the screen A confirmation message box will appear on the screen If the user selects Yes the user object will be deleted If the user selects No nothing will happen Users will not be able to delete themselves 4 10 3 Component Processing Detail 4 10 3 1 Algorithmic Model In Delete yes no Out message of success or message of failure Yes Out message On Error send message of failure and exit the routine clear the record out of the UserTBL if no errors occurred send message of success No do nothing 4 10 3 2 Activity diagram DeleteUser display confirmation in popup message choices yes no Input is yes Input is no clear the record for this userID out of UserTB
35. user of all the Inventory Items 4 21 2 Interface Description On the nventory tab a list will be given of the Inventory Items 4 21 3 Component Processing Detail 4 21 3 1 Algorithmic Model In ObjectType Out form that contains a list of all items of the Inventory Type in the database and act ViewInventoryList In ObjectType OnError send message of failure and exit routine Populate a list with the following information Name Title and Description for all type value ObjectType in TrackedObjectTBL ViewlnvetoryDetails In POID from selection This will direct the user to the View Inventory object module Modify in POID from selection This algorithm is described in the Modify Inventory object component description Delete in POID from selection This algorithm is described in the Delete Inventory object component description Add in POID from selection This algorithm is described in the Add Inventory object component description 4 21 3 2 Activity diagram for View Inventory List Module 4 21 Description of View Inventory List 49 GaTT Software Design Specification Access Privileges from GroupTBL Does user have view privileges Yes Access InventoryID Title and Description from all Inventory Items in TrackedObjectTBL Create list with information InventoryID Title and Description Display form with list and view add and delete buttons 4 22 Description of Vi
36. will click on an item to highlight it and then click on the View button 4 24 3 Component Processing Detail 4 24 3 1 Algorithmic Model In InventoryID from selection Out form that contains the details of the Inventory Item ViewlInventoryList ObjectType This algorithm is described in the View Inventory List component description Submit In InventoryID from selection Out Form with Inventory Object details On Error send message of failure and exit the routine ViewlnventoryItem In InventoryID Out ViewInventoryItem Form lookup record from TrackedObjectTBL where POID value InventoryID Fill in ViewInventoryItem form with record attributes if errors occurred send message of failure and exit the routine if no errors occurred send message of success and return to the item screen 4 24 3 2 Activity diagram for View Inventory Item Module 4 24 1 Processing Narrative 55 GaTT Software Design Specification Access Privileges from GroupTBL Does user have view privileges Yes Perform View Inventory List Module User selects view Access record from TrackedObjectTBL where POID valuesInventoryID Display form with record attributes 4 25 Description of Add Watch Object This component will allow a user to add a watch list object to the watch list and describe the attributes of that object 4 24 3 Component Processing Detail 56 GaTT Software Design Specification 4 2
37. wishes to view the list of groups In order to do this the user has to have been authenticated and authorized The user must go to the User Management tab on the main screen and select the View Group List button The user then fills in required and optional information described in the interface description below 4 2 3 Component Processing Detail 13 GaTT Software Design Specification 4 3 2 Interface Description The View Group List function is activated when the user clicks on the View Group List button located in the User Management tab on the main screen When this button is selected the following interface will be visible on the screen A list will be displayed containing the Group Name and the Description There will be a way to select an entry in this list There will be three command buttons one to view the details of the selected entry one to modify it and one to delete it If the user does not have the correct privilege for one of the buttons that button will be disabled 4 3 3 Component Processing Detail 4 3 3 1 Algorithmic Model In possible selection from list of groups Out a list of the groups that are currently in the system ViewGroupList On Error send message of failure and exit the routine Populate a list with the following information Name and Description for each GroupID in GroupTBL ViewGroupDetails In selection Out message This algorithm is described in the View Group component Modify
38. 2 Interface Description On this form there will be both required and non required fields The required elements on this form will be described as follows There will be text boxes for the following things the date created a short description or title and a long description There will be a dropdown list of users populated from the user table to select who this object is assigned to There will also be a dropdown list to select this object s type detailed design conceptual design etc All of these will be configurable The non required elements on this form will be described as follows There will be a text boxes to enter the release the planned draft date the actual draft date the planned internal review date the actual internal review date the planned business review date the actual business review date the planned quality review date and the actual quality review date There will be dropdown lists of the name of the team populated from the team table the business segment the system area and the business owner There will also be controls to add application systems and technologies used All of these things are editable There will be a cancel command button that will enable the user to cancel the process of modifying an inventory item at any time There will be a save button that will save the changes to the database 4 28 3 Component Processing Detail 4 28 3 1 Algorithmic Model In DesignID In DateCreated ShortDes
39. 5 1 Processing Narrative A user wishes to add a watch to the watch list The user must be authenticated and authorized to do so To get to the watches window the user must select the watches tab on the main screen There will be a command button called add watch This will take the user to the add watch interface described below 4 25 2 Interface Description On this form there will be both required and non required fields To start out the watch list objects will have attributes that are considered necessary and attributes that are common to both watch objects and inventory objects Other attributes may be added by an authorized user in the configuration section The required elements on this form will be described as follows There will be a dropdown list to choose the type of this object for example QD BR MP RP etc There will be text boxes for the following things the create date a short description or title a long description and the originator There will be a dropdown list of users populated from the user table in the database to assign this item to The non required elements on this form will be described as follows There will be a text box to enter the cPMO issue number There will be a checkbox control to indicate whether or not this object is a critical path or hot item There will be dropdown boxes for the following things the system area populated from the system area table the business segment populated from th
40. 9 by gsymons fixed header e 11 03 05 23 10 47 by gsymons Cut the Project Glossary part of the heading e 10 25 05 19 15 04 by smithswe No comment e 10 17 05 21 41 04 by gsymons No comment e 10 17 05 21 40 38 by gsymons No comment 12 3 15 Changes for page AddPrivilege e 11 01 05 15 05 47 by smithswe standardized page layout format e 10 25 05 16 08 32 by smithswe Removed See Also e 10 20 05 20 08 09 by arhedges No comment e 10 20 05 20 06 35 by arhedges No comment 12 3 9 Changes for page ProjectGlossary 125 GaTT Software Design Specification e 10 09 05 18 42 08 by gsymons added header and footer moved module stuff to ModuleList 10 06 05 07 41 14 by arhedges No comment e 10 06 05 07 34 13 by arhedges No comment 12 3 16 Changes for page DeletePrivilege e 11 03 05 23 11 15 by gsymons Cut the Project Glossary part of the heading e 11 01 05 15 06 31 by smithswe standardized page layout format e 10 25 05 16 08 18 by smithswe Removed See Also e 10 09 05 19 19 03 by gsymons No comment e 10 06 05 07 36 05 by arhedges No comment 12 3 17 Changes for page ModifyPrivilege 11 01 05 15 06 18 by smithswe standardized page layout format e 10 25 05 16 08 26 by smithswe Removed See Also e 10 09 05 19 15 27 by gsymons added header and footer 10 06 05 07 41 59 by arhedges No comment e 10 06 05 07 35 16 by arhedges No comment 12 3 18 Changes for page ViewPr
41. ActualDraftDate PlannedInternalReviewDate ActuallInternalReviewDate PlannedBusinessReviewDate ActualBusinessReviewDate PlannedQualityReviewDate ActualQualityReviewDate In Team BusinessSegment SystemArea BusinessOwner In ApplicationSystem TechnologyUsed Out message of success or message of failure Save In All from above Out message validate inputs On Error send message of failure and exit the routine record to TrackedObjectTBL DateCreated ShortDesc LongDesc record to DesignTBL gt Release PlannedDraftDate ActualDraftDate PlannedInternalReviewDate ActualInternalReviewDate PlannedBusinessReviewDate ActualBusinessReviewDate PlannedQualityReviewDate ActualQualityReviewDate record to TrackedObjectTBL gt Type AssignedTo Team BusinessSegment SystemArea BusinessOwner record to DesignTBL gt ApplicationSystem TechnologyUsed if no errors occurred send message of success 4 26 1 Processing Narrative 59 GaTT Software Design Specification 4 26 3 2 Activity diagram for Add Inventory Module read text inputs ShortDesc LongDesc CreateDate read text inputs Release pDraft plnternalReview pBusinessReview pActualReview read text inputs aDraft alntemalReview aBusinessReview aActualReview Any required inputs are null sde retum requirad fields left blank error message record ShortDesc LongDesc CreateDate to TrackedObjectTBL O 4 27 Description of Modify Watch
42. EE o x P Watches inventory Reports User Management Configuration Requirements Ut va cex ven se Jr s sS Record i 1 gt our of 1 6 1 2 Inventory 6 User interface Design 97 GaTT Software Design Specification ES New Menu Form 6 1 3 Reports 6 1 2 Inventory 98 GaTT Software Design Specification ES New Menu Form Record i8 f 1 gt our of 1 6 1 4 User Management 6 1 3 Reports 99 GaTT Software Design Specification 6 1 5 Configuration 6 1 4 User Management 100 GaTT Software Design Specification ES New Menu Form 6 1 6 Requirements 6 1 5 Configuration 101 GaTT Software Design Specification ES New Menu Form Jaltemative modes see issue 22 Risk that retirement decisions and action are not aggressively menad snd node ie correntina thet sea iit tale c retira A 6 1 6 Requirements 102 GaTT Software Design Specification 6 2 Objects and actions 6 2 1 Watches The watch screen consists of four buttons just below the row of tabs The first button on the left is the add watch button When the user clicks this button the add widow will launch The next button to the left 1s the view button If the user has selected a watch item from the list below the button this will cause the watch item to launch in the add window The next two buttons deal with the text field t
43. L retum message of success 4 11 Description of Log In This component will allow the user to log in to the system and become authenticated 4 10 1 Processing Narrative 28 GaTT Software Design Specification 4 11 1 Processing Narrative A user wishes to log in to the system First the user must launch the application The user must then enter their name and password If this information is correct the user will be able to use the tracking tool 4 11 2 Interface Description There will be text fields for the user to input their username and password The password field will be masked for security There will be a command button to submit this information If the information is correct the user will see a message of success If the information is incorrect the user will receive a message of failure There should also be a command button to let the user change their password See Change Password component description 4 11 3 Component Processing Detail 4 11 3 1 Algorithmic Model In Name In Password Out message of success or message of failure Submit In Name Password Out message validate inputs On Error send message of failure and exit the routine lookup from UserTBL where Name Value LoginName gt LoginName lookup from UserTBL where Password Value LoginPassword gt LoginPassword CorrectPassword LoginPassword if CorrectPassword is not Password Value send message of failure and ex
44. Object This component will allow a user to modify a watch list object in the watch list 4 27 1 Processing Narrative A user wishes to modify a watch list item The user must be authenticated and authorized to do so To get to the watches window the user must select the watches tab on the main screen There will be a command button called modify watch This will take the user to the modify watch interface described below 4 26 3 Component Processing Detail 60 GaTT Software Design Specification 4 27 2 Interface Description On this form there will be both required and non required fields The required elements on this form will be described as follows There will be a dropdown list to choose the type of this object for example QD BR MP RP etc There will be text boxes for the following things the create date a short description or title a long description and the originator There will be a dropdown list of users populated from the user table in the database to assign this item to All of these things will be editable The non required elements on this form will be described as follows There will be a text box to enter the cPMO issue number There will be a checkbox control to indicate whether or not this object is a critical path or hot item There will be dropdown boxes for the following things the system area populated from the system area table the business segment populated from the business segments table
45. The Customer 10 16 1 Blue Cross Blue Shield of Michigan The tool is being produced for the Special Projects department of BCBSM This department manages and develops large projects for BCBSM s core systems We are specifically working with the NPI project to convert their tracking tool into a more general tool that can be used for other projects in the department 10 16 2 Primary Customer Contact Polakampalli Narendra npolakampalli 9 bcbsm com 10 17 The Team TeamBC are Christopher Smith Joey Granz Greg Symons and Amy Hedges This project is being completed as part of the requirements for the University of Michigan Dearborn Department of Computer and Information Science s Senior Design CIS 495 class This class is intended as a capstone project for undergraduate students in the Computer Science Information Science and Software Engineering programs Christopher Smith 313 610 6092 smithswe umd umich edu Joey Granz 734 624 1685 joeygranz yahoo com Greg Symons 734 649 6303 gsymons umd umich edu Amy Hedges 313 310 0080 10 15 User Stories 117 GaTT Software Design Specification arhedgesOumd umich edu 10 18 User Group A user group is a list of users that share the same privileges Administration becomes less difficult when privileges are stored on the groups rather than each user individually User groups can also be used to define organizational units of a project For example all the Business O
46. To print out a preconfigured report the user would use the section of controls in the left gutter The user can select from the five report types in the drop down boxes and select sub types of those After which the user can press the View button just under the drop down boxes to see the report filled in with data from the projects The right gutter contains the controls to generate custom reports The first option for custom report generation is a simple three column report that is filled in with what the user selects from the three drop down boxes in the top center portion of the right gutter After the user makes a selection from the boxes if they press the View button directly below they will see a report generated for them The second way to have user select a user designed custom report from the drop down box below the first View button After the user selects a report they press the View button below that to have the report generated for them 6 2 4 User Management The user management screen consists of two gutters that separate the functionality of this form The right gutter is user to manage users The first on the left Add User causes a popup window to open with a text enter box inside and an ok and cancel buttons The user can enter a new user name and if it does not exist in the program already then the user will be added and the popup will close If the user is already in the system then the user will have to enter a new name or click t
47. aaeceaaeceeeeeeses 70 5 Sequence EACUS TE 71 6 User interface Design sis isecsecsssisssisessesanessosscosesssisesvsocsevecssaescnndessdeesdondsbocsesoonssusssesashssenssescesesnacsuedsevessisatesosess 97 6 1 Description of the user interface eee ceecceeeeecsecessseceeaceeeaceceeeceaeceeaaeceeaeceeaeeceaeeesaeeeeaueceaaeceeaeeeses 97 NAS A NAO 97 A A IA 97 6 1 3 Repofts A ir 98 6 1 4 User Managemient m Le ette ERE Ge EH IEEE GER UHR ee aaa 99 6 1 5 Configuration eR e a Aet a ee edet etes e Re eie ee Tdio 100 6 1 6 Requirements seio ete ER ER GUB I li 101 6 17 Generic Add Wide 102 6 2 Obj cts and actions eret en Re ce ee T e ce p eoe re tere e es E dd 103 6 2 1 Watches reote ere eit se itte date Pe eee etes LS iW da Ca utere fers 103 O22 A A 103 A A NO 103 6 24 User Management tesina tdi Lise E a bog eye oca 103 6 2 5 Configuration oen eee Note te oes a eR bee elo eee eie E e idee ERIS 104 6 2 6 Requirements io Seer ve eer eo TOR OE RARE CER REEF RETE EXER aree ra 104 6 2 7 Generic Add Wind Wir ads 104 6 3 Interface designirules 5 nite Le a RDA Coe eee ese ER ied bee dsd 105 6 4 UIDS descipol sorier iori essence de eR NR PER HN EET Idee eio oerte e tenis 105 7 Restrictions limitations and constraints eere eese eee eee ee eee seen nest eene sete tnos eee en Osee seen nee ee enne era 106 8 Testing PrOCOSS ET E 107 S TC lassesOF test S3 etri ec bel reo eren P DR EET 107 8 2 Perte
48. ad text inputs group name description record group name and description in GroupTBL M read dropbox input module name read checkbox input privileges Milo checas record view true in PrivilegeTBL for module name Ji O Create is checked A record create true in PrivilegeTBL for module name y US SNe record modify true in PrivilegeTBL for module name i SENE c record delete true in PrivilegeTBL for module name 5 e 4 7 3 4 Activity diagram Add 4 7 3 Component Processing Detail 23 GaTT Software Design Specification read dropbox input of users not in group usemame Input was none return must choose a user message Input was username 7 A record primaryGroupID groupiD in UserTBL for username return cannot delete yourself message record primaryGrouplD grouplD in UserTBL for usemame refresh dropbox of users in group Input is not your userName return message of success 4 8 Description of Modify User This component will allow the current user to modify the details of a user object that is currently in the system 4 7 3 Component Processing Detail 24 GaTT Software Design Specification 4 8 1 Processing Narrative The current user wishes to modify the details of a user object In order to do this the current user has to have been authenticated and authorized There is more than one way to get to the modification interface The
49. agram 5 Sequence Diagrams 71 GaTT Software Design Specification EJ I l i 1 tor User Name 1 l l l l l I l l must re enter the information l l l l 1 l l 1 I 1 14 Return the Add Object Template i l l l aene I l l U l 6 If User Name or password are i r prompted to select a specific object i f j 10 Return List of Object Items j I I I i 13 Search for the template for the Add Object I 16 User enters information in fields and dicks the Save button 9 Search for specific Object Type 15 Prompt User with Add Object liem Informason Form i i 11 Prompt User with List of Object Items 12 User clicks on the Add button 72 5 Sequence Diagrams GaTT Software Design Specification Ad Hoc Sequence Diagram The user wants to create a new report using data stored in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 73 GaTT Software Design Specification EJ 1 i 1 i 1 1 I 1 1 I l I 1 1 I 1 1 I l I 1 I l 1 I 1 information 1 1 I i I 1 1 1 I L 1 1 1 1 i i 1 I 1
50. ame functions as the specialized tool but would be general enough to be used by other large projects at BCBSM Team BC paid careful attention to the needs of BCBSM through a personal interview with the NPI team and we came up with an effective application to meet those needs The following pages explain and give more detailed information about the requirements and the specifications of this project 1 1 Goals and objectives Using the tracking tool developed by the NPI team as a model Team BC is to develop an enhanced generic tracking tool that may be used by large technical projects at BCBSM 1 2 Statement of scope The Tracking tool will be architected to support the functional requirements listed below Each requirement will be described in detail in the Functional Requirements section e Tool must track information Issues Inventory Requirements e Tool must create references between items in and out of the tracking modules e Tool must provide the following privileges to a group based access security system View Privilege Create Privilege Update Privilege Configure Privilege Delete Privilege All core modules should be configurable 1 3 Software context The goal of the software is to improve the communication of project requirements risks issues and goals and enhance collaborative development within a software project team 1 Introduction 1 GaTT Software Design Specification 1 4 Expected software resp
51. assword that the new user will start off with This password can be changed by the user at any time during login There will be a control possibly a drop down box populated with a list of groups Once a group is selected for the new user object a Save command button can be selected 4 2 3 Component Processing Detail 4 2 3 1 Algorithmic Model In LoginName In UserName In InitialPassword In Group 4 2 Description of Add User 12 GaTT Software Design Specification Out message of success or message of failure Save In LoginName UserName InitialPassword Group Out message validate inputs On Error send message of failure and exit the routine record to UserTBL gt LoginName record to UserTBL UserNam record to UserTBL gt LoginPassword InitialPassword lookup from GroupTBL where name is Group Value GroupID TheID GroupID record to UserTBL gt PrimaryGroupID TheID if no errors occurred send message of success 4 2 3 2 Activity diagram Save read text inputs userName loginName initialPassword Any inputs are null read dropbox input groupname record userName loginName and loginPassword initialPassword in GroupTBL record primaryGrouplD GrouplD from GroupTBL in UserTBL 4 3 Description of View Group List This component will allow a user to view a list of all the groups currently stored in the system 4 3 1 Processing Narrative A user
52. bedding an object actually stores it in the database alongside the object it is embedded in Embedding is very similar to attaching a document to an email Embedding can only be used on external objects and should be reserved for small objects like emails or short documents Larger objects should be linked instead in order to save space in the database 10 5 Paper Prototyping Paper prototyping is a method for rapidly developing a graphical user interface Basically the developers and the customer sit down together and sketch on paper a mockup of the user interface The customer then role plays using the interface to see if the mockup works well As the prototyping session continues the user interface will be repeatedly refined until a final usable interface is developed Paper prototyping saves greatly on development cost since the prototypes are never built in actual code and so can be more quickly and easily redesigned 10 6 Add Privilege Users with the add privilege for a module may add new objects to it 10 7 Delete Privilege Users with the delete privilege for a module may delete items within that module 10 8 Modify Privilege Users with the modify privilege for a module may modify the attributes of an existing object within that module 10 9 View Privilege Users with the view privilege for a module may view the contents of the module 10 3 The Migration Tool Manual 115 GaTT Software Design Specificatio
53. bene ie aene 55 4 24 3 Component Processing Detail eese ener enne 55 4 25 Description of Add Watch Object sess enne eene neret 56 4 25 1 Processing Narrative 14 oe re ere He rie ers Um Lie regne bod eee odas 57 4 252 Interface DesScrEIption eor Re ete en velot e e eT ee ee tee dne 57 4 25 3 Component Processing Detail esses ener ener 57 4 26 Description of Add Inventory Object nennen eterne enne 58 4 26 1 Processmg Narrative se cui 1 o tete eerte iere orte doin cita cod rt de IR EE ta 58 4 262 Interface Description yrei terere teer tet ete ettet gerens bere be te eene 59 4 26 3 Component Processing Detail essere enne entente enne enne 59 4 27 Description of Modify Watch Object enne nente entere enne 60 4 27 Processing Narrative 3 on te eter C RI isidro 60 427 2 SA tert entere ehe ces et e eie ec pedit e 61 4 27 3 Component Processing Detail essere enne eterne enne 61 4 28 Description of Modify Inventory Obj Ct ocooooioccnnnnccnonccnonccononanonnccnnononnnccnnncncnnn cono nc cnnnccnnccnnnannns 63 42871 Processing Narrative rete ect ente rM eerie tette E eet gode Sas ae 63 4 28 2 Interface DescriptiOn 4er tte eet ee E ellen eee A ode dee ete To nee e gods 63 4 28 3 Component Processing Detail sese ener eene nnne enne 63 4 29 Description of Delete Watch ODjeCt oo eee eccc
54. c LongDesc In Type AssignedTo In Release PlannedDraftDate ActualDraftDate PlannedInternalReviewDate ActuallInternalReviewDate PlannedBusinessReviewDate ActualBusinessReviewDate PlannedQualityReviewDate ActualQualityReviewDate In Team BusinessSegment SystemArea BusinessOwner In ApplicationSystem TechnologyUsed Out message of success or message of failure ModifyWatch In DesignID On Error send message of failure and exit the routine lookup from TrackedObjectTBL DateCreated ShortDesc LongDesc lookup from DesignTBL Release PlannedDraftDate ActualDraftDate PlannedInternalReviewDate ActuallnternalReviewDate PlannedBusinessReviewDate ActualBusinessReviewDate PlannedQualityReviewDate ActualQualityReviewDate Display DateCreated ShortDesc LongDesc Release PlannedDraftDate ActualDraftDate PlannedInternalReviewDate ActuallnternalReviewDate PlannedBusinessRevi ActualBusinessReviewDate PlannedQualityReviewDate and ActualQualityRevi in text boxes 4 28 Description of Modify Inventory Object 63 GaTT Software Design Specification For each ID in the TrackedObjectTBL populate a separate list for each of the following Type caption this DesignID s type AssignedTo caption this DesignID s AssignedTo Team caption this DesignID s team BusinessSegment caption this DesignID s BusinessSegment SystemArea caption this DesignID s SystemArea BusinessOwner
55. cessing D tail nrn oireisiin irea iEn E Ea oe Eo enne enne 18 4 T Description of Modify Groupie sicie eie e eet tente E i dote ce in gen 19 4 7 Processing Narrative iii taria Eee We S 19 4 7 2 Interface DesCrIptlOnD 5 nee HR e Ere tr e eee rec Veget Are nee e tee a Ped eus 19 4 7 3 Component Processing Detail essere nennen ener nns 20 4 8 Description of Modify US Chinita cc ie eese teer ea a A E a centena obe tk a Eien 24 4 8 1 Processing Narrative nr niiae tE O 25 4 8 2 Interface DESCUIDO irte DR NR Eee Eo re ane tre rane iru tres 25 4 8 3 Component Processing Detail esses enne ener nennen 25 4 9 Description of Delete Group 1 5 tereti d cent Ree rte tp AAA e e pete eo eee re Ree 26 GaTT Software Design Specification Table of Contents 4 Component Level Design 4 9 1 Proc ssing NA 25e ege ert er eet re HEY ERU FLUE NM SS Eme Rke ete p esu e ge toutes 4 9 2 Interface Description red ort e HI e Eie Paesi e E cases DER EE REPRE ERE oe e AERES 4 9 3 Component Processing Detail esses enne enne 4 10 Description of Delete Uset 4 noe eere vie tre Gace EE b MAS e P EYE E ERE Ee eee 4 10 T Processing Narrative e e eene e eri de eire ee E tides 410 2 Interface Description 2 icc rete den e I eot Dhan re Coe it ete Dee Ded ret beds cd 4 10 3 Component Processing Detail esses eterne enne enne 4 11 Description OF Fog
56. cket uncommitted If the user wants to save the ticket that they have made or the changes to it then they would click the Save button If all the required fields are filled out then clicking the Save button will save the information written to the fields and close the window If a user is unsure of how the object will look before they save it then they can click on the Preview button This launches what is entered in the data fields in a report so show the user a preview it before submitting it to the data base If the user is unhappy with what is displayed then they can change it or cancel the creation of the object Finally for the top row there is the email button Email gives the user the option to mail the object to someone When clicked the program will forward the preview to there mail client For the objects below the first row of buttons from the left to right there are type date identified priority status originator and assigned to The Type drop down identifies what type of item it will be Data Identified is the date that the ticket was created though this is editable by the user Then the Priority drop down allows the user to select from the predefined priorities and assign them to the object Status allows the user to assign the status of the object from the drop down with predefined status classes Moving just below status is the Originator and Assigned to fields The originator is the creator of the object while the
57. ctTBL where POid value InventoryID gt ObjectTitle lookup from TrackedObjectTBL where POid value InventoryID gt ObjectDescription Title OjectTitle Description ObjectDescription message Dear n Nr Inventory Item n with Title n is assigned to you Nr The descrip if errors occurred send message of failure and exit the routine if no errors occurred send email to Name with message 4 20 Description of Email to the Assigned To Person of Inventory Item 47 GaTT Software Design Specification 4 20 3 2 Activity diagram for Email to Assigned To Person of an Inventory Item Module Access all UserNames in UserTBL Create drop down list of UserNames Set EmailUserName Selection value Access from TrackedObjectTBL objectTitle where POid value InventoryID Access from TrackedObjectTBL objectDescription where POid values InventoryID Send email to UserName with message containing InventoryID objectTitle and objectDescription 4 20 3 Component Processing Detail 48 GaTT Software Design Specification 4 21 Description of View Inventory List This component will allow a user to view the a list of all Inventory Items that are currently in the system 4 21 1 Processing Narrative A user wishes to view the list of Inventory Items currently in the database In order to do this the user has to have been authenticated and authorized Next the user will click on the Inventory Tab A list will then be given to the
58. dy has Keeping functional areas of the interface the same will coincide with the expectations the user has for that screen and the application If the project is taken to another platform then the design of the new forms will be made to closely resemble the old The only exception to this is if changing the from will increase ease of use in the short term and long term In such a case a usability proof will be provided for the cause for the change Until such a decision the user interface will look like the original screenshots obtained for the group 10 3 The Migration Tool Manual The migration tool instructions will be a detailed process to move the current data used by the NPI tracking tool to the generic storage data tables Since the migration tool is a single use piece of software it may not 10 Project Glossary 114 GaTT Software Design Specification necessarily be a polished application and could possibly consist only of a manual script for converting the data 10 4 Object Linking and Embedding In order to make tracking related objects simpler the tool will provide the capability to either link to them or embed them in a tracked object When an object is linked to another object there is just a simple reference to the linked object that the user can follow to find it Linked objects may include both other tracking objects as well as external objects stored on file servers like documents and pictures In contrast to linking em
59. e 10 30 05 19 06 09 by arhedges No comment e 10 30 05 02 20 34 by arhedges No comment e 10 30 05 02 14 49 by arhedges No comment e 10 24 05 11 56 24 by jgranz No comment e 10 24 05 11 55 46 by jgranz No comment 12 3 4 Changes for page SequenceDiagrams e 11 04 05 04 29 47 by jgranz Put Images into Subversion e 10 31 05 02 01 05 by jgranz No comment 12 3 3 Changes for page ComponentLevelDesign 123 GaTT Software Design Specification 12 3 5 Changes for page UserlnterfaceDesign e 11 07 05 13 26 50 by smithswe Removed special characters e 11 07 05 13 22 05 by smithswe Appended more UI discription e 11 04 05 03 29 20 by arhedges No comment 11 04 05 00 51 53 by smithswe Update and Save 1 Images Deisgn Rules and Inviroment e 11 03 05 21 41 34 by gsymons missed one e 11 03 05 21 39 40 by gsymons removed latin 1 characters e 11 02 05 10 32 53 by smithswe Changed page formatting e 11 01 05 14 03 02 by smithswe No comment e 10 31 05 12 09 42 by smithswe No comment e 10 30 05 20 02 11 by smithswe J put the T in interface e 10 24 05 11 57 49 by jgranz No comment 12 3 6 Changes for page RestrictionsLimitations e 11 02 05 00 14 58 by jgranz Added 1000 record database as discussed in meeting e 10 30 05 21 49 10 by jgranz No comment e 10 29 05 12 58 32 by jgranz No comment e 10 24 05 11 59 14 by jgranz No comment 12 3 7 Changes for page Testinglssues
60. e 11 02 05 00 18 35 by jgranz Corrected format issues e 11 02 05 00 11 51 by jgranz Added Performance bounds discussed in meeting e 11 01 05 23 38 57 by jgranz No comment e 11 01 05 23 38 37 by jgranz Changed Issues to Process move validation after system testing took out Expected software response moved to Introduction e 10 30 05 21 49 46 by jgranz No comment e 10 29 05 12 52 32 by jgranz No comment e 10 29 05 12 18 41 by jgranz No comment e 10 24 05 12 01 01 by jgranz No comment 12 3 8 Changes for page AppendicesSection e 11 07 05 20 09 07 by jgranz Changed matrix missing requirement 13 and use case stories 42 45 needed to be labeled correctly e 11 02 05 00 56 33 by jgranz Change traceability table legend e 10 30 05 21 47 59 by jgranz No comment e 10 30 05 21 35 50 by jgranz No comment e 10 30 05 21 22 15 by jgranz No comment e 10 24 05 12 02 45 by jgranz No comment 12 3 9 Changes for page ProjectGlossary e 10 25 05 19 15 19 by smithswe No comment e 10 20 05 01 12 07 by gsymons Added glossary entry for user groups e 10 17 05 22 04 43 by gsymons No comment e 10 17 05 21 33 24 by gsymons Got everything from the SRS listed on the glossary page 12 3 5 Changes for page UserlnterfaceDesign 124 GaTT Software Design Specification e 10 17 05 20 46 55 by gsymons issues changed to watches e 10 09 05 15 42 48 by gsymons No comment e 10 09 05 15 41 27 by gsy
61. e of the work of creating forms and reports Other objects will include the various user interface widgets which again are defined by the Access platform 2 2 Database description The most important part of the system is the actual database It s design is detailed in the Entity Relationship Diagram ERD below Basically there are three major relationship areas in the database object storage users groups and permissions and auditing change tracking and login tracking The first major area of the database is object storage Object storage is essentially a tree of related tables Each object has a type which has a name an ID and a description This information is stored in the ObjectTypes table Each object type corresponds to a specific type of tracked object Watches Inventory or Requirements In addition an object type can be derived from a parent type and inherits all of the attributes of that parent type For each defined object type there is a table which both defines its attributes and stores instances of that object type Each object stored in the database has a globally unique persistent object id POID This POID is used to join all of the tables which make up the instantiated object This is basically an implementation of the Map Each Class To Its Own Table design pattern This pattern was chosen because it greatly simplifies the process of creating new object types a process that will occur often as each individual pro
62. e attributes and a bit of refactoring I think I m in Linux at the moment so I don t totally remember what I did 10 28 05 19 04 51 by gsymons e Changeset 23 Fleshed out TrackedObjectInstance WatchInstance and a few others 10 29 05 20 29 46 by gsymons Changeset 27 Autogenerated documentation commit 10 30 05 21 27 48 by Changeset 28 Autogenerated documentation commit 10 30 05 21 48 13 by Changeset 29 I think the static model is pretty much done I now need to do a ERD for the actual O R mapping 10 30 05 23 30 28 by gsymons Changeset 30 Started on the ERD 10 31 05 01 46 51 by gsymons Changeset 31 Well everything on the current version of the object model is now on the erd Of course none of this includes anything from requirements tracking because well I haven t done anything on requirements gsymons Changeset 32 Changeset 34 Changeset 37 tracking yet I sorta forgot about it in the Object Model 10 31 05 22 06 14 by add group activity diagram 10 31 05 23 12 26 by arhedges i messed something up so now i m fixing it 11 01 05 00 55 37 by arhedges moved the design model around a bit so that it could be made into an image that didn t greek out all the text I m still not convinced it s readable 11 01 05 01 39 11 by gsymons Changeset 38 Changeset 39 Changeset 41 Changeset 43 Changeset 44 Changeset 45 Changeset 46 Changeset 47 Changeset 48 Chang
63. e business segments table and the business owner There will be a recommendations text box There will also be controls to add attachments and to link files Those components are described elsewhere There will be a cancel command button that will enable the user to cancel the process of adding a watch item at any time There will be a save button that will save the changes to the database 4 25 3 Component Processing Detail 4 25 3 1 Algorithmic Model In Originator CreateDate ShortDesc LongDesc In Type AssignedTo In CriticalPathItem true fals In cpmolssueNum Recommendation In SystemArea BusinessSegment BusinessOwner Out message of success or message of failure Save In All from above Out message validate inputs On Error send message of failure and exit the routine record to WatchesTBL Originator cmpolssueNum record to TrackedObjectTBL ShortDesc LongDesc CreateDat record to TrackedObjectTBL gt Type AssignedTo SystemArea BusinessSegment BusinessOwne record to WatchesTBL CriticalPathItem record to WatchesTBL recommendation if no errors occurred send message of success 4 25 1 Processing Narrative 57 GaTT Software Design Specification 4 25 3 2 Activity diagram for Add Watch Module read text inputs Originator cpmolssueNum ShortDesc LongDesc CreateDate Any required inputs are null retum required fields left blank error message record Orig
64. e object type item 4 14 1 Processing Narrative A user wishes to link an internal object to an object type item First the user must be logged on to the tracking tool On the Oject Type Item form the user will click the Add Internal Link button The user will be given a list of object type items stored in the database The user will select an item and click the OK button 4 14 Description of Internal Link to an Object 33 GaTT Software Design Specification 4 14 2 Interface Description This component will be a button named Add Internal Link on the Item Screen 4 14 3 Component Processing Detail 4 14 3 1 Algorithmic Model In ItemID Out message of success or failure Submit In ItemID Out message of success or failure On Error send message of failure and exit the routine Populate a drop down list prompt with the following information Title of all Items in TrackedObjectTBL Ok In Selection Out LinkID lookup from TrackedObjectTBL where title value selection value gt POID LinkID POID return LinkID Add to InternalLinkTBL record ItemID LinkID if errors occurred send message of failure and exit the routine if no errors occurred send message of success and return to the item screen 4 14 3 2 Activity diagram for the Internal Link Module 4 14 2 Interface Description 34 GaTT Software Design Specification Access TrackedObjectTBL for all titles Create List of all titles found Acc
65. e tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 77 GaTT Software Design Specification 4 User enters password ce Diagrams n 5 Seque GaTT Software Design Specification Change Log Sequence Diagram The user wants to view all the changes made to an item in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 79 GaTT Software Design Specification emm 1 1 i 1 i I i 1 i i I 1 I 1 i 1 I i 1 i i L l information i 1 i 1 i I i i I i 1 i i I 1 i 1 1 i i i I 1 1 18 Return Object Change Log 1 15 Prompt User with Object Item Information 14 Return the object em and all its information 17 Search for Object change log i 1 1 1 1 1 1 1 1 I 1 1 1 1 1 LU 1 1 1 1 1 Lu 1 1 1 must re enter LU 1 1 LU 1 1 1 1 1 10 Retum List of Object Items 1 1 1 LI l 1 13 Search for the object item 1 1 lm ee 16 User selects the Change Log Button 19 Prompt User with the Change Log for the Object Item I I I I I I I I I I I I U I I LI If User Name or password are invalid User I 11 Prompt User with List of Object Items I I User chooses Object
66. eene entente 9 4 2 Description of AddiUser ne Nt eser ere edere Poe ie eT Re ER ee e Eee addas 12 4 2 1 Processing Narrative ase aede tee red OE er Uer a EU Te EXERCERE Ere ege 12 4 22 Interface Descriptio sinaia Rete re eerte el ae ante er eed einn 12 4 2 3 Component Processing Detail entente nenne nene nnne 12 4 3 Description of View Group Listrier ini a cono nc entere nnn i nens en a ea 13 4 31 Processing Narrative oe too salian ita 13 4 3 2 Interface Description dl eres Dee EE e ee 14 4 3 3 Component Processing Detail sess enne etnies 14 4 4 Description of View User List erede erret eet teneret dee etre eaae nha eee ete eie Pe dead d nen 14 4 4 1 Processing Narrative cede ean EO EOM e CERE NN 14 4 4 2 Interface Descrip n iui dne eere RH ae Rp teda 14 4 4 3 Component Processing Detail esses eene 15 4 5 Description OF View Groups creto etit A Peer i aee pine tees nde eoe ete e Ie cta 15 4 5 1 Processing Narrative 4 cett aiii an 15 4 5 2 Interface DesCrIptlOn eee neo e rer UU UR RO CURIE RE ERE D e ert TREES 15 45 3 Component Processing Detail 35 n ern ertt endete re EE EE EEEE TII te eee Dens 16 4 6 Descriptor of Vie w Uset ret Nt ete rer eee etd eH ede Pod ETE ERE ee e Eo ades 18 4 6 1 Processing Narrative usce ee EO NO UE OREL CHER EAE e ee ease 18 4 6 2 Interface Description tii Re eer Ue E Eee Saepe P a NR ERR 18 4 6 3 Component Pro
67. el In DesignID In Confirm yes no In Warning yes no Out message of success or message of failure Yes Out message On Error send message of failure and exit the routine clear all records from DesignTBL where ID is this DesignID clear all records from TrackedObjectTBL where ID is this DesignID if no errors occurred send message of success do nothing 4 30 3 2 Activity diagram for Delete Inventory Module display confirmation in popup message choices yes no User selects yes clear all records for this DesigniD out of Design TBL clear all records for this DesignlD out of TrackedObjectTBL 4 31 Description of Customized Report This component will allow a user to make and view a customized report 4 30 3 Component Processing Detail 68 GaTT Software Design Specification 4 31 1 Processing Narrative A user wishes to make a customized report The user must be authenticated and authorized to do so To get to the reports window the user must select the Reports tab on the main screen 4 31 2 Interface Description On this form there will be a section for Preconfigured Reports and a section for Customized Reports The user will go to the Customized Reports section The user will choose from Watch List Inventory and Requirements They will then have a view of all of the attributes of their selection They may choose any of these attributes and select the View button A report will be gene
68. elect the Reports tab on the main screen 4 32 2 Interface Description On this form there will be a section for Preconfigured Reports and a section for Customized Reports The user will go to the Preconfigured Reports section The user will see a list of reports They will select a report from this list and select the view button 4 32 3 Component Processing Detail 4 32 3 1 Algorithmic Model In Selection ReportName Out A report based on Selection View In ReportName Out a report The report information is loaded from the database and a report will be displayed 4 32 1 Processing Narrative 70 5 Sequence Diagrams The Use Cases for the tracking tool are 1 Add Object 2 Authenticate User 3 Change Log 4 Delete Object 5 Email to Assigned To Person 6 Generate Reports A Ad Hoc Reports B Pre Configured Reports 7 Linking and Embedding A Link an Internal Object B Link an External Object C Attach an External Object 8 Modify Object 9 View Object List 10 View Object In the use cases we referred to objects Objects can be defined as one of the items listed below 1 Watch Item 2 Inventory Item 3 Users 4 Groups The following are sequence diagrams for all the use cases listed above Add Object Sequence Diagram The user wants to add an object to the tracking tool database The interaction between the user tracking tool interface and the database are described in the following di
69. enne nene nennen 4 16 Description of Add Attachement to an Item enne 4 16 1 Processing Narva Hye Ur pe ne ee 4 16 2 Interface Description o oe A etie eed pus e etra ces 4 16 3 Component Processing Detail sessi nennen enne 4 17 Description of Change Log for Watch Item esses enne 4 171 Processing Narrative coy oe pese Her UR RU DURER ARE ENDE I ee ties 4 17 2Tnterface Description ird ere tt naar 4 17 3 Component Processing Detail essent nnne 4 18 Description of Change Log for Inventory Item eese 4 18 1 Processing Narrative i re eere Ue E HERE Ee Nep ERES een aes A 18 2 Interface Description eC cete et ete re t eot mee reete ae e e eR cates 4 18 3 Component Processing Detail sessi eene entente enne 4 19 Description of Email to the Assigned To Person of Watch List Item essssss 4 19 1 Processing Narrative A eerte eres eene eee er ove etre ree ente e e ERROR 4 192 Intertace Description sis 7 2 1 ir eR ee HR Ra eria e isis 4 19 3 Component Processing Detail narine esen e a a enne 4 20 Description of Email to the Assigned To Person of Inventory Item sssss 4 20 T Processing Narratives ses tn sti 4 20 2 ntertace Description un eei ree rtr oer ee E es eere E eles 4 20 3 Component Processing Detail esses eene eene en
70. er s name the user s login name and the name of the group the user is currently in will be displayed Next to the name of the group there will be a command button called ViewGroupDetails that will take you to the View Group component for this user See the View Group component description for more details There will be a command button called Modify It will be enabled if you have the modify privilege for user management This will allow you to modify the attributes of this user object See the Modify Object component description for more details There will also be a command button called Delete It will be enabled if you have the delete privilege for user management See the Delete User component description for more details 4 6 3 Component Processing Detail 4 6 3 1 Algorithmic Model In the UserID from the UserTBL for a selected user In possible selection from list of modules In possible selection from list of users ViewUser In UserID On Error send message of failure and exit the routine lookup from UserTBL gt UserNam lookup from UserTBL gt LoginName lookup from UserTBL gt GroupID lookup from GroupTBL gt GroupName ViewGroupDetails In GroupID This will direct the user to the ViewUser module Modify UserID This algorithm is described in the Modify User component description Delete UserID This algorithm is described in the Delete User component description 4 6 Description of
71. escription Populate a list with the following information the UserName for each ID in the UserTBL For users in group Populate a list with the following information the UserName for each ID in the UserTBL For users not in group Populate a list with the following information th oduleName for each module in the PrivilegeTBL e a i Populate a check box list with the following information a Create box set to unchecked a Modify box set to unchecked a View box set to unchecked a Delete box set to unchecked If a ModuleName is selected lookup from PrivilegeTBL where Module is ModuleNam Create Valu f Create Value is true the Create box is checked ookup from PrivilegeTBL where Module is ModuleName gt Modify Value f Modify Value is true the Modify box is checked ookup from PrivilegeTBL where Module is ModuleNam View Valu f View Value is true the View box is checked ookup from PrivilegeTBL where Module is ModuleNam Delete Valu f Delete Value is true the Delete box is checked H p H pr Save In GroupName Description ModuleName Create Modify Delete View Out message validate inputs On Error send message of failure and exit the routine record to GroupTBL gt GroupName record to GroupTBL gt Description X ModuleName Valu if View is true record to PrivilegeTBL where Module is X gt View tru if Create is true record to
72. eset 50 Changeset 51 Changeset 52 Changeset 53 Changeset 54 Changeset 55 Changeset 56 Changeset 57 Changeset 58 12 2 Changes for Build 2 added activity diagram for addgroup 11 01 05 01 40 12 by arhedges added a jpeg of the erd 11 01 05 01 46 02 by gsymons adduser activity diagram 11 01 05 01 56 13 by arhedges Autogenerated documentation commit 11 01 05 02 00 12 by Autogenerated documentation commit 11 01 05 03 07 09 by Autogenerated documentation commit 11 01 05 07 53 46 by 11 01 05 13 44 40 by smithswe activity diag for viewgroup 11 02 05 01 13 08 by arhedges Autogenerated documentation commit 11 02 05 02 00 24 by added activity diagram for addgroup 11 02 05 21 27 38 by arhedges added activity diagram for addgroup 11 02 05 21 27 54 by arhedges adduser activity diagram 11 02 05 21 28 08 by arhedges activity diag for viewgroup 11 02 05 21 28 23 by arhedges add diagrams 11 02 05 21 30 00 by arhedges add diagrams 11 03 05 01 20 17 by arhedges Autogenerated documentation commit 11 03 05 02 00 21 by 11 03 05 10 43 36 by smithswe 11 03 05 11 24 34 by smithswe 121 GaTT Software Design Specification Changeset 59 Here s an update to the ERD I m still working on coming up with a decent web compatible image 11 03 05 23 52 06 by gsymons Changeset 60 11 04 05 01 51 36 by jgranz Changeset 61 add diagrams 11 04 05 02 47 08 by arhedges Changeset
73. ess from TrackedObjectTBL the POID where title value selection value Add to InternalLinkTBL record ltemiD LinkiD Retum Message of success 4 15 Description of External Link to an Object This component will allow the user to link an external object to the object type item 4 14 3 Component Processing Detail 35 GaTT Software Design Specification 4 15 1 Processing Narrative A user wishes to link an external object to an object type item First the user must be logged on to the tracking tool On the Oject Type Item form the user will click the Add External Link button The user will be given a list of entries to link to the item The user will select an entry and click the OK button 4 15 2 Interface Description This component will be a button named Add External Link on the Item Screen 4 15 3 Component Processing Detail 4 15 3 1 Algorithmic Model Submit Ok In ItemID Out message of success or failure In ItemID Out message of success or failure On Error send message of failure and exit the routine Populate a drop down menu prompt with the following information HyperLink Items In Selection Out LinkURL LinkURL Selection value return LinkURL Add to ExternalLinkTBL record ItemID LinkURL if errors occurred send message of failure and exit the routine if no errors occurred send message of success and return to the item screen 4 15 3 2 Activity diagram for the External
74. essccesseeeeececeeeeeesecesaaeceeaeceeaeeceeeeaeceeaaeceeaeceeaeeeaees 66 4 29 1 Processing Narrative virer ler eer ENEE EEE E E EEEE EEEE ENERET 66 4 29 72 Tntertace DESCUIDO isien a Ret t Re eer HER EH ee aiii nadia 66 4 29 3 Component Processing Detail essere tenente nennen enne 66 4 30 Description of Delete Inventory ObJECt oooonoconnocccoccconncncoonaconccnnnncnnncccnncnonnno cono eene enne 67 43051 Processing Narrative e oreet ret ee Pe e Et eee eee e eee een e e eR ede 67 4 30 2 Interface Description sie eire tre STE ARIAS tee eee gend 67 4 30 3 Component Processing Detail esses enne enne ener nennen 67 4 31 Description of Customized ReDOlt ooooocccnnncccnonncoonnnononononncnonononnonnnnccnnnc eene 68 4 31 T Proc ssimg Narrative ien iet teer o br aep HE CR a e ieri e pita 69 4 31 2 Interface Description uui Rie eet eerte eee ce eie eet aee eri hie e green 69 4 31 3 Component Processing Detail essere enne 69 4 32 Description of View Preconfigured Report sse rennen 69 4 32 T Processimg INaITatlVe oe esce creep iere get roe e o Eee ees E esee eee aed tess 69 4 322 nterface Description 5 etcetera ete ree etg Pee tee ahah adie ete ded ee egens 70 GaTT Software Design Specification Table of Contents 4 Component Level Design 4 32 3 Component Processing Detail ceeccccccessseceenceseeeecseeceaeceeaaeceeaeceeeeecsaeessaeeee
75. ew Watch List This component will allow a user to view the a list of all Watch Items that are currently in the system 4 21 3 Component Processing Detail 50 GaTT Software Design Specification 4 22 1 Processing Narrative A user wishes to view the list of Watch Items currently in the database In order to do this the user has to have been authenticated and authorized Next the user will click on the Watch Tab A list will then be given to the user of all the Watch Items 4 22 2 Interface Description On the Watch tab a list will be given of the Inventory Items 4 22 3 Component Processing Detail 4 22 3 1 Algorithmic Model In ObjectType Out form that contains a list of all items of the Watch Type in the database and actions ViewWatchList In ObjectType OnError send message of failure and exit routine Populate a list with the following information Name Title and Description for all type value ObjectType in TrackedObjectTBL ViewWatchDetails In POID from selection This will direct the user to the View Watch object module Modify in POID from selection This algorithm is described in the Modify Watch object component description Delete in POID from selection This algorithm is described in the Delete Watch object component description Add in POID from selection This algorithm is described in the Add Watch object component description 4 22 3 2 Activity diagram for View Watch List Module
76. fication 4 18 Description of Change Log for Inventory Item This component allows the user to view all changes made to an Inventory item in the tracking tool 4 18 1 Processing Narrative First the user must be logged into the tracking tool The user must click on the tab labeled Inventory The user sees a list of items The user highlights an item and clicks on the View button The user will then see the Item Screen On this screen will be a button called Change Log Once the user clicks on the button the user can view changes made to the item 4 18 2 Interface Description This component will be a button named Change Log It will be located on the Inventory Item screen of the tracking tool 4 18 3 Component Processing Detail 4 18 3 1 Algorithmic Model In ItemID Out UserName Out FieldName Out OldValue Out NewValue Out message of failure or list of changes made to the item Submit In ItemID Out UserName Out FieldName Out OldValue Out NewValue Out LogInDate Out list of changes made to the item On Error send message of failure and exit the routine lookup from ChangesetsTBL where POID value ItemID gt fieldnam lookup from ChangesetsTBL where POID value ItemID gt oldvalue lookup from ChangesetsTBL where POID value ItemID gt newvalu lookup from ModifiedByTBL where POID value ItemID uid lookup from UserTBL where uid value uid usernam FieldName fieldnam OldValue oldvalue
77. for page AppendicesSection e 11 10 05 23 11 52 by gsymons Rotated the traceability matrix so that it doesn t get cut off in the pdf e 11 09 05 01 32 10 by jgranz Corrected alignment of paragraph e 11 09 05 01 12 34 by jgranz Added Design Metrics Table 12 1 7 Changes to documentation repository items Changeset 84 Autogenerated documentation commit 11 08 05 20 50 04 by Changeset 85 Autogenerated documentation commit 11 08 05 20 50 55 by Changeset 86 Added new images for the ERD I split them into page sized pieces 11 09 05 22 40 30 by gsymons 12 120 GaTT Software Design Specification 12 2 Changes for Build 2 12 2 1 Changes to documentation repository items Changeset 1 Initial repository layout 10 06 05 10 41 45 by gsymons Changeset 8 Added an images folder 10 16 05 23 30 36 by gsymons Changeset 9 10 16 05 23 42 27 by smithswe Changeset 10 Changed mime type to image jpeg 10 16 05 23 51 19 by gsymons Changeset 12 10 17 05 00 09 42 by smithswe Changeset 13 Set mimetypes to image jpeg 10 17 05 11 13 30 by gsymons Changeset 17 The monkey will kill you I tell you Kill you 10 20 05 11 02 07 by gsymons Changeset 18 10 20 05 17 03 49 by smithswe Changeset 20 Added favicon 10 21 05 01 55 26 by gsymons Changeset 21 Started on the design model I ve got a rough start of the static object model 10 27 05 17 56 26 by gsymons Changeset 22 Added som
78. hat is all the way to the right of the window Entering text into this box will allow the user to sort though the items in the list below When the user has entered some qualifiers into the box and presses the set button the filter will be set and only matching items will appear The other button in this set is the clear button and it clears the text field so the user can see all the original entries or start over with a new filter string 6 2 2 Inventory The inventory screen consists of four buttons just below the row of tabs The first button on the left is the add inventory button When the user clicks this button the add widow will launch The next button to the left is the view button If the user has selected an inventory item from the list below the button this will cause the inventory item to launch in the add window The next two buttons deal with the text field that is all the way to the right of the window Entering text into this box will allow the user to sort though the items in the list below When the user has entered some qualifiers into the box and presses the set button the filter will be set and only matching items will appear The other button in this set is the clear button and it clears the text field so the user can see all the original entries or start over with a new filter string 6 2 3 Reports The reports window is used to print out reports that are either stored in the program or created by the user in one of two ways
79. he cancel button When a user is in the system they will show up in the user drop box If a user is selected and the Remove user button is selected then that user will be removed from the system A user can be added to a group by selecting the user and the group in the drop down to the right of the user name and then pressing the Make a member of button This will add a user to the selected group The right gutter is devoted to group management The first on the left Add Group causes a popup window to open with a text enter box inside and an ok and cancel buttons The user can enter a group 6 2 Objects and actions 103 GaTT Software Design Specification name and if it does not exist in the program already then the group will be added and the popup will close If the group is already in the system then the user will have to enter a new name or click the cancel button The next button is the Remove group button If this button is pressed while a group is selected then that group will be removed from the system The Save button is used to save permissions for groups When a group is selected and the Permission and Object dropdowns have items selected in them then pressing the save button will assign them the permission for the object Lastly the View button will show a list of the groups and the permission and user associated with them 6 2 5 Configuration The configuration window has three buttons and a drop down This screen is used to l
80. he group and its description will be displayed There will also be a list of modules populated from the database into a control structure All of the privileges for each module will also be displayed One possible way this could be achieved is a list box will store the names of the modules There will be an un editable checkbox control next to it containing the privileges When a module is selected its privileges become checked in the list of privileges There will also be a list of users that are currently in the group This will also be put into a list structure that has been populated from the database There will be a command button called ViewUserDetails that will take you to the View User component for the selected user See the View User component description for more details 4 4 3 Component Processing Detail 15 GaTT Software Design Specification There will be a command button called Modify It will be enabled if the user has the modify privilege for user management This will allow the user to modify the attributes of this group See the Modify Group component description for more details There will also be a command button called Delete It will be enabled if the user has the delete privilege for user management See the Delete Group component description for more details 4 5 3 Component Processing Detail 4 5 3 1 Algorithmic Model In the GroupID from the GroupTBL for a selected group In possible selection from list
81. he modules with the most complexity are 1 Modify an Inventory Item 2 Add an Inventory Item 3 Modify a Watch Item 4 Add a Watch Item Extra time will be planned into the development and coding of these sections 9 4 Supplementary information Pressman Roger 2005 Software Engineering A Practitioner s Approach McGraw Hill New York Adaptable Process Model Document Templates 2001 Available at http www rspa com docs Designspec html 9 4 Supplementary information 113 10 Project Glossary Here is a collection of terms used throughout the project e CoreModules e GraphicalUserInterface e MigrationToolManual e ObjectLinkingAndEmbedding e PaperPrototyping e Privileges AddPrivilege DeletePrivilege ModifyPrivilege ViewPrivilege ProjectInventory ProjectRequirements ProjectWatches ProjectVelocity ReportingModule UserStories e TheCustomer e TheTeam e UserGroup 10 1 Core Modules Core modules are the main modules that the user will interact with Currently these are the design items filter and the main screen along with the watch list The functionality of these menus will remain while the exact layout and names will change It is intended that the names will be customizable to the specific work methodology for the group 10 2 The Graphical User Interface The user interface will resemble the current interface fairly close The intent of this is to capitalize on the experience the user alrea
82. iew button B User chooses Object 12 User enters User Name AS 1 Prompt User for User Name Uu 19 Update the Link Object field for the Object Item 88 5 Sequence Diagrams GaTT Software Design Specification Modify Object Item Sequence Diagram The user wants to modify an object in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 89 GaTT Software Design Specification w 1 i 1 i 1 i 1 1 1 1 i 1 1 i 1 1 1 i 1 1 i 1 1 information 1 1 i 1 1 1 1 i 1 1 i I 1 1 1 1 1 i 1 i 1 1 1 1 1 1 all its information 1 i i 1 1 i 1 ALL 3 i 3 cio a i a a M i c c o PP mm a ol 15 Prompt User with Object Item Information 16 User changes fields with updated information and clicks the Save button m Ha Hg 7 Ll dL y 90 5 Sequence Diagrams GaTT Software Design Specification Pre Configured Reports Sequence Diagram The user wants to create a Pre Configured report using data stored in the tracking tool database The interaction between the user tracking tool interface and the database are described in the following diagram 5 Sequence Diagrams 91 GaTT Software Design Specification EJ 1 i 1 i 1 1 I 1 1 I l I 1 1 I 1 1 I l I 1
83. iewAndScope 11 01 05 23 45 54 by jgranz Removed Major Constaints section per client request e 11 01 05 23 40 59 by jgranz Move Expected Software Response from Testing Process to Introduction 10 25 05 15 47 34 by smithswe Took out See Also e 10 25 05 15 01 41 by arhedges No comment e 10 20 05 16 31 08 by arhedges No comment e 10 12 05 22 45 41 by jgranz No comment e 10 12 05 22 45 02 by jgranz No comment 10 07 05 16 50 14 by gsymons No comment e 10 07 05 16 04 41 by gsymons No comment 12 3 2 Changes for page DataDesign e 11 04 05 03 30 26 by arhedges No comment 11 01 05 01 45 12 by gsymons No comment 11 01 05 01 43 06 by gsymons No comment 11 01 05 01 41 36 by gsymons No comment e 10 24 05 11 53 51 by jgranz No comment 12 2 1 Changes to documentation repository items 122 GaTT Software Design Specification 12 3 3 Changes for page ComponentLevelDesign e 11 07 05 23 58 21 by arhedges added architectual design section 11 06 05 23 11 08 by gsymons fixed smart quotes 11 06 05 23 02 58 by gsymons fixed smart quotes 11 04 05 17 12 41 by arhedges added components 11 04 05 12 53 42 by arhedges No comment 11 04 05 12 45 22 by arhedges added pictures 11 04 05 04 32 45 by jgranz took out unnecessary sections of pressman template 11 04 05 03 46 28 by jgranz Added Act Diagrams e 11 04 05 03 20 56 by arhedges added components 11
84. ification record to GroupTBL gt GroupName record to GroupTBL gt Description X ModuleName Valu if View is true record to PrivilegeTBL where Module is X gt View tru if Create is true record to PrivilegeTBL where Module is X gt Create tru if Modify is true record to PrivilegeTBL where Module is X gt Modify true if Delete is true record to PrivilegeTBL where Module is X gt Delete tru if no errors occurred send message of success Users message validate inputs On Error send message of failure and exit the routine if Users Value is None send message and exit the routine else lookup from GroupTBL gt GroupID TheID GroupID record to UserTBL gt PrimaryGroupID TheID if no errors occurred send message of success 4 1 3 2 Activity diagram Save 4 1 3 Component Processing Detail 10 GaTT Software Design Specification read text inputs group name description Inputs are null o record group name and description in GroupTBL WM read dropbox input module name read checkbox input privileges C View is checked liil record view true in PrivilegeTBL for module name d Create is checked e R record create true in PrivilegeTBL for module name J lt p Modify is checked record modify true in PrivilegeTBL for module name a a record delete true in PrivilegeTBL for module name m e 4 1 3 3 Activity diagram Add
85. inator and cmpolssueNum to WatchesTBL record ShartDesc LongDesc CreateDate to TrackedObjectTBL read dropbox inputs Type AssignedTo SystemArea BusinessSegment BusinessOwner record Type AssignedTo SystemArea BusinessSegment BusinessOwner to TrackedObjectTBL read checkbox input CriticalPathitem Is checked de record CriticalPathMethod true in WatchesTBL le not checked record CriticalPathMethod false in WatchesTBL read textbox input recommendation record recommendation in WatchesTBL W 4 26 Description of Add Inventory Object This component will allow a user to add an inventory object to the inventory list and describe the attributes of that object 4 26 1 Processing Narrative A user wishes to add an inventory object to the inventory list The user must be authenticated and authorized to do so To get to the inventory window the user must select the inventory tab on the main screen There will 4 25 3 Component Processing Detail 58 GaTT Software Design Specification be a command button called add inventory This will take the user to the add inventory interface described below 4 26 2 Interface Description On this form there will be both required and non required fields To start out the inventory objects will have attributes that are considered necessary and attributes that are common to both inventory objects and watch objects Other attributes may be added by an authorized user in the configuration sec
86. ist and preview custom reports that have been created The first button on the left called Add will launch the form designer for the user with a default template The next two buttons will work in conjunction with the drop down box to the right of them The Remove button will remove the selected form from the dropdown while the Preview button will display the form in the space below the buttons 6 2 6 Requirements The requirements screen consists of three buttons just below the row of tabs The first button to the left is the View button If the user has selected a requirement item from the list below the button they will cause the requirement to launch in the add window The next two buttons deal with the text field that is all the way to the right of the window Entering text into this box will allow the user to sort though the items in the list below When the user has entered some qualifiers into the box and presses the set button the filter will be set and only matching items will appear The other button in this set is the clear button and it clears the text field so the user can see all the original entries or start over with a new filter string 6 2 7 Generic Add Window Starting at the top and working from left to right most of the original buttons from the Add window still exist First the Cancel button will close the window with out saving any of the information entered to the data base It leaves the information as it was or the new ti
87. it the routine if no errors occurred send message of success 4 11 3 2 Activity diagram Logln 4 11 1 Processing Narrative 29 GaTT Software Design Specification read text input name password Any input is null retum fields left blank error message access UserTBL for loginName and loginPassword loginPassword is not password value return incorrect password message allow user to proceed to the main menu loginPassword is password value 4 12 Description of Change Password This component will allow the user to change their password during the log in stage 4 12 1 Processing Narrative A user wishes to change their password First the user must launch the application The first screen will be a login interface On this interface there is a command button called Change Password The user selects this button which brings up the change password interface described below 4 12 2 Interface Description There are text boxes for the user s login name current password new password and confirmation of new password When the user is finished they will select the Submit button If the information is correct they will receive a confirmation message If the information is incorrect they will receive a message of failure and their password will not be altered 4 12 3 Component Processing Detail 4 12 3 1 Algorithmic Model In ame In CurrentPassword In NewPassword In NewPasswordConfirm
88. ivilege e 11 03 05 23 11 42 by gsymons Cut the Project Glossary part of the heading 11 01 05 15 05 37 by smithswe standardized page layout format e 10 25 05 16 08 42 by smithswe Removed See Also e 10 09 05 18 31 04 by gsymons Added header and footer fixed grammar e 10 06 05 07 32 19 by arhedges No comment 12 3 19 Changes for page Projectinventory e 11 01 05 15 03 37 by smithswe standardized page layout format e 10 25 05 16 07 31 by smithswe Removed See Also e 10 20 05 19 44 34 by arhedges No comment 10 09 05 15 53 13 by gsymons Added some more detail a header and some cross reference links e 10 06 05 07 30 24 by arhedges No comment 12 3 20 Changes for page ProjectRequirements 11 01 05 15 04 08 by smithswe standardized page layout format e 10 25 05 16 05 05 by smithswe Removed See Also e 10 20 05 19 46 01 by arhedges No comment e 10 09 05 18 18 50 by gsymons Added header and footer 10 06 05 07 45 02 by arhedges No comment 12 3 21 Changes for page ProjectWatches 11 01 05 15 03 17 by smithswe standardized page layout format e 10 25 05 16 07 23 by smithswe Removed See Also e 10 17 05 20 47 03 by gsymons Change issues to watches 12 3 15 Changes for page AddPrivilege 126 GaTT Software Design Specification 12 3 22 Changes for page ProjectVelocity e 11 03 05 23 12 23 by gsymons fixed header and cut project glossary from it e 10 25 05
89. ject configures the tool for its own use It also simplifies the queries required to create views of the objects in the database essentially views can be created that join all of the tables that make up an object instance which in turn makes it easier for end users to write queries for custom reports In addition to the object storage portion of the database there is also a storage area for users groups and their privileges This security portion of the database is fairly straightforward Users consist of a unique id a primary group a hashed password and two flags indicating whether or not the user is disabled and whether the user s password has been expired At this time there is no automated method for expiring a password it is simply a method by which an administrator can force a user to change a password The password itself is stored as an MDS hash and is therefore unrecoverable once stored The primary group is used to determine a users privileges no other group memberships impact privileges Groups and users are joined using the GroupMemberships table A group s privilege list is stored not surprisingly as a set of rows in the PrivilegeLists table and the names of the actual privileges are stored in the Privileges table The last section of the database is concerned with auditing the users actions within the tool It consists of two tables the Changesets table and Logins table The Logins table simply stores a timestamp and a user
90. l instructions will be created to aid the NPI team in the detailed process of moving the current data used by the NPI tracking tool to the generic storage data tables 9 2 Packaging and installation issues 111 GaTT Software Design Specification 3 To aid all new users with using the tool the team will provide an Tracking Tool End User Manual to BCBSM 9 3 Design metrics to be used The team will use architectural design metrics for the tracking tool project These metrics focus on characteristics of the program architecture with emphasis of the effectiveness of the modules without having to know the inner workings of the module The three software complexity measures are 1 Structural Complexity This is calculated by S 1 f out 1 where f out is the number of modules that are directly invoked by module i 2 Data Complexity This is calculated by D 1 ev f out 1 1 where v i is the number of input and output variables that are passed to and from module i 3 System Complexity This is calculated by C 1 5 1 DG The following table shows the complexity measures for the 45 use case stories Please use the use case story legend in the above Tracability matrix section for the following table Use Case Story Number i 3 2 11 3313 33 2 1 33 3 33 9 3 Design metrics to be used 112 GaTT Software Design Specification pa FO ps ps5 ana B 3 25 6 25 From the above table t
91. ll TechnologyUsed items in separate controls e 4 28 3 Component Processing Detail 65 GaTT Software Design Specification 4 29 Description of Delete Watch Object This component will allow a user to delete a watch list object 4 29 1 Processing Narrative A user wishes to delete a watch list item The user must be authenticated and authorized to do so To get to the watches window the user must select the watches tab on the main screen There will be a command button called delete watch This will take the user to the delete watch interface described below 4 29 2 Interface Description A confirmation message box will appear on the screen If the user selects no nothing will happen If the user selects Yes another message box will appear on the screen to remind the user to make sure nothing depends on this object and to ask them if they are sure they wish to delete the object If the user selects no nothing will happen If the user selects Yes the object will be deleted 4 29 3 Component Processing Detail 4 29 3 1 Algorithmic Model In WatchID In Confirm yes no In Warning yes no Out message of success or message of failure Yes Out message On Error send message of failure and exit the routine clear all records from WatchTBL where WatchID is this WatchID clear all records from TrackedObjectTBL where ID is this WatchID if no errors occurred send message of success do nothing 4 29 3 2 Activity diag
92. mons Added project glossary index 12 3 10 Changes for page CoreModules e 11 01 05 15 07 21 by smithswe standardized page layout format e 10 20 05 19 41 07 by arhedges No comment e 10 12 05 18 42 37 by smithswe Defined Core Modules 12 3 11 Changes for page GraphicalUserlnterface 11 01 05 15 02 04 by smithswe standardized page layout format e 10 20 05 19 40 10 by arhedges No comment e 10 20 05 19 35 29 by arhedges No comment e 10 12 05 18 09 20 by smithswe No comment e 10 12 05 18 08 45 by smithswe Described the UI and linked to pictusers we allready have 12 3 12 Changes for page MigrationToolManual e 11 03 05 23 10 13 by gsymons Cut the Project Glossary part of the heading 11 01 05 15 08 40 by smithswe standardized page layout format e 10 20 05 19 39 25 by arhedges No comment e 10 20 05 19 37 25 by arhedges No comment e 10 17 05 21 26 32 by gsymons No comment e 10 12 05 22 58 14 by jgranz No comment e 10 12 05 17 40 57 by smithswe Added disctiption to the documentataion of the tool section 12 3 13 Changes for page ObjectLinkingAndEmbedding e 11 01 05 15 05 26 by smithswe standardized page layout format e 10 25 05 16 06 11 by smithswe Removed See Also e 10 09 05 18 26 01 by gsymons Fleshed out the definitions and added a header and a footer e 10 06 05 11 04 05 by smithswe Defined link v1 12 3 14 Changes for page PaperPrototyping e 11 03 05 23 16 2
93. n 10 10 Project Inventory Project Inventory are the various documents artifacts or widgets for the project These items may include Detailed designs Conceptual designs e Source code Executable components Major threads of development Each of these items may have its own InventoryType that specifies what kind of information needs to be tracked for that item 10 11 Project Requirements This module tracks all information that is related to the current project s requirements Because of The customer s corporate requirement to use RequisitePro to manage requirements this module is essentially a read only view of the existing RequisitePro data It s really only here so that links can be created from requirements to other tracked items 10 12 Project Watches Project Watches are various items which need special attention from the project team Examples of Watches that exist in the current NPI Tracking Tool are e Questions and Decisions e Related Projects e Business Readiness e Multiple PINs Other projects may define their Watches according to their own particular requirements 10 13 Project Velocity Project Velocity is the core metric used in Extreme Programming to measure productivity It is calculated by totalling the number of StoryPoints completed in an iteration TheCustomer is not permitted to select more than the Project Velocity in UserStories to complete in an iteration This restriction helps to control sc
94. n repository 1teMS ee eeeeesceeestecesceeeeeeceeeeeeceeaeceeaeeeeaeeeeaees 121 12 3 Changes for Build aii e rb see ier Di Reese P a cere ciii estas 122 12 3 1 Changes for page ProjectOverviewAndsScope cococcccoccconocononncoonnconnncnonnncnona cono conan conan conan 122 12 3 2 Changes for page DataDesign seseeseeeseeeeeeeenenneee enne eren entere nentes 122 12 3 3 Changes for page ComponentLevelDesign eeeseseseeeeeeeeeeeeeennerennenenn 123 12 3 4 Changes for page SequenceDiagramMs eccceececeeecessteeesseceeaceseeeeceeeeeseceeaaeceeaeceeaeeeeaees 123 12 3 5 Changes for page UserlInterfaceDesign sese 124 12 3 6 Changes for page RestrictionsLimitations sees enne 124 12 3 7 Changes for page TestinglIssues seseseseseseeeeeeenee enne eene ener 124 12 3 8 Changes for page AppendicesSection sess 124 12 3 9 Changes for page ProjectGlossary sese enne enne 124 12 3 10 Changes for page CoreModules sees ener 125 12 3 11 Changes for page GraphicalUserlInterface seen 125 12 3 12 Changes for page MigrationToolManual eene 125 12 3 13 Changes for page ObjectLinkingAndEmbedding sess 125 12 3 14 Changes for page PaperPrototypiNY ocoocccconcccnnccnonnncnnonanonnccnnoconnnnconnocnnnacnnn cc nnnnc rn
95. nal traces box this show links between items in the database Users can add and remove links as well as see a from with all the links to the object 6 3 Interface design rules The focus for the components in the user interface is simplicity common location and close proximity The focus on proximity was considered as a way to keep all the items that the user was using close to each other so the eyes would not have to wander the screen area to find what they were looking for Essentially this makes the total search area smaller so that searching for the desired command will not take as long The next approach used was to keep as many of the menus as similar as possible though the interface The intention was to build on what the user knew about one window and allow them the ability to use it on the next This was not possible on all the windows In those cases similar selection methods were used with the same intent Lastly simplicity was considered important since we want the tool to be as user friendly as possible The second reason was because the tool is supposed to be a generic version of the tool used by NPI If the tool was supposed to be made universally applicable it seems that the user interface should too The first thing that was used to achieve more simplicity was to diverge from a main menu where users selected what function of the tool they wanted to use to a main form that had tabs with all the primary functionality of the tool listed
96. ncnrnnnnss 125 12 3 15 Changes for page AdOPrivile ge eeccecseecenceceseeeeseeeesaeceeaeeeeaeeceeeecseceeaaeceeaeceeaeeceaees 125 12 3 16 Changes for page DeletePrivilege ssessssessseseeeeeeeenr entren 126 12 3 17 Changes for page ModifyPrivileg6 ooooconnncccnocccnonncononannncccnnoconnnccnnnocnnnccnnn cc nnnnc rn nccrnnnnos 126 12 3 18 Changes for page ViewPrivilege esses eene eren entente 126 12 3 19 Changes for page ProjectInventory seesesseseeeeeeeree eere 126 12 3 20 Changes for page ProjectRequirements sse 126 12 3 21 Changes for page ProjectWatches ccccecscecescecsseceesseeesaeceeaeeeeeeeceeeeeeceeaaecseaeceeaeeeeaees 126 GaTT Software Design Specification Table of Contents 12 3 25 Changes for page TheCustomer nsii ni iee o Naer EEEa INEEN EES E ener nnne vi 1 Introduction The key to effective management is the communication of project requirements goals and risks to the project team The NPI team at BCBSM has developed a tool for this precise purpose The tool tracks requirements designs and issues such as risks The team can track the progress on the project and issues which still need to be addressed The tracking tool developed by the NPI project team is an asset to technical management of projects BCBSM would like to develop a generic tracking tool similar to the NPI team s tool This tool would perform the s
97. ne entente nenne GaTT Software Design Specification Table of Contents 4 Component Level Design 4 21 Description of View Inventory List eseseseseeeseeeeeeeeenen nene entere eene 49 ADV Processing Narrative dor e E ee Paesi e to caves bacadeebabaceessbeagesbenagsnstbcates 49 4 21 2 Interface Description eoe et eee HER HERR EUR EE n e PERS ES sides 40 4 21 3 Component Processing Detall oooonnnnnnnnncnnocccnonoconnnnnnonacnonacnnnnonnnccnnno nono nonnn na cnnn nc eterne nns 49 4 22 Description of View Watch List ccc eccecesccesseceesseceececeeececseeesaeceeaaeceaeeceeeeeeeeeesaeceeaueneaeeeeeeeees 50 4 221 Processing Narrative 2 e eee cet rire der e UR Foe eit sete Dee Dod rete de MR calco 51 4 222 Interface Description uite eite entere RI RR EU Eee ehe ee EIN ee eee recede io 51 4 22 3 Component Processing Detail eese eene ennt 51 4 23 Description of View Watch ObjeCt cocoooonocnnnnocinonccconcconnnccnonaconnccnnnnocnno conan non etnies 52 A123 L Processing Nara Einicio 53 423 2 Interface DESCUIDO o 4e eet entert A AE ee te ehe ces at ie eie deep pepe 53 4 23 3 Component Processing Detail eese ener cano nc eterne ens 53 4 24 Description of View Inventory Object essent entente 54 4 24 1 Processmg Narrative 6e rete eerte e ridens ele erede pe EUR adepta 55 4 24 2 Interface Description 1 ueteri teet tre Rege eet ed e eee dede e
98. ng Detail 4 4 3 1 Algorithmic Model In possible selection from list of user objects Out a list of the user objects that are currently in the system ViewUserList On Error send message of failure and exit the routine Populate a list with the following information UserName and LoginName for each UserID in UserTBL GroupName where Group ID is User ID from GroupTBL ViewUserDetails In selection Out message This algorithm is described in the View User component description Modify In selection Out message This algorithm is described in the Modify User component description Delete In selection Out message This algorithm is described in the Delete User component description 4 5 Description of View Group This component will allow a user to view the details of a group that is currently in the system 4 5 1 Processing Narrative A user wishes to view the details of a group In order to do this the user has to have been authenticated and authorized There is more than one way the user can do this The user can go to the User Management tab on the main screen and click the button View Group List The user may then select a group from the list and click View Details e If the user is in the View User section they can select the View Group Details button that is next to the group name description This is described in the View User component description 4 5 2 Interface Description The name of t
99. of modules In possible selection from list of users ViewGroup In GroupID On Error send message of failure and exit the routine lookup from GroupTBL gt GroupName lookup from GroupTBL gt Description Populate a list with the following information the UserName for each ID in the UserTBL Populate a list with the following information the ModuleName for each module in the PrivilegeTBL Populate a check box list with the following information a Create box set to unchecked a Modify box set to unchecked a View box set to unchecked a Delete box set to unchecked If a ModuleName is selected lookup from PrivilegeTBL where Module is ModuleNam Create Valu f Create Value is true the Create box is checked ookup from PrivilegeTBL where Module is ModuleName gt Modify Value f Modify Value is true the Modify box is checked ookup from PrivilegeTBL where Module is ModuleNam View Valu f View Value is true the View box is checked ookup from PrivilegeTBL where Module is ModuleNam Delete Valu f Delete Value is true the Delete box is checked H p B p ViewUserDetails In UserID from selection This will direct the user to the ViewUser module Modify GroupID This algorithm is described in the Modify Group component description Delete GroupID This algorithm is described in the Delete Group component description 4 5 3 2 Activity diagram ViewGroup 4 5 2 In
100. onse The software should response as follows 1 Information about an object should be added to the database if the user with proper access privileges wants to add an object to the tool 2 Information should be updated in the database if the user with proper access privileges wants to modify an object in the tool 3 Information should be deleted from the database if the user with proper access privileges wants to remove an object from the tool 4 Users should only be able to access the tool if they have a valid username and password 5 User should only be able to access the modules of the tool for which they have privileges 1 4 Expected software response 2 Data Design 2 1 Data Structures Since the development platform Microsoft Access is essentially a prebuilt interface to the database there are actually very few data structures internal or external and most of those are defined by the Access platform itself Because the platform defines almost all of the data structures we will be using there is little need to detail them here Instead refer to the Access help and Microsoft s online MSDN library The primary library that will be used is the ActiveX Data Objects Database ADODB library This library will be used for any programmatic access to the database as opposed to queries bound to forms and reports In addition to ADODB we will also use portions of the Access Automation interface which will allow us to automate som
101. ope and keep TheTeam from taking on more work than they can handle for an iteration 10 14 Reporting Module The reporting module is where the user will be able to see reports based on queries Some of these reports will be based on predefined queries and will be called Predefined reports The other reports will be made by custom queries and considered Custom Reports 10 10 Project Inventory 116 GaTT Software Design Specification 10 15 User Stories User stories are Extreme Programming s answer for requirements gathering Basically a user story is just that a story about how the user uses the system or how the system interacts with other systems A user story should be a piece of functionality that can be implemented in a single iteration If it s too big then it needs to be split into multiple stories Once a story has been written it can be assigned to a developer and built The way we are using user stories is to first create a large use case The individual use cases are extremely general From the general use case come specializations These specializations if small enough may be single user stories or may need to be split even more Once the user stories for the use cases are written they are entered into the ticket tracking system as tickets and assigned to a developer The developer then builds the story and tests it When it passes its unit tests the story is released to the customer for acceptance testing 10 16
102. or this application is a data centered structure The database resides at the center of this architecture The components that make up this application will frequently read from this database and write to this database The diagram below illustrates this concept 3 1 1 Architectural Diagram 3 Architectural Design 4 Component Level Design This section describes the design of each component in detail For each component a short narrative will be given This will be followed by a description of a possible user interface A basic algorithm will be explained followed by an activity diagram if appropriate 4 1 Description of Add Group This component will allow a user to add a group to the system Groups are made up of users who share the same privileges to the system 4 1 1 Processing Narrative A user wishes to add a group to the list of groups In order to do this the user has to have been authenticated and authorized The user must go to the User Management tab on the main screen and click the button Add Group The user then fills in required and optional information described in the interface description below 4 1 2 Interface Description The Add Group function is activated when the user clicks on the Add Group button located in the User Management tab on the main screen When this button is selected the following interface will be visible on the screen There will be a text box to enter the name of the group and its descri
103. ption There will be a control possibly a drop down menu to select a module The modules are Watches Inventory Requirements Configuration and User Management It may be possible to configure this list There will be a control next to this which contains checkboxes for privileges The privileges are View Create Modify and Delete There will be a Save command button next to this Essentially the user will select a module in the drop down box check the desired privileges for that module and select the Save button This will be repeated for each module There will also be an option to add users to this group There will be a control possibly a drop down menu populated with all of the users in the database To add a user to a group one would select a user from the control and click on the Add command button located nearby 4 1 3 Component Processing Detail 4 1 3 1 Algorithmic Model In GroupName In Description In ModuleName Watches Inventory Requirements Configuration User Management In View true fals In Create true fals In Modify true false In Delete true fals In Users None Userl to UserN Out message of success or message of failure Save In GroupName Description ModuleName Create Modify Delete View Out message validate inputs On Error send message of failure and exit the routine 4 Component Level Design 9 Add In Out GaTT Software Design Spec
104. ram for Delete Watch Module 4 29 Description of Delete Watch Object 66 GaTT Software Design Specification display confirmation in popup message choices yes no User selects no User selects yes display warning in popup message choices yes no User selects no User selects yes clear all records for this WatchlD out of WatchTBL clear all records for this WatchlD out of TrackedObjectTBL 4 30 Description of Delete Inventory Object This component will allow a user to delete an inventory object 4 30 1 Processing Narrative A user wishes to delete an inventory object The user must be authenticated and authorized to do so To get to the inventory window the user must select the inventory tab on the main screen There will be a command button called delete inventory This will take the user to the delete inventory interface described below 4 30 2 Interface Description A confirmation message box will appear on the screen If the user selects no nothing will happen If the user selects Yes another message box will appear on the screen to remind the user to make sure nothing depends on this object and to ask them if they are sure they wish to delete the object If the user selects no nothing will happen If the user selects Yes the object will be deleted 4 30 3 Component Processing Detail 4 29 3 Component Processing Detail 67 GaTT Software Design Specification 4 30 3 1 Algorithmic Mod
105. rated based on their selections There will also be a button to save this report Once a report is saved it will appear on the list of Preconfigured Reports 4 31 3 Component Processing Detail 4 31 3 1 Algorithmic Model In Selectionl WatchList Inventory Requirements In Selection2 SelectionN attributes of Selectionl Out A report based on Selectionl and Selection2 SelectionN FormLoad On Error send message of failure and exit the routine if Selectionl WatchList lookup WatchList attributes display WatchList attributes in lists if Selectionl Inventory lookup Inventory attributes display Inventory attributes in lists if Selectionl Requirements lookup Requirements attributes display Requirements attributes in lists if no errors occurred send message of success View In all from above Out a report Either a report is shown with the selected fields filled in or the form designer will a Save The user will enter a name for the report The user will enter a short description for the report The report information will be saved 4 32 Description of View Preconfigured Report This component will allow a user to view a preconfigured report 4 32 1 Processing Narrative A user wishes to view a preconfigured report The user must be authenticated and authorized to do so To get 4 31 1 Processing Narrative 69 GaTT Software Design Specification to the reports window the user must s
106. rimaryGroupID Make caption of drop box GroupName Save In UserName LoginName Group Out message validate inputs On Error send message of failure and exit the routine record to UserTBL gt LoginName record to UserTBL gt UserNam lookup from GroupTBL where name is Group Value gt GroupID TheID GroupID record to UserTBL gt PrimaryGroupID TheID if no errors occurred send message of success 4 8 3 2 Activity diagram Save 4 8 1 Processing Narrative 25 GaTT Software Design Specification access UserTBL for userName loginName and primaryGrouplD where UserlD selected user s ID display userName and loginName in textbox access GroupTBL for all groupNames display all groupNames in a dropdown list access GroupTBL for aroupName where grouplD is primaryGrouplD dropdown Caption groupName 4 9 Description of Delete Group This component will allow a user to delete a group from the system 4 9 1 Processing Narrative A user wishes to delete a group from the program In order to do this the user has to have been authenticated and authorized There is more than one way to access the delete interface e The user can go to the User Management tab on the main screen and select the button View Group List The user may then select a group from the list and select Delete e The user can go to the User Management tab on the main screen and select the button View
107. rmance Requirements include 1 Handling of at most 50 multiple users at one time 2 Tracking Tool should be take no more than 3 seconds to store an object 3 Tracking Tool should be take no more than 3 seconds to retrieve an object 4 Tracking Tool should be take no more than 10 seconds to create a report 8 3 Identification of critical components The following situations are critical and demand special attention during testing 8 Testing Process 107 GaTT Software Design Specification 1 Confirmation of a valid username 2 Confirmation of a valid password 3 Security of the tracking tool especially the modify add view and delete privileges 4 Error handling of invalid data 5 Adding objects to the tracking tool 8 3 Identification of critical components 108 The following table shows how the use cases map back to the requirements for the tracking tool 9 1 Requirements traceability matrix Requirement 1 2 3 fa 5 6 7 ls 10 1L 12 13 9 Appendices eee TELM 109 9 Appendices GaTT Software Design Specification A a Ee PSI A The Use Case Story Legend is as follows 1 2 3 4 5 6 7 8 Modify User Add User Delete User View User List View User Object Modify Group Add Group Object Delete Group Object View Group List View Group Object Login Change Password Log Out Modify Watch Template Modify Inventory Templa
108. rmance bounds ete dde repre Hatte D het 107 8 3 Identification of critical components esses ener 107 NO NETTE 109 9 1 Requirements traceability Natrix nyecr einer ioir E ener nenen tenentes 109 9 2 Packaging and installation SSUES eorias ieee ee i eE REE nen tenens 111 9 3 Design metrics to be sed rrena n ii e obe e edle ia Rn e aan 112 9 4 Supplementary information ssssseseeeseeeeee eene enne nenen rentes iens interiret 113 AO 5 eereeee soeur gene uento E oa s eo nos ea E ee eoe voa eee E ee Pn ea you oe AEE 114 TO T GCore Modul s core err tt eerte Devine Sas vetet uer e eR tw a ventre tree aede Bovine 114 10 2 The Graphical User Interface 2 epp ee Peri ERR inde E Ee ERES HR sas 114 10 3 The Migration Tool Manual sese EEE etnies inneren ens 114 10 4 Object Linking and Embedding sess nennen enne nentes 115 10 5 Paper Prototyping er ette eee eee eee eda pente teet d hee eL ne an 115 10 6 Add Privilege ecd en atentos eene nias its 115 10 7 Delete Privilege oed ra UP ga eae 115 10 8 Modify Privilege 5 tote bec erret teer tr ed ee ee re abs 115 10 0 View Privilege ett tte titt tete I TR pU eoe cle aee oe eee a tete dee 115 GaTT Software Design Specification Table of Contents 10 Project Glossary TOTO Project O rer EAAS YU EPA SX REREURR ete Te ERE INR e MNT 116 10 11 Project Requirements rn onte Heer terere Re recie te AL
109. rovide the ability to link or otherwise create references to files documents or other artifacts outside the tracking modules 6 The tool must provide the ability to attach or otherwise embed files documents or other artifacts to items in the tracking modules 7 The tool must provide basic access security A The tool should provide a group or role based security model B The tool must support the following privileges ViewPrivilege AddPrivilege ModifyPrivilege DeletePrivilege 8 The tool must provide a ReportingModule 9 All CoreModules should be configurable Configurable attributes must have the ability to be flagged as required attributes Configurable attributes must have at least the ability to be renamed The tool must provide user the ability to define content of drop down menus The tool may provide a method for configuring the layout of data entry screens 10 The tool must provide a GraphicalUserInterface 11 The tool must provide a system for tracking user activity This activity tracking system may only track logins and logouts 12 The tool must provide a way to email to the originator or to the assigned to person of an object 13 The tool must provide a way to log changes made to items tracked by the tool 9 2 Packaging and installation issues 1 To aid in the installation of the tracking tool for new instances the team will provide an Administration Manual to the NPI team 2 Migration Too
110. ses that we plan on having in the test plan are adding an item to the database then making sure you can view the item on the object list and making sure the login function works after the add watch item function is added 3 System Testing The purpose behind System Testing is to fully exercise the computer based system The types of System Tests we will conduct are e Security Testing This is a series of test that verify that security features built into the tracking tool do perform and protect Some examples of test cases that we plan on having in the test plan are using an invalid name and making sure the user is not allowed to access the tool and given a valid username and password making sure the user can only access the areas of the tool where they have proper privileges e Performance Testing This is a series of tests that verify the performance and speed of the tracking tool Some examples of test cases that we plan on having in the test plan are making sure the user can add an item to the database within 3 seconds and the same for delete an item 4 Validation Testing Validation Testing begins when Integration Testing ends and the tracking tool is completely assembled The goal is to validate that the tracking tool operates in the manner that the client requested Some examples of test cases that we plan on having in the test plan are user can log into the tool and user can generate reports 8 2 Performance bounds Perfo
111. ss from TrackedObjectTBL objectTitle where POid values WatchListID Access from TrackedObjectTBL objectDescription where POid value WatchListlD Send email to UserName with message containing WatchlD objectTitle and objectDescription 4 19 3 Component Processing Detail 46 GaTT Software Design Specification 4 20 Description of Email to the Assigned To Person of Inventory Item This component will allow the user to email an Inventory item and details to a user 4 20 1 Processing Narrative A user wishes to email to the person assigned to an Inventory item First the user must be logged on to the tracking tool On the Inventory Item form the user will click the Email button The user will be given a list of names of people on the team The user will select a name and click the OK button 4 20 2 Interface Description This component will be a button named Email on the Inventory Item Screen 4 20 3 Component Processing Detail 4 20 3 1 Algorithmic Model In InventoryID In Name Out Name Out InventoryID Out Title Out Description Out Email or message of failure Submit In InventoryID Out InventorytID Out Name Out Title Out Description Out message and email On Error send message of failure and exit the routine Populate a drop down list prompt with the following information UserNames of all Items in UserTBL Ok In Selection Out Name Name Selection value return Name lookup from TrackedObje
112. te Add Template Object Delete Watch Type Delete Inventory Type View Template List View Template Object Modify Inventory Object Add Inventory Object Delete Inventory Object 24 View Inventory List 25 View Inventory Object 26 Modify Watch Object 27 Add Watch Object 28 Delete Watch Object 29 View Watch List 30 View Watch Object 31 View Requirement List 32 View Requirement Object 33 Modify Report 34 Add Reports to Pre Configured Reports NNN NN RRR RR RR Re Ree O WNrR CO MONNANNBWNK CO 9 1 Requirements traceability matrix 110 GaTT Software Design Specification 35 Make Ad Hoc Report 36 View Pre Configured Reports 37 View Report List 38 View Report Object 39 Attach External Object 40 Link Internal Object 41 Link External Object 42 Email To Assigned To Person of a Watch Object 43 Email To Assigned To Person of an Inventory Object 44 Change Log for a Watch Object 45 Change Log for an Inventory Object The Requirements Legend is as follows 1 The tool must provide the ability to track at least 2 distinct classes of project information A ProjectWatches B ProjectInventory 2 The tool may provide a separate ProjectRequirements tracking module 3 The ProjectRequirements module may be a read only view of existing Requisitepro data 4 The tool must provide the ability to link or otherwise create references between items in the tracking modules 5 The tool must p
113. terface Description 16 GaTT Software Design Specification User selects a module from drop down access PrivilegeTBL for View View true de set checkbox View checked i View false e set checkbox View unchecked Create true w set checkbox Create checked Create false 3o set checkbox Create unchecked access PrivilegeTBL for Modify Modify true e set checkbox Modify checked i set checkbox Modify unchecked l access PrivilegeTBL for Delete Delete true ce set checkbox Delete checked Delete false E set checkbox Delete unchecked i 4 5 3 Component Processing Detail 17 GaTT Software Design Specification 4 6 Description of View User This component will allow the current user to view the details of a user object that is currently in the system 4 6 1 Processing Narrative A user wishes to view the details of a user object In order to do this the user has to have been authenticated and authorized There is more than one way the user can do this e The user can go to the User Management tab on the main screen and click the button View User List The user may then select a user object from the list and click View Details e If the user is in the View Group section they can select the View User Details button after selecting an entry in the list of user objects This is described in the View Group component description 4 6 2 Interface Description The us
114. tion The required elements on this form will be described as follows There will be text boxes for the following things the date created a short description or title and a long description There will be a dropdown list of users populated from the user table to select who this object is assigned to There will also be a dropdown list to select this object s type detailed design conceptual design etc The non required elements on this form will be described as follows There will be a text boxes to enter the release the planned draft date the actual draft date the planned internal review date the actual internal review date the planned business review date the actual business review date the planned quality review date and the actual quality review date There will be dropdown lists of the name of the team populated from the team table the business segment the system area and the business owner There will also be controls to add application systems and technologies used There will also be controls to add attachments and to link files Those components are described elsewhere There will be a cancel command button that will enable the user to cancel the process of adding an inventory item at any time There will be a save button that will save the changes to the database 4 26 3 Component Processing Detail 4 26 3 1 Algorithmic Model In ShortDesc LongDesc CreateDat In Type AssignedTo In Release PlannedDraftDate
115. wners on the project can be assigned to the Business Owners group Then the tool can query that group s membership to populate a drop down list of user names on a tracking record 10 17 The Team 118 11 Changelog 11 Changelog 119 12 12 1 Changes for Build 3 12 1 1 Changes for page DataDesign e 11 10 05 20 04 17 by gsymons fixed page layout table so it looks more like all the other tables e 11 10 05 01 00 04 by gsymons Fleshed out the actual design description e 11 09 05 22 56 03 by gsymons Added paged ERD e 11 09 05 17 57 15 by arhedges spelling corrections 12 1 2 Changes for page ComponentLevelDesign e 11 09 05 23 17 10 by jgranz Corrected spelling in View Inventory Object Module e 11 09 05 23 12 39 by jgranz Corrected grammar in the Change Log Section e 11 09 05 18 28 05 by arhedges spelling punctuation grammar corrections 12 1 3 Changes for page SequenceDiagrams e 11 10 05 00 07 29 by jgranz Fixed indentation of sub categories e 11 10 05 00 03 13 by jgranz Added documentation to the sequence diagrams 12 1 4 Changes for page UserlnterfaceDesign e 11 09 05 21 18 36 by smithswe Added descritpion of the Add Window e 11 09 05 02 01 04 by jgranz Corrected spelling and grammar 12 1 5 Changes for page Testinglssues e 11 10 05 13 43 41 by jgranz Added example test cases to the test process e 11 09 05 01 42 20 by jgranz Changed format and correct spelling 12 1 6 Changes
Download Pdf Manuals
Related Search
Related Contents
Erweiterungsmoduls Mitel M680i NIGHT VISION BINOCULARS Deutsch - Centurion Ranhuradora de Tubos Combinado Hikvision Digital Technology DS-7216HWI-SH Samsung 삼성 스마트카메라 - Photogalerie.com - USER MANUAL - MANUEL DE L`UTILISATEUR Copyright © All rights reserved.
Failed to retrieve file