As much fun as designing and implementing software can be, at some point it must be proven that it meets requirements and does what it's supposed to without any bugs! This session will cover software testing fundamentals. The difference between a fault and a failure will be explored in addition to testing effectiveness and objectives. Different levels of testing such as unit, integration, and system testing will be discussed.