AFAIK, quality assurance is a process that occurs during testing and evaluating. It is where there is a group of people who basically look at the software and its performance in comparison to a set of pre-defined standards..that is, they decide whether or not the software has enough 'quality' to be suitable to market, perhaps by comparing it to already-existing software.
So it's important because you have this outside team (outside as in not the programmers, but usually part of the company itself) judging the product objectively and seeing whether or not it is up to scratch, thereby letting the developers know whether or not they have done a good enough job..if it fails the QA, then they'd do well to refine it and take up suggestions from the QA team.
Hope that helps.