In my web application inside code I must find a word for somebody to whom certain Action belongs to(he/she did it).

How to call such person? Contributor? Action owner? Participant?

Context: I log all actions registered users made in my application. For instance clicked certain button. Then I hold info: who did it, when it happenned and what happenned.

  • 3
    UML terminology for that would be "Actor" en.wikipedia.org/wiki/Actor_(UML) – Gus Sep 12 '14 at 19:26
  • @Gus I totally have forgotten about existence of UML. Thanks. – Yoda Sep 12 '14 at 19:33
  • The accepted answer more directly suits the exact question you asked, but I would add that if the Actor is always a registered user of the system, it will be more clear in your log if you refer to them as User instead of Actor. – asfallows Sep 12 '14 at 20:40
  • @asfallows It was already known from the context in the code/ Type of Actor was ApplicationUser and it was part of class ApplicationUserAction. I dumped the code already, but it looked like this; wklej.org/id/1462705 – Yoda Sep 12 '14 at 21:04

Actor is the right term, even though we more often associate it with the theater. It's all a matter of context. For example, google offers as a secondary definition the following:

a participant in an action or process.
employers are key actors within industrial relations

| improve this answer | |
  • 3
    In linguistic semantics, the usual term is Agent, and they are split between volitional agents (She poured the milk in his lap) and non-volitional agents (She spilled the milk in his lap). Agents can be subjects of active verbs like spill or pour, and may show up in an optional agent by-phrase in passive constructions. Most agents refer to sentient entities -- i.e, prototypically they're human, but they must at least be animal, or else metaphorized into a human or animal. – John Lawler Sep 12 '14 at 19:48
  • 1
    @JohnLawler This seems like it could be a legitimate alternate answer. – Chris Sunami supports Monica Sep 12 '14 at 20:07

You might use "Executive" (the person who executes the action), or simply "Individual" to get across the notion that a person caused this action. "Person" works as well.

"Doer" is a possibility, but is rare enough in everyday usage that it might make your code harder to read.

With the additional context, the registered users are all "Registrants" or "Users" or even "RegisteredUsers" to distinguish between non-registered users if you have them.

| improve this answer | |

As the author of the selected answer writes, "It's all a matter of context". Since your purpose is technical, there are some conventions you may want to consider. Using common semantic terms can allow interoperability between systems and should be favored over equivalent synonyms when possible.

Schema.org (the most universally recognized source for common semantic terms with established meaning) has two entries that may be relevant.

  • Agent: "The direct performer or driver of the action (animate or inanimate). e.g. John wrote a book."

  • Participant: "Other co-agents that participated in the action indirectly. e.g. John wrote a book with Steve."

From your description, it seems like "agent" is more in line with your intent.

One case where "Actor" may still be appropriate is if you're leveraging a UML formalism to convey the information. In UML an "Actor" is an entity that does something in a use case. The caveat to consider with this definition is that a UML actor represents a role played by some person or system external to the modeled business and interacting with the business. So, depending on how you classify your users, this formalism may or may not be appropriate.

| improve this answer | |

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.