-2

We have a internal system (lets call it system B) that responds "No" as a response to a request from external-facing system (lets call system A) based on elapse of 48 hours from earlier request if a token was not attached with the earlier request.
. More Context: We have an external system which receives requests from users. A user account can contain multiple profiles. Profiles are attached to requests being sent to the external system to be executed. If the user requires actions to be executed in prioritized manner, they need to 'register' their profile after which they get token. The external system communicates with internal system to decide if request should be executed in prioritized manner. If this token is provided as part of first request, the internal system keeps track of it and respond "YES" to external system, thereby allowing the external system to execute subsequent steps immediately. If the token was not provided, the internal system responds "NO" to external system till 48 hour window has elapsed.

The response of "YES" or "NO" is primarily dependent on 48 hour time period. It does not check for any process completion behind the scene ( eventually consistent ) or number of requests in a certain period (throttling) or such any additional criteria.

The internal system was not built as throttling mechanism but with goal to prevent subsequent steps to be executed by external system for 48 hours if prior steps were executed with request not including specific parameter. The user may also choose not send the request to execute the subsequent steps after 48 hours. In such case, our system would have "prevented" the execution.

What can be considered a good metric to measure the effectiveness of this system since it does not actually prevent but rather delay the execution of subsequent steps (unless the user does not make request after 48 hours)?

Also, is there a name such systems are called where only "time" passed is the only factor that determines the response provided?

3
  • 3
    What does "effectiveness" mean for this feature of the software? To be honest, "effectiveness" sounds like a requirement that the stakeholders of this application should define for you. Strangers on the Internet can't answer this question. Commented Jan 20 at 2:12
  • 2
    'is there a name such systems are called where only "time" passed is the only factor that determines the response provided?' You may wish to look up 'time lock safes'. As for effectiveness, that entirely depends on the point of this requirement. If its goal was to annoy users it sounds very effective. Commented Jan 20 at 4:37
  • @candied_orange: so it seems the system is indeed for annoying users - as a sales strategy, to encourage them to register their profile.
    – Doc Brown
    Commented Jan 21 at 8:12

1 Answer 1

1

So if I got this right, the 48 hours delay shall prevent unregistered users from making too many requests in a short time, and the goal is to encourage them to register their profile (which may have a price tag?). So this is something like a sales system, or a try-and-buy system.

I doubt there is special technical name for such systems, where only passed time is involved. Still you can lookup certain keywords which describe certain aspects of it, like

  • temporal
  • artificial delay
  • throttling

I think the effectiveness of this approach can only be assessed by comparing it to modes with a different delay, or no delay at all. You can measure the ratio

#requests of registered users / #total requests.

over a certain period and compare the value for different modes.

This will require some time, of course. With a 48 hours delay, the period should be at least a few weeks, maybe a few months. Then change the delay, run the system for the same time again and see what happens. When you observe a change in the request ratio, you will have to make sure it wasn't caused by different external factors, which makes a useful assessment quite hard.

Hence, I think your should consider whether it would not be more effective to simply ask users how they feel about the delay (for example, in some forum).

5
  • P.S.,@learningMyWayThru: it would be a lot better if you could provide more context in your question, so we can better understand the system's goals. I made a guess based on the bits of information you gave us, but maybe I am totally wrong about it. Please clarify.
    – Doc Brown
    Commented Jan 20 at 6:18
  • Yeah, I'm still not sure I understand what event 'X' is meant to be. Without a clear goal for this timed lockout all a tester can say is if it worked as designed. But nothing about if as intended. Commented Jan 20 at 9:12
  • To add more context: A user account can contain multiple profiles. Profiles are attached to requests being executed. If the user requires actions to be executed in priortized manner, they need to 'register' their profile after which they get token. If this token is provided in earlier steps, the system keeps track of it and would execute subsequent steps immediately. If the token was not provided, the request to execute subsequent steps is denied till 48 hour window. Commented Jan 20 at 20:33
  • 1
    @learningMyWayThru: explanations should be edited into the question, not given in comments, so other readers won't easily overlook them. I would recommend a heavy rewrite of the question, explain this use case by an example and then use the example to explain your question.
    – Doc Brown
    Commented Jan 20 at 22:53
  • @DocBrown Updated the question. Hopefully it is more clear. Commented Jan 21 at 1:07

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