PART A - TESTING
Task 1. Develop User Acceptance Tests for the Review Content Query use case text description.
For assignment purposes you should limit the tests to the functionality and alt paths specified below. Do not test for every possible input range etc. (This task is an introduction to UAT). You must use the UCTD provided below (not your personal A1 submission).
Your tests MUST:
- Conformance test all main flow and alt paths once with simple data.
- Create each test separately (don't combine tests).
- Use the format provided in Appendix A
- Specify the exact data that needs to be pre-existing in the system before the tests can be run.
- Describe exactly what set up is needed prior to the test commencing.
- Show within the test script, actual test data and expected results - not a description of them.
- Describe in non-ambiguous detail what the tester should be doing at each step.
Task 2.
Using the template provided in Appendix B, submit one table that contains your response to both a) and b).
a) Identify appropriate test cases for calculating sales commissions.
Moving Pictures will enable viewers to purchase movies via a 3rd party supplier, and will charge this third party a commission fee based on how many copies of each movie is sold per month.
The following rules will calculate the commission fee payable each month for each movie:
1. The number of copies sold of:
2. The commission fee calculated can be reduced by the discounts specified below. Multiple discounts are allowed, but they must be applied progressively in the order specified. (calculatedFee*discount=newFee, then newFee*nextDiscount).
3. Discounts on offer include:
a. A further 5% discount on the calculated fee if the movie is from a production company with a genre of "Arthouse".
b. A further 5% discount on the calculated fee for a movie flagged as seasonal
4. All movies retail on the site for $20 each
Using the template in Appendix B, identify test cases for this business rule. You should complete this task using only black-box testing strategies.
Your test cases MUST
- Use the provided template
- Test every combination of ranges
- Utilise boundary testing strategy for all variables
b) Execute the tests manually.
You MUST execute your tests manually by walking through the pseudo code (on the next page) and then record the results in your response (the last two columns of the template cater to test execution). A reminder that you should focus on the logic of the code, not the syntax.
Task 3.
Use the template provided in Appendix C to complete both a) and b).
a) Create bug reports for any bugs you have identified in your executed tests.
Based on the results of task 2, continue in your role as the tester and create bug reports for any bugs you have identified using the Bug Report template in Appendix C.
A bug report should be written for each bug identified (not every time the same bug occurs). Your bug reports should be informative, not generic. I.e. "not calculating correctly" does not communicate much.
Rather, identify which functionality you are testing for which is not performing as expected.
Your response will be assessed on
- Appropriate use of the provided template
- Identification of any bugs present
- Ability of a de-bugger to replicate the problem based on the report provided
b) For each bug you created in 3a), locate the cause of the bug.
Switching now to the role of the de-bugger, work your way through the bug reports created in task 3a. For each report, you should examine the code to identify the reason the bug occurred. Update each bug report with this information in the appropriate fields. E.g. "Charge was calculated incorrectly. GST was subtracted from the price instead of added to the price". Ensure to use natural language when identifying the bug - do not write as a code fix.
PART B - PROJECT PROCESS
Moving Pictures are looking to develop the system discussed. A project manager was appointed, and requested to draft a RUP project plan. This project manager presented the project plan below (complete with their notes-to-self scribbled in red) before being fired.
Your job is to re-write the plan, focusing on the items specified below (in "Your plan MUST"). You may need to add, remove, restructure or rearrange activities. You are not required to include vision statements, risk assessments, resources, dependencies, or durations. You will need to consider the notes the previous project manager has added.
Your plan MUST
include appropriate use of RUP phases, iterations, and at least 2 cycles demonstrate an understanding of the characteristics of a RUP project as per the lecture identify relevant activities in the appropriate stage of the project You plan SHOULD NOT be significantly longer than that below.
develop functionalities beyond the scope below.
dive deeply into low level detail, or take it way up to a generalised, non-project specific level.
Inception
Requirements Elicitation
- Interview Margaret David and Al, and an IT representative.
- Send interviews transcripts and obtain their sign off.
Requirements Analysis and Negotiation
Create low levelled detailed use case diagrams of key system functionality
- Submit Movie, View Movie
- Edit Movie
- Flag for review
- Login, Create PCo Account
- Review Content Query
- Create Fan Account, Rate Movie, Create Movie Review
Identify Moving Pictures non-functional requirements
Requirements Documentation
Create highly detailed SRS,
Write use case textual descriptions for every use case
Requirements Validation - Sign off all artefacts above with Chief Director and freeze.
Elaboration
Create Class Diagram of domain level
Create Object diagrams of typical scenario of a movie being stored
Create Sequence diagrams for complex interactions
Flag for Review
Review Content Query
Create Activity diagrams for Adding a Movie
Create State Diagrams for a Movie
Finalise Domain models, sign off all artefacts and freeze.
Construction
Decide and design architecture structure
Create Implementation diagrams for every domain model created previously
Build the complete Moving Pictures Application
Build all Moving Pictures Interfaces
Build Moving Pictures Database
Integrate components
Transition
Write and conduct unit tests on all modules
Write and conduct integration testing on all modules
Write and conduct system testing on the system
Write and conduct user acceptance testing on the system
Deploy