Email:
Password: [?] 
  Register with the DACS
Site Search: Advanced Search Search: Bibliographic Database(SEBD)     Lifecycle Database(SLED)    DoD Acronyms 
DACS Home Advertising Submitting Articles Archives About Us Suggest A Link
Rate this page's content:
  poor
excellent

Lessons Learned

Tom McGibbon
DACS Director

The four articles in this issue of Software Tech News have provided excellent guidance and a wealth of information about "Secure Software Engineering" from a development, management, supplier, and acquisition perspective. Being a software engineer myself and given the increased importance now of security and trustworthiness of software intensive systems, my perspective in reading these articles is to understand how what I perceive as "best" practices in software engineering are impacted by security issues. Here are the highlights of what I learned:

 

• From a development and lifecycle perspective:

- Need to significantly reduce defects induced and improve methods for detecting software defects throughout the lifecycle. Correctness by Construction is a rigorous methodology which results in very low defect software (<0.1 defects/ksloc). TSP-Secure provides a set of defined and measured best practices for low-defect Secure software development.1, 2

- Need to understand common causes of vulnerabilities and focus on defect reduction techniques for defects that lead to or cause vulnerabilities.1, 3

- Security must be built-in to the software development lifecycle with appropriate checkpoints and reviews.1, 2, 3

- Need to define a set of best practices that development teams can use. Correctness by Construction and TSP-Secure provides best practice approaches.1, 2

- Need to sensitize designers, developers and testers to security issues through training.1, 3

- Tools are available to detect some security vulnerabilities.1, 3

- Best practices for developers and testers includes threat modeling, Fuzz testing, Ballista, penetration analysis static code analysis.1, 3

- Developer accountability helps to ensure security compliance.3

- Correctness by Construction achieves significant defect reduction through rigorous requirements analysis, use of formal design methods and information flow models for design, and verifiable code development (when needed).2

 

• From a management perspective:

- >90% of all vulnerabilities are caused by defects resulting from inadequate, normal software engineering methods.1

- In building a business case for secure software engineering, need to consider (add) costs of fixing and releasing patches from a supplier, acquirer, and consumer perspective. Not addressing security from a supplier perspective could impact customer satisfaction and result in lawsuits.1, 2

- Need senior management vision, leadership, support, and oversight of implementation of security policies and best practices.1, 2, 3

- Security measures need to be planned, measured, and tracked.1

- Program managers should collect and maintain information on suppliers used to perform software development.4

• From a supplier perspective:

- Suppliers need to ship software where default settings are secure.3

- Perform a security audit prior to release.3

 

• From an acquirer's perspective:

- Acquirers, suppliers, and program managers need to identify and manage risks associated with foreign involvement in development of software (including COTS) for weapon system programs.4

- Acquirers need to communicate security requirements through prime development contracts.3, 4

- Acquirers should demand software warranties, award contracts to organizations that deliver low defect software, and provide contract incentives for partnership and improvement.2

- Change, in reality, will come from regulations and financial incentives.2

 

1 See "Developing Secure Software" by Noopur Davis

2 See "The Challenge of Low Defect, Secure Software" by Martin Croxford

3 See "Enhancing Customer Security: Built-in versus Bolt-on" by Glenn Schoonover

4 See "Software Development Security: A Risk Management Perspective" by Ellen Walker

 

 

 

July 2005
Vol. 8, Number 2

Secure Software Engineering
 

Articles in this issue:
Developing Secure Software
The Challenge of Low Defect, Secure Software
Enhancing Customer Security
Software Development Security
User Comment
Lessons Learned

Download this issue (PDF)

Get Acrobat

Receive the Software Tech News
 
Click here to submit
an article or to check out future themes of the Software Tech News

STN Issues

2010

2009

2008

2007

2006

2005

2004

2003

2002

2001

2000

1999

1998

1997

1996

1995

1994

1993


About the Software Tech News
 
  Advertising Opportunities
 
  Article Reprints
   DACS Gold Practice Initiative  ROI Dashboard
 
Acquisition Process Improvement
Architecture-First Approach
Assess Reuse Risks and Costs
Binary Quality Gates at the Inch-Pebble Level
Capture artifacts in rigorous, model-based notation
Commercial Specifications and Standards/Open Systems
Defect Tracking Against Quality Targets
Develop and Maintain a Life-cycle Business Case
Ensure Interoperability
Formal Inspections
Formal Risk Management
Goal-Question-Metric Approach
Integrated Product and Process Development
Manage Requirements
Metrics-based Scheduling
Model Based Testing
Plan for Technology Insertion
Requirements Trade-Off/Negotiation
Statistical Process Control
Track Earned Value
  Access benefit data from software technical and management improvements including SEI CMMI, PSP/TSP, Cleanroom, Inspections, and Agile Development.

View the ROI Dashboard
Copyright © 2010, ITT Corporation    Privacy Policy
webmaster@thedacs.com
775 Daedalian Drive Rome, NY 13441
(800) 214-7921 Fax: 315-838-7130
This site is best viewed in Firefox 1.0+ or IE 6.0+
XHTML