ASD01 Sample Questions & Answers
You'll be tested on consuming and exposing REST and SOAP web services, advanced work queue management, strategies for handling exceptions, debugging techniques, best-practice design of objects and processes, and a short section on solution architecture.
Launch the full ASD01 simulator →Showing 10 of 20 free samples.
- Question 1Beginner
Web Services - Exposing and Consuming · Web Service Configuration
True or False: When a Blue Prism process is exposed as a web service, the 'max-instances' setting in the web service configuration in System Manager determines the maximum number of concurrent requests the service can handle by spinning up that many process instances.
Show answer & explanation
Correct answer: B
This statement is false. The 'max-instances' setting is a throttling mechanism that limits the number of concurrent requests that are queued to be processed. A web service call does not spin up a new process instance on its own. The requests are added to an internal queue and are processed by available runtime resources that are running the target process. It is a limit on inbound requests, not a mechanism for creating new robot sessions.
- Question 2Intermediate
General Items · Process Orchestration
A solution is designed with a 'Controller' process that populates a work queue from a master spreadsheet. Multiple 'Worker' processes then work the items from this queue. The design document states that the Controller process must run to completion before any Worker processes begin, to avoid processing an incomplete set of data. Which mechanism should be used to enforce this dependency in the most reliable way?
Show answer & explanation
Correct answer: B
The Blue Prism Scheduler is designed for this exact purpose. It allows for the creation of dependencies between schedules. By making the Worker schedule dependent on the Controller schedule, the system ensures the Worker processes will only be launched after the Controller has finished its run successfully. This is the most robust, manageable, and intended method for orchestrating process dependencies.
- Question 3Intermediate
Best Practice for Building Objects and Processes · Stateful Object Design
A retail company is automating its order fulfillment process. The process reads order details from an e-commerce platform's REST API, processes them, and updates an internal inventory system. The development team has created a Visual Business Object (VBO) to handle all API interactions. During testing, they find that the API's authentication token expires every 60 minutes, causing the process to fail with '401 Unauthorized' errors.
The current VBO design has separate actions for 'Get Orders', 'Update Order Status', and other business functions. Each of these actions makes a direct call to the API. There is no centralized mechanism for handling authentication.
What is the most appropriate design change to the VBO to manage the API authentication lifecycle efficiently and robustly?
Show answer & explanation
Correct answer: C
This is the correct best practice for managing state, like an authentication token, within a VBO. By using static data items (which retain their value between action calls) and a centralized private action, the VBO can manage its own state. The private 'Get_Auth_Token' action acts as a gatekeeper. It checks if a valid, non-expired token already exists. If it does, it returns it immediately. If not, it performs the authentication, stores the new token and its expiry time, and then returns it. This is efficient (avoids unnecessary logins) and robust (centralizes the logic).
- Question 4Intermediate
Exception Handling · Memory Management
A process has been designed to read data from an Excel spreadsheet, but it is failing intermittently with a 'System.OutOfMemoryException' when processing very large files. The current design uses the 'Get Worksheet as Collection' action from the MS Excel VBO to load the entire sheet into memory at the start of the process. The solution must be redesigned to handle files of any size without running out of memory. Which design change is the most appropriate solution?
Show answer & explanation
Correct answer: B
This design pattern avoids loading the entire file into memory. By iterating through the spreadsheet row-by-row (or in small batches), the memory footprint of the process remains small and constant, regardless of the file size. While this approach can be slower due to repeated COM interop calls to Excel, it is the only robust way to guarantee that the process will not fail due to memory limitations when handling arbitrarily large files.
- Question 5Advanced
Work Queues · End-to-End Solution Design
Case Study: Invoice Processing Automation
Company Background: Global Freight Inc. (GFI) is a logistics company that processes over 5,000 invoices daily. These invoices arrive as PDF attachments in a dedicated email inbox. The finance team manually opens each email, downloads the PDF, extracts key information (Invoice #, Vendor Name, Amount, Due Date), and enters it into their legacy ERP system, which is a Windows-based desktop application.
Automation Requirements: GFI wants to automate this process using Blue Prism. The solution must be scalable to handle peak volumes of up to 10,000 invoices per day. The solution needs to be resilient to application outages and handle various invoice formats from different vendors. A key requirement is that the solution must provide a clear audit trail and a mechanism for the finance team to handle invoices that the robot cannot process (exceptions).
Proposed Solution Design: The proposed solution consists of three processes:
- Process 1 (Email Reader): Runs every 15 minutes. It reads the inbox, downloads PDF attachments, and adds a new item to a 'New Invoices' work queue for each PDF. The email is then moved to a 'Processed' folder.
- Process 2 (Data Extraction): Multiple robots run this process concurrently. They get an item from the 'New Invoices' queue, use an OCR tool to extract data from the PDF, and if successful, add the extracted data to a 'Validated Invoices' work queue. If OCR fails or confidence is low, the item is marked as an exception in the 'New Invoices' queue.
- Process 3 (ERP Entry): Multiple robots run this process. They get an item from the 'Validated Invoices' queue and enter the data into the ERP system. If the ERP system is down, the process should stop gracefully and resume later.
Which of the following represents a critical flaw in this proposed solution design?
Show answer & explanation
Correct answer: C
This is a critical flaw. The process creates a new work queue item in 'Validated Invoices' without retaining a link to the original item in 'New Invoices'. If Process 3 fails to enter an item into the ERP, there is no straightforward way to trace it back to the original PDF or email. A robust design would use a single work queue and update the status of the item as it moves through the stages (e.g., 'New', 'OCR Complete', 'ERP Entry Successful'). Alternatively, if multiple queues are used, the item key or ID from the first queue must be passed to and stored in the second queue item to maintain the audit trail.
- Question 6Intermediate
Web Services - Exposing and Consuming · JSON Parsing
A developer is consuming an external REST API that returns a JSON array of customer objects. They are using the 'HTTP Request' action from the Utility - HTTP VBO. The action executes successfully, but when they try to parse the response content using the 'Get Collection from JSON' action from the Utility - JSON VBO, it fails with an error. The JSON response is structured as follows:
{ "status": "success", "data": { "customers": [ { "id": 1, "name": "John Doe" }, { "id": 2, "name": "Jane Smith" } ] } }The developer has passed the entire response content to the 'JSON Text' input and 'customers' to the 'Collection Path' input of the 'Get Collection from JSON' action. Why is the action failing?
Show answer & explanation
Correct answer: A
The Utility - JSON VBO requires the 'Collection Path' to specify the full path from the root of the JSON object to the target array, using dot notation for nested objects. In this case, the 'customers' array is nested inside the 'data' object. Therefore, the correct path is 'data.customers'. Simply providing 'customers' is insufficient as it is not a top-level element.
- Question 7Beginner
Best Practice for Building Objects and Processes · Process Flow Design
During a peer review of a new process, you notice that a developer has used multiple 'Terminate' stages on the main page to handle different exit conditions. Why is this considered poor design practice in Blue Prism?
Show answer & explanation
Correct answer: C
The 'Terminate' stage causes an immediate, uncontrolled stop of the process. It is akin to killing a task in Task Manager. This bypasses all subsequent logic, including exception handlers and clean-up routines (like logging out of applications or releasing locks). Best practice dictates that a process should have a single 'End' stage, and all process flows should converge on it to ensure graceful shutdown and proper resource cleanup.
- Question 8Beginner
General Items · Process Actions
A solution requires a 'parent' process to add multiple items to a work queue, and then launch several instances of a 'child' process to work on those items concurrently. Which Blue Prism action should the parent process use to start the child processes without waiting for them to complete?
Show answer & explanation
Correct answer: C
The 'Start Process' action is designed for asynchronous process execution. When called, it requests the creation of a new session to run the specified process and immediately returns control to the calling process without waiting for the new session to complete. This is the correct method for a parent process to launch multiple, independent child processes.
- Question 9Intermediate
Work Queues · Queue Configuration for Retries
A process working on a queue of customer update requests occasionally fails due to a target application being temporarily unavailable. The design requires that if a case fails with a system exception, it should be automatically retried up to three times, with a 5-minute delay between each attempt. If it fails a third time, it should be marked as a business exception for manual review. How should the 'Max Attempts' property on the work queue be configured to meet this requirement?
Show answer & explanation
Correct answer: B
'Max Attempts' defines the total number of times an item can be worked before being automatically marked as an exception. A value of 3 means the item will be attempted once initially, and if it fails with a system exception, it can be retried two more times. After the third failed attempt, the queue controller will automatically move the item to the exception state. The 5-minute delay is handled by deferring the item in the process logic, not by the queue's Max Attempts setting.
- Question 10AdvancedSelect 3
Web Services - Exposing and Consuming · Exposing REST Services
A solution designer needs to create a process that can be triggered on demand by users through an external system. The external system can make a REST API call to Blue Prism. The process requires several input parameters (e.g., CustomerID, CaseType) to be passed in the API call. Which of the following components must be configured to achieve this? (Select THREE)
Show answer & explanation
Correct answers: A, C, D
The input parameters of the process's main page Start stage define the data contract for the exposed web service. These parameters will be populated from the data passed in the web service request.
Publishing a process makes it available to the web service listener. Without this step, Blue Prism will not know which process to execute when a request for that service name is received.
For security and auditing, a role with the 'Web Service Listener' permission is required. This role is then assigned to the web service group in the System Manager settings, which governs access to the published processes within that group.
Ready for the real thing?
The full ASD01 simulator has every exam-style question, timed mode, and instant scoring.