A problem could be any anomaly discovered during design, coding, testing, or implementation.
Problems can be found during different phases of the software development life cycle.
Problems can only be found during the design and coding phases.