Complete the software assurance techniques section update


Assignment

Part- 1

The first step will be to select an organization as the target for your software assurance guidelines document. This organization will be used as the basis for each of the assignments throughout the course and should conform to the following guidelines:

• Nontrivial: The selected organization should be large enough to allow reasonable exercise of the software assurance guidelines planning process.

• Domain Knowledge: You should be familiar enough with the organization to allow you to focus on the planning tasks without significant time required for domain education.

• Accessibility: You should have access to the people and other information related to the organization. This will be an important part of the planning process.

The selected organization may already have software assurance guidelines in place and still be used as the basis for the projects in this course. The selected organization must produce software applications for the government, and is therefore subject to software assurance requirements. It is understood that such an organization may not be readily accessible. Therefore, you may feel free to identify a hypothetical organization that meets the requirements. Any necessary assumptions may be made to fulfill the requirements of organization selection.

Select an existing organization, or identify a hypothetical organization that fits the requirements listed above. Submit your proposal to your instructor before proceeding further with the assignments in the course. Approval should be sought within the first several days of the course. Your instructor will tell you how to submit this proposal and what notification will be given for project approval.

Assignment:

For the assignments in this course, you will not be implementing any software assurance policies or procedures. You will be developing a comprehensive software assurance guidelines document. Your first task in this process will be to select an organization (or identify a hypothetical organization) to use as the basis of your projects. You will also create the shell document for the final project deliverable that you will be working on during each unit. As you proceed through each project phase, you will add content to each section of the final document to gradually complete the final project deliverable. Appropriate research should be conducted to support the development of your guideline document, and assumptions may be made when necessary.

The project deliverables are the following:

• Submit your organization proposal to instructor for approval.
• Create a software assurance guidelines document shell in Word. It should include the following:
o Create a title page

- Course number and name
- Project name
- Student name
- Date

o Table of contents (TOC)

- Use autogenerated TOC
- Separate page
- Maximum of 3 levels deep
- Update the TOC before submitting your project

o Section headings (create each heading on a new page with "TBD" as content, except for sections listed under New Content below)

- Project Outline
- Security in the Development Life Cycle
- Software Assurance Techniques
- Security in Nontraditional Development Models
- Security Static Analysis
- Software Assurance Policies and Processes

o New Content

- Project outline and requirements
- Brief description of the organization (can be hypothetical) and where the guidelines will be implemented
- Company size, location(s), and other pertinent information
- 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.
- 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
- Provide an outline of the SDLC model that is used in your organization, including each of the major phases.
- This should be a traditional SDLC. Extended models, such extreme programming, will be covered in a later section.
- Identify specific components of the security development model that can be applied to each of the phases of your SDLC model.
- 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

Part- 2

For this assignment, you will identify the types of applications that are being produced by the company, and perform an evaluation of security risks applicable to these applications. You will then identify the types of software assurance techniques to be used for security risk mitigation in each of the software applications.

The project deliverables are as follows:

• Update the software assurance guidelines document title page with new date and project name.
• Update the previously completed sections based on instructor feedback.
• Complete the Software Assurance Techniques section.

o Analysis:

- 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.

- 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).

- For each security risk, identify at least 1 software assurance technique that can be applied to reduce the security threat.

o Guidelines:

- 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.

- Guidelines should be categorized by the type of software application and if the application is using a database for data storage or not.

- 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.

Part- 3

For this assignment, you will continue development of your software assurance guidelines document to address security in nontraditional development models. This new section of your document will provide guidance to the company when it is using nontraditional development models to ensure that it follows processes and policies that will minimize the threat of security problems. The security development model will be used as the basis for your analysis.

The project deliverables are as follows:

• Update the software assurance guidelines document title page with the new date and project name.
• Update previously completed sections based on instructor feedback.
• Security in Nontraditional Development Models section:

o Identify a non-traditional software development model that could be used by your company.
o Provide a summary of the major steps in the development model, and describe the potential security threats for each step.
o 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.
o Association with the security development model should be demonstrated in the policies and processes.

Part- 4

For this assignment, you will continue development of your software assurance guidelines document for your selected organization. New content will include a section called Security Static Analysis. In this section, you will focus on an application that your organization might produce. You will first create a design for an application with code samples in C or C++ to illustrate the tenets of the security development model. You will also identify security static analysis tools, and prepare guidelines on how they would be used in the sample code and throughout the software development in the company.

The project deliverables are as follows:

• Update the software assurance guidelines title page with new date and project name.
• Update the previously completed sections based on instructor feedback.
• Complete the Security Static Analysis section:

o Prepare a design for an application your organization might produce.
o Include appropriate diagrams to identify the major components of the application.
o Describe the major components and potential security issues where appropriate and as related to the security development model.
o Create code samples in C, C++, or Java to illustrate the tenets of the security development model.
o 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

Part- 5

The final step in developing the software assurance guidelines document is to develop the overall software assurance policies and processes that include software developer training, software assurance metrics to be collected, and the security team's role and responsibilities These policies and procedures will be instrumental in the ongoing value of software assurance in your company. You will also further refine the software assurance guidelines document and produce the final draft version. Updates may be based on peer and instructor feedback.

The project deliverables are as follows:

• Update the software assurance guidelines document's title page with new date and project name.

• Update previously completed sections based on instructor feedback.

• Software Assurance Policies and Processes section:

o Prepare a plan for the training of the software developers in the organization on the new software assurance guidelines.

o Define the metrics that will be collected to track the effectiveness of software assurance in the company.

- Include a description of how each of the metrics will be obtained and used.

o 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:

o Review the entire document for any changes and improvements you would like to make.

o 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.

o Any previous instructor feedback should be addressed with appropriate changes.

Request for Solution File

Ask an Expert for Answer!!
Software Engineering: Complete the software assurance techniques section update
Reference No:- TGS02295876

Expected delivery within 24 Hours