Your report should consist of the following chapters:1. A proper title which matches the contents of your report.2. Your name and Deakin student number in the author line.3. An executive summary which summarises your findings. (You may need hints onwriting good executive summaries from http://unilearning.uow.edu.au/report/4bi1.html.)4. An introduction chapter which explains your chosen program, test methods and testtools. 5. A literature review chapter which surveys the latest academic papers regardingsoftware testing and testing tools which includes all papers listed below. You are advisedto identify and include more papers published by ACM and IEEE journals or conferenceproceedings. Your review must not simply be a summary of each paper, but rather a deepanalysis of the body of work reported in the set of paper. Your aim in this part of thereport is to demonstrate deep and thorough understanding of the existing body ofknowledge encompassing software testing. The minimum number of references for thisassignment is 20.6. An evaluation and justification of your chosen testing method and tool(s) based on theprogram.7. A conclusions chapter which summarises major findings of the study and indicatesfuture work which should be conducted in the area.8. A bibliography list of all cited papers and other resources. IEEE and Harvard arepreferred. Please prepare your references according to the guidance at http://www.deakin.edu.au/students/study-support/referencing
SIT707 - Software Quality and Testing 2019T2 Assignment 1 1 SIT707 Software Quality and Testing 2019 T2 Assignment 1 - A Report of Black Box (or Equivalent) Testing (20 marks) Due Date: 4:00 pm, Wednesday, August 7, 2019 Submission: a report file in PDF format prepared according to the following objectives and problem statement. Objectives 1. To understand the critical issues in software testing, focusing on black box testing. (You can focus on black-box testing techniques to design and execute your test cases in Assignment 1. Then, in Assignment 2, you can focus on white-box testing techniques and integration testing techniques to conduct an overall evaluation of software quality.) 2. To demonstrate the ability to research and apply proper techniques to detect bugs. 3. To write a proper essay for a specific topic and presenting/arguing the findings. Problem Statement Selenium, JUnit, TestNG and Yasca are automation testing frameworks widely used by the industry. You are required to demonstrate your ability of correctly identifying which testing method along with testing tool(s) to use to perform a test on a selected program. You have been given a program along with this assignment question as an example of the programs you can use for purpose of assignments of this unit. The taxMe program mimics some basic Australian taxation rules by calculating the taxable annual income based on four input variables including salary, medicareLevy, TBRLevy(Temporary budget repair levy), and Lilevy (Lowincome levy). The output of the program will be the amount of the payable tax and the income after tax. It calculates the payable tax using the rules below: Please note that provided program is just an example of what you can use. It is your 1. If your annual income is less than $18,200, you do not need to pay any tax. 2. If your income is between $18,201 and $37,000, you have to pay 19% for the amount that exceeds the tax-free threshold, which is $18,200. 3. If your income is between $37,001 and $80,000, you have to pay $3572 plus 32.5% for the amount that exceeds $37,001. 4. If your income is between $80,001 and $180,000, you have to pay $17,547 plus 37% for the amount that exceeds $80,001. 5. If your income is more than $180,000, you have to pay $54,547 plus 45% for the amount that exceeds $180,000. 6. There are levies applicable to each stage of tax, each will make subtle changes to your payable tax: medicareLevy will introduce a 2% increase on the tax. Lilevy will offset the first taxable tier to $20,543 instead of $18,200. TBRlevy will introduce a further 2% increase, however, it can only be applied to the top tier of income earners. SIT707 - Software Quality and Testing 2019T2 Assignment 1 2 choice to use this program or any other program with the same level of complexity including a web application that is freely available. If it is a web application please include the URL in the report. If you use a different program that is not accessible to the teaching staff via the Internet, please only use an open source program and include its source repository link in the report. Also, note that you need to use the same program you choose in this assignment for your assignment 2. Upon satisfactory completion of this assignment, you will be able to conduct basic level research in software engineering, analyse gathered information, and communicate your findings. To demonstrate your achievement of these goals, you must write a 3,000-word report. Your report should consist of the following chapters: 1. A proper title which matches the contents of your report. 2. Your name and Deakin student number in the author line. 3. An executive summary which summarises your findings. (You may need hints on writing good executive summaries from http://unilearning.uow.edu.au/report/4bi1.html.) 4. An introduction chapter which explains your chosen program, test methods and test tools. 5. A literature review chapter which surveys the latest academic papers regarding software testing and testing tools which includes all papers listed below. You are advised to identify and include more papers published by ACM and IEEE journals or conference proceedings. Your review must not simply be a summary of each paper, but rather a deep analysis of the body of work reported in the set of paper. Your aim in this part of the report is to demonstrate deep and thorough understanding of the existing body of knowledge encompassing software testing. The minimum number of references for this assignment is 20. 6. An evaluation and justification of your chosen testing method and tool(s) based on the program. 7. A conclusions chapter which summarises major findings of the study and indicates future work which should be conducted in the area. 8. A bibliography list of all cited papers and other resources. IEEE and Harvard are preferred. Please prepare your references according to the guidance at http://www.deakin.edu.au/students/study-support/referencing List of Papers [1]Altaf, J.A. Dar, F.u. Rashid and M. Ra q, “Survey on selenium tool in software testing,” Green Computing and Internet of Things (ICGCIoT), 2015 International Conference on, Noida, 2015, pp.1378-1383. [2]Holmes and M. Kellogg, “Automating functional tests using Selenium,” AGILE 2006 (AGILE' 06), Minneapolis, MN, 2006. [3] A.M.F.V. de Castro, G.A. Macedo, E.F. Collins and A.C. Dias-Neto, “Extension of Selenium RC tool to perform automated testing with databases in web applications,” Automation of Software Test (AST), 2013 8th International Workshop on, San Francisco, CA, 2013, pp. 125-131. http://www.deakin.edu.au/students/study-support/referencing SIT707 - Software Quality and Testing 2019T2 Assignment 1 3 [4]Radu Banabic and George Candea. 2012. “Fast black-box testing of system recovery code.” In Proceedings of the 7th ACM European conference on Computer Systems (EuroSys '12). ACM, New York, NY, USA, pp. 281-294. [5] E. Murphy-Hill, T. Zimmermann, C. Bird and N. Nagappan, “The Design Space of Bug Fixes and How Developers Navigate It,” in IEEE Transactions on Software Engineering, vol. 41, no. 1, 65-81, Jan. 1 2015. [6] D. Xu, W. Xu, B.K. Bavikati and W.E. Wong, \Mining Executable Specifications of Web Applications from Selenium IDE Tests,", 2012 IEEE Sixth International Conference on Software Security and Reliability (SERE), Gaithersburg, MD, 2012, pp. 263-272. [7] J. Bau, E. Bursztein, D. Gupta and J. Mitchell, “State of the Art: Automated Black-Box Web Application Vulnerability Testing,” 2010 IEEE Symposium on Security and Privacy, Oakland, CA, USA, 2010, pp. 332-345. [8] Le and J.T. Ray eld, “Web-application development using the Model/View/Controller design pattern,” Proceedings. of the Fifth IEEE International Enterprise Distributed Object Computing Conference (EDOC'01), Seattle, WA, 2001, pp. 118-127. [9] Cox, M.G. and Harris, P.M., 1999. “Design and use of reference data sets for testing scientific software.” Analytica Chimica Acta, 380(2), pp.339-351. [10] Kelly, D., Thorsteinson, S. and Hook, D., 2011. “Scientific software testing: analysis with four dimensions.” IEEE software, 28(3), pp.84-90. [11] Kanewala, U. and Bieman, J.M., 2014. “Testing scientific software: A systematic literature review." Information and software technology 56(10), pp. 1219-1232. [12] Hinsen, K., 2015. “The approximation tower in computational science: Why testing scientific software is difficult.” Computing in Science & Engineering, 17(4), pp. 72-77. [13] Bertolino, A., 2007, May. “Software testing research: Achievements, challenges, dreams.” In 2007 Future of Software Engineering (pp. 85-103). IEEE Computer Society. [14] Hook, D. and Kelly, D., 2009, May. “Testing for trustworthiness in scientific software.” In Proceedings of the 2009 ICSE Workshop on Software Engineering for Computational Science and Engineering (pp. 59-64). IEEE Computer Society. [15] Joppa, L.N., McInerny, G., Harper, R., Salido, L., Takeda, K., O'Hara, K., Gavaghan, D. and Emmott, S., 2013. “Troubling trends in scientific software use.” Science, 340(6134), pp. 814-815. Submission details: You must submit an electronic copy of your assignment files (in PDF or Microsoft Word format) via CloudDeakin. Assignments will not be accepted through any other manner and email and paper based submissions will be rejected. Delays caused by student's own computer downtime cannot be accepted as a valid reason for late submission without penalty. Students must plan their work to allow for both scheduled and unscheduled downtime. Plagiarism & Collusion: This is an individual assignment. You are not permitted to work as a part of a group when writing this assignment. Plagiarism is the submission of somebody else’s work in a manner that gives the impression that the work is your own. For individual assignments, plagiarism includes the case where two or more students work collaboratively on the assignment. The School of Information Technology treats plagiarism very seriously. When it is detected, penalties are strictly imposed. Deakin University uses Turnitin as the program that allows you to check whether there is any unoriginal material in your work, please refer to http://www.deakin.edu.au/students/clouddeakin/help-guides/assessment/plagiarism. http://www.deakin.edu.au/students/clouddeakin/help-guides/assessment/plagiarism SIT707 - Software Quality and Testing 2019T2 Assignment 1 4 Marking Scheme: Please refer to Assignment 1 rubric Rubric Assessment Rubric Name: Assignment 1: Software Testing Investigation Report Criteria Proficient (above 16) Satisfactory (12.5 – 16) Marginal (10 – 12.4) Below expectation (0 – 10) Literature Review 5 points Collect and record self- determined information from self-selected sources, choosing or devising an appropriate methodology with self- structured guidelines; Organise information