No, this is a common misconception. Big O notation just represents a class of functions, it has nothing to do with complexity analysis, except for being very popular in the field. Whether an algorithm has O(N) worse case runtime or O(N) best case runtime or O(N) typical case runtime are all valid questions.
The misconception is mixing up notations. Using Big-O for the upper bound has been the norm for describing algorithms for at least half a century.
In Knuth's description[1] of Big-O notation (and related variants), from 1976, he starts out by saying:
Emphasis on upper-bounded. He goes on to describing other notations: Big-omega, for a lower bound, and so forth.[1]:https://danluu.com/knuth-big-o.pdf