please check the attachment
1 PROG6001 Managing Software Development Projects Assignment 1 2 Assignment 1 This assignment is due on 16th August, 2021 at 11:00 pm. The assignment has a component that must be completed on-line but a majority is a written task. Suggestions for the report structure are given in each section of the requirement. The report itself should be submitted through the Turnitin link in your MySCU site. The maximum word count for the report is 1500 words (excluding headings, references, tables and appendices), with parts 1 and 2 having no enforceable word limit. This assignment is worth 25% of your overall mark. Please note that the assignment is due some weeks after the required materials are covered in the on-line sessions. Please do not leave the assignment to the last minute as you can start work on much of the assignment well before the due date. If you do require an extension for submission you must request this before the due date. Unless an extension is agreed, a late penalty will be applied. Each day late on submission will apply a 5% mark deduction penalty. Please note that a timestamp of 11:01 on the due date is considered one day late. Important: You must submit your own solution with reasoning, however, we are perfectly happy for you to chat and discuss with your classmates but ultimately you submission must be your work. The last bit is particularly important. Do not copy and paste your classmates work and do not let your work be copied. This can have serious ramifications for academic misconduct. What we are looking for is your unique thought process behind your designs and solutions, as well as the actual solutions. Reports which do not give satisfactory reasons for their designs and solutions will be penalised. 3 Part 1 – Testing (10 marks) There are two components to this part of the assignment. You are required to produce an acceptance test description and a detailed black-box test description. These two test types are unrelated so you should consider them separately. Note: testing tables are not counted as part of the word count. The Acceptance test (7 marks) B1. Google Research facilitates the publishing of academic papers for their research and development staff. As part of this they have a system to allow on-line checking of paper submissions to detect possible plagiarism. The system must track submission time and dates and provide an analysis of the matches found in other people’s work, in Internet documents and in paper-based publications such as books and magazines. The analysis will be available to the staff member who submitted the paper and the academic reviewer. The plagiarism detection and matching must be configurable providing for: • Optional checking of bibliographies • Allow proper quotations to be excluded • Allow setting a minimum number of matching words • Allow resubmission of papers up to a given date/time Outline an acceptance test for the above system as described by generating scenarios of each requirement. In the study guide, this is steps 1, 2 and 3 of the acceptance test criteria. Most of step 1 is in the above system description but you can refine and expand if you wish. These scenarios will not count to the total word count. You must research and nominate an approach that can automate the acceptance test and show an example of a simple automated acceptance test script. A failure to do so will result in loss of marks. Remember that acceptance tests can be designed without access to the actual product. Detailed testing of the product is for the next part of this assignment (detailed black-box testing). You can enhance the requirements above if you wish or clarify them based on your own knowledge. If you do adjust the requirements your plan will be assessed against your new specification. The detailed black-box test plan (3 marks) As part of a client presentation to explain the benefit of black-box testing to both a technical and non- technical audience, you are asked to design a detailed black-box test for the below system. 4 The below shows a UI from Google’s job application site. You have been asked you to develop a black- box test plan for this interface. • You can assume the “What do you want to do?” field is a “search” field and in this example “software development” is the search term. • Below that is another search field for location terms. Below that again, are several filters. • Do not forget the ‘Clear Filters’ at top of the page where you can assume it is a button, the ‘Turn on job alerts’ slider and the ‘Sort by’ drop menu to the right which is a simple drop down function. • You can assume the ‘Share’ operation works similarly to a hyperlink and the ‘save’ button works similar to a bookmark operation. Note that you can, if you wish, apply your test plan to the product, e.g. you can test individual input fields and interaction between fields of this site. This is a commercial site, so you would expect it to pass the test (if you do find a bug then we will notify the software developers). For this assignment we are looking at the test plan, not the actual test results. Part 2 – Configuration management (10 marks) 2.1 Code/file version management (4 marks) Version management systems are a daily reality for the software development professional. On GitHub is a public project named: TeachBen/PROG6001-assignment1 You are required to sign up to GitHub and then: 1. Fork this project into your public space (2 mark) 2. Modify the Word document .docx (it contains instructions) and see if you can change the document name from the current CSC93001.docx to PROG6001.docx (2 mark) 5 Note: at various times the project manager will pull changes into the mainline. This will be reflected in your GitHub view of the project. Important: In your assignment submission for the rest of the assignment you must state your GitHub account name! (So that the marker can confirm your project activity). Remember that your name will be public so please do not disclose any personal information. Do not place your student-ID in the GitHub document or elsewhere in the project. As this only requires your GitHub account name it will not be counted among the word count. 2.2 Change management (3 marks) You are required to 1. Describe change management systems and the reasons for change requests (1 mark). 2. Contrast change management and release management (1 mark). 3. Explain why a software design document is not included in a release (1 mark). 2.3 Build Management (3 marks) Google has discovered that a competitor is planning to develop an open-source web browser and you are part of the team that has been asked to provide review the build management processes of Google’s web browser, Google Chrome. Give your advice as follows: 1. A brief description of the nightly build system of Google Chrome for managing changes to software and systems (1 mark) 2. How Google arrives at a release of Google Chrome that is distributed to the public (1 mark) 3. Advantages and Disadvantages of this system for the Google (1 mark). Note that the nightly builds evolve over time so carefully reference the facts that you have gathered and indicate the dates to which your descriptions refer. You should be able to answer this section in about 400 words, though no word limit will be enforced here. Part 3 – Request for Proposal (RFP) (5 marks) Smart-tech Auto Services (SAS) is a business that sells a variety of “smart” automotive products, particularly offering repairs and services to trucking companies that travel long distances around Australia providing transport and logistics services. They want an integrated system to support their six branch shops around Australia as the opportunity arises. They envisage the system will evolve over time and plan to expand to many more locations. Their initial requirements are: 1. Provide a customer relations database with information about products and services purchased, devices left with them for repair (customer details, customer purchase history, problem report, work details, etc.) 2. A marketing system that allows for digital marketing using e-mail, social media, and any other modern marketing techniques. This will use details in the customer relations database but allow other prospective customers details to be entered in an existing SAS website (not part of this RFP). 3. A stock management system that includes products for sale, parts for use in repairs, automatic ordering from wholesalers. The system must be able to be used for individual locations to find products and parts at other branch locations when necessary. As the company specialises in assisting customers with repairs “24/7” (24 hours a day), the SMS will need to be able to have real-time monitoring and diagnostics of some of their products (e.g. truck parts, truck monitoring devices). 4. Provide reports for management, who may be at any location, of the status of all the above so they can order stock, recruit staff and make other management decisions. As a software development consultant with knowledge of software procurement, you have been engaged to provide a detailed RFP for this system. Your RFP should use one or more recognised guidelines that you 6 will reference. You may be tempted to go overboard here so try to restrict your RFP to a reasonable size (up to 1500 words maximum). You must seek to strike a balance here. You must be clear enough as to not waste your firm nor the client’s time with an unnecessary volume of applications but also the less restrictions the better in an RFP so that the responders can come up with new ideas that you have not imagined so far. Your RFP should not contain excessively technical information about the requested system. Your RFP should allow for some bespoke software development; but it should also clearly be able to consider existing applications, solutions built from components, SaaS solution, other solutions and any combination of these. Your RFP must be clear in its request for the differing categories of software procurement that