Splitting App for Performance

Comments

8 comments

  • Avatar
    Karl Makatenas

    When we used sectioning in forms, the load times seemed to be distributed for each section.  So the initial form load is just as fast, if that's what you're aiming for.

    However, a lot of process simplifications (not the programming/development side; the process improvement/business side) has made our forms a lot more manageable.  If you have a proper request coming in, it's a lot easier to scope out the technical details and subdivide-and-conquer.

  • Avatar
    Phread Langford

    We have a large application with 13 process models. I discovered that after about 100 activities in a process the wait time in loading or making changes is prohibitive. The form has 21 tabs with multiple subforms. The end user has a 2 – 5 second delay in the form displaying for them. There is a variety of serial and parallel approvals and tasks.
    One of the functional issues we have encountered is that when a step needs to be reset, if there is parallel processing in the same model, it cancels the other active steps in that model. This has led to restarting the processing at the split step causing it go through the previously approved steps (unless more logic is put in place to skip if already done) OR creating separate models.
    There should be a method to start an application from another application, however I haven’t found the method to get it to work for both manual start and calling. The documentation says that a process application can be started from adding a new document or entry to a SharePoint list or library, however I haven’t been able to get that to work.

  • Avatar
    Karl Makatenas

    The system I've developed allows one process to start either by a user or by another process.  As long as you can think through some of the complexities of such a system and can manage subprocess calls like the following image, it should work out.  The issue is the sheer number of activities, so after a form gets submitted, we usually have to wait a few minutes during a live presentation for the data to get where it needs to go.  However, forms load quickly and all the dashboards are managed by SharePoint.

     

    So yes, applications can start other applications.  The Subprocess activity is what you're looking for.  However, the option between launching from another application or launching by a user form submission takes a bit more thought to nail down and a minimum of two process models.  I can give you some ideas if you need them for a specific business case, but I feel this topic is more about generalities.

  • Avatar
    Loren Bratzler

    Phread,

    When you are describing resetting a step in your process, I assume you are referring to the "Change Flow" option in the process monitor, correct?

    There is a way to only change the flow for a specific part of your process and not have it affect any other branches of the process that may have active steps.

    Here is an example where I have a process with multiple active tasks:

     

    If I want to go back to the "Confirm AD Setup" task but not affect the other tasks, I click on "Change Flow" and then I click on the "IT Needs" task first (it will hi-light in red).  Then I click on the "Confirm AD Setup" task (it will hi-light green):

    Then when I click on the "Apply" button, only the tasks that I selected will be affected.  The other active tasks remain active as before:

  • Avatar
    Phread Langford

    Yes, that's what I need to restart.   Where is this documented or explained?

  • Avatar
    Karl Makatenas

    Are you referring to Loren's comment?  If so, here:

    https://documentation.agilepoint.com/10/admin/cloudemRollProcessForwardBackward.html

  • Avatar
    Loren Bratzler

    Karl - The documentation link that you referenced above does not mention the fact that you can click on an active task first and then click on a target task.  It only mentions clicking on a target task.  When you only click on a target task, then you run into the same problem that Phread describes where all the other active tasks in the process get cancelled.  I actually discovered the work-around that I showed above by accident one day.  The documentation needs to be updated to explain that this can be done.

  • Avatar
    Nik Chaphalkar

    Thank you everyone for the feedback. We previously implemented sections as was recommended by Karl. This was wonderful as it staggered the lookup delays for the user across  their workflow instead of all at once, and when sections were not needed eliminated parts of the delays.

    To be clear, we are facing form loads of 30-90 seconds and section changes of 5-10 seconds. We would be OK with Phread's 2-5 seconds!!

    One benefit we see on splitting the app to smaller business processes is that we can tackle process improvement with fewer stakeholders at a time, hoping for quicker approval on removing unneeded steps. 

    Loren's advice about using change flow without restarting or cancelling other activities is a gold mine. We did not know about this and will be using it. 

     

    Thank you

    Nik

     

Please sign in to leave a comment.