 Thanks everyone for joining the session in the session. We are talking about like how the canman support and canman structure work Unity right now Nowadays the support model is in the latest session, but some myths are wrong, which I would like to discuss in this session My name is just pretty saying and I'm working as a project manager in the excellent The best part is a couple of months back like we celebrated the excellence anniversary It's a 10th year anniversary and I'm about to complete a decade In the excellent by next year I'm presenting. I'm trying to come in Contribute in the Drupal community since 2019 and it is my ninth contribution in the International events and the other ones the Drupal camps and the cons Hi from excellent We are a remote organization and we are working throughout the globe and we are dealing in the Drupal mostly Drupal is our speciality and throughout that because I'm connected with the excellent for the last nine years and They are working from the day one as a like we have completed around ten years in order to work in the Drupal So that is our efficiency So in the agenda, I'm going to cover up the support and maintenance model how it works Support primary outlines is the support model beneficial for the client stakeholders how the estimation process works in the support and There are uptime and the downtime monitoring system is there how we are managing in the support model How to handle the Drupal security updates for the multiple projects in support right now? We are handling around 13 plus projects in support. So I would like to guide you like how we are handling in the automated way Does Kanban play a white role in order to manage the support projects. So there's a one demonstration I would like to show you that how it is helping me in order to move ahead Support bandwidth management how we are managing because if you have a multiple projects then how we are managing the support bandwidth So that is the one thing which we'll discuss When you hear the word support what comes to your mind? So I would like to know from all of you like how many of things like when you heard word support It's later to the call center. It is later to the customer gets support And you think Like how many of you think like about the support? It's a customer support You are talking about is a call center support or the support request We are getting from the customers and you are serving it But to be honest, it is not true There's a myth behind that. So I would like to explain you like let's go there the social media We are already using that the Instagram the worst app WhatsApp Facebook Let's suppose they have built the software and Once they are building it launching into the market They think about like a yes We are done with that and they're sitting back and relaxing and earning the money. This is not a correct thing if you want to Go in the market and you want to be consistent You have to make sure it should be continuous development efforts should be there in the back end Apart from that the regular security of it should be there then after you will be able to survive and compete with others stakeholders Here comes to our role related to the support and the maintenance one So kind of when we are talking about the support the myth is kind of If we if we are good like if you can talk about Continuous development and maintenance model the short form would be the CPM So that is the best thing which comes into our mind because it is a recurring model Let's suppose if you are working as a managed project It would be a fixed cost fixed timeline. That is a project Okay, after three months or the fixed line of project like Then after the warranty period then it comes to the support You have to sign a contract with the clients for one year or two years So it would be a kind of recurring monthly payments you'll get so it's a that is a reason like it is the latest in the demand And we are working consistently in the support model Let's talk about the continuous and the maintenance model Like contents and maintenance power we are already providing all the services which are requested by the client And apart from that it comes into the role when the warranty period finishes And then after we start working on the other things later the support how we can manage it What are the things which we need to maintain? So this comes into a rule the first one is It's a flexible continuous delivery because if you're working in the sprint model Then you have to stick with the timeline you won't be able to fit the new things into the sprint model If you're the sprint is already executing Then if you are working in the support model that is a completely flexible and we work in the Kanban Definitely you your timeline or the release structure would be more flexible It will help you to add more things and made you more flexible in order to deliver on time Next is scale scalable capabilities if you're maintaining the support model Then make sure you have the scalable capabilities in hand which works in a multiple way kind of Let's suppose if a developer is there who should be more towards the the context switching as well should not worry about because context Which is not a case People have a wrong myth about the content switching They are they have a fear about the content switching But the honest thing is if you are working as a project manager as well Then you have to switch from one call to another call still you are doing the context switching Right so you have to make sure whenever you are handling all the capabilities Do the wetting call first in before hiring the relevant team members Then after go ahead with the with the support model enters The next is the service level agreements We have a service level agreements in mint in our system where we gives a relevant clear structure with the transparency What is a critical thing if the site is down? If the site is facing the lot of traffic then still the priority would be the lot of high like kind of it's a critical thing And they're the many others in kind of the highest the critical highest Medium and the low so this kind of as based upon this like we are maintained the SLS If there is a critical thing then we have to resolve it within a day within the 24 hours Then we have to respond back and finish and resolve that issue on the time So whenever we are signing the contract we are sharing these SLAs with the client so that at least the clear transparency and the communication process should be maintained Next one is the multi-channel from the communication. So there are the multiple channels. We have already maintained so far One common channel would be the support channel where the multiple projects can be managed in an innovative generic way If you have a separate communication channel kind of for the specific project then the separate communication can be maintained A similar thing if you want to involve the stakeholders try to involve in the relevant channels instead of the generic ones So where you can have the the generic communication The next is support primary outline Whenever we are signing a contact with our clients stakeholders Then they are the many things which we need to know about their site like how it is working What kind of expectations that those stakeholders have? What is your expected SLA? Because there could be a high chance like they are already working the SLA model and you have to make sure that Your SLA should not be a conflict for them So a generic guidelines should be provided to them. Are they comfortable with the service deck? Because right now we are in our in our company like we are using the Jira service desk There are high chance like they would be able to use they are already using some other platform So make sure the alignment should be there on the platform specific What would be the our primary support goals like Because if you are signing it with the client then there could be a case like client is expecting the contents development as well make sure Keep it separate Alignment on the contents development and the support and maintenance model because support and maintenance model will handle the security updates Cosmetic changes and other things but in the continuous development There would be a separate number of hours for the development which can be handled separately with the change request The next one is how would you define the success for the support because Expectations would be different from the stakeholders So make sure the alignment should be there upfront instead of the late after the signing the contract make sure it should be before the development of start Going ahead like there are many other cases which I just shared the around five or six examples Which you can ask the question to your stakeholders like so you'll get the enough information Because other questions would be like what other risk areas which we need to take care of that While doing the sanity on the website during the deployment So these are the relevant questions which we can propose to the client and ask and get the relevant answers from the client Why support model is beneficial for the stakeholders? What kind of benefits they will get once they sign the contract for the support model? The first one is worthy proactive Communication because if you are very transparent setting the expectations upfront Definitely a lot of openness will be there from the client side as well So make sure every expectation should be lined up with the alignment doing the doing the first call as well Okay, instead of the middle of the development because there would be a many hidden areas Which your stakeholder doesn't know so make sure the alignment should be there upfront It's a fix we model Most of them most might be you are already using the support model There are the three packages or the two packages you have already maintained so far gold silver And like this way you can provide the services like Kind of if you are choosing the gold package, this is a cost if you are using the another package This is a different cost. So at least client is aware about that What package he's supposed to choose and based upon that he can proceed it accordingly Automation so we are also targeting the automation because let's suppose there are security updates That is the once in a week and the four times in a month Then it would be very difficult for a QA in order to perform the sanity It will take a lot of time in order to Perform the sanity test it out on the stazings chance then after on the production instance better to execute the automation process it will save a lot of time and Try to make it automate in this way so that your security updates can be clipped together It will save the time for you and for the client Reduce staff management if you're working in the managed project then you have to allocate the relevant Capacity staffing so kind of if a work developer is working the full time Then it will completely allocate to do that project if you are working the staff model Oh, sorry the support model then you have to make sure developer should have the multiple projects in hand so that because the number of Contacted hours could be less so make sure a developer could have the one or two projects in hand So that is the then you should not allocate the full-time developer for a single project where the contacted hours are less To handle we'll discuss the bandwidth management and the in the last slide So I'll discuss more about that in the the timely resolution Kind of if you are following the SLA process then definitely a time resolution will be provided as per the SLA and In order to share the transparency So make sure after every month Share the report with the client on the on the SLA report where you'll see like you'll get the 10 number of requests or the uptime or the downtime issues then how you have followed the SLA and where you are Broken or where you are lacking somewhere so at least give the relevant information to the client So at least that it will help you to build the trust in front of the stakeholders burn report so We are preparing the burn report along with the monthly report as well. We will get the Complete report of the tickets It's a support tickets or the contents development tickets Let's suppose the estimation of the ticket is around 20 hours and you are using 25 hours, but we will charge only 20 hours to the client So that will reflect on your burn report So make sure to share that with the client for the for building the trust factors support Should be capable enough in order to handle the cosmetic changes the change request because if there is a big request of 80 hours or 100 hours or request then it would be difficult to maintain Under the support model so make sure that should be segregated into the content is development model instead of the Drupal security Drupal support model Now let's talk about the estimation process how we are handling it So there are the various key factors which have already turned down. Let's suppose you have a one ticket where The security of rates are there and make sure the grooming and estimation should be there Each line items Shows the separate efforts if there is a grooming and estimation is required then please put the effort as a Base hours and the high hours you have to update the base hours only High hours will be automatically be updated Then after the POC if there is a POC time required then at the time if not then skip it Wireframe is required for the buy for the back-end efforts or the development efforts testing or the front-end efforts keep it Segregated so that client will also have the better understanding on same After that the PR review merged and the deployment process that effort goes to the technical Architect one and that efforts will also be included The good thing is here you can see that them have already added the three times For the queue efforts manual rugation on the sanity. You can also divide the three things into the three environments One is Environment where QA is already validating the things then the staging environment and third one is the production So make sure these efforts should be tracked somewhere so that client will get the understanding Because if you are not giving these kind of and not following the these standards Then at least you a QA will log the time in the separate ticket or that you will log the time in the separate ticket So if you have a collaborated efforts in the single ticket You will be able to track all the outfits because let's suppose the 39 hours are already added as a high hours and You are already used utilizing under budget or over budget So you'll get an idea from this one as well. It will help you to prepare the reports on the monthly basis Yes, I completely agree with you during the grooming and the estimate will take some time But later on it will give you the benefit because at least you would be able to track all the things in a single ticket There is a one column which is estimate confidence in the row number two and row number four I've already added the the less estimate the confidence level is low Okay, so how do we are calculating the the confidence level? Let's suppose there is no uncertainty to apply so requirements are out clear So make sure to add that fits as a confidence level should be six It means the all the requirements are clear if the confidence level is high But still the scope of definition is not much clear at the efforts as a five confidence level And if the scope could be used more details Need more conversation then try to add the four It depends upon the requirement. It may vary from ticket to ticket as well But the best part is let's suppose you are adding Five as a confidence level and it should be multiplied by one point two five If you are adding four it will multiply by one point five Similar case if you are adding three it will be counted as multiplied by one point seven five in the last slide You can see in the the POC one. I have already added five it counted as a one point two five multiplied by four So it counts as a five and the row number four I've already added four it means multiply by one point five the highest hours would be 15 Okay, so but whenever you are adding or sharing the estimate with the client make sure to add share the Estimates high level instead of the base level. Well, this will be a kind of range for you You can cover up the things till 33 hours, but this is the high range which you can share with the client So there's a limit in between that Manage uptime and the downtime issues in support So how we are managing it like there is a continuous monitoring process will be there Like when the site is up or the site is down it will give you the information on the same How the the uptime monitoring system we have already set up I'll share in the next slide But let me share you like how we are managing the support We are offering the 24 by 7 site reliability engineering support as well Not the development. So it's only the the site reliability support Next one is we have a system in place for the email slack and the mobile notification Automatically the notification will be triggered to the DevOps team members and they will perform the work accordingly RCA report where let's suppose if there is a any bug raised by the client or incident raised by the client Then we have to show share the root cause analysis report with the client So at least they will get the idea like what was the root cause whether it's a regression issue It's a sanity issue or whether that was the existing bug which was there in the system The password security we are using the last pass To maintain the security of the system So that will help you to maintain the consistency in the system for the support model The next is the support team and the DevOps team Collaboration is required if there is uptime or the downtime issues are there and if they need more information from our side We already have a system in place for the runbooks Where we are already sharing that information with the DevOps team member in case because the development team is working eight hours per day, but the DevOps team is working 24 by 7 support and During the night development team won't be available. So in that case They will follow the runbook and they will get all the instructions related to the server details Admin details side details side URLs who is the project manager who are the relevant team members working on it and they will fix it on in order to get the relevant information share with them they will do a kind of Drive run in order to see whether all the things are working fine or not before accepting any project in the plate We are also providing the on-demand infrastructure support right now. That is Not a very common thing which we are offering to in the support services But in case if client requires the infrastructure support, then we are offering that as well moving ahead How the uptime and the downtime issues works in support we have already set up the system called the uptime report Okay, it will once it got the trigger like the there is some Activities not happening on the website after the 59 seconds automatically it will generate a trigger, okay Here incoming trigger creates an oxygen alert Client in case got the notification about this the site is down the client can also create the The incident request the JIRA service that we are already using and they can create a request accordingly then after We have a Mechanism in place where it will automatically trigger the notification to the relevant team members the DevOps team members will get the slack message SMS on mobile another application So it will alert them like the site is down. They're supposed to perform some action on same How what kind of alerts we are getting when the site is down? like this way First is uptime robot will throw a notification the monitor is down and this is a website This is the reason and the service is unavailable Then oxygen will create a one ticket in the system automatically We do not need to do any intervention, but the DevOps team member will do the acknowledgement. Yes, they are working on it You can see that the alert came at 8 to 4 and then after developer acknowledge at the same time then after the uptime If the site is down up again Then it will show you the count as well like it was down for six minutes zero seconds and tag to the relevant team which are related to this one and if site is up and DevOps team member will confirm that site is working properly then they will close alert accordingly How we are handling the the Drupal security updates for the multiple projects in support? Make sure to ensure and show the slack channel is subscribed to the status for the infrastructure If you are using that we are hosting if you are using the platform to research or the pantheon if they have any support in sorry The the subs if you have there there is any infrastructure Maintenance is there that is already scheduled by them You will get a notification if you have the subscribe to that channel. So that is one example Okay, that is the one example which I mentioned as a status dot a quay dot com you can also get the relevant reference for the pantheon and The platform to test it as well and whatever the hosting you are already using you will get the subscribe notification for the maintenance Give will alert to your clients as well or they will alert to the end users So there should not be a surprise if the because if client is aware about that like yes There was a maintenance time For a one-hours at least they will not create any incident Okay, if there is any incident created by the oxygen e then the option will definitely differ that the next one is Because once in a week on Thursday, like we are getting the the security updates and If you are not going to miss that so try to subscribe the Twitter channel Twitter feeds will definitely throw a notification on this Slack channel and you will get the list of security updates on the channels and make sure to create the relevant tickets for that as well Ticket will be created in the system. Once we have the Drupal security updates You can make it automatic as well because if you are using any Any other tool like a then depend about then it will automatically create a security update tickets for you And you can maintain it accordingly on the monthly basis We are giving the priority to the security updates because we are in the support model And if there is any cosmetic change or other things then we have to make sure the priority will be given to the security updates There are already pre-approved hours We have already received or approved from the client side whenever we are signing the contract We are getting the eight hours as a pre-approved hours from the client So it means whenever the site is down whenever site is Facing the downtime issue or the uptime issues then we need do not need to take any approval from the client Okay, so at the time it will save your time as well because you can directly jump into the solution instead of asking an approval from the client Eight hours are the pre-approved hours like in case if you need more hours for the R&D Then definitely seek an approval from the client But still I believe the eight hours would be suffice in order to trigger a notification to the client if We are working on it or if there is any resolution provided by us If there would be more time required for that thing a critical feature checklist must be maintained We already have a The risk areas if you are already maintaining that as a list So make sure whenever we have a security updates Execute order fixed by the develop or raised by the developing team make sure The QA team supposed to validate those critical feature areas so that all the risk areas are already Validated by the QA team and then after we can plan the deployments according How can man plays a vital role to manage the support projects So first one is multiple projects can be set up in the Kanban board. I'll showcase you how it is working Second is filters will be maintained by the JIRA filter query Single view of interface if you have 13 projects or the 40 more than 14 projects as well You can also maintain a single interface for all the projects The best part is if you are working on the managed project and You have a DSM if you are trying to wrap up the DSM in the 50 minutes or the 20 minutes or 30 minutes maximum But still we are working in the support model and we are handling 13 different projects Still we are able to wrap up the DSM the daily stand-up meeting in 20 minutes 15 to 20 minutes if the process is streamlined then after you will be able to manage it The retrospective meeting we are having once in a month For the team and for the various projects as well At least if the team members have the relevant feedback for the project Then they can add your feedbacks in the retrospective and the relevant pms can answer it accordingly All the pms and all the team members can join the single retrospective call The priority stream line if the in the JIRA board the Kanban board if the the stream line is prioritized as a high medium or low It would give a Visibility to the users in order to answer it or the pick up the tickets accordingly If the priority is low then definitely the user understand that like Yes, it would the lowest priority and we can pick up later as well But the point is if there is a highest priority at least it should reflect on the board So developer can pick up the things accordingly Preferred common workflow It should not be the case like one project is using the spring model and the Rest of 12 projects are using the Kanban model make sure to go with the common workflow So accept notes are accepted acceptable then definitely But make sure the common workflow can be preferred in the support model right now We are using the Kanban for almost all the projects Kanban speciality like kind of if you are working in the Kanban then make sure the working progress limit should be set If you have the number of projects make sure the work in progress limit should be set based upon that only So this is a Kanban board how it is working. So let me give you the demonstration how it is working for me So here you can see that I'll set up a Kanban board for the six projects. This is one example So if you are going to select a one project project number one, so it will show you the priority of the It you can see that the swim lane is highest and the the test project in Test project one ticket is there And if you want to go with another so it will show you the medium priority and the test So like this way we are handling the dsm And it is very streamlined and we are managing in that 15 to 20 minutes in order to cover up all the projects Bandwidth management So if you're working support then make sure at least the accountable and the responsible or I would say the primary in the screen to scripture should be maintained Here you can see that one example where the back end is the person A and The person B is the kind of the the responsible person But the person is the accountable person Accountable means he's the client facing person like who is handling that project on the primary basis And the person we already have the the local setup available in the system And at least the information is there with him And person A is on leave for 10 days or 20 days then person B would be able to cover up the things If you don't have this structure maintained you won't be able to handle the Drupal security updates or the SLA on time So that structure should be maintained on time. So at least you can manage the things accordingly and You can see that the person B who is Scandry in the project one But in the project two he's already a primary person and the person A is the the responsible person You have to do the vice versa for all the all the rules kind of QA and the PM like this way I'm here But in my absence another PM is already working in my projects So at least the knowledge sharing is already there with him So that is the reason like he's all able to manage all the projects in my absence. That is a one element example rotation policy It ensures that the content is learning with the support portfolio team members can experience the Like if they are feeling like the monotonous work is there they are working with the support for the last couple of years Still, they have an opportunity in order to go with the rotation policy Make sure don't go with the rotation policy without any duration If you have the duration set for the two months Then make sure to give a clear information to the team members as well Like we need two months in order to do the rotation from the support to manage project or the support to staffing project And it is their interest if you have to ask because right now we are asking on the quarterly basis asking the The wire form the google form if you are interested to go outside the support or you are good to continue You are interested to Get more opportunity here in the support portfolio if they are saying yes, then we are good So I would like to share the data In the last three years we got only the one rotation request so far Okay, it means we have the good opportunities in the support model because because we are working the new things instead of Only the monotonous work of the dupal security updates or the minor cosmetic changes We have a lot of things Under the support model, which is a continuous development as well Make sure only segregate into the two parts One is a continuous development and then after the support You can use the components or the labels in order to make it segregate and you can share the reports With the client accordingly Okay, so it's a conclusion What we have discussed about the understanding the support and maintenance model So we can call it as the cpm as well continuous development and maintenance model as well Initial questionnaire make sure it should be well prepared because if you are Getting a website in the support make sure you ask the relevant question to the team to the stakeholder in order to get the relevant information share the Benefits like what kind of benefits the stakeholder will receive So we have already discussed that Project estimation process. We are using the template. So It's supposed to be followed rigorously in order to get the relevant information at the end of the month every month And share the report with the client Uptime downtime management system that should mean place security updates management process How can ben is working the multiple support projects how he is capable to enough in order to handle the multiple projects at the same time And the bandwidth management as well rotation policy that comes into the picture if The management is comfortable then definitely go ahead with that because Definitely if you are hiring a support team Then it should be there for long term instead of for the short term because you have already planned a lot of things The primary architecture primaries can be architecture is there. So make sure it should be well planned accordingly Thank you so much These are my the social media handlers and you can reach out to me directly there as well So if we don't have any questions on the app as far as I can see so are there any questions from the audience Okay, I'm coming to you now Thanks. Thanks a lot for the talk Just a quick question when you say Application security application updates. Do you only update the packages? Which need to be updated or do you update the whole code base? So they are the two things which we are using one is the module security update or the core security updates Both comes under that and the estimation would be different for both things So make sure if you are handling the either the core module or the contraband dual security updates are there Or the core version security update is there. So make sure to give them the relevant information to the client and We and the answer is yes. We are handling both at the same time Sorry Oh, okay Okay Yes, if if the architecture is maintained Then then after you'll be able to handle more consistently Okay, if you want to save to some time and the information is already given to the stakeholders Like you can club the security updates as well for the bi-weekly or the monthly basis At least you can get the three or four security updates in a one batch and you can trigger it The best part is you can save the qi efforts You can save the t efforts back end efforts would be saved diplomat efforts would be saved as well But at least the communication should be there in the transparent way with the sequels Yes There is an automation system as well, which is right now. We are using the dependent boot Okay, so kind of at least it will give you the modules security updates In system and we have a system in place where it will automatically create the gira tickets And we can manage it accordingly Okay, thank you Thank you If you do full service support, do you have kind of buckets of hours for design for front end for back end for security updates? Or would you just take it all out of one pot? Um, when we are talking about the the packages, uh, we are not talking about the specific services for the back end or the front end It's a complete full services for the support model kind of In the support model, you will be able to handle the only the security updates It means when you're talking about the security updates the back end person or the front end person both can Take the participation on that. So that is the reason in the estimation We have already covered up the all the items where the back end efforts are front end efforts So we do not need to place the separate efforts for the under the packages You can provide the services as a whole support portfolio instead of the separate front end back end or the q efforts You mentioned that it's important to have replacement So as you hear you already have a replacement back home and what are your best practices or Tools for for onboarding. So all all the times all the two pms In picture with the project or do you have anything else? Thanks for the question. It's a very nice one I was expecting the same question To be honest, we have an onboarding checklist in maintained Okay for the two things one, let's suppose you are onboarding a new project If you are onboarding a new team member if you are off boarding a new team members We already have a checklist in place. Okay, I'll share the that checklist with you And it is really helping me to be honest because let's suppose you are onboarding a new team member Share that checklist with that person and that person will just follow that checklist You do not need to sit with that person in order to share the information of that product We are trying to make the manual efforts very minimal because The the product knowledge we are already tracking in a in a videos. Okay If you are sharing the knowledge by videos or if one person is sharing the knowledge to another person Then we are recording it and keeping it safe with us So that once a new person joins in then we can share that information or share the videos with that person That will save your time because onboarding efforts you have a checklist in place You just need to share that link of boarding. You already have that The if you have the product knowledge is already in track the product Instead of the admin manual or the manual documentation if you can track in the videos That is more effective to be honest and you can cover up the product knowledge Let's suppose if you are sharing the knowledge with that person Manually then it will take around One week or more than that as well for the new product or the new project But if you have the recordings in place person would be able to wrap up in a one day or two We can discuss more in the separate session as well Enough line. Thank you so much. Any other questions? Going once Going twice Okay, so Okay, thank you so much