English Language & Usage Stack Exchange is a question and answer site for linguists, etymologists, and serious English language enthusiasts. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am trying to write a technical document, and I've been scratching my hair out, since I need to explain things with formal proper technical English, here is my question:


System shall enforce customer to take a ticket to enter the highway.

sound correct to you? Or should I go with "System shall force/compel/oblige customer to take a ticket"? Which one sounds more suitable to you?

share|improve this question
Who's your audience? And what are you trying to tell them? Shall is a very strange verb to use in technical writing -- it's rarely used in English, and then usually only in laws. BTW, enforce does not take an infinitive complement; it requires a real noun as object, typically law, rule, edict, prohibition, or some such. – John Lawler May 20 '12 at 18:11
the reason why I am using shall is , it is almost a standard in software world, when software folks are writing requirements they use shall because standard RFC2119 dictates so. my audience is management staff of another company, once I send these requirements over, my company will be held responsible of implementing these requirements. – erin c May 20 '12 at 18:17
I am trying to tell them that System will not allow anyone to enter highway if they don't take a ticket – erin c May 20 '12 at 18:19
Thank you. Then probably you should say something like "System shall require customer to take a ticket first in order to enter the highway, and shall not allow customer to enter the highway without taking a ticket first." Those are different and the redundancy is useful -- this is all assuming that the metaphors System, customer, enter, highway, and take are all appropriately defined elsewhere, of course. Otherwise, no hope. – John Lawler May 20 '12 at 18:26
thanks so much, I feel like an idiot, I don't why I haven't thought of require, I guess I need a rest – erin c May 20 '12 at 18:28

I agree with John Lawler. "System shall require customer to take a ticket first in order to enter the highway, and shall not allow customer to enter the highway without taking a ticket first." That is fairly typical specification language.

For those of you not familiar with specification language, typically you use shall to express something mandatory and may to express something that is optional. Using will (as you more likely would in common speech) can be confusing because the fact that something will do something in the future does not clarify whether it is required or optional.

share|improve this answer

How about this:

The system shall make it mandatory for the customer to take a ticket to enter the highway.

And no, your versions don't sound quite correct.

share|improve this answer

I use shall in everyday speech.

I like this sentence:

The system shall provide a ticket required to enter the highway.

It is concise and to the point.

How about these?

The system shall provide/issue a ticket to a customer, which will be required to enter the highway.


The system shall compel a customer to take a ticket so that they may enter the highway.

I take it that this system is at specification stage and this is why you have chosen to use the future tense (shall).

I've just looked RFC2119 up http://microformats.org/wiki/rfc-2119, 'must This word, or the terms "required" or "shall", mean that the definition is an absolute requirement of the specification.'

share|improve this answer

All these words sound a little bit off, because none of them are quite correct.

The system doesn't require a driver to take a ticket to enter the highway; that requirement comes from the state's highway department. The system merely generates and dispenses these tickets, but vehicular law obligates the driver to take one.

As such, I would say something more along these lines:

The system shall provide a ticket required to enter the highway.

share|improve this answer
On the contrary, the system should be designed to prevent the driver from entering the highway if the driver does not take a ticket, therefore the system shall require the driver to take a ticket. This is typical system specification language. – Old Pro May 22 '12 at 23:58
@OldPro: Interesting comment. Ultimately, this depends on the boundaries of the system being specified. If the system describes, say, the software system used to timestamp and dispense tickets, then I maintain that my answer is correct. However, if the system being described is much broader, such that it includes the entire toll plaza – barricades, gates, etc. – and is concerned, not just with paper tickets and magnetic stripes, but with other critical elements, such as law enforcement and vehicular safety, then your point is well-taken. Scope is everything; I initially assumed the former. – J.R. May 23 '12 at 0:09
@OldPro: Put another way, a software system can't require a driver to take a ticket; that's outside its sphere of influence. (It can present a ticket for me to take, and refuse to open a gate until I pull the ticket from the dispenser, but it can't prevent me from throwing the ticket on the ground, or incinerating it, or putting my car in reverse and driving somewhere else.) But, as you pointed out, if we examine the "system" more broadly, to include toll fees, fines, punishable offenses, one-way tire spikes, etc, then we can design a system that would "require" a driver to take a ticket. – J.R. May 23 '12 at 9:38

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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