There are a few things that need to be improved in the studio just for development easiness. 1:- Studio look and feel must be improved. 2:- While connecting two stages in Blue prism there should be an option just to click so that they will connect by an arrow or by a mouse hover we can get that arrow. Like we used to get the option in VISIO or draw.io 3:- The developer should be able to resize all the stages by selecting on time. For example, all the stages must follow 4 squares or 6 squares then the Developer or user should be able to for one page at once. These are a few suggestions but there is a lot of room for improvement.
... View more
Currently, we can change the logging for all stages in a process by choosing one of the three options, disabled, enabled or errors only.
It would be great if we can have one more option which is changing all log according to best practices and recommendations. This option can be disabling what needs to be disabled, setting errors only for what needs to be that way and leaving all decision and choice stages enabled. Simply an option that can be used before releasing to production as usually a lot of things enabled while developing which makes the currently available 3 options important but they still require manual work to change the logging for specific stages. In a big process this can be a problem since not noticing some stages can be possible.
... View more
Hi Folks, Some time its very tedious to check for one scheduler in all scheduler pane to check . Can we have some group like structure that we already have in Queues so that we can see which queue have what scheduler running or made . And same should be there in retire section as well so that even support guys of operation don't get confused in running any process
... View more
During a presentation of the ROM2, the importance of good process construction, proper testing and continuous service improvements was frequently highlighted without going into the detail of how this was achieved.
Thus, when developing BluePrism processes, it is critical to invest in increasing process quality and an efficient testing process in terms of both cost and time investment.
When it comes to process development, there are a number of important factors to consider. One of the most important factors is process quality. This refers to the extent to which the process meets the specified requirements and has the ability to function safely and reliably. Another important factor is process complexity. The more complex the process, the more chance of errors and problems and the more difficult to test. When complexity increases the possibility for introducing errors and the difficulty to test escalates. It is important to reduce implementation complexity by choosing simple workflows, using business logic and reducing redundant actions. A general rule adopted is that the more paths through a piece of code, the more complex it is.
To my opinion, BluePrism implementations also have cyclomatic complexity that depend on the size and complexity of the processes, sub-processes and object actions and the amount of decision points in these components. A BluePrism implementation with high cyclomatic complexity can lead to problems such as poor performance, higher costs and errors. That is why It is important to reduce cyclomatic complexity to ensure the quality of the implementation. Several scientific papers have shown that there is a positive correlation between cyclomatic complexity and the probability of errors in software programs (e.g., Jones, 1986). Another study has shown that reduced cyclomatic complexity contributes to improved readability, maintainability and testability of software programs (e.g., McCabe, 1976). Cyclomatic complexity is a also an important factor in the quality of a BluePrism RPA implementation. Reducing complexity can prevent problems and ensure the quality of the implementation.
Cyclomatic complexity could be an indicator of the quality of BluePrism process / object implementations. This indicator aims to measure and quantify the complexity of a process. The higher the cyclomatic complexity, the more difficult it is to understand and maintain the process. McCabe's Cyclomatic Complexity can also identify the points that generate the complexity. These points are also called "cyclomatic paths" and can be found by analyzing the graphical representation. Each decision point (decision stage, choice stage, loops, etc.) potentially generates a new cyclomatic path, increasing the complexity of the flow in the process and/or object. By identifying these cyclomatic paths, the flow can be optimized to reduce complexity and improve readability and maintainability.
Some studies that can help in this regard are the following:
"Cyclomatic Complexity and Software Maintenance" by Thomas J. McCabe - This 1976 article introduced cyclomatic complexity as a measure of software complexity.
"An Empirical Study of the Relationship Between Cyclomatic Complexity and Software Maintenance" by Jaroslav Pokorný and Petr Baudiš - This 2014 article presents a study examining the relationship between cyclomatic complexity and software maintenance.
"An Efficient Algorithm for Computing Cyclomatic Complexity of Programs in java" by Surya Narayan Sharma and Suresh Kumar - This 2017 article describes an efficient algorithm for computing the cyclomatic complexity of Java programs.
In addition to cyclomatic complexity, there are other measurable factors that can affect the quality of BluePrism RPA implementations.
Some important factors are:
Duplication in processes and objects: When a piece of implementation is used in multiple places, it can lead to problems in maintaining and extending processes and/or objects. Duplication should therefore be minimized.
Test coverage: To ensure that the BluePrism RPA implementation works properly, it is important to write tests that cover all functionality of the process/object flows. The more tests that are written, the better the quality of the implementation. Test coverage is the extent to which a test suite covers all possible paths in the process /object under test. A cyclomatic path is a sequence of steps through a process /object flow that touch each logical path or decision point in the program once. To determine test coverage based on the given test suite and cyclomatic paths, each path in the test suite must be analyzed to determine if it corresponds to a cyclomatic path. If a given cyclomatic path is not covered by the test suite, more test cases must be added to the suite to cover the path. Test coverage can then be calculated as the percentage of all possible cyclomatic paths in the program that are covered by the test suite. The ultimate goal is to achieve high test coverage so that there is sufficient assurance that the software program is functioning correctly and meeting customer expectations. So if we know the cyclomatic paths of a process/object, we can derive a desired dataset that maximizes test coverage. This dataset is often referred to as a "test suite." The purpose of a test suite is to ensure that each test performed contributes to testing a unique path in the flows. The process of deriving a test suite is quite cumbersome and can be done manually or automated. It involves going through each path in the flow and identifying the requirements for the inputs of each function and each condition to be considered. This requires in-depth knowledge of the flows in the process/object and the ability to identify "corner cases" that may lead to errors in the flows. In addition to manually deriving a test suite, tools can also be used to automate the testing process. These tools could take the cyclomatic complexity of the flow as input and generate the test cases that test each line and branch of the flow. This results in a test suite that comprehensively tests the flows and would provide maximum coverage. In short, knowing the cyclomatic paths of a process/object can lead to deriving a test suite that maximises test coverage. This can be done manually, but should also be possible with tools to automate the process. The purpose of a test suite is to ensure that each test performed contributes to testing a unique path in the flows, which is important to ensure software quality.
Readability: A good implementation is easy to understand, even for people who are not directly involved. Readability can be improved by using meaningful variable names and clear process/object formatting.
Process testing does not stop at one test. It is important to conduct regular regression testing to ensure that any changes to the process and environment do not have unexpected side effects. Test suites with associated test data that ensure high coverage can be used to detect regressions in advance. This also helps to detect any errors and problems quickly and efficiently.
There is also the continuous service improvement component which is an important aspect of process development. This means that continuous improvements are made to increase efficiency and improve quality. This is achieved by constantly monitoring the performance of the process and addressing problems immediately. Efficiency is essential in process testing. Efficiency means using minimal time and resources to complete the testing process without compromising the quality of the tests. By having proper test suites, test coverage, regression testing and continuous improvement, you can ensure that the processes and objects are of high quality and tested efficiently.
It is important to consider these factors when designing and implementing BluePrism processes and/or objects. Scientific articles that offer more information on these topics include "The Relationship Between Cyclomatic Complexity Metrics and Software Quality: A Controlled Experiment" by D.R. Kuhn and "Agile vs Traditional Methods: A Meta-Analysis of The State of The Art" by A. Subramanian et al.
Perhaps a study topic for a graduate student to measure the quality of BluePrism processes and objects?
... View more
Status:
Needs More Info
Submitted on
06-11-19
05:14 PM
Submitted by
Dawid.Pekala
on
06-11-19
05:14 PM
Just like it is possible with process logs, it would be great to see an option to added to archive off work queue items. It could be as simple as a tickbox within log archiving to include queue items or (even better) as an entire separate archiving subrouitne, so it can run on separate schedule.
... View more
It would be nice to see improvements on: - Out of the box dashboard/reporting capabilities (withing Control room) - Make dashboard configuration/customization user friendly
... View more
Hello,
Access to session log is not an obvious facility in Blue Prism Control Room. From time to time it may happen that due to performance issue and reaching timeout session log does not get displayed at all. In this situation, if we want to find out what were exactly the input parameters thanks to which we can differentiate one run of the same process from another, we either lose this detail or guess it with a higher or lower confidence, for instance by relying on the time of run.
To achieve more readability of in/out parameters, it would be beneficial if users had an opportunity to have them displayed while hovering their mouse over a particular run of process in the Control Room instead of counting on session log being correctly opened and reading parameters from it.
Best regards,
Paweł
... View more
Please change 'Link to Asset' to link to the latest version of Decipher's assets. I would also like the content of 'Getting Started' to be compatible with the latest version. (The latest version is 2.3, but "Link to assets" will take me to the 1.2 page) The relevant page on Digital Exchange is below: https://digitalexchange.blueprism.com/dx/entry/3439/solution/blue-prism-decipher The sample process and documents are not compatible with 2.3, so I am having trouble figuring out how to use VBO to build a process in 2.3.
... View more
Currently when we have system upgrades & downtime we have to remember to retire our processes so that they don't try to run whilst those systems are unavailable. It would be handy as we often know in advance when these system downtimes are - and they are usually out of hours so we sometimes retire a process a few hours before downtime is set to begin missing out on time we could have used to process cases.
If we can add a timed retire onto the schedule. As in 'retire this process at.... and resume at....' so that it can run in time with these upgrades.
... View more
Currently renaming user roles in Blue Prism is only possible by mouse click. It should be possible to use Windows standard [F2]-key for renaming user role names (similar as it is already possible in Studio with folder/group names). This will also come handy when automating Blue Prism application (as being official suggested since no API is available).
... View more
When we create a table into Interact Form, by default all columns created are TEXT type. It's would be great to have the possibility of change the type for each columns into the table with BluePrism's Variable Types --> Number, Text, Flag, Collection, DateTime ... Thanks!
... View more
AWD Viewstation attach docs button automatically truncates the file name to 75 characters. LFG is asking that we develop the same functionality currently available in Viewstation. ServiceNow ticket #CS0014450 was opened as a defect.
... View more
Hi,
there is a client requirements that some fields should be repeated on several Interact form pages. At this moment we have to create such fields for each page which is not very convenient and well managed way of fulfilling such a request.
The requirement is to be able to define a global field which can be shared throughout all the pages in the form but it is just one automation id.
Regards
Zdenek
... View more
It would be nice to have a feature to 'copy' runtime resources in Control to the clipboard.
By copy I mean the hostname and/or the FQDN. Basically the '.nameof' method of the runtime resource.
(btw I am not sure but I guess the drop down box in the Submit Idea form naming 'Blue Prism Control Room' refers to web based control room? and Blue Prism RPA Product refers to Blue Prism Enterprise?)
... View more
A better password reset mechanism is needed in case the user forgets the password of the BP login. I know there are other workarounds, BP support contact, etc but tool should be able to provide such reset options by using Email ID, Phone Number, Secret Questions, etc many other options are available in tools nowadays.
... View more
As a Form designer I would like to add a new line in an Interact paragraph.
Today I can change the characters in many ways but I can’t insert new lines.
... View more
Status:
Under Consideration
Submitted on
15-09-22
09:04 AM
Submitted by
PvD_SE
on
15-09-22
09:04 AM
When developing a process, one tries to put in the effort to structure it well so even another developer can understand what is going on in there. The same goes for our Process Controllers that run the processes in production. When running the process, they have a schedule that presents them with the Startup Parameters and their descriptions and the default values that can be adjusted. Or so I thought! Last few days we've been entangled in what a certain parameter name 'Email' was used for. Is is used for sending to, or is it used form sending from? I merely pointed to the descriptive text as defined in the process Startup Parameters, being 'certain' the descriptive text would pop up in the scheduler panel. As it appears, the names of the Startup Parameters are shown in the Scheduler, but the description of each parameter is not shown. Why this is is beyond me, but I do know that this definitely should be added in some form, manner, or shape. Why else would I make the effort to add a proper description to each parameter? To be honest, I was puzzled by this shortcoming. I've been working with BP since 2017 and never before needed to visit the scheduler panel details in production. Why wouldn't the description for each parameter, that BP makes us fill out, and where many of us hopefully take the time to give it a suitable value, be shown on that panel? [SadEmojiWithQuestionMark] As I see it, we have three options:
The descriptive text is added to the scheduler panel
The descriptive text is displayed as a 'hover' text on the scheduler panel
We don't do a thing and hope for the best
My vote is on either option 1 or 2 and would translate to a thumbs up. Option 3 is the equivalent of thumbs down and only there for the folks that do not care what the UI looks like. What do you reckon? Happy coding! --------------- Paul Sweden
... View more
It would be great if there was a function to allow you to view what logging level each stage had, without having to click into each one separately (or work your way through the logs after testing). Was thinking something along the lines of a colour coding of the icons, maybe a small coloured dot in the corner, with a different colour for Enabled/Log Errors Only. Or maybe a report from the Debug menu, similar to the Validation page, which would show a list of all stages and their respective Logging levels, which allowed you to change it from that screen.
... View more
Hi, Like we have a standard VBO for excel, outlook etc with Interop, one standard VBO for PDF with Adobe Acrobat DC Interop will be very useful to perform common actions on PDF like read entire text, count number of pages, convert PDF to excel or images, search for a text on a particular page, find page number of particular text etc. Acrobat DC has good library mentioned here - 1) https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/iac_api_reference.pdf 2) https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/iac_developer_guide.pdf Lot of these functions can be used to create a code based VBO User will install Acrobat DC on their machine like they install Microsoft office.
... View more