User scenarios for Contoso real estate

The Contoso Real Estate application contains the reference architecture and components for building enterprise-grade modern composable frontends (or micro-frontends) and cloud-native applications. It is a collection of best practices, architecture patterns, and functional components that can be used to build and deploy modern JavaScript applications to Azure.

To understand the solution implementation, it's important to identify the user's of the solution and what actions each can accomplish.

User specification

The solutions architect has the following requirements:

  • 3 user types: Guests, New Hires and HR Admins
  • 3 content types: Listings, Blog Posts, User Activities
  • 3 user interfaces: Portal UI, Blog UI and Admin UI

The use case is implemented by a modern full-stack application with multiple front-ends talking to a content management system and related service integrations on the backend through a common API:

  • Admin App: is the core UI/UX for HR Admins, putting content management in focus.
  • Portal App: is the primary UI/UX for New Hires, putting rental listings in focus.
  • Blog App: is the secondary UI/UX for New Hires, discoverable from the Portal App.

Where user roles are tied to the relevant app:

  • HR Admins are authenticated users on Admin app.
  • New Hires are authenticated users on Portal app.
  • Guests are anonymous users that can only see Blog and Portal apps.

By definition, Guest roles can sign in on the Portal App to get upgraded to New User roles. And New User roles are downgraded to Guest access when they sign out.

User Scenarios by role

Now convert the broad application scenario into specific user scenarios:

HR Admin Role

  • HR Admins can sign in on the Admin App:
    • Manage property listings and feature certain listings
    • Create blog posts
    • Manage portal content seen on About page, Terms of service page, Home pages.
  • HR Admins can't sign in on the Portal App. HR Admin can visit the Portal App anonymously, as a Guest.

Guest Role

  • Guests can visit the Portal App and see content, which doesn't require authentication such as the Home page, About page, Terms of service page. Guests can also begin the authentication process to sign in to the Portal App.
  • Guests can visit the Blog App page can see and explore the blog posts.
  • Guests can't sign in on the Admin App

New Hire Role

  • New Hires can sign in on the Portal App and see, explore, and reserve listings.
  • New Hires can't sign in on the Admin App

Test role actions

When the user roles and abilities are defined, these can be validated with Playwright end to end tests.

Next step