Prévia do material em texto
Mobile Developer Specialization Sample Exam Before Starting This sample exam has 8 questions that will help you get ready for the Mobile Developer Specialization exam. We recommend that you prepare a real exam environment, as much as possible. ● Book a quiet room just for you. ● Print this document, apart from the last page. ● Get a stopwatch or set a timer for the (recommended) duration of 20 minutes. The last page of this document has the correct answers. Don’t peek! Use it only after completing your exam, to check how well you did. outsystems.com 1 During the Sample Exam To accurately simulate the real exam environment, we suggest that you: ● Read each question and its answers carefully. ● Take your time! Questions may be revisited and your choices can be changed. ● Mark the questions that you want to review at the end. ● Pick only one answer per question, as only one is correct. ● Answer all questions, as there’s no benefit in not doing so. ● Try turning off all electronic devices during the exam. ● Refrain from using or reading any external materials during the exam. After Completing the Sample Exam After completing the exam, validate the answers you selected by checking the ones provided in the last page of this document, and count the total number of correct answers. Since the passing score is 70% or higher, you should get at least 6 questions right. In case you chose any wrong answers, we suggest you review the study materials where that specific topic is covered. outsystems.com 2 Sample Exam Questions 1. Considering Local Storage and Database Entities in Mobile apps, which of the following statements is correct? A. The referential integrity is guaranteed in Local Storage Entities by default. B. Database Entities support composite keys, but Local Storage Entities do not. C. Local Storage Entities must map an existing Database Entity. D. Static Entities can be created in Database storage, but not in Local Storage. 2. Consider the following sentence: "When fetching data from Local Storage, the Aggregates are always triggered when the Screen is initializing". Which of the following options is true? A. The sentence is correct. The Local Storage Aggregates are triggered when the user accesses the Screen and before the Database Aggregates. B. The sentence is incorrect. The Local Storage Aggregates on Screens run only when the Database Aggregates finish. C. The sentence is incorrect. Local Storage Aggregates on Screens can also be triggered on demand. D. The sentence is correct. The Local Storage Aggregates are always triggered when the Screen is initializing and run in parallel with the Database Aggregates. outsystems.com 3 3. Considering the data synchronization pattern displayed in the screenshot, which of the following options is correct? A. This pattern is recommended for scenarios where it is not likely for multiple end-users to change the same data while the apps are offline. B. This pattern is recommended for advanced scenarios where multiple end users will change the same data while the apps are offline, supporting conflict detection. C. This pattern is recommended for scenarios where end-users only need to read data while the app is offline and the amount of data is large. D. This pattern is recommended for scenarios where end-users only need to read data while the app is offline and the amount of data is small. outsystems.com 4 4. Consider the following sentence: "The synchronization procedure only runs asynchronously and in the background". Which of the following options is correct? A. The sentence is correct. The TriggerOfflineDataSync Action is the only way to start the synchronization procedure, which is done asynchronously and in the background. B. The sentence is incorrect. The synchronization procedure only runs asynchronously and in the background when automatically triggered by a configuration defined in the OfflineDataSyncConfiguration Action. C. The sentence is correct. The OfflineDataSync Action is the only way to start the synchronization procedure, which is done asynchronously and in the background. D. The sentence is incorrect. Despite not being recommended, the synchronization procedure can be triggered by calling the OfflineDataSync Action, thus making it run synchronously. 5. Consider the Action in the screenshot (in the next page). This Action was recently added to an existing mobile app, to allow end-users to take a picture, using the Camera Plugin. The picture is a resource that can be saved in the Database, in the Resource Entity, and locally in the LocalResource Entity. This change has two very important requirements: 1) To guarantee, when online, that the resources stored locally and in the database are properly synced, meaning that the information in the database should be the same as the one in the local storage. 2) To guarantee that the changes will not cause any issues to the end-users that already have the app installed in their devices. Knowing these requirements, the developer already tested the synchronization procedure and knows it is working properly. Now, the developer is analyzing the Action to take a picture. What would you recommend, if anything, for the developer to change in this Action to make sure it meets the two requirements? outsystems.com 5 A. Nothing. The logic is correct and it meets all the necessary requirements. B. The logic should check if the plugin is available, before calling the TakePicture Action. C. After the CreateOrUpdateResourceWrapper Action, the flow should go directly to the Success message. D. An Assign should be placed before the CreateOrUpdateResourceWrapper to convert the LocalResource attributes in Resource attributes. outsystems.com 6 6. Consider an OrdersDirectory Mobile application with the Orders Screen to list all the registered Orders. Since there are a lot of Orders to display, the developer implemented the infinite scrolling functionality on the list of Orders. However, when testing the application and scrolling down, the list of Orders did not change. What is the reason for that wrong behavior? A. The Refresh Data node should be removed, since it is re-executing the Aggregate and fetching the same batch of records with each scroll. B. The MaxRecords property of the Aggregate should be set to IncrementRecords, otherwise it does not change. C. There is an Assign missing right before the Refresh Data node to increment the MaxRecords value. D. The first If is not properly defined. After fetching the first batch of data, the Condition will always be evaluated to False. outsystems.com 7 7. Considering troubleshooting of mobile apps, which of the following statements is incorrect? A. The browser emulator is a very convenient option to test the performance and experience of the mobile app. B.When the mobile app executes native plugins, it is recommended to test their behavior in the generated native app directly on the device. C. It is possible to test and debug a native mobile app directly on the device, for iOS and Android versions of the app. D. The browser emulator is a very convenient option to test and debug the logic of the mobile app. 8. Which of the following changes in a mobile app does not require installing a new build on the device, to be able to use those changes? A. Changing the main color of the app. B. Renaming the Entry module of the application. C. Adding a new mobile plugin to the app. D. Changing the default home Screen of the app. outsystems.com 8 Answers 1. D 2. C 3. A 4. D 5. B 6. C 7. A 8. D outsystems.com 9