1

This is more of a subjective question and i don't expect a perfect anwser.

I have different behavior/rules in my system. for example : I have a behavior in my system that allows users to register to the same course multiple time. This behavior is configurable on the course side you can decide whether or not you allow user to register to the course multiple time.

Where i was wondering : Is it a good design choice to allow a "admins" user to override the course's behavior when they register an user to a course.

I can see two possible outcome to this: on one side if i don't allow the "admins" to override the normal behavior they may contact more often the support team and ask for a behavior to be change

on the other side if I let the "admins" override the normal behavior they might not understand what implications this entails and end up with "un-normalized" data and then again call the support team for explanation.

So what is your stance on this ? should the system be strict in is rules or should the rules be override-able.

  • This sounds more like an issue of permissions. – Greg Burghardt Jul 06 '18 at 18:58
  • This would definitely differ on a case-by-case basis. If the technical choice – of allowing some users to register for multiple courses in a course which has been restricted by course creator to allow users to register for only one course – has a real world scenario where it makes sense and is required by the users of the software, then you'll have to allow it. If the situation does not arise in real life, there is no reason to allow it. – Peeyush Kushwaha Jul 06 '18 at 19:35

1 Answers1

2

Is it a good design choice to allow a "admins" user to override the course's behavior when they register an user to a course.

There is nothing inherently wrong with this, as long as this fits to what the system is supposed to do.

if I let the "admins" override the normal behavior they might not understand what implications this entails and end up with "un-normalized" data

This is not a sign that the feature of "overriding normal behavior" is not sensible. It is a sign you did not design a good solution for the former requirement. When your "special users" can change the behaviour, design the UI for this so that the implications actually become transparent, and design the business logic for this feature so the data cannot become unnormalized.

If you cannot come up with a good solution for this immediately, try harder. Look how other systems solve this. Describe the specific problems in detail, maybe here (in a new question), maybe on stackoverflow, maybe on ux.stackexchange, or get help elsewhere. There is always a solution to give your users more freedom in configuration, without compromising the stability or data consistency of a system.

Doc Brown
  • 199,015
  • 33
  • 367
  • 565
  • Just to note: there's always a way, but it's not always worth the effort required. – cHao Jul 07 '18 at 15:07
  • @cHao: to my experience, there is often a middle ground. And measures against data corruption are in my experience almost always worth the effort (which is seldom that high). – Doc Brown Jul 07 '18 at 17:28