0

I'm developing an app where a registered user can create teams but the people on the teams don't have to be a registered user of the app. The team owner can assign group members to tasks but until they become a registered user of the app and invited to the group, they're just a placeholder on the team.

When adding unregistered members to the team, the team owner can maintain the member's profile which includes the usual name, address, email, avatar, etc.

My problem is the registered user also has a user account profile which includes the same attributes as their member profile: name, address, email, avatar, etc.

So when viewing info for the team should the member profile attributes override the user account profile or the other way?

I can see the team owner wanting to set up the members so a member profile might be Bobby but the registered user's account might have a more formal Robert. In this case the member profile will override the user account profile and Bobby will appear everywhere in the team info. Will Robert mind himself being referred to as Bobby in the team?

On the other hand, Robert might want himself represented as Robert in the group. In this case the user account profile will override the member profile. But what if there are two Roberts in the group. There would be no way for the team owner to differentiate.

Keep in mind a registered user can be invited to join multiple teams so if the member profile overrides, Robert may be Bobby in one group, Robert in another, and maybe Steve in another (for an extreme example). Confusion...

I've looked for real world examples of this scenario but haven't found any satisfying answers because I might be making this too complicated! Keeping it simple says to use the user account info to override the member profile info but what if Robert has an incomplete user account profile (e.g., no address) and the member profile has all the info populated?

0

Is there a business reason to have different avatars and names across teams? Is this all under one company/organization?

It seems best to have a single user account profile that's controlled by the user. One source of truth across the organization.

  • Is there value for a user to present a different profile in a team than their default properties?
  • What does the user gain from this?

A team is just an attribute of a user profile. A user may belong to one or more teams as you said.

If teams have unique attributes (and are indeed valuable/necessary either to the organization or user), let the user manage that in their profile

In their profile they can have an area for 'Teams', where it shows current teams and invites. If you have any unique attributes specific to a team, you can have them edit that property in their team area of their profile, or if the Admin handles that, it shows up in their team detail area as an immutable text field.

Either way, the user needs to see exactly what their profile looks like across a team.

  • Having different avatars across teams is not needed but one reason I can see having different names across teams is so the team owner can differentiate team members from one another (two Mikes on the team) or to clarify the user's info that had not been entered accurately. In these cases the team owner wants to maintain the most accurate info about the members and needs to edit the member profile to override. But on the other hand, the team owner may not have the latest address info for the team member so using the user account profile would be best. – TxDeveloper Nov 11 '17 at 20:32
  • Basically the ultimate goal here is for team owners to maintain accurate member info and keep control over what their team looks like (think about inviting people into your address book where you want their latest, most accurate info but don't want them to mess it up). – TxDeveloper Nov 11 '17 at 20:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.