Bringing automation to SharePoint admin center

Bringing automation to SharePoint admin center

Overview

Overview

Product:

Product:

SharePoint admin center

SharePoint admin center

Type:

Type:

Responsive web application

Responsive web application

Duration:

Duration:

June 2021- June 2022

June 2021- June 2022

About SharePoint admin center

SharePoint Admin Center is a portal that allows specialized users - SharePoint admins to monitor and manage SharePoint sites. The main goal of admins is to ensure that employees can utilize the platform's full benefit while maintaining data security.

About SharePoint admin center

SharePoint Admin Center is a portal that allows specialized users - SharePoint admins to monitor and manage SharePoint sites. The main goal of admins is to ensure that employees can utilize the platform's full benefit while maintaining data security.

Project goal

Inactive sites creates clutter, takes up storage and may be a data security risk. SharePoint admin center doesn't offer any mechanism to manage these inactive sites. As the number of SharePoint online sites grows, inactive sites can also be expected to grow. The goal of the project was to enable SharePoint admins to easily manage such sites.

Project goal

Inactive sites creates clutter, takes up storage and may be a data security risk. SharePoint admin center doesn't offer any mechanism to manage these inactive sites. As the number of SharePoint online sites grows, inactive sites can also be expected to grow. The goal of the project was to enable SharePoint admins to easily manage such sites.

TL;DR

SharePoint admins struggled with clearing out unused sites, which created clutter, occupied space, and posed data security risks. To address this, we automated the process by scanning all sites for inactivity and making site owners responsible for retiring their sites. This along with few other features which were sold as an add-on bundle, was estimated to improve the NPS of the product by 10 points (NPS was 55+ at the time of writing this case study) and also bring additional revenue to Microsoft.

TL;DR

SharePoint admins struggled with clearing out unused sites, which created clutter, occupied space, and posed data security risks. To address this, we automated the process by scanning all sites for inactivity and making site owners responsible for retiring their sites. This along with few other features which were sold as an add-on bundle, was estimated to improve the NPS of the product by 10 points (NPS was 55+ at the time of writing this case study) and also bring additional revenue to Microsoft.

Team & role

Team & role

My role

As a single design IC in the project, I was responsible for collaborating with PM and researcher to identify opportunities and problems, create designs and prototypes, conduct usability testing, conduct experience review and collaborate with engineers to build and ship the features.

My role

As a single design IC in the project, I was responsible for collaborating with PM and researcher to identify opportunities and problems, create designs and prototypes, conduct usability testing, conduct experience review and collaborate with engineers to build and ship the features.

Other team members

Product Manager, Researcher, Content writer, Accessibility experts, Engineers

Other team members

Product Manager, Researcher, Content writer, Accessibility experts, Engineers

About the product

About the product

SharePoint Online is part of Microsoft 365 bundle and is used by customers for the following purposes:

SharePoint Online is part of Microsoft 365 bundle and is used by customers for the following purposes:

Portals
Business Intelligence
Content Management
Business Workflows
Indexing & Searching
Enterprise Integration &
Collaboration
Portals
Business Intelligence
Content Management
Business Workflows
Indexing & Searching
Enterprise Integration &
Collaboration

SharePoint admin center comes included in Microsoft 365 package and allows specialized users (SharePoint admins) to

SharePoint admin center comes included in Microsoft 365 package and allows specialized users (SharePoint admins) to

Monitor performance
Site management
Access management
Sharing management
Troubleshooting
Monitor performance
Site management
Access management
Sharing management
Troubleshooting

Users

Users

SharePoint admin
SharePoint admin

Primary user

Primary user

A specialized role in Microsoft 365 environment, who is responsible for managing SharePoint Online via SharePoint admin centre. Their goal is to ensure that the platform is functioning properly and all its users can use it effectively.

A specialized role in Microsoft 365 environment, who is responsible for managing SharePoint Online via SharePoint admin centre. Their goal is to ensure that the platform is functioning properly and all its users can use it effectively.

Site owner
Site owner

Secondary user

Secondary user

Can be any user who has access to SharePoint and has created a SharePoint site. Site owners are usually more concerned about their day-to-day work than managing and governing the sites they own.

Site owners do not have access to the SharePoint admin centre and use the respective sites' settings to manage their sites. The responsibility of the site owner is to ensure that the correct person has access to the site's data.

Can be any user who has access to SharePoint and has created a SharePoint site. Site owners are usually more concerned about their day-to-day work than managing and governing the sites they own.

Site owners do not have access to the SharePoint admin centre and use the respective sites' settings to manage their sites. The responsibility of the site owner is to ensure that the correct person has access to the site's data.

Design approach

Design approach

The big picture

The big picture

Increase in number of SharePoint sites

There was a rapid upsurge in the count of SharePoint sites in client tenants from 2017 to 2020 due to the following reasons: 1. Microsoft Teams, launched in 2017, was based on SharePoint and employed it to store data shared across Team channels. Each time a Team was created within Microsoft Teams, a corresponding SharePoint site would be set up. 2. The 2020 COVID pandemic also fostered remote working among multiple businesses, requiring more sites to facilitate smoother collaboration.

Increase in number of SharePoint sites

There was a rapid upsurge in the count of SharePoint sites in client tenants from 2017 to 2020 due to the following reasons: 1. Microsoft Teams, launched in 2017, was based on SharePoint and employed it to store data shared across Team channels. Each time a Team was created within Microsoft Teams, a corresponding SharePoint site would be set up. 2. The 2020 COVID pandemic also fostered remote working among multiple businesses, requiring more sites to facilitate smoother collaboration.

We asked ourself

We asked ourself

How can we enable SP admins
to better manage millions of SPO sites?

How can we enable SP admins to better manage millions of SPO sites?

Uncovering the problems

Uncovering the problems

Product research

We researched to identify the problems that SharePoint admins would face once their number of sites reached a million. The most crucial issue found was managing inactive sites. Speaking with the users, it became clear that they wanted a solution that could manage inactive sites automatically without too much manual intervention.

Product research

We researched to identify the problems that SharePoint admins would face once their number of sites reached a million. The most crucial issue found was managing inactive sites. Speaking with the users, it became clear that they wanted a solution that could manage inactive sites automatically without too much manual intervention.

Problem statement

Problem statement

How may we enable SP admins to manage inactive sites automatically via policies?*

How may we enable SP admins to manage inactive sites automatically via policies?*

*Policies: A term used in SharePoint to define features that run automatically. They are a type of "if this then that " kind of control.

*Policies: A term used in SharePoint to define features that run automatically. They are a type of "if this then that " kind of control.

Design research: Deep dive in to existing processes

Design research: Deep dive in to existing processes

Customers managed inactive sites by:

1. Limiting unnecessary site creation or wrong site creation by using provisioning tools. In such systems, regular users are required to put in a request for the correct type of site through the provisioning tool. SP admin would then review the request for site creation, create the site, and make the requestor an owner. 2. Use third-party tools like ShareGate for inactive site management. 3. Create in-house tools that ask every site owner annually to certify that they want to keep their sites. Sites that are not certified are deleted or archived manually by the SP admins.

Customers managed inactive sites by:

1. Limiting unnecessary site creation or wrong site creation by using provisioning tools. In such systems, regular users are required to put in a request for the correct type of site through the provisioning tool. SP admin would then review the request for site creation, create the site, and make the requestor an owner. 2. Use third-party tools like ShareGate for inactive site management. 3. Create in-house tools that ask every site owner annually to certify that they want to keep their sites. Sites that are not certified are deleted or archived manually by the SP admins.

Ideation & Validation

Ideation & Validation

Based on understanding the user's mental model, existing processes, and technical capabilities, the following model was designed for policy to manage inactive sites.

Based on understanding the user's mental model, existing processes, and technical capabilities, the following model was designed for policy to manage inactive sites.

The model was validated with users, and they agreed that this would solve their problem of managing inactive sites.

The model was validated with users, and they agreed that this would solve their problem of managing inactive sites.

Exploration & usability testing

Exploration & usability testing

Based on the concept model, we created a prototype and tested it out with users for validation. Few screens that were created initially are shown below along with insights from Usability testing.

Based on the concept model, we created a prototype and tested it out with users for validation. Few screens that were created initially are shown below along with insights from Usability testing.

The challenge was to design a simple, scalable UI that could be used as a framework for designing various policies in future.

The challenge was to design a simple, scalable UI that could be used as a framework for designing various policies in future.

Design changes for reducing complexity

Design changes for reducing complexity

Important controls/inputs only

We challenged ourselves to keep the policy creation a three-step process to reduce cognitive load. In the initial scope, we thought of allowing the users to configure how many notifications would be sent, how often they would be sent, and the email being sent. Later, these were hardcoded in the system to simplify, as we realised they were not crucial for the feature to work. We reduced the number of filters and selected only the most essential ones. UI Explorations were done to identify all possible ways to filter a set of sites. The challenge was to keep it simple and scalable so that if more controls were required in future, they could be easily incorporated.

Important controls/inputs only

We challenged ourselves to keep the policy creation a three-step process to reduce cognitive load. In the initial scope, we thought of allowing the users to configure how many notifications would be sent, how often they would be sent, and the email being sent. Later, these were hardcoded in the system to simplify, as we realised they were not crucial for the feature to work. We reduced the number of filters and selected only the most essential ones. UI Explorations were done to identify all possible ways to filter a set of sites. The challenge was to keep it simple and scalable so that if more controls were required in future, they could be easily incorporated.

Reduce cognitive and visual load

We tried to achieve an 80% whitespace in the UI and refine the strings to remove ambiguity. Performance bar charts were simplified and changed to just numbers.

Reduce cognitive and visual load

We tried to achieve an 80% whitespace in the UI and refine the strings to remove ambiguity. Performance bar charts were simplified and changed to just numbers.

Power of default

During our user research, we realised that the most relevant period of inactivity was three months; we made this value default so that, in most cases, the user wouldn't even have to change the input. In future, the feature will also set default policy names in the last step of policy creation.

Power of default

During our user research, we realised that the most relevant period of inactivity was three months; we made this value default so that, in most cases, the user wouldn't even have to change the input. In future, the feature will also set default policy names in the last step of policy creation.

Allow simulation

We also included a feature that allows users to simulate a policy before implementing it. This was a first-of-its-kind feature across all admin centres, enabling users to ensure the policy performed as needed.

Allow simulation

We also included a feature that allows users to simulate a policy before implementing it. This was a first-of-its-kind feature across all admin centres, enabling users to ensure the policy performed as needed.

Finalised UI

Finalised UI

A high-fidelity prototype was created and tested for usability and experience with SP admins of Microsoft and other clients. Their feedback was incorporated, and a final design review was conducted with all stakeholders, after which the designs were handed over to engineering for development.

A high-fidelity prototype was created and tested for usability and experience with SP admins of Microsoft and other clients. Their feedback was incorporated, and a final design review was conducted with all stakeholders, after which the designs were handed over to engineering for development.

Landing page

Shows the list of policies created. User can create upto 5 polices at a time. Clicking on a table item shown the policy details in a panel.

Landing page

Shows the list of policies created. User can create upto 5 polices at a time. Clicking on a table item shown the policy details in a panel.

Creating a new policy

The first step of creating a new policy informs the user what to expect from the policy.

Creating a new policy

The first step of creating a new policy informs the user what to expect from the policy.

Defining policy's scope

User can select a set of sites which needs to be monitored for inactivity. If any inactive sites are idenfied when the policy runs, then the site owners are informed that their site is inactive and are asked to delete the site if not needed.

Defining policy's scope

User can select a set of sites which needs to be monitored for inactivity. If any inactive sites are idenfied when the policy runs, then the site owners are informed that their site is inactive and are asked to delete the site if not needed.

Final step

User can set a friendly name for their policy and also decide if they would like to try out the policy first before activating it.

Final step

User can set a friendly name for their policy and also decide if they would like to try out the policy first before activating it.

New policy created!

Once the new policy is created it starts to identify inactive sites within the defined set of sites. This process takes place automatically every month.

New policy created!

Once the new policy is created it starts to identify inactive sites within the defined set of sites. This process takes place automatically every month.

Policy Details

Shows information about the policy and gives user a summary report in the MLP (minimum lovable product) design. The future version will contain full fledged reports on inactive sites in he UI itself.

Policy Details

Shows information about the policy and gives user a summary report in the MLP (minimum lovable product) design. The future version will contain full fledged reports on inactive sites in he UI itself.

Notifications to site owners

If a site is found to be inactive, then the owner of that sites is notified and requested to take an action - either confirm that they need the site or delete the site.

Notifications to site owners

If a site is found to be inactive, then the owner of that sites is notified and requested to take an action - either confirm that they need the site or delete the site.

Conclusion

Conclusion

The feature is now released and available as an add-on

1. This functionality, along with several others on the horizon, is projected to boost the NPS from 55 to 65. 2. Anticipation is high for its adoption among customers, and it is predicted to generate revenue of several million USD. (Ask me about it.) 3. This functionality establishes a standardized framework for creating any 'automated policies' within the application. In future, another policy to manage orphan sites will be made based on this (design finalized, implementation in progress) 4. Instead of relying on third-party apps or building their in-house apps, customers now had the option to use "Site lifecycle management policies" and save operating costs. 5. Other success metrics were the number of seats sold and the percentage of inactive sites deleted in tenants with more than 50,000 sites. At the time of writing these metrics were yet to be analysed.

The feature is now released and available as an add-on

1. This functionality, along with several others on the horizon, is projected to boost the NPS from 55 to 65. 2. Anticipation is high for its adoption among customers, and it is predicted to generate revenue of several million USD. (Ask me about it.) 3. This functionality establishes a standardized framework for creating any 'automated policies' within the application. In future, another policy to manage orphan sites will be made based on this (design finalized, implementation in progress) 4. Instead of relying on third-party apps or building their in-house apps, customers now had the option to use "Site lifecycle management policies" and save operating costs. 5. Other success metrics were the number of seats sold and the percentage of inactive sites deleted in tenants with more than 50,000 sites. At the time of writing these metrics were yet to be analysed.

Got a challenging problem
or project?

I'm game!

Got a challenging problem
or project?

I'm game!