Case study – Online Scholarship & Bursary Application Software
Scholarships and Bursaries play an important role in making higher education accessible and rewarding students’ achievements to attract outstanding candidates to university programmes. Assume you are a final year student. You have identified a gap in the market and a business opportunity to develop an online tool to submit and review applications for scholarships and bursaries. Your aim is to provide this software tool as a solution to universities to manage their scholarships and bursaries applications, starting with the University of Buckingham as your first client.
Given that you’ll soon be graduating with a BSc with a major or minor in Computing, the School of Computing is willing to accommodate your tech startup in its new Innovation and Incubation Hub on the condition that you will provide the new software to the university free of charge for 12 months and that you will provide internship opportunities for computing students to work on the development of the software.
Based on initial discussions with university staff, it is essential that the new software integrates with the University’s Admissions System, Student Information Systems and Student Fees Management system using APIs.
Only an offer holder of the university (i.e. a person who has submitted an application to study a course at the university and has received an offer for the same) with a valid Application ID should be able to submit an application for a scholarship. Any scholarship applicants must have a valid Application ID to successfully start, complete and submit a scholarship application.
The online scholarship application should be available via the university’s main website. On starting a new scholarship application, the applicant will be prompted to enter their Application ID, which will be verified via the university’s Admissions System. A valid Application ID will result in a new instance of a scholarship application form being created and presented to the applicant.
The applicant will be required to enter their personal information and financial data to support their application. They will then select a scholarship from a list of available scholarships for the specific programme of study for which they hold an offer. For example, an applicant to study BSc Computing will be shown Gregory Scholarship and the Diversity in Computing Scholarship, whilst an applicant to study LLM will be shown the Ondaatje Scholarship.
Once the application form start to being populated with information, the form can be saved to complete later. A saved application form can be retrieved by providing the Application ID. The application form can be submitted once all required sections are completed. The online tool should have the option to send an automatic email from the university Admissions to the applicant confirming the receipt of the scholarship application form.
The University Admissions staff should be able to view all submitted applications and record their decision on each application. They should be able to export all applications to a spreadsheet that can be saved as a local file.
(i) Explain the key differences between plan-driven and Agile software development process models. (20 marks)
(ii) It has been decided to use Agile Scrum development methodology to develop the software product described in the given case study. Present two arguments in support of this decision and two arguments against this decision. Your answer must link to the case study. (20 marks; 4 x 5)
(iii) Suggest another software process model you might consider to develop the software product described in the given case study. Present two arguments in support of this model and two arguments against this model. Your answer must link to the case study. (20 marks; 4 x 5)
(iv)Discuss in detail a legal, social, ethical and professional issue (i.e. discuss one of each) that needs to be considered when developing and deploying the software product described in the given case study. (40 marks; 4 x 10)
(i) Write a product vision statement for the software product described in the given case study. (20 marks)
(ii) Identify and describe two different personas relevant to the software product described in the given case study. (20 marks; 2 x 10)
(iii) Identify and describe in detail, a scenario of how one of the personas you have identified in part (ii) could interact with the software product described in the given case study. (20 marks)
(iv)Describe in detail, five features that might be included in the software product in the given case study. (40 marks; 5 x 8)
(i) The development team of the software product described in the case study is considering deploying the software as a cloud-based ‘Software as a Service’ (SaaS). Present four arguments in support of this decision. Your answer must link to the case study. (20 marks; 4 x 5)
(ii) Draw a context diagram to show how the software product described in the case study is connected to other external systems. You must provide a brief description for each element in the diagram. The diagram could be drawn on the answer document itself or by creating the diagram using an appropriate software tool and inserting it in the answer document. The diagram and any text on it should be clear. (20 marks)
(iii) One of the classes you have to implement in the software product is ‘Scholarship Application’ class. Based on the information provided in the case study, identify and describe four states and their associated events, and draw a state diagram for the class. The diagram could be drawn on the answer document itself or by creating the diagram using an appropriate software tool and inserting it in the answer document. The diagram and any text on it should be clear. (20 marks; 4 x 5)
(iv)Use MS Visio or a similar software tool to draw a class diagram that includes the following four classes.
Each class must include three attributes and two methods. The diagram and any text on it should be clear. (40 marks; 4 x 10)
(i) After the initial release of the software product described in the given case study, the feedback from users suggested that they would like the option to add files to support a scholarship application (e.g. a CV, reference letter). Another request was to include a data dashboard and data analytics to help understand the total cost of scholarships to the university. Furthermore, some universities have asked if a timer could be activated to measure how long individuals take to complete a scholarship application.
Explain how you would go about implementing the requested new features when the software product is being developed using Agile Scrum development. Which role(s) of the Scrum team will play a key part in this process?
(ii) Explain two different system tests you would carry out to evaluate the performance of the software product described in the give case study.
(iii) Explain what is meant by regression testing and why it is important? Give three examples from the case study, including the information in this question, where regression testing should bedone.
(iv) A program receives two inputs from sensors: ‘pH level’ and ‘moisture level’. It will print ‘Add water’ if the pH level is less than 7.0 and moisture level is 10% or less, or ‘Don’t add water’ otherwise. The program will print ‘Acidic’ if the ‘pH Level’ is below 6.0
Briefly explain the following test coverage measurements and determine example test cases to achieve each of the following targets:
- 100% Code coverage
- 100% Branch coverage
- 100% Path coverage
You must provide details including an algorithm or a program flowchart showing how you arrived at the test cases. Insert the diagram in the answer document.