Reference no: EM131697205
Assignment
Create a software assurance guidelines document shell in Word. It should include the following:
• Create a title page
o Course number and name
o Project name
o Student name
o Date
• Table of contents (TOC)
o Use autogenerated TOC
o Separate page
o Maximum of 3 levels deep
o Update the TOC before submitting your project
• Section headings (create each heading on a new page with "TBD" as content, except for sections listed under New Content below)
o Project Outline
o Security in the Development Life Cycle
o Software Assurance Techniques
o Security in Nontraditional Development Models
o Security Static Analysis
o Software Assurance Policies and Processes
• Project outline and requirements
o Brief description of the organization (can be hypothetical) and where the guidelines will be implemented
o Company size, location(s), and other pertinent information
o List of the software applications provided by the company for the government
- The software list must include at least 1 desktop and 1 Web application.
- A database must be used with one of the applications.
o A summary of the software development organization within the company, employees and reporting structure, systems and technologies used for software development, testing, source control, and document storage
- Material can be taken from the approved proposal that was submitted to the instructor (ensure that this project is approved by the instructor).
• Security in the development life cycle
o Provide an outline of the SDLC model that is used in your organization, including each of the major phases.
o This should be a traditional SDLC. Extended models, such extreme programming, will be covered in a later section.
o Identify specific components of the security development model that can be applied to each of the phases of your SDLC model.
o For each pairing of security development model component to SDLC model phase, describe how the security model is applied and the major tasks that are involved.
Complete the Software Assurance Techniques section.
• Analysis:
o List and describe at least 3 software applications that are produced by the organization. The applications must include at least 1 desktop application and 1 Web application.
- One of the applications must use a database for data storage.
o Identify at least 2 areas of each application that are at security risk, and describe the possible threats and their implications to the organization and to the client (in this case, the government).
o For each security risk, identify at least 1 software assurance technique that can be applied to reduce the security threat.
• Guidelines:
o Based on the analysis that was performed in the previous step, prepare a set of software assurance guidelines that the organization can use for all of the applications that it creates.
o Guidelines should be categorized by the type of software application and if the application is using a database for data storage or not.
o Guidelines should identify the software assurance technique to be applied, and they should provide sufficient detail to allow the software development group to implement the technique.
Security in Nontraditional Development Models section:
• Identify a non-traditional software development model that could be used by your company.
• Provide a summary of the major steps in the development model, and describe the potential security threats for each step.
• Using the security development model as the foundation for analysis, develop and document appropriate policies and processes for each security risk that will minimize the threat.
• Association with the security development model should be demonstrated in the policies and processes.
Complete the Security Static Analysis section:
• Prepare a design for an application your organization might produce.
• Include appropriate diagrams to identify the major components of the application.
• Describe the major components and potential security issues where appropriate and as related to the security development model.
• Create code samples in C, C++, or Java to illustrate the tenets of the security development model.
• Identify at least 3 security static-analysis tools, and prepare guidelines for how they would be used in the sample code and throughout the software development in the company
• Software Assurance Policies and Processes section:
• Prepare a plan for the training of the software developers in the organization on the new software assurance guidelines.
• Define the metrics that will be collected to track the effectiveness of software assurance in the company.
o Include a description of how each of the metrics will be obtained and used.
• Identify the roles and responsibilities of the members of the security team with respect to software assurance in the organization.
• Software assurance guidelines document, final version:
• Review the entire document for any changes and improvements you would like to make.
• Ensure that this final version of the plan is sufficiently detailed to allow the organization to confidently move forward with software assurance based on your findings.
• Any previous instructor feedback should be addressed with appropriate changes.