Start course

This is the second course in Domain 3 of the CSSLP certification and covers the essential ideas, concepts, and principles that you need to take into account when building secure software.

Learning Objectives

  • Understand security design principles as different from actual software design principles
  • Understand the relationship between the interconnectivity and the security management interfaces
  • Learn how to balance potentially competing or seemingly conflicting requirements to obtain the right security level

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.


Throughout this entire process, we need to consider interconnectivity. Now with our security functionality and the philosophy and the design principles we discussed up 'til now, there comes the requirement for sensitive management of information and the information that allows us to control the system environment. This means we have to have ways of examining the session and the management tools that will safeguard from improper construction or invasion, and that will include all the application elements that are aligned, and that the flow control itself is correctly imposed to ensure data in motion is protected in all reasonable spots while we avoid things like unnecessary complexity.

Each program will need to be sure to handle exceptions and errors in the proper way, because by trapping and checking these and identifying the various failure modes that can produce them, we're going to define that each is properly handled and resolved without undo system impact or exposures. This is also an opportunity for us to improve psychological acceptability for the user. And again, encourage them not to try to find shortcuts.

Configuration is without question of one of the most important processes we'll have, both in design and in operation. Now in the design phases, we apply these to control design elements and changes being made so that we maintain fidelity with the plan in whatever configuration it currently is in. In the operation of course, this will ensure continued alignment with the intended mission and operational control. And as we use these processes that the produced application or system continues to serve the intended business need that prompted its creation in the first place.

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.

Covered Topics