ASSIGNMENT THREE ~ CPT230 SP3 2014
Due Date: 11:59pm, Sunday 23rd November (week 12)
This assignment builds on the knowledge of the week 9-12 tutorials. You will struggle with this work if you do not complete those tutorials first.
The assignment consists of two parts: Part A. 12 marks. Testing
Part B. 8 marks. Process
20% of your final mark will come from this assignment. As such, this assignment will be marked out of 20.
Help and Hints
A forum dedicated to Assignment three is available on the discussion board. Queries and discussions should be directed there. All queries to the instructor should be posted to the A3 forum before 5pm Friday 21st November or emailed by Wednesday 19th November 5pm. This is a hard deadline – posts or emails after this time will not be responded to.
You are free to discuss queries, share URLs and offer suggestions, but do not paste your answers.
Trouble Getting Started
• Complete the tutorial exercises - You may choose to post your tute responses in the relevant forum for instructor feedback.
• In the Collaborate sessions we will review the tutorial exercises. The session recordings will be a valuable resource in completing this assignment.
• Part B requires you to understand not just RUP, but the SDLC, and all aspects of a project. You will need to consider all the topics we’ve studied this SP, and think about how they contribute to a development project. Then consider how they’d be used in a RUP project.
What to Submit
You should submit your assignment using Weblearn's submission system. Email submissions will not be accepted unless Weblearn is not functioning. Your submission should include a single (nonzipped) pdf file only – no other formats will be accepted. Do not zip the file. You should submit only one file. There are no UML diagrams required for Assignment Three, although you do need to use the template tables in many places. Hand written work is not acceptable.
Late assignments will attract a penalty of 10% (2 marks) per day. After 5 days, the penalty will be 100%. Assignment drafts can be submitted at any time – each submission will overwrite your previous submission, with only the latest being retained. Do consider submitting incomplete rather than late – it often results in a higher net mark.
OUA CS Extension policy
The instructor is completely uninvolved in the extension process, regardless of circumstances. Please do not email me any requests for an extension !
• Extensions will only be granted for extenuating circumstances (personal/ workloads are not accepted reasons).
• Extension requests take time to process and should be initiated ASAP. Requests must occur before the due date.
• Extension requests are likely to require the submission of original supporting documents by mail.
Consult the document “CPT230 Overview SP3 2014” for more information about the extension process.
All requests need to be sent to firstname.lastname@example.org
PART A – TESTING
1. Equivalence Classes
For Realz is a real estate agency, which manages rental properties and charges the owner a management fee. The For Realz Accountant has devised the following rules to calculate the
1) Test cases based on equivalence classes, and boundary value testing for all rental amounts (using actual values). Use the template in Appendix A to document your test cases, paying attention to all fields in the template.
2. Decision Tables.
Domain.com.au is a business specialising in advertising sales and rentals of residential real estate.
It calculates advertisement charges using the following rules.
• Advertisers with more than 15 advertisements in a month receive a 10% discount.
• Advertisers who have been customers for more than 2 years receive a 5% discount
• There is a 5% discount for early payment of an account, as long as it is not paid with a credit card
• Advertisements in December receive a low season discount of 15%
• An additional 1.5% surcharge is payable if payment is made with a credit card.
• If the advertisers account is marked as overdue, then no discounts are given.
• If multiple discounts are applicable, only the maximum discount applicable will be used.
Derive test cases using decision tables to check the adjustment required to the advertisement charge. The outcome of the decision table must be either the total adjustment % (positive test) or invalid input (negative input).
You must create:
1) The decision table, compressed if required
2) Test cases with actual test values, using the template in Appendix A
3. Develop User Acceptance Tests
Generate UAT scripts based on the use case textual description below. You must consider both the main and alternative scenarios. 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).
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 C
• 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.
Name Capture Tenant payment
Goal To record the capture of a tenant payment for a rental payment
Summary This use case allows authorised staff to record a tenant rental payment.
Preconditions The tenant ID is recorded in the system with a current lease
Triggers The actor selects ‘Record Rental Payment’
Basic Course of
(also referred to as Main Flow) 1 The actor enters the Tenant ID number.
2 The system locates a current lease associated with this tenant ID, and displays the property address and the tenant’s name and ID.
3 The system calculates the rental payment due and displays the rental amount due in an editable display.
4 The actor confirms the payment amount.
5 The system records the rental payment amount and the date.
6 The system confirms the transaction has been recorded.
Alternative Paths AP 1.1
1.1.1 No tenant with that ID is located.
The system informs the user and the use case ends.
AP 3.1 The tenant has unpaid amounts from previous periods
The system calculates the total rent due inclusive of prior unpaid amounts.
4.1.1 The tenant is paying a different amount to that due.
The actor edits the amount actually being paid and confirms this amount.
6.1.2 The lease currently still has overdue amounts after this payment is made The system confirms the transaction has been recorded.
The system informs the user of the current overdue amount, and emails a reminder to the tenant.
Post Conditions A rental payment has been recorded OR a rental payment has not been recorded.
Notes Tenant ID numbers should appear on the bank account statement. If they are wrong, the bank will need to be contacted for more information regarding the payee.
4. Identifying bugs
You are required to test a program which is used to calculate the monthly GST payable to the tax office on a landlord’s income and expenses by property. The landlord must forward to the tax office any GST collected from their tenant, less the amount of any GST they have spent on deductible expenses.(If the GST due is negative, a refund is expected).
- GST is set at 10%
- Rent paid for residential leases are not charged GST, but commercial lease rent is
- GST on renovation expenses can be deducted where the lease is a commercial lease - GST from maintenance expenses can be deducted
Test cases have been identified and executed with the results shown below. You are required to analyse the results and write any required bug report/s. Your report/s must be very specific (when does it occur) allowing any bug/s to be identified and fixed easily. You need only submit one report for each identified bug, regardless of how often it appears.
Rent Paid Commercial Lease Maintenance Expenses Renovation Expenses GST
1000 N 0 0 0 0
1000 N 200 0 -20 -20
1000 N 0 100 0 -10
1000 N 200 100 -20 -20
1000 Y 0 0 100 100
1000 Y 200 0 80 80
1000 Y 0 100 90 90
1000 Y 200 100 70 90
5000 N 0 0 0 0
5000 N 200 0 -20 -20
5000 N 0 100 0 -10
5000 N 200 100 -20 -20
5000 Y 0 0 500 550
5000 Y 200 0 480 530
5000 Y 0 100 490 540
5000 Y 200 100 470 540
You must create:
A bug report for each identified bug, using the template in Appendix B
PART B – PROJECT PROCESS
RMIT Short courses are looking to develop the system discussed in assignment 1. A project manager was appointed, and drafted a RUP project plan. This project manager presented the project plan below (complete with their notes-to-self scribbled in red) and was hence fired.
Your job is to assess the plan’s RUP characteristics, and then re-write the plan in order to demonstrate the characteristics of a RUP plan. You may need to restructure, rearrange, remove, or add activities. You should not increase the scope of this project.
Your plan MUST
Identify relevant activities in the appropriate phase and iteration
Show appropriate use of RUP phases, iterations with milestones, and cycles
Demonstrate an understanding of the characteristics of a RUP project as per the lecture Consider the notes in red the previous project manager has added
You plan SHOULD NOT
Develop functionalities beyond the use cases selected in the scope below
Dive deeply into low level detail, or take it up to a generalised, non-project specific level. Include vision statements, risk assessments, resources, dependencies, or durations.
Appendix A: Test case template with content example
Purpose To test the calculateTriangle method
Set Up Run Shapes.exe. Navigate to the “Is this triangle an Isosceles” screen.
Enter 3 side lengths.
Run by Creena Phillips
Test Case ID Side 1 Side 2 Side 3 Expected Output Actual
CT 1 3 3 3 Equilateral
CT 2 3 3 5 Isosceles
CT 3 2 6 4 Not a Triangle
CT 4 4 2 2 Not a Triangle
CT 5 9 2 5 Not a Triangle
Appendix B: Bug report template with content example
Bug Title Incorrect calculation of a triangle //give a meaningful name
Test Reference Calculate Triangle CT4
Description Method does not appear to incorporate the criteria that any pair of sides must be strictly greater than the third side.
//provide good detail on what’s not happening
Detected By Creena Phillips
//Use the levels provided in the lecture notes
//Status of this report Open, In progress, Closed.
Reproduction Steps Run Shapes.exe. Navigate to the “Is this triangle an Isosceles” screen. Enter 3 side lengths of 4,2,2
Expected Results Not a triangle
//What the result should have been
Actual Results Isosceles
//what the result was.
Assigned To Creena Phillips
Identified Fault When 2 of 3 sides are equal, the check for 2 sides being greater than a third is incorrectly bypassed.
//Identify the cause of the bug was, in NATURAL LANGUAGE.
//Specify whether fix has been implemented and successfully tested
Appendix C – User Acceptance Test Example
Pre-Existing Test Data
Members and Children
Member Number Membership Tier ChildNo Name DOB
04321 Concession 1 Jane Jones 23/03/2009
2 Jack Jones 23/03/2009
Date Start Time Places Remaining
18/04/2012 9:30 am 1
18/04/2012 10:30am 0
19/04/2012 9:30am 5
1. NB The system date is assumed to be 16/04/2012. The system date will need to be adjusted to be this date or test data adapted to accommodate the current date.
2. Swipe member card in the card reader for member 04321
3. Membership is successfully validated, and the main menu displayed.
Test # Test Name Ste
p Step Description Test Data Expected Results / Post Condition
1 Book Childcare – 1 child - Success 1.1 Select “Book Childcare Session” All children listed for this member are displayed: Jane Jones
1.2 Select the children to be enrolled in a crèche session, and press enter. Jane Jones The dates of the next five days are displayed.
1.3 Select a date. 18/04/20 12 A list of sessions open to bookings is displayed: 9:30am
1.4 Select the session to book the child 9:30am Display the cost of the booking: $4.00
1.5 Confirm the booking. Booking successful appears.
The system books the child into the session.
2 Book Childcare –
1 child - unsuccessful 2.1 Select “Book Childcare Session” All children listed for this member are displayed: Jane Jones Jack Jones
2.2 Select the children to be enrolled in a crèche session, and press enter. Jack Jones The dates of the next five days are displayed.
2.3 Select a date. 18/04/20 12 Unsuccessful message displayed. “There are no available sessions on the day”