user requirement