Problem Statement

You have to write a PRD for an Admin, who should be able to manage user access for a simple SaaS application. For example, an Admin managing access to Gmail for a company.

Key Points

  • Cover both functional and non-functional specs.
  • It’s a fairly standard and fairly small feature, so make sure you cover it end to end.
  • List any assumptions that you make.
  • Your goal is to ensure that developers do not have to make any assumptions whatsoever anywhere, even the smallest.
  • You don’t need to do UI. Assume the UI design has already been completed.

About Zenskar

  • Let us assume we’re building a User Access Management feature for a SaaS application called Zenskar.

  • Zenskar replaces the in-house billing engineering team of a SaaS company with its product. It is a billing software that handles complex SaaS pricing and usage data. This platform is used by companies that have variable pricing for their SaaS product.

  • When a company uses Zenskar, the role of their:

    • Sales Team is to build and modify sales contracts.
    • Backend Team is to integrate product APIs to Zenskar sharing usage data.
    • Finance Team is to draft invoices based on sales contracts and usage data.
  • The platform has a set of predefined user roles, as mentioned above.

Introduction to the PRD

In this PRD, we outlined the requirements to build a User Access Management (UAM) feature in Zenskar, a SaaS application designed for managing complex billing and usage data for companies with variable SaaS product pricing.

The UAM, sometimes called as the Identity and Access Management (IAM) feature, enables admins to control user access, permissions, and roles within the application.

Purpose of UAM / IAM

  • To provide administrative control over user access within Zenskar.
  • To support the creation, modification, and deletion of user accounts.
  • To enhance data security and regulatory compliance for Zenskar’s customers.

Example Snapshot of some known platforms

A. Google Workspace Admin Dashboard

Google Workspace

Google Workspace Admin Dashboard, gives very simple User Access Management with Hierarchy : Admin > Normal User

Add New Users

And giving options to Add New Users and Manage Permissions.

B. File Sharing in Figma.

Figma File Share

Figma gives a better User Access Management feature in the form of file sharing. The admin can control and oversee other users’ access to the file, managing permissions and roles.

In Hierarchy : Owner > Can Edit > Can View > Can View Prototypes.

C. File Sharing in Google Docs.

Docs File Share

Similarly Google Docs, Sheets, etc. gives a file sharing feature. With 4 roles in Hierarchy: Owner > Editor > Commenter > Viewer.

Also, the ownership could also be transferred and roles could be temporary with an expiry.

Target Users

  • Super Admin: Head of any organisation who buys a Zenskar subscription.
  • Admin: Heads of Finance, Sales, or Tech teams, managing team collaboration and security.
  • Users: General members of the Finance, Sales, or Tech teams.

Functional Specifications

1️⃣ User Role Management
2️⃣ User Account Management
3️⃣ New User Invitation Process
4️⃣ Access Rights and Permissions
5️⃣ Testing Strategy
6️⃣ Audit and Compliance
7️⃣ Use Cases
8️⃣ Technical Requirements
📌 Non-Functional Specifications

Conclusion

This PRD provides a comprehensive specification for the UAM feature in Zenskar, aiming to deliver clear, precise requirements to the development team and facilitate a development process without the need for assumptions.

Full-text article

Read article