Overview
Design: High-fidelity wireframes, information architecture, design handoff
Cloud Storage is a foundational GCP service, enabling users to store and accessing object data. It is GCP's second most widely-used service, following Compute Engine.
Motivation
As more customers run business-critical workloads in the cloud, there is a growing need for Google Cloud Platform (GCP) to provide transparency into system compliance with data protection and privacy laws in order to protect sensitive end-user data. These regulations are enforced per location, and in order to operate in the location of interest, businesses are required to abide by these compliance laws such as General Data Protection Regulation (GDPR).
Google Cloud Storage (GCS) is a key segment of a platform-wide effort to support data compliance across multiple locations. In order for GCS to be a compliant service, customers must be able to manage their data while not violating data regulations.
Challenge: Ensure that customers are able to interact with their data in Cloud Storage while maintaining regulatory compliance, and understand the guardrails in place to prevent violation of compliance laws.
Solution: I designed an end-to-end experience that informs customers of platform guardrails which prevents customers from taking actions that would violate compliance.
This feature is publicly available to all GCP customers.
Research
In order to evaluate the current state of market and identify gaps, I conducted a competitive analysis on the feature functionality from GCP's direct competitors: Amazon Web Services (AWS) and Microsoft Azure Government Cloud.
Our UX research team collected signals on customer workloads through interviews. These signals reflected business requirements, which were mapped to feature requirements from the product team.
I used these research insights to refine user personas based on customer profiles. These personas embody storage administrators and storage users, which mapped to customers' roles at their organization.
Diving deeper into our customers' needs and goals, I created a user journey map that highlights design opportunities based on the personas. In each phase of the journey scenario, I highlighted the customers' needs, pain points, and line of thinking.
Doing this allowed me to better understand the problem space, who I am designing this feature for, and find opportunity areas that will differentiate our product.
UX strategy
To maintain consistency across GCP, I worked with adjacent product teams to consolidate our design approaches into a scalable, platform-wide UX strategy. We came up with three general guidelines:
1. Disable versus Hide: Disable a feature/option when a subset is unavailable, to provide transparency into restricted options. Hide a feature/option when it is completely unavailable, and provide explanatory messaging.
2. Bring awareness: Notify/warn users when the product will not work as expected at various entry points.
3. In-context nudging: Provide the user with in-context reminders about disabled or unavailable features to allow them to successfully complete their tasks.
Early concepts
I designed a compliant UI experience that will guides users to remain compliant and prevents users from features or options that violate compliance. Using existing components and design patterns, users will be informed of the limitations through various banner messaging mechanisms.
I created a sitemap of GCS to visualize the touchpoints where this feature would surface. Most pages and sections would remain unaffected in the compliant UI experience; only the sections where a user is presented with an interaction that relies on the location of data are affected.


I reviewed these early concepts with teammates from product, engineering, and UX. These concepts were well received, with few suggestions:
• Keeping the messaging simple and consistent across Google Cloud Platform
• Engineering has a requirement where customers must specify a location before viewing their data, and should reflect in the UI for consistency across tooling.
Final Designs




Outcome
• Support for Compliance workloads through implementation of this feature will yield increased revenue and feature adoption by hundreds of customers.
• Collaboration with the Design System team by using parts of my solution towards a standardized constraint messaging component.
• Next Steps: Validating designs with customers, iterate design for the "V2" version, integrating the Design System component.
Takeaways
• The challenges in enterprise design are vastly different than consumer design. For example, enterprise customers leverage UI alongside other interfaces to perform tasks.
• Alignment on all steps of the design process is crucial when working with multiple teams and stakeholders.
• In some cases, user testing is a nice-to-have rather than a requirement, especially with solutions that don't introduce a net-new component or interaction.
