CSSLP Domain 5:1 - Security Quality Assurance Testing
Secure Software Testing - Introduction

This course covers section one of CSSLP Domain Five and looks at security quality assurance testing. You'll learn about important and foundational concepts on the process and execution of testing, topics regarding quality and product integrity, and various other considerations.

Learning Objectives

Obtain a solid understanding of the following topics:

  • Security testing use cases
  • Software quality assurance standards
  • Testing methodologies and documentation
  • Problem management
  • The impact of environmental factors on security

Intended Audience

This course is intended for anyone looking to develop secure software as well as those studying for the CSSLP certification.


Any experience relating to information security would be advantageous, but not essential. All topics discussed are thoroughly explained and presented in a way allowing the information to be absorbed by everyone, regardless of experience within the security field.


It's necessary that the CSSLP candidate become familiar with the different kinds of testing artifacts, that is, methods and items that are going to be tested. The candidate needs to understand the importance of security testing and how it impacts the quality of software. It is a well established fact, that proper testing can improve both the security and the quality, in general terms, of the software being tested.

The candidate needs to have a good understanding of the different types of functional and security testing and the benefits and weaknesses of each. The candidate needs to be familiar with how common software security vulnerabilities, bugs and flaws can be tested, understand how to track defects and address test findings and of course, to know about test data management and how test data should be managed for software assurance.

We're going to cover the topics of standards for software quality assurance, testing methodology security testing, environment, and testing considerations. Now, section one covers important and foundational concepts on the process and execution of testing. Also covered, are these in terms of type descriptions for tests, topics regarding quality and product integrity and various other considerations.

So no matter how expert the designers and the builders may be, even those tuned to building security in, so to say, that of itself it does not necessarily mean that the software is in fact secure. It is imperative to validate and verify the functionality and security of software. In other words, take nothing for granted. Security testing is an integral process in the secure software development cycle. The results of security testing, of course, have a direct bearing on the quality of software as well.

Even though this may seem somewhat more subtle than the actual impact that it has on the security of the final product. Now, software that has passed such validation is said to be of relatively higher quality than software that hasn't been put through it. And what we're going to discuss will be a way to discern how that is actually made to happen. Now, for software to be secure and resilient against hackers it must take into account certain foundational concepts of information security, of course. These will include confidentiality, integrity and availability, as always, but also include authentication, authorization, accountability, the management of sessions, exceptions and errors and figuration parameters. However, conceiving, configuring, building and integrating them with the overall architecture of the software, goes for nothing, if their functionality and performance are not also tested to verify that they do the job as planned or, as is often the case, as built. The point being here that however good your initial plan and design was, what really matters is what actually ended up being done. With such variation, testing becomes all the more important. It's like the old saying, that if it looks like a duck and walks like a duck, well, no doubt you know the rest of that. And that is certainly the case here. Nevertheless, in the case of our duck, no matter how much it may look and walk like a duck, we must be sure as we can be that it can still quack properly.

About the Author
Learning Paths

Mr. Leo has been in Information System for 38 years, and an Information Security professional for over 36 years.  He has worked internationally as a Systems Analyst/Engineer, and as a Security and Privacy Consultant.  His past employers include IBM, St. Luke’s Episcopal Hospital, Computer Sciences Corporation, and Rockwell International.  A NASA contractor for 22 years, from 1998 to 2002 he was Director of Security Engineering and Chief Security Architect for Mission Control at the Johnson Space Center.  From 2002 to 2006 Mr. Leo was the Director of Information Systems, and Chief Information Security Officer for the Managed Care Division of the University of Texas Medical Branch in Galveston, Texas.


Upon attaining his CISSP license in 1997, Mr. Leo joined ISC2 (a professional role) as Chairman of the Curriculum Development Committee, and served in this role until 2004.   During this time, he formulated and directed the effort that produced what became and remains the standard curriculum used to train CISSP candidates worldwide.  He has maintained his professional standards as a professional educator and has since trained and certified nearly 8500 CISSP candidates since 1998, and nearly 2500 in HIPAA compliance certification since 2004.  Mr. leo is an ISC2 Certified Instructor.