J-24_-_SLOC_Table_Amend_2.xlsx

XLSX spreadsheet 49 KB Posted

Attached to
Request for Proposal: Ship Self Defense System Combat System Engineering Agent (CSEA) / Software Design Agent (SDA)
Solicitation number
N00024-17-R-5152
Issued by

About this file

J-24 -SLOC

View the file

Other files

Show all 22

On GovTribe

Work with this file

  • Download the original file
  • Contacts named in this file
  • Similar government files
  • Ask GovTribe AI about this file

Text version

Instructions and Definitions

Prepare in accordance with Work Breakdown Structure (WBS) defined in the CSDR Plan (Attachment J-01) for all software and firmware development efforts.
Provide information at the Computer Software Configuration Item (CSCI) level and, where appropriate, at the Computer Software Component (CSC) level or Computer Software Unit (CSU) level in order to document historical SLOC planned for modification or reuse. Detail at the CSC level and/or CSU level is also requested when more than one contractor or sub-contractor is performing work within that CSCI.
CSCI: An aggregation of software that is designated for configuration management (CM) and treated as a single entity in the CM process.
CSC: A functional or logically distinct part of a CSCI. A CSC is typically an aggregate of two or more CSUs.
CSU: Smallest subdivision of a Computer Software Configuration Item (CSCI) for the purposes of engineering management. CSUs are typically separately compilable pieces of code.
ACTIVITY DESCRIPTION
Performing Agent: Break out by prime contractor and any sub contractor(s) on additional rows for each CSCI (excluding subcontractor(s), if any, that provide(s) a separate J-24 whose effort is not rolled into this J-24).
If a subcontractor submits a separate J-24, the prime J-24 shall include completed rows for the subcontract in the following columns: T through AC, AL, AN and AO. These entries shall match the subcontractor submission, if any.
Functional Purpose and Description: Clearly identify/describe each CSCI, including purpose/use of support software components. Reference to the location within the technical package is acceptable.
BOE Number: Cite the Basis of Estimate (BOE) for each CSCI
DESCRIPTION OF HISTORIC EFFORT
If the estimated modified and reused SLOC is greater than the historic effort (i.e. SLOC available for reuse), provide detailed justification for the source of the additional estimated modified/reuse SLOC.
If multiple historic efforts are being used for one CSCI, add rows to show all of the historic effort sources.
Programming Language: Provide the programming language used for the historic effort.
Counting Tool: The USC Unified Code Counting (UCC) Tool (Release 2015.12) shall be used for any supported language. For languages not supported by UCC, the Count Lines of Code (CLOC) Tool (v.1.64) shall be used. The column shall reflect the tool utilized for the respective historic effort.
Output for Total DSLOC: Report the total Delivered Source Lines of Code (DSLOC) for the cited historical effort as counted by the USC Unified Code Counting (UCC) Tool (Release 2015.12) or CLOC (v.1.64) output for "total lines."
Output for Blank DSLOC: Report the blank Delivered Source Lines of Code (DSLOC) for the cited historical effort as counted by the USC Unified Code Counting (UCC) Tool (Release 2015.12) or CLOC (v.1.64) output for "blank lines."
Output for Comments Whole DSLOC: Report the whole comments Delivered Source Lines of Code (DSLOC) for the cited historical effort as counted by the USC Unified Code Counting (UCC) Tool (Release 2015.12) output for "comments whole" or CLOC (v.1.64) output for "comments."
Output for Comments Embedded DSLOC: Report the embedded comments Delivered Source Lines of Code (DSLOC) for the cited historical effort as counted by the USC Unified Code Counting (UCC) Tool (Release 2015.12) output for "comments embedded."
Output for Logical DSLOC: Report the logical Delivered Source Lines of Code (DSLOC) for the cited historical effort as counted by the USC Unified Code Counting (UCC) Tool (Release 2015.12) output for "logical SLOC" or CLOC (v.1.64) equivalent output "code."
HISTORIC PERFORMANCE
Latest Completed Development Effort: Cite the last completed effort where the historic CSCI was modified.
If a historic CSCI is being split into multiple CSCI's, cite the percentage split of the historic CSCI for each CSCI. The total of percentages should equal to 100%.
Contract Number: Cite the contract on which the modification of the historic CSCI occurred.
Year Completed: Provide the year when this effort was completed.
ESLOC Count: Provide Equivalent SLOC (ESLOC) count for effort.
DCTI Hours: Design, Code, Test, & Integration (DCTI) hours spent on that CSCI
Of the IEEE 12207 Development Process Activities:
1.0 Process Implementation
2.0 System Requirements Analysis
3.0 System Architectural Design
4.0 Software Requirements Analysis
5.0 Software Architectural Design
6.0 Software Detailed Design
7.0 Software Coding and Test
8.0 Software Integration
9.0 Software Qualification Testing
10.0 System Integration
11.0 System Qualification Testing
12.0 Software Installation
13.0 Software Acceptance Testing
DCTI hours include:
6.0 Software Detailed Design
7.0 Software Coding and Test
8.0 Software Integration
PLANNED EFFORT SIZING
Justification for Changes from Historic Source: Provide a description of how the legacy code will be modified for the new development effort, including description of new functionality and removed functionality.
Programming Language: Provide the programming language for the development effort.
DCTI = Preliminary & Detailed Design, Code, CSCI Testing, and SW Integration Testing
From IEEE 12207, DCTI hours include:
6.0 Software Detailed Design
7.0 Software Coding and Test
8.0 Software Integration
Provide descriptions of Source Lines of Code (SLOC) allocation categories (New, Modified, Reuse, NDI, Verbatim, Deleted, Other) in the BOE
Software Definitions:
1. NEW CODE: This represents new source statements or existing source statements requiring significant modifications, wherein significant is defined as any logical block of related code (class, module, function) where more than 50% of the lines will be newly written or modified.
2. MODIFIED CODE: This represents source statements that exist but required modification, wherein modification is limited to changing 15 – 50% of a single source statement.
3. REUSE CODE: The represents source statements that currently exist and require minimal modification, wherein minimal is defined less than 15% changes to a single source statement.
4. NDI or VERBATIM CODE: This represents intact executable modules (example: COTS, GOTS) and no changes or maintenance is planned. It excludes Machine Generated Code.
5. MACHINE GENERATED CODE: This represents a subset of VERBATIM code which is listed separately. These source statements are automatically generated by software applications which allow tracing of actions.
6. DSLOC: Delivered software lines of code
7. ESLOC: Equivalent software lines of code
8. Reserved: This represents future ECPs for Future Capabilities for the SSDS ICS. It should be left blank.
Total Logical DSLOC: Sum of New, Modified and Reused Code
Total Physical DSLOC: Total Delivered Software Lines Of Code, excluding comments and blanks.
Total Physical DSLOC with Comments & Blank Lines: Total Delivered Software Lines Of Code, including comments and blanks.
DSLOC TO ESLOC CONVERSION CALCULATIONS
Justification for ESLOC Conversion Factors: Provide the source for the ESLOC conversion factors, including any modifications applied. If ESLOC conversion factors differ from industry rule of thumb of 1.0 (New), 0.5 (Modified), 0.1 (Reused), provide supporting data and calculations.
NEW to ESLOC: Inverse of number of new lines of code per ESLOC (1 / (New Lines of Code per ESLOC)
Modified to ESLOC: Inverse of number of modified lines of code per ESLOC (1 / (Modified Lines of Code per ESLOC)
Reuse to ESLOC: Inverse of number of reused lines of code per ESLOC (1 / (Reused Lines of Code per ESLOC)
NDI or Verbatim to ESLOC: Inverse of number of NDI/Verbatim lines of code per ESLOC (1 / (NDI/Verbatim Lines of Code per ESLOC)
Machine Generated to ESLOC: Inverse of number of machine generated lines of code per ESLOC (1 / (Machine Generated Lines of Code per ESLOC)
Deleted to ESLOC: Inverse of number of deleted lines of code per ESLOC (1 / (Deleted Lines of Code per ESLOC)
Other to ESLOC: Inverse of number of other lines of code per ESLOC (1 / (Other Lines of Code per ESLOC)
Total ESLOC: Sum of each code type (New/Modified/Reused/NDI/Machine Generated/Deleted/Other) multiplied by their DSLOC to ESLOC Conversion Factor
Planned Performance
Justification for ESLOC/Hour Metric: Provide source of the ESLOC per hour factor, including any modifications applied.
ESLOC/ Hour: Provide the software productivity factor for the CSCI.
TOTAL HOURS: Total ESLOC/ (ESLOC/ Hour)

J-24 SLOC Summary Template

SOFTWARE LINES OF CODE SUMMARY

TOTAL DEVELOPMENT

Activity DescriptionDescription of Historic EffortHistoric PerformancePlanned Effort Sizing (RAW SLOC PROGRAM SIZE (DSLOC))DSLOC to ESLOC Conversion CalculationsPlanned Performance
WBSCSCIPerforming AgentFunctional Purpose and Description (Reference Technical Section)BOE Number (Reference Proposal Volume, Section, Book, and Page)Historic Effort (Program/CSCI)Programming LanguageCounting Tool
(UCC or CLOC)Output for Total DSLOCOutput for Blank DSLOCOutput for Comments Whole DSLOCOutput for Comments Embedded DSLOCOutput for Logical DSLOCLatest Completed Development EffortContract NumberYear CompletedESLOC CountDCTI HoursJustification for Changes from Historic SourceProgramming LanguageNewModifiedReuseNDI or VerbatimMachine GeneratedDeletedOtherTotal Logical DSLOCTotal Physical DSLOCTotal Physical DSLOC with Comments & Blank LinesJustification for ESLOC Conversion FactorsNew to ESLOCModified to ESLOCReuse to ESLOCNDI or Verbatim to ESLOCMachine Generated to ESLOCDeleted to ESLOCOther to ESLOCTotal
ESLOCJustification for ESLOC/Hour MetricESLOC/ HourTOTAL HOURS
#.#Past Performance
#.#.#Primary Function(s)
#.#.#.#
Prime<All New Code>C++- 0N/AN/AN/AN/AN/ANo existing code for X. Adding 1,000,000 for new functionalityC++1,000,000- 0- 0- 0- 0- 01,000,000Software Cost Estimating Package X, including modifications to those conversion factors.1.00.50.11,000,000Historic productivity on Program X (AN/SXX-YY)/ CSCI Z during NXXXXX-XX-C-XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, etc1.75571,429
PrimeProgram X (AN/SXX-YY)/ CSCI ZC++500,000Program X DevelopmentNXXXXX-XX-C-XXXXXX100,000100,000Adding 75,000 SLOC for Y functionality. Reusing 75,000 for similar effort. Removing 25,000 for non-applicable effortC++75,00025,00050,00025,000150,000Software Cost Estimating Package X, including modifications to those conversion factors.1.00.50.10.0192,750Historic productivity on Program X (AN/SXX-YY)/ CSCI Z during NXXXXX-XX-C-XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, etc1.2574,200
Subcontractor A:- 0
Subcontractor B:- 0
#.#.#.#- 0
Prime<All New Code>C++- 0N/AN/AN/AN/AN/ANo existing code for X. Adding 1,000,000 for new functionalityC++1,000,000- 0- 0- 0- 0- 01,000,000Software Cost Estimating Package X, including modifications to those conversion factors.1.00.50.11,000,000Historic productivity on Program X (AN/SXX-YY)/ CSCI Z during NXXXXX-XX-C-XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, etc0.961,041,667
PrimeProgram X (AN/SXX-YY)/ CSCI ZC++500,000Program X DevelopmentNXXXXX-XX-C-XXXXXX100,000100,000Adding 75,000 SLOC for Y functionality. Reusing 75,000 for similar effort. Removing 25,000 for non-applicable effortC++75,00025,00050,000150,000Software Cost Estimating Package X, including modifications to those conversion factors.1.00.50.10.0192,500Historic productivity on Program X (AN/SXX-YY)/ CSCI Z during NXXXXX-XX-C-XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, etc1.9946,482
Subcontractor A:- 0
Subcontractor B:- 0
- 0
Prime<All New Code>C++- 0N/AN/AN/AN/AN/ANo existing code for X. Adding 1,000,000 for new functionalityC++1,000,000- 0- 0- 0- 0- 01,000,000Software Cost Estimating Package X, including modifications to those conversion factors.1.00.50.11,000,000Historic productivity on Program X (AN/SXX-YY)/ CSCI Z during NXXXXX-XX-C-XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, etc2.05487,805
PrimeProgram X (AN/SXX-YY)/ CSCI ZC++500,000Program X DevelopmentNXXXXX-XX-C-XXXXXX100,000100,000Adding 75,000 SLOC for Y functionality. Reusing 75,000 for similar effort. Removing 25,000 for non-applicable effortC++75,00025,00050,000150,000Software Cost Estimating Package X, including modifications to those conversion factors.1.00.50.10.0192,500Historic productivity on Program X (AN/SXX-YY)/ CSCI Z during NXXXXX-XX-C-XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, with XX% Adjustment for XXXX, etc1.4563,793
Subcontractor A:
Subcontractor B:
:
:

Support Software

-(Components)
:
Totals
1.0SSDS Integrated Combat System
1.1SSDS SW Capability Builds
1.1.2Capability Build Software Release
1.1.2.1Software Product Engineering
1.1.2.2Computer Software Configuration Item (CSCI) Subsystem Software
1.1.2.2.1Enterprise Air Surveillance Radar (EASR)
1.1.2.2.1.1SW Development Testing Validation
1.1.2.2.1.2Training Software Development
1.1.2.2.2Evolved Sea Sparrow Missile (ESSM) Block 2
1.1.2.2.2.1SW Development Testing Validation
1.1.2.2.2.2Training Software Development
1.1.2.2.3Surface Electronic Warfare Improvement Program (SEWIP) Block 3
1.1.2.2.3.1SW Development Testing Validation
1.1.2.2.3.2Training Software Development
1.1.2.2.4Cybersecurity
1.1.2.2.5Reserved- Future ECP Capabilities
1.1.2.2.5.1SW Development Testing Validation
1.1.2.2.5.2Training Software Development
1.2.2Software Migration
1.2.2.1HTI 12
1.2.2.2HTI 12H
1.2.2.3HTI 16
1.2.2.4HTI 16TR
1.2.2.5Reserved- HTI-Next

Software Development

Totals:

File details come from the government source that posted it. Updated .