<P> Test cases are built around specifications and requirements, i.e., what the application is supposed to do . Test cases are generally derived from external descriptions of the software, including specifications, requirements and design parameters . Although the tests used are primarily functional in nature, non-functional tests may also be used . The test designer selects both valid and invalid inputs and determines the correct output, often with the help of a test oracle or a previous result that is known to be good, without any knowledge of the test object's internal structure . </P> <P> Typical black - box test design techniques include: </P> <Ul> <Li> Decision table testing </Li> <Li> All - pairs testing </Li> <Li> Equivalence partitioning </Li> <Li> Boundary value analysis </Li> <Li> Cause--effect graph </Li> <Li> Error guessing </Li> <Li> State transition testing </Li> <Li> Use case testing </Li> <Li> User story testing </Li> <Li> Domain analysis </Li> <Li> Syntax testing </Li> <Li> Combining technique </Li> </Ul> <Li> Decision table testing </Li>

Which of the following are strategies of black box testing