12 Replies Latest reply on Sep 14, 2017 3:29 AM by John Haddad

    Design Idea For Service Level Agreement

    John Haddad Expert

      Hi Dears ,

       

      I'm facing one issue regard the (Service Level Agreement) by default Landesk is caring about Breach in general , what ever the Agreement is being made .

       

      am trying to design two way for SLA

      ( one for 1st line level as Response Level ) another for ( 2nd line as Resolution Level )

       

      mainly i have 4 core process for tickets :

       

      Start > Awaiting Response > Open > Resolved

       

       

      From Start to Awaiting response == Response level

      From Open to Resolved == Resolution Level

       

      both agreement have different times for escalation time

      I need to know exactly if ticket is got breached , is it breached with ( 1st line or 2nd line ) as ( Response breached or Resolution breached )

       

      so can some one help me with a design for such a thing .

        • 1. Re: Design Idea For Service Level Agreement
          Julian Wigman ITSMMVPGroup

          Hi John,

           

          As you know there is only one is_breached boolean attribute on the process objects and there is nothing to stop you setting the checkbox on Escalations for BOTH  "Response" AND "Resolution" escalations respectively. So the challenge is knowing which one breached at the field can only be set once by the system.

           

          My suggested solution would be to create 2 x new boolean attributes;  ResponseIsBreached and ResolutionIsBreached.   We want these to be calculated fields and this be self maintaining.

           

          Whilst we might be able to do also with object level calculation,  the easiest IMHO is to use 2 process calculations.

           

          Outline logic is:

           

          1. For Response Calculation;  insert an automatic action**  just before the OPEN (I don't think it is "Open" BTW and more likely "In Progress" as "Open" is a start status!!) status and ensure that any branch from "Awaiting Response" is passed through this.   The calculation should check if the "Is Breached" flag is set at that point of time and if so then set the "ResponseIsBreached" to TRUE.  That's simple logic for capturing this state at this point in time.
          2. For Resolution Calculation;  insert an automatic action**  just before the  "Resolved" status and again make sure any appropriate entry branches into this status flow through this automatic action.  The calculation should check if the "Is Breached" flag is set  BUT the "ResponseIsBreached" = False; if so then set the "ResolutionIsBreached" to TRUE as we know the breach has happened since moving past the response stage.

           

          ** For the automatic action just create a new action in process designer and set associate with window = true.  Put these 2 fields on your Incident window and save such that you can then drop this action onto your process as an automatic action and then right clik the Booleans as appropriate to set the calculations.  Then hide the fields on the window (show on window = false) when you are done; ie you only need to show them while changing the calculations in process designer.

           

          You can then just check these 2 Booleans in queries etc.

           

          Just need to be sure that if you have any branches in your process that loop back to earlier statuses (ie unresolve) that you don't set these attributes again.

           

          Hope this helps.

           

          Julian

          • 2. Re: Design Idea For Service Level Agreement
            Julian Wigman ITSMMVPGroup

            Oh and when creating the 2 Booleans ensure their default value in BOD is set to false as otherwise they start as NULLs and calcs hate nulls without extra checking!

             

            Julian

            MarXtar

            • 3. Re: Design Idea For Service Level Agreement
              John Haddad Expert

              HI Julian,

               

              thanks for you reply


              i have similar solution like what you proposed , before enter ( Open ) status i added condition to check :
              if current data time >=  breach time
              it will set flag for response breach and another one before resolved status ..

               

              the issue is :
              if ticket is breached in response level , the breach time and minutes to breach , will stop calculating the new SLA

               

              so if ticket is breached first level you can't determine if also its breached second level

              • 4. Re: Design Idea For Service Level Agreement
                Julian Wigman ITSMMVPGroup

                In not suggesting using the breachtime field but the isbreached boolean.  The escalation definitions set this flag.

                 

                Is your "Open" status of type "Other" then as by default it is a "Start" type.

                • 5. Re: Design Idea For Service Level Agreement
                  John Haddad Expert

                  It will be the same ,
                  i have test is breached Boolean also ,
                  if ticket is breached in 1st stage ( Response Level ) ,, the IsBreach value will be true , so the calculation will set Response breached flag ,,
                  now it's in the 2nd stage ( Resolution level ) ,, before hit Resolved status it will check for IsBreach again , it will be also flagged from 1st stage.

                   

                  so it will be also resolution breached but at real its not .

                   

                  that is  my concerns

                   

                  and yes my OPEN status is other

                  • 6. Re: Design Idea For Service Level Agreement
                    John Haddad Expert

                    the main issue is ,,
                    if ticket is breached in 1st stage it will not calculate time for the 2nd stage .

                     

                    so i think i need to create another field for calculate the time again like ( Breachtime ) , but it don't how to do that .

                    • 7. Re: Design Idea For Service Level Agreement
                      Julian Wigman ITSMMVPGroup

                      Nah you are missing my logic as I know this already and the calculations I am suggesting deal with your concerns.

                       

                      // ResponseBool calc

                      If IsBreached == false:

                             return true

                      return false

                       

                      // ResolutionBool calc

                      // If Isbreached is true at this stage and the ResponseBool is false we know it breached via the Resolution Escalation

                      If ResponseBool == false and IsBreached == true:

                             return true

                      return false

                      • 8. Re: Design Idea For Service Level Agreement
                        John Haddad Expert

                        yes you right here ,

                        but how we know if its resolution breached or not if the time to breach is not calculating !!

                         

                        in your case this means,

                        if ticket is breached the response it will be both TRUE ( Responsebool and Isbreach ) and this means the resolution is not breached while maybe in real it is .

                        • 9. Re: Design Idea For Service Level Agreement
                          Julian Wigman ITSMMVPGroup

                          OK wondering if you can reset the normal isbreached flag via calc or trigger after the first Boolean is set.

                          • 10. Re: Design Idea For Service Level Agreement
                            John Haddad Expert

                            Yes this is the issue ,
                            even if i reset IsBreach flag ,, nothing will calculate the 2nd stage time .

                            • 11. Re: Design Idea For Service Level Agreement
                              John Haddad Expert

                              is there a way to make , calculation like breach time ? to calculat and count the remaining time for breachs

                              • 12. Re: Design Idea For Service Level Agreement
                                John Haddad Expert

                                I managed to Solve the issue ,
                                by resigning workflow and some calculations , and now its working smoothly.

                                if some one interested by the solution i will be happy to share ,

                                i will try to create document for this also.