In software development, a use case is used to identify, clarify and manage the requirements of the software to be developed. This includes all possible user actions or interactions between the system and the target user (Actor) in a defined environment for achieving a goal. The use case enables defining all the functionalities which need to be implemented and resolves all errors which might crop up. The use case registers the scenarios from trigger point to final goals and involves all activities that hold importance for the user.
Every user action which creates a trigger in the system is a use case so a system is built of a number of use cases. The focus for accurate estimation should be to identify all the use cases by breaking down the system into all possible user actions.
When adding a use case, you will first define what that use case is. Next you will select an implementation type. This will be a pre-defined list that populates from the implementation platform selected for the project. If there are no implementation types or there is an implementation types missing, to add these you would locate the implementation type option from the Estimation Setup menu.
Some examples of Implementation types may include:
In adding a use case, you will also select the different users who have access and your input and output screens. The users come from the list of users you added in the previous step and you may select/deselect them by clicking the checkmark box next to each user.
For the input and output screens, you want to identify all screens that the input would be located. For multiple input screens, please separate these with a comma. For the output, you want to identify all screens that the user will land on from the input screens. Same as input screens, please separate multiple output screens with a comma.
Underneath the input and output screen fields will be your validations and implementation options that go along with the implementation type you selected. These are not required fields and may not display based upon the implementation type chosen but they do provide additional information if applicable.
An example of a validation could be identifying whether there are any required fields. The validation title would be called ‘Required’ and the user would input their field labels such as email address and password.
Examples of Implementation Options could be DataSource and UI Implementation. You may want the user to know where to look for the data on that use case and may also want to explain the implementation method applied for this use case.
After filling out the information and saving each use case, you have an opportunity to even further define a use case. After saving the use case, the program will take you to a summary list of all use cases added. Here you can adjust the complexity factor (rate in percentage), re-use factor and adjustment.
The complexity factor is used in case there is some additional logic involved for the use case with may need further attention or an increase in effort. By default this percentage will be zero. To adjust the complexity you will want to click on the pie chart next to the complexity percentage. This will open a window with a slider to adjust the amount of complexity. With any adjustments to this slider you will also be required to type in an explanation.
The re-use factor is used in case there is some existing tool or plugin that can be used for the use case or part of the use case which would mean the effort to carry out that use case would be decreased. By default this percentage will be zero as well. To adjust the re-use factor you will want to click on the pie chart next to the re-use percentage. This will open a window with a slider to adjust the amount of re-use capabilities. With any adjustments to the slider, you will be required to type in an explanation.
For the adjustment factor this is used in case you would like to manually adjust the effort for the use case. By default the adjustment will say 0.00 hours. To make an adjustment you will click on the pie chart next to the 0.00 hours. This will open a window with a text box to enter in the number of hours you would like to adjust for. To increase the effort estimate you will enter a positive number. To decrease the amount of effort you will enter a negative number. With any adjustments you will be required to type in an explanation.
Once you add all your use cases for the project, you may re-order the use cases by selecting the edit button for a use case, scrolling down to the bottom of the screen and clicking on the ‘set position’ link. This will open two select fields. The first field is to select before or after and the second field is to select the use case you want to be before or after.