# Section A ## Pseudocode Q1-3 The following pseudocode describes a search algorithm. ``` Function search (list[], low, high, target) 1          While low <= high 2                  mid <= (low + high)/2 3                  If target = list[mid] Then 4                          Return mid 5                          End search 6                  Else If target > list[mid] Then 7                          low <- mid + 1 8                  Else 9                          high <- mid - 1 10                End If 11        End While 12        Return -1 End search ``` Part of a trace table for the algorithm is shown below. | | | | | | | | | |---|---|---|---|---|---|---|---| |**Line**|**target**|**low**|**high**|**low <= high**|**mid**|**target = list[mid]**|**target > list[mid]**| |1|25|0|9|0 <= 9 ? True|||| |2|25|0|9||4||| |3|25|0|9||4|25 = 17 ? False|| |6|25|0|9||4||25 > 17 ? True| |7|25|5|9||4||| |10|25|5|9||||| |1|25|5|9|5 <= 9 ? True|4||| |2|25|5|9||7||| |3|25|5|9||7|25 = 23 ? False|| ## Question 1 #pseudocode #search The type of algorithm shown in the pseudocode is a **A.**       binary search. **B.**       insertion sort. **C.**       linear search. **D.**       quick sort. ||Answer: A - 73% It's a searching algorithm (as stated in the function name) and doesn't search from start to finish therefore is must be a binary search|| ## Question 2 #traceTable Which one of the following lists of numbers could have been used in this trace? **A.**       1, 8, 17, 23, 25, 27 **B.**       0, 1, 2, 3, 4, 5, 6, 7, 8, 9 **C.**       8, 27, 1, 19, 17, 23, 21, 4, 13, 25 **D.**       1, 4, 8, 13, 17, 19, 21, 23, 25, 27 ||Answer: D - 43% When working through the trace table it is shown that the item at position 4 of the list has a value of 17 and the item at position 7 has a value of 23. Therefore, the only correct response is D. Many incorrectly selected B (which contains numbers 0–9 in order); however, this was incorrect as neither 17 nor 23 are in this list. A is incorrect as it is too short. C is incorrect as it is an unordered list and would be unsuitable for a binary search. || ## Question 3 #controlStructures In the algorithm provided, the statement ‘**Else**’ relates to which one of the following control structures? **A.**       iteration **B.**       selection **C.**       a method **D.**       a function || Answer: B - 56% ‘Selection’ refers to a conditional statement which is represented as If/Then/Else|| ## Question 4 #internalDocumentation Within an application’s code base, comments can be used to describe the function of particular sections of code and support future maintenance of the application. How do programming languages differentiate between the code to be executed and comments that should be ignored? **A.**       Comments are stored in a separate file to the code. **B.**       Comments are only placed at the very start of the file containing the code. **C.**       Comments commence with a symbol character or sequence of characters. **D.**       Programming languages are intelligent enough to tell the difference between code and comments. || Answer: C - 96% || ## Question 5 #dataStructures The following lines of data need to be stored within a program. | A | leaf | | --- | ------------- | | B | enfix | | B | guess | | C | haunt | | 1 | shell | | 1 | program | | 2 | frequency | | 3 | consciousness | Considering the information above, which one of the following data structures would be most appropriate to use? **A.**       a record **B.**       an array of strings **C.**       an array of integers **D.**       an associative array || Answer: D - 62%|| ## Question 6 #psm In which stage of the problem-solving methodology does collecting data to determine requirements take place? **A.**       design **B.**       analysis **C.**       evaluation **D.**       development || Answer: B - 78%|| ## Use the following information to answer Questions 7 and 8. Poh is planning to introduce new software. When checking the customer satisfaction logs of the existing system, Poh identifies that the current software does not cater to the needs of users from diverse cultural backgrounds. ## Question 7 #dataCollection In analysing the needs of the new software, which data collection technique is Poh using? **A.**       logs presented in a report **B.**       an interview **C.**       observation **D.**       a survey ||Answer: A - 47% || ||The question refers to customer satisfaction logs of the existing system. || ## Question 8 #constraints Given that Poh is looking to meet the needs of users from diverse cultural backgrounds, what type of constraint would this place on the development of the solution? **A.**       legal **B.**       social **C.**       technical **D.**       economic || Answer: B - 91% || ## Question 9 #gantt If the completion of an entire project is delayed because one particular task has taken longer to complete than expected, that task must be **A.**       a milestone. **B.**       a Gantt chart. **C.**       on the critical path. **D.**       the last task in the project. || Answer: C - 91% || ## Question 10 #privacyAct Under the _Privacy Act 1988_, organisations are required to **A.**       de-identify all sensitive or personal information. **B.**       notify individuals of the reasons for collecting their personal data. **C.**       withhold an individual’s personal data, despite the individual making a reasonable request for access. **D.**       disclose the precise storage location of all personal and sensitive data related to an individual, including data stored locally and in the cloud. || Answer: B - 66% || ## Question 11 Moe regularly uploads large files (1–2 GB) to an online cloud storage provider and is concerned that his uploads are taking longer than he expected. He investigates a series of possible upgrades that he hopes will improve his upload speeds. The upgrades are shown in the following table. | | | | |---|---|---| |**Option**|**Current setup**|**Upgrade option**| |1|Hard drive: read speed of 120 MBps|Solid state drive: read speed of 500 MBps| |2|Wi-fi router on 802.11g: up to 54 Mbps|Wi-fi router on 802.11ac: up to 1.3 Gbps| |3|NBN current plan: 50 Mbps download, 20 Mbps upload|NBN upgraded plan: 250 Mbps download, 50 Mbps upload| |4|Laptop RAM: 8 GB|New laptop RAM: 32 GB| Considering the information above, which upgrade would be most likely to reduce the time to upload the files to the cloud storage provider? **A.**       Option 1 **B.**       Option 2 **C.**       Option 3 **D.**       Option 4 || Answer: C - 70% || ## Question 12 #organisationalGoalObjectives An online store is developing a software solution that will improve order tracking, including sending mobile phone notifications directly to customers as their order is processed, sent and delivered. An objective of this software solution could be to **A.**       improve service to customers. **B.**       increase sales by 25 per cent over the next year. **C.**       become one of the leading toy stores in Australia. **D.**       reduce customer complaints regarding lost or delayed orders by half. ||Answer: D - 47%|| ||A new system that will improve order tracking through notifications will result in a reduction of customer complaints regarding lost or delayed orders. Many selected A (Improve service to customers); however, this is a goal, not a measurable objective. || ## Question 13 #psm In which stage of the problem-solving methodology is a strategy developed to determine whether a solution has met requirements? **A.**       design **B.**       analysis **C.**       evaluation **D.**       development ||Answer: C - 65% || ## Question 14 #programming Stephen is writing a block of code that will accept coordinates as parameters and return a Boolean value to indicate whether the given location is on land. This code will be called from multiple different parts of his program. This block of code is most likely **A.**       a control structure. **B.**       an instruction. **C.**       a function. **D.**       a method. ||Answer: C - 76%|| ## Question 15 #dataStructures The following diagram represents a data structure that can be used to organise related data of a single data type. The index for the data structure uses integers. 0                 1                 2                 3                 4 | | | | | | |---|---|---|---|---| |5|10|22|6|| Which of the following data structures does the diagram represent? **A.**       array **B.**       record **C.**       variable **D.**       associative array ||Answer: A - 70%|| ## Question 16 #efficientAndEffective John and Deepa are discussing characteristics of efficient and effective software solutions, in preparation for writing some evaluation criteria. Which of the following is a characteristic of an effective software solution? **A.**       authenticity **B.**       completeness **C.**       cost of data processing **D.**       speed of processing instructions ||Answer: B - 66%|| ## Question 17 #Threats A finance officer at a school receives an invoice via email from the school’s regular stationery supplier. He notices that the supplier’s banking details on the invoice have changed. The finance officer contacts the supplier, who confirms that they sent the invoice but their banking details have not changed. This could suggest that the stationery supplier is a victim of **A.**       a data breach. **B.**       a phishing scam. **C.**       social engineering. **D.**       a man-in-the-middle attack. ||Answer: D - 61%|| ## Question 19 #analyticalTools Use case diagrams are used to outline and summarise how **A.**       data is manipulated and flows through a system. **B.**       actors interact with a system and its functions. **C.**       external entities interact with a system. **D.**       data is transmitted across a network. ||Answer: B - 76%|| # Section B ### Question 1 (2 marks) #SRS Identify and describe one characteristic that a well-constructed software requirements specification (SRS) would have. Characteristic                                                                                                                                  Description                                                                                                                                  #### Answer | **Mark** | **0** | **1** | **2** | **Average** | | -------- | ----- | ----- | ----- | ----------- | | % | 40 | 21 | 39 | 1.0 | Students were awarded a mark for identifying one of the following relevant characteristics and for providing a relevant description of the characteristic: ·         clarity / use of clear and concise language ·         completeness ·         consistency of requirements ·         consistency between specifications ·         clear prioritisation of requirements ·         detail ·         relevance Students were also awarded marks for identifying one of the following components of an SRS with a relevant description: ·         functional/non-functional requirements ·         scope ·         constraints ·         system and technical requirements ·         assumptions Students missed out on marks if they did not provide a relevant description of their chosen characteristic or repeated the characteristics instead of providing a description. **The following is an example of a high-scoring response. *Characteristic: Functional and non-functional requirements *Description: In an SRS, the requirements of the solution should be clearly set out – where functional requirements relate to what the solution must actually do, and non-functional requirements relate to the characteristics of the solution. ### Question 2 (2 marks) #dataTypes Explain why it is sometimes necessary to store numbers in a string data type variable. Provide an example of when numbers should be stored as a string, rather than as a numeric data type. #### Answer |**Mark**|**0**|**1**|**2**|**Average**| |---|---|---|---|---| |%|40|16|44|1.0| Students were awarded marks for explaining that numbers that are not needed for calculations (for example a post code) should be stored as strings. Students were also awarded marks for explaining that numerical data types don’t store leading zeros (for example phone numbers). Many students missed out on higher marks because they did not include an example. Some students incorrectly stated that numbers should be stored as a string if they needed to be added and displayed as part of a message within an application. **The following is an example of a high-scoring response. *In the case of trailing/leading zeroes in an input, if the number were to be stored as an integer, the program would automatically remove the trailing/leading zeroes (e.g. ‘0123’ would become ‘123’). An example is postcodes, where it may begin with a zero, such as 0230, and will most likely not have arithmetic performed on it, so it should be stored as a string.* ### Question 3 (4 marks) #designTools An app developer is creating a sports-scoring application for mobile devices that is currently in the design stage. Two of the solution designs are shown below. ![[Pasted image 20251118121643.jpeg]] **a.**        Identify the type of design tool used for the sports-scoring application.                                                                                                                          1 mark Other design tools, such as object descriptions and pseudocode, could be used to represent different aspects of the solution design. **b.**        Explain how object descriptions and pseudocode represent different aspects of the solution design, in comparison to the design tool identified in **part a.**                                                                                                                          3 marks ### Answer Question 3a. |**Mark**|**0**|**1**|**Average**| |---|---|---|---| |%|33|67|0.7| Students were awarded a mark for correctly identifying that the design tool used was a mock-up. Question 3b. |**Mark**|**0**|**1**|**2**|**3**|**Average**| |---|---|---|---|---|---| |%|38|24|28|10|1.1| Students were awarded marks for explaining that: ·         Object descriptions outline and describe properties and methods of a class/object. ·         Pseudocode is used to represent the logic of an algorithm. ·         Mock-ups are used to design user interfaces and do not consider the logical design or structure of an application. Some students provided descriptions of an object description and pseudocode but didn’t provide a comparison with a mock-up, and as a result missed out on marks. Many students were unable to explain with relevant and subject-specific terminology what either an object description or pseudocode was. The following is an example of a high-scoring response. *Although mockups represent the user interface and its appearance, object descriptions describe the methods and events relating to the objects within the solution, usually in the form of a table with name, type and descriptions. Moreover, pseudocode is English-like statements that are used to represent algorithms to be used within the solution, as we all any parameters and outputs.* ## Question 4 (5 marks) #dataCollection #UsabilityTesting Ananta is the team leader in a software development company that is creating a workflow management tool for a large marketing organisation. The clients are hoping that the new software will be capable of supporting their employees in monitoring the production of high-quality marketing and advertising materials. As the project is nearing completion, Ananta is looking to conduct usability testing. She knows that members of the development team should not be participants in the usability tests. **a.**        Identify who should participate in the usability test and explain why. 2 marks To record the results of the usability tests, Ananta is considering two methods of collecting information. Method 1: Recording a video of the tests. Method 2: Observing the tests directly so she can ask clarifying questions. **a.**        Identify which option Ananta should use. Justify your answer.      3 marks ### Answer Question 4a. |**Mark**|**0**|**1**|**2**|**Average**| |---|---|---|---|---| |%|26|18|57|1.3| Students were awarded marks for identifying that it would be most suitable for the client’s employees to participate in the software’s usability testing because they will be using the software for their work once it is complete, and would be able to provide unbiased or objective feedback. The following is an example of a high-scoring response. *Employees from the client’s company. Because they are the group the solution most caters to and testing with them will indicate where people of this skill set have difficulties with the solution.* Question 4b. |**Mark**|**0**|**1**|**2**|**3**|**Average**| |---|---|---|---|---|---| |%|72|5|14|9|0.6| Students were awarded marks for correctly identifying Method 1 (Recording a video of the tests) and for: ·         justifying why Method 1 was appropriate (for example being able to watch the video many times and having a record of the steps the user had taken as part of the testing) ·         justifying why Method 2 was inappropriate (for example, asking clarifying questions would introduce bias). The following is an example of a high-scoring response. *Method 1. This provides an objective record of the tests that can be viewed after the fact, by different people to determine improvements that need to be made without bias. Method 2 does not allow this as the results are collected only by Ananta and could be influenced by her view of the solution rather than objectively documenting the user’s experience.* ## Question 5 (5 marks) #RiskManagement **a.**        Describe why a risk-management strategy should be applied as part of an organisation’s software development practices. **b.**        Using the categories provided below, propose a risk-management strategy that could be used during the development of a software application.                       3 marks Technique Responsibility Timing **c.**        Suggest **one** benefit of using the technique proposed in **part b.**                                                                                                                          1 mark ### Answer Question 5a. |**Mark**|**0**|**1**|**Average**| |---|---|---|---| |%|91|9|0.1| Students were awarded marks for describing that a risk-management strategy should be applied as it ensures the minimisation of vulnerabilities within software development practices. The question was not answered well, as most students stated that a risk-management strategy manages risk. The following is an example of a high-scoring response. *A risk management strategy is the application of security practices based on analysis of vulnerabilities, and should be applied to prevent threats to the system or data in advance.* Question 5b. |**Mark**|**0**|**1**|**2**|**3**|**Average**| |---|---|---|---|---|---| |%|90|4|3|2|0.2| Students were awarded marks for providing a risk-management strategy. As per the question, students were expected to break the strategy down to a technique, responsibility and timing. Techniques from the following list were awarded a mark: ·         a software audit ·         security, vulnerability or penetration testing ·         security and compliance checks ·         security coding practice training for developers. Many students incorrectly listed security controls such as backing up and version control, and were not awarded marks. When addressing the responsibility component of the strategy many students incorrectly described the technique instead of outlining the professional whose responsibility it was to implement the technique. A mark was awarded for proposing a sensible time at which the technique would be implemented. In most cases this related to a time in the development of the software. Question 5c. |**Mark**|**0**|**1**|**Average**| |---|---|---|---| |%|93|7|0.1| In order to be awarded marks for this question students needed to suggest one benefit of using the technique proposed in part b. Marks were awarded for suggestions such as: ·         Software audits ensure software meets legal and technical security requirements. ·         Security/Penetration testing ensures that vulnerabilities are identified and not present when the software is released. ·         Compliance checks ensure third-party software won’t introduce vulnerabilities. ·         Training in secure coding practices minimises risk as it places security at the forefront of the minds of developers. ## Question 6 (2 marks) #versionControl #dataSecurity Compare how version control is different from backing up a file. ### Answer Question 6 |**Mark**|**0**|**1**|**2**|**Average**| |---|---|---|---|---| |%|22|38|40|1.2| Students were awarded marks for stating that version control keeps track of changes made to a file so that it can be rolled back to a previous version, if necessary, as compared to backing up a file, which keeps a copy of a file so that it can be restored if lost or corrupted. Many students were unable to provide a clear definition of each and therefore were unable to make a comparison. The following is an example of a high-scoring response. *Version control involves the monitoring of builds and when they were last stored into separate folders from one another, and even separate locations through archival. Backing up files meanwhile involves the storing of up-to-date data in multiple locations (physical on-site, physical off-site, cloud, for example) to reduce the risk of files being lost or corrupted and unrecoverable.* # Section C - Case Study ## Question 2 (3 marks) #efficientAndEffective #evaluationCriteria Ness has explained her expectations about secure development practices to her team. These expectations are outlined in the case study. Suggest three criteria that Ness could use to evaluate the effectiveness of the secure development practices she will be putting in place. Criterion 1 Criterion 2 Criterion 3 ### Answer Question 2 |**Mark**|**0**|**1**|**2**|**3**|**Average**| |---|---|---|---|---|---| |%|57|15|14|15|0.9| In order to obtain marks for this question, the suggested criteria needed to be measurable (or be posed as a question) and relate to one of the secure development practices outlined on page 2 of the case study (under the heading ‘Establishing expectations for secure development’). Many students who were awarded marks for this question wrote about the following: ·         How successful was two-factor authentication in preventing unauthorised access to the office space / devices working on the project? ·         High rate of success in ensuring that users were only permitted to access the areas they were authorised to. ·         Success rate in identifying security vulnerabilities from code auditing. The following are examples of high-scoring responses. *Example 1* *Criterion 1: How well are staff able to respond to threats after professional learning?* *Criterion 2: How accurate are the access logs in detecting failed access attempts?* *Criterion 3: How reliable is the two-factor authentication in preventing intruders?* *Example 2* *Criterion 1: Staff are able to demonstrate sufficient knowledge regarding secure development practices.* *Criterion 2: Code is able to meet industry standards and legal requirements around security.* *Criterion 3: User access logs are accurate and reliable.* ## Question 3 (2 marks) #namingConventions #internalDocumentation To ensure that the team can work efficiently and effectively throughout the development of the platform, Ness and her team need to select a naming convention. It will be used by all team members throughout the project when naming variables, functions and other components of their code base. Describe **one** characteristic that their naming convention should incorporate. Provide an example of what this characteristic would look like when implemented in this solution. ### [!Note]Answer Question 3 | **Mark** | **0** | **1** | **2** | **Average** | | -------- | ----- | ----- | ----- | ----------- | | % | 25 | 19 | 56 | 1.3 | Students were awarded marks for describing a range of characteristics that a naming convention should incorporate. These included: ·         meaningful names ·         descriptive ·         data type or data structure in element name ·         short ·         lowercase letters with underscores between words ·         lowercase prefixes indicating data or object type, with subsequent words capitalised. Most students were able to provide a relevant example. The following is an example of a high-scoring response. *A characteristic of their naming convention could be the use of a 3 letter prefix before the name of variables to indicate the type of variable. For example, “strName” would indicate that the variable is of the string data type due to its prefix, making it immediately clear to all developers how it should be handled.* ## Question 4 (4 marks) #gantt #projectplan Part of the project plan is shown below. ![[Pasted image 20251120100808.png]] Once Ness has completed the initial project plan, there are likely to be changes. a. Describe a technique she could use for recording the progress of the project to identify any changes made to the project plan. 2 Marks A member of the development team fears that Task 3 (‘Purchase and set up developer equipment’) could take up to six days instead of the planned two days. b. Describe the likely impact this will have on the timing of the milestone ‘Ready for Phase 1’. 2 Marks ## Question 5 (3 Marks) #analyticalTools #DFD Below is a partial data flow diagram (DFD) representing the authentication process. ![[Pasted image 20251120101038.png]] Referring to the context diagram in the case study insert, identify the correct names for the following labels. A: B: C: ## Question 6 (1 mark) #GUI Users will be asked to provide a billing address, including postcode and state (for example, Victoria), when creating a profile on the platform. They will enter which state they are from, and then their postcode. The postcode will then be checked to ensure that it matches the state that was entered. Identify a feature of a user interface that could be used to facilitate effective and efficient entry of the user’s state. ## Question 7 (5 marks) #ethicalIssues Ness originally planned to purchase high-quality test data as part of the testing of the user profile and authentication module. Unfortunately, she found that purchasing this data would cost significantly more than she had budgeted for, which would make it almost impossible to finish the project. The finance manager has told Ness that she must either reduce the size of her team by eliminating two members’ roles from the organisation, or purchase lower-quality test data. a. Identify two possible consequences that might arise from this ethical issue. b. Suggest a possible method of resolving one of the consequences identified in part a. and describe an advantage and a disadvantage of taking this approach. Method Advantage Disadvantage ## Question 12 (6 marks) The team knows that the accuracy of transcriptions will be an important non-functional requirement for the platform. They have generated an algorithm that will compare each word in the transcription (generated by the AI), with a library of words from previously transcribed audio. The transcribed word will then be checked against the matched audio from the uploaded recording. Where an inaccurately transcribed word is detected, the word will be re-transcribed and the transcription updated with the new text. The new text will then be re-checked by the algorithm. This algorithm is outlined below. ``` Begin For i <- 0 to transc_text.length – 1 Set error to -1 Set matched to true If compare(transc_text[i], wordLibrary[]) is false Then Set matched to false End If If matched is true Then Set matched to result of audio_Check(rec[i]) End If If matched is false Then Set error to i reTranscribe(rec[error]) Subtract 1 from i End If Next i End ``` Using the information and algorithm provided, complete the data dictionary below. | | | | |---|---|---| |**Name**|**Data type/structure**|**Description**| |error|integer|Used to determine the position of an error within the transcription| |transc_text[]||Collection of words that have been transcribed from the uploaded audio| |rec[]|array (audio)|| |i||| ||Boolean|Used to determine whether an issue with the transcription has been detected| |wordLibrary[]||Collection of words from previously transcribed audio| ## Case Study Printout A software-as-a-service (SaaS)1 development business currently provides productivity and project-management software to clients. The business has decided to offer translation2 and transcription3 services using artificial intelligence (AI). The business is based in Melbourne, and has offices around the world. Ness is the development leader on the project. Her team will predominantly be based in Melbourne although some staff will be working remotely in offices overseas. In her preliminary planning and work on the project, Ness has decided on using an iterative approach, where three complete phases of the problem-solving methodology will take place. Each phase will take place as follows: Phase 1: User profile (including authentication) module Phase 2: Transcription module Phase 3: Translation module She has also drawn a sketch of the intended workflows for the application when it is complete ![[Pasted image 20251120100110.png]] **Establishing expectations for secure development** Ness wants secure development practices at the forefront of her team’s thinking when they are developing the platform. The following secure development practices will be implemented: • two-factor authentication (password and swipe card) to access office spaces and devices working on the project for everyone involved • logs that record user access to office spaces and the development environment, including failed attempts at access • ongoing professional learning about secure development practices • ongoing code auditing for security vulnerabilities • ongoing code auditing to meet industry standards and legal requirements around security. These practices will be evaluated for their effectiveness once the project has been completed. 1 Software-as-a-Service (SaaS) – Application hosted online. Users typically have a subscription to the service and access the application through a web browser, rather than installing the application on their device. 2 Translation – The process of converting written or spoken words from one language into another, while maintaining the meaning of the original text. 3 Transcription – The process of converting speech or audio into a written or typed text document. **Application development Phase 1: User profile (including authentication) module** The user profile and authentication procedures are outlined below. • When users sign up to the platform, they provide personal details, including name, email address and billing information (including address). Users are then asked to verify their email address by clicking a link in a confirmation email. • Once verified, users are able to log in using their email address and password combination. • Once authenticated, users can access their user profile and the translation and transcription services offered (when the solution is fully developed). A context diagram representing this is shown below. ![[Pasted image 20251120100307.png]] Due to the size of the business, the development team is required under the Privacy Act 1988 to ensure that the personal details of users, and their data, are protected from unauthorised access and misuse. **Phase 2: Transcription module** Once the user profile module is completed, an analysis of requirements for the transcription module will be conducted. The team is now working on the design of the transcription module. Two alternative designs for the transcription module user interface have been developed. ![[Pasted image 20251120100340.png]] Ness’s team has also designed the three evaluation criteria below to use when evaluating the designs for this module. **Criterion 1:** Design follows common layout conventions for easy navigation. **Criterion 2**: Design uses standard symbols to communicate functions. **Criterion 3:** Design minimises typing to be more efficient across a range of devices. **Figure 4: Evaluation criteria for the transcription module’s user interface** **Phase 3: Translation module** Initially the translation module will accept documents in one of five languages (Chinese, English, French, Arabic and Spanish) and be able to translate between languages (for example, English to French, French to English, French to Arabic). It is intended that eventually 50 languages will be supported by the platform. Due to a delay in the development of the solution, it has been recommended that a third-party translation service be used to ensure that the platform can be released on time. This third-party service will be accessed by the module, using API (application programming interface) requests/calls