Software certification can not only greatly improve the overall quality of software; it can also help to control the cost of software development. Because software has traditionally been perceived as intangible, it has commonly been certified on the basis of the thoroughness of its development methodology. Certification of the development process is based on the assumption that the development process can assure that the developed product complies with specifications. However, software can also be certified at the product level. In this chapter, we will present a process model that captures the essential aspects of process and product certification (Silva, 2002).