| ▲ | L_226 5 hours ago | |||||||||||||||||||||||||
As someone who does systems engineering, the only valid requirements include the word "shall". | ||||||||||||||||||||||||||
| ▲ | stackskipton 5 hours ago | parent | next [-] | |||||||||||||||||||||||||
As someone else who does System Engineering, when dealing with ancient protocols, "shall" is extremely difficult barrier to get over since there is always ancient stuff out there and there might be cases not to do it, esp if it's internal communication. "SHOULD" is basically, if you control both sides of conversation, you can decide if it's required looking at your requirements. If you are talking between systems where you don't control both sides of conversation, you should do all "SHOULD" requirements with fail back in cases where other side won't understand you. If for reason you don't do "SHOULD" requirement, reason should be a blog article that people understand. For example, "SHOULD" requirement would be "all deployable artifacts SHOULD be packaged in OCI container". There are cases where "SHOULD" doesn't work but those are well documented. | ||||||||||||||||||||||||||
| ||||||||||||||||||||||||||
| ▲ | opto 5 hours ago | parent | prev | next [-] | |||||||||||||||||||||||||
In a completely different field, navigating ships at sea, the Collision Regulations which define how people must conduct ships at sea, they use the words "Shall" and "May" to differentiate legal requirements and what may just be best practice. "Should" intuitively means something more like "May" to me | ||||||||||||||||||||||||||
| ||||||||||||||||||||||||||
| ▲ | sas224dbm 4 hours ago | parent | prev [-] | |||||||||||||||||||||||||
"shall" and "must" | ||||||||||||||||||||||||||