The main disadvantage of BVA is Programs with too many types of inputs. It cannot test all combinations of inputs and therefore cannot Identify problems resulting from unexpected relation ships between Input types
The other disadvantages are
1) It cannot detect Algorithm errors, Array size and Specification errors
Testing experience has shown that the boundaries of input ranges to a software component are likely to contain defects.
Boundary value analysis is a technique of black box testing in which input values at the boundaries of the input domain are tested. It has been widely recognized that input values at the extreme ends of, and just outside of, input domains tend to cause errors in system functionality.
You may find both advantages and disadvantages of BOUNDARY ANALYSIS as under:
Some of the advantages of boundary value analysis are:
1.Very good at exposing potential user interface/user input problems
2.Very clear guidelines on determining test cases
3.Very small set of test cases generated
Disadvantages to boundary value analysis:
1.Does not test all possible inputs
2.Does not test dependencies between combinations of inputs
Further to my reply on your question please note this addendum;
Dependency is a deep topic, however I have provided here just basics for information.
Dependency means one input variable is dependent on the other input variable.
Type of Dependencies are ---
**Functional dependencies: A functional dependency (FD) is a constraint between two sets of attributes in a relation from a database
**dll dependencies, **maven dependencies, **rpm dependencies,
**makefile dependencies, **project dependencies,**service dependencies, **make dependencies
Dependencies may be linear,stastistical.
A family of vectors which is not linearly independent is called linearly dependent.
In comuter science it dependency is called , a state in which one object uses a functionality of another object .
Two random variables are dependent if the conditional probability distribution of either given the observed value of the other is not the same as if the other's value had not been observed.