498GBAR

download 498GBAR

of 38

Transcript of 498GBAR

  • 8/7/2019 498GBAR

    1/38

    MIL-STD-498 Application and Reference

    GUIDEBOOK

    31 JANUARY 1996

    Joint Logistics Commandersl d

    OVERVIEWAND

    TAILORING

    APPLICATION

    ANDREFERENCE

    MIL-STD-498Software Development and Documentation

  • 8/7/2019 498GBAR

    2/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page ii

    This page is intentionally blank.

  • 8/7/2019 498GBAR

    3/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page iii

    CONTENTS

    Paragraph Page

    FOREWORD . ........................................................................................................................... x

    EXECUTIVE OVERVIEW. ........................................................................................................ xiPARTICIPANTS .......................................................................................................................xiv

    1. SCOPE.............................................................................................................................. 11.1 Purpose................................................................................................................... 11.2 Application of the guidebook ................................................................................... 1

    1.2.1 Intended audience ..................................................................................... 11.2.2 Use on contracts ........................................................................................ 1

    1.3 Organization of the guidebook ................................................................................ 1

    2. APPLICABLE DOCUMENTS ............................................................................................ 32.1 Government documents.......................................................................................... 3

    2.1.1 Specifications, standards, and handbooks................................................. 32.1.2 Other government documents, drawings, and publications........................ 3

    2.2 Non-government publications.................................................................................. 4

    3. DEFINITIONS.................................................................................................................... 5

    4. APPLICATION GUIDE ..................................................................................................... 114.1 Approval of MIL-STD-498....................................................................................... 114.2 Supersession of previous standards ...................................................................... 114.3 Use of MIL-STD-498 .............................................................................................. 114.4 Use of MIL-STD-498's Data Item Descriptions....................................................... 124.5 Use of MIL-STD-498 to develop software in "builds".............................................. 124.6 Use of MIL-STD-498 with DoD's program strategies.............................................. 124.7 Use of MIL-STD-498 within system acquisition phases.......................................... 144.8 Application of MIL-STD-498 to development of systems........................................ 16

    4.9 Application of MIL-STD-498 to development of parts of systems........................... 164.10 Application of MIL-STD-498 to development of different types of software............ 18

    4.10.1 Application to non-deliverable and deliverable software ........................... 184.10.2 Application to unprecedented and precedented software ......................... 184.10.3 Application to reusable software ............................................................... 184.10.4 Application to software in the software engineering and test

    environments............................................................................................. 194.10.5 Application to operational, training, operating system, simulation, and

    other software ........................................................................................... 20

    4.11 Ways of applying MIL-STD-498 ............................................................................. 204.12 Players and agreements assumed by MIL-STD-498.............................................. 214.13 Acquirer's role in MIL-STD-498 .............................................................................. 224.14 Relationship to DoD acquisition policy and instructions ......................................... 224.15 Relationship to other standards ............................................................................. 23

  • 8/7/2019 498GBAR

    4/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page iv

    5. REFERENCE GUIDE....................................................................................................... 255.1 Acceptance by the acquirer.................................................................................... 355.2 Access for acquirer review ..................................................................................... 405.3 Approval by the acquirer ........................................................................................ 435.4 Architectural design................................................................................................ 475.5 Behavioral design................................................................................................... 53

    5.6 Builds ..................................................................................................................... 575.7 CASE tools............................................................................................................. 635.8 Commercial-off-the-shelf software products........................................................... 675.9 Computer hardware resource utilization................................................................. 705.10 Contract ................................................................................................................. 755.11 Contract data requirements list .............................................................................. 845.12 Corrective action .................................................................................................... 885.13 Cost estimation. ..................................................................................................... 925.14 Critical requirements .............................................................................................. 975.15 Data accession list ................................................................................................1005.16 Database design ...................................................................................................1025.17 Databases.............................................................................................................1075.18 Data rights.............................................................................................................1115.19 Data standardization .............................................................................................1165.20 Detailed design .....................................................................................................1185.21 Documentation (Preparing documents).................................................................1235.22 Documentation (Recording information)................................................................1285.23 Executable software..............................................................................................1315.24 Independent verification and validation.................................................................1365.25 In-house development...........................................................................................1385.26 Installation (Support environment) ........................................................................1405.27 Installation (User site(s)) .......................................................................................1445.28 Integrated product team........................................................................................1485.29 Interfaces ..............................................................................................................1515.30 Joint technical and management reviews .............................................................1565.31 Licenses (Software) ..............................................................................................1615.32 Operational concept..............................................................................................1635.33 Oversight...............................................................................................................166

    5.34 Problem category and priority classifications ........................................................1705.35 Problem/change report..........................................................................................1745.36 Process improvement............................................................................................1785.37 Programming languages.......................................................................................1815.38 Qualification testing...............................................................................................1845.39 Rationale/key decisions ........................................................................................1925.40 Reengineering.......................................................................................................1955.41 Requirements........................................................................................................1995.42 Requirements of the standard...............................................................................206

    5.43 Reusable software products..................................................................................2085.44 Risk management .................................................................................................2135.45 Safety....................................................................................................................2185.46 Schedules .............................................................................................................2245.47 Security and privacy..............................................................................................2285.48 Software configuration management.....................................................................2335.49 Software development environment......................................................................238

    http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/
  • 8/7/2019 498GBAR

    5/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page v

    5.50 Software development files ...................................................................................2425.51 Software development library................................................................................2465.52 Software development methods............................................................................2485.53 Software development planning............................................................................2525.54 Software development process.............................................................................2565.55 Software engineering environment........................................................................261

    5.56 Software implementation and unit testing .............................................................2645.57 Software life cycle processes................................................................................2685.58 Software management indicators..........................................................................2705.59 Software product evaluation..................................................................................2755.60 Software quality assurance...................................................................................2815.61 Software support...................................................................................................2855.62 Software support manuals ....................................................................................2905.63 Software test environment ....................................................................................2935.64 Software transition ................................................................................................2965.65 Software unit .........................................................................................................3005.66 Software user manuals .........................................................................................3045.67 Source files ...........................................................................................................3095.68 Standards for software products ...........................................................................3135.69 Statement of work .................................................................................................3165.70 Subcontractor management..................................................................................3185.71 System/subsystem ................................................................................................3215.72 System/subsystem-wide and CSCI-wide design ...................................................3275.73 Testing (Developer-internal)..................................................................................3315.74 Traceability............................................................................................................3365.75 Version/revision/release........................................................................................340

    APPENDIXESAppendix Page

    A LIST OF ACRONYMS .....................................................................................................345B SOURCES OF RELATED INFORMATION .....................................................................348C INTERNET SOURCES OF RELATED INFORMATION...................................................360D CONTENTS OF MIL-STD-498'S DIDS............................................................................363

    NDEX ...................................................................................................................................390

    http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498aridx.pdf/http://498aridx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/
  • 8/7/2019 498GBAR

    6/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page vi

    MIL-STD-498 REFERENCES FIGURES

    Figure Page

    9. MIL-STD-498's references to Acceptance by the acquirer......................................... 3511. MIL-STD-498's references to Access for acquirer review .......................................... 40

    12. MIL-STD-498's references to Approval by the acquirer ............................................. 4314. MIL-STD-498's references to Architectural design..................................................... 4717. MIL-STD-498's references to Behavioral design........................................................ 5319. MIL-STD-498's references to Builds .......................................................................... 5722. MIL-STD-498's references to CASE tools.................................................................. 6324. MIL-STD-498's references to Computer hardware resource utilization...................... 7026. MIL-STD-498's references to Contract....................................................................... 7531. MIL-STD-498's references to Contract data requirements list.................................... 8433. MIL-STD-498's references to Corrective action ......................................................... 8837. MIL-STD-498's references to Critical requirements.................................................... 9739. MIL-STD-498's references to Database design ........................................................10241. MIL-STD-498's references to Databases..................................................................10743. MIL-STD-498's references to Data rights..................................................................11145. MIL-STD-498's references to Data standardization ..................................................11646. MIL-STD-498's references to Detailed design ..........................................................11849. MIL-STD-498's references to Documentation (Preparing documents)......................12350. MIL-STD-498's references to Documentation (Recording information).....................12852. MIL-STD-498's references to Executable software...................................................13154. MIL-STD-498's references to Independent verification and validation......................13655. MIL-STD-498's references to Installation (Support environment)..............................14057. MIL-STD-498's references to Installation (User site(s)).............................................14460. MIL-STD-498's references to Interfaces ...................................................................15162. MIL-STD-498's references to Joint technical and management reviews...................15665. MIL-STD-498's references to Licenses (Software)....................................................16167. MIL-STD-498's references to Operational concept ...................................................16369. MIL-STD-498's references to Problem category and priority classifications..............17072. MIL-STD-498's references to Problem/change report...............................................17475. MIL-STD-498's references to Process improvement.................................................178

    77. MIL-STD-498's references to Programming languages ............................................18179. MIL-STD-498's references to Qualification testing....................................................18484. MIL-STD-498's references to Rationale/key decisions..............................................19286. MIL-STD-498's references to Reengineering............................................................19587. MIL-STD-498's references to Requirements.............................................................19990. MIL-STD-498's references to Reusable software products.......................................20892. MIL-STD-498's references to Risk management ......................................................21394. MIL-STD-498's references to Safety.........................................................................21896. MIL-STD-498's references to Schedules ..................................................................224

    98. MIL-STD-498's references to Security and privacy...................................................228100. MIL-STD-498's references to Software configuration management..........................233102. MIL-STD-498's references to Software development environment...........................238105. MIL-STD-498's references to Software development files ........................................242109. MIL-STD-498's references to Software development library .....................................246111. MIL-STD-498's references to Software development methods.................................248113. MIL-STD-498's references to Software development planning.................................252

    http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/
  • 8/7/2019 498GBAR

    7/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page vii

    115. MIL-STD-498's references to Software development process ..................................256119. MIL-STD-498's references to Software engineering environment.............................261121. MIL-STD-498's references to Software implementation and unit testing...................264123. MIL-STD-498's references to Software management indicators...............................270125. MIL-STD-498's references to Software product evaluation.......................................275128. MIL-STD-498's references to Software quality assurance ........................................281

    130. MIL-STD-498's references to Software support ........................................................285132. MIL-STD-498's references to Software support manuals..........................................290134. MIL-STD-498's references to Software test environment..........................................293136. MIL-STD-498's references to Software transition......................................................296138. MIL-STD-498's references to Software unit ..............................................................300140. MIL-STD-498's references to Software user manuals...............................................304142. MIL-STD-498's references to Source files ................................................................309144. MIL-STD-498's references to Standards for software products ................................313146. MIL-STD-498's references to Statement of work ......................................................316147. MIL-STD-498's references to Subcontractor management .......................................318149. MIL-STD-498's references to System/subsystem .....................................................321152. MIL-STD-498's references to System/subsystem-wide and CSCI-wide design ........327155. MIL-STD-498's references to Testing (Developer-internal) .......................................331158. MIL-STD-498's references to Traceability.................................................................336160. MIL-STD-498's references to Version/revision/release .............................................340

    DEVELOPER'S KEY ACTIVITIES FIGURES

    Figure Page

    13. Developer's key activities related to Approval by the acquirer ................................... 4416. Developer's key activities related to Architectural design........................................... 5018. Developer's key activities related to Behavioral design.............................................. 5423. Developer's key activities related to CASE tools........................................................ 6425. Developer's key activities related to Computer hardware resource utilization............ 7134. Developer's key activities related to Corrective action ............................................... 8938. Developer's key activities related to Critical requirements ......................................... 9840. Developer's key activities related to Database design ..............................................104

    42. Developer's key activities related to Databases........................................................10847. Developer's key activities related to Detailed design ................................................12051. Developer's key activities related to Documentation (Recording information)...........12953. Developer's key activities related to Executable software.........................................13256. Developer's key activities related to Installation (Support environment) ...................14158. Developer's key activities related to Installation (User site(s)) ..................................14561. Developer's key activities related to Interfaces .........................................................15266. Developer's key activities related to Licenses (Software) .........................................16168. Developer's key activities related to Operational concept .........................................164

    70. Developer's key activities related to Problem category and priorityclassifications............................................................................................................17073. Developer's key activities related to Problem/change report.....................................17576. Developer's key activities related to Process improvement.......................................17878. Developer's key activities related to Programming languages ..................................18280. Developer's key activities related to Qualification testing..........................................18585. Developer's key activities related to Rationale/key decisions ...................................192

    http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/
  • 8/7/2019 498GBAR

    8/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page viii

    88. Developer's key activities related to Requirements...................................................20091. Developer's key activities related to Reusable software products.............................20993. Developer's key activities related to Risk management ............................................21495. Developer's key activities related to Safety...............................................................21997. Developer's key activities related to Schedules ........................................................22599. Developer's key activities related to Security and privacy.........................................229

    101. Developer's key activities related to Software configuration management................234103. Developer's key activities related to Software development environment.................239106. Developer's key activities related to Software development files ..............................243110. Developer's key activities related to Software development library...........................246112. Developer's key activities related to Software development methods.......................248114. Developer's key activities related to Software development planning.......................253117. Developer's key activities related to Software development process........................258120. Developer's key activities related to Software engineering environment...................262122. Developer's key activities related to Software implementation and unit testing ........265124. Developer's key activities related to Software management indicators.....................271126. Developer's key activities related to Software product evaluation.............................277129. Developer's key activities related to Software quality assurance ..............................282131. Developer's key activities related to Software support ..............................................286133. Developer's key activities related to Software support manuals ...............................291135. Developer's key activities related to Software test environment ...............................294137. Developer's key activities related to Software transition ...........................................297139. Developer's key activities related to Software unit ....................................................301141. Developer's key activities related to Software user manuals ....................................305143. Developer's key activities related to Source files ......................................................310145. Developer's key activities related to Standards for software products ......................314148. Developer's key activities related to Subcontractor management.............................318150. Developer's key activities related to System/subsystem...........................................322153. Developer's key activities related to System/subsystem-wide and

    CSCI-wide design .....................................................................................................328156. Developer's key activities related to Testing (Developer-internal) .............................332161. Developer's key activities related to Version/revision/release...................................342

    OTHER FIGURES

    Figure Page

    1. Example showing how system and software build strategies can differ..................... 122. Key features of three DoD program strategies........................................................... 133. DoDI 5000.2 and DoDI 8120.2 acquisition phases ................................................... 144. Application to reusable software in MIL-STD-498...................................................... 195. Ways of applying MIL-STD-498 ................................................................................. 206. Players and agreements assumed by MIL-STD-498 ................................................. 21

    7. MIL-STD-498-to-topic index ....................................................................................... 278. Topic to MIL-STD-498 DIDs index ............................................................................. 3210. Sample DD Form 250 ................................................................................................ 3815. Architectural design in relationship to other design elements .................................... 4820. One possible mapping of MIL-STD-498 activities to multiple builds........................... 5821. Interpretation of MIL-STD-498 activities for multiple builds ........................................ 6027. MIL-STD-498's "shell requirements" .......................................................................... 76

    http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/
  • 8/7/2019 498GBAR

    9/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page ix

    28. Uniform contract format.............................................................................................. 7929. Types of contracts...................................................................................................... 8030. Levels of interest in selection/tailoring/evaluation of software products among

    acquirer organizations................................................................................................ 8232. Sample DD Form 1423 .............................................................................................. 8535. Example of a corrective action activity ....................................................................... 90

    36. Range of uncertainty.................................................................................................. 9344. Relationship of rights to the source of funding..........................................................11448. Detailed design and other design elements..............................................................12159. IPT versus non-IPT product development.................................................................14963. Joint review objectives .............................................................................................. 15764. Candidate management reviews and objectives.......................................................15971. Comparison of problem category and priority classifications between

    DOD-STD-2167A and MIL-STD-498.........................................................................17274. Corrective action system interfaces ..........................................................................17681. Overview of required qualification testing information...............................................18682. Developer-internal design and related tests..............................................................18883. Qualification testing activities....................................................................................19089. Requirements, design, and test relationships ...........................................................204

    104. Typical elements of the software development environment ....................................240107. MIL-STD-498's requirements to record test information in software

    development files......................................................................................................244108. MIL-STD-498's requirements on levels of software development files......................244116. MIL-STD-498 software development activities..........................................................257118. IDEF0 model to define a project's software development process............................259

    127. Example of one possible implementation of software product evaluation.................278151. Shell requirements needed for system activities ....................................................... 324154. System/subsystem-wide and CSCI-wide design in relationship to other design

    elements ...................................................................................................................329157. Developer-internal integration and testing activities..................................................334159. MIL-STD-498 traceability requirements.....................................................................337162. Guidebook topic to related information .....................................................................348163. Related information to guidebook topic.....................................................................354164. Internet locations for information related to MIL-STD-498 ........................................360

    http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/http://498gbar5.pdf/
  • 8/7/2019 498GBAR

    10/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page x

    FOREWORD

    1. This guidebook is available for use by all departments and agencies of the Department ofDefense (DoD) or any other government agency.

    2. MIL-STD-498, Software Development and Documentation, identifies a set of softwaredevelopment activities and defines the software products to be generated by those activities.In order to use the standard effectively, all parties involved in a software development effortneed to understand the principles that underlie the standard. This guidebook is intended tohelp the acquirer understand and apply MIL-STD-498, but, it can be useful to developers andother parties.

    3. This guidebook is the second of two guidebooks prepared by DoD for use withMIL-STD-498. The two guidebooks are:

    1) MIL-STD-498 Overview and Tailoring Guidebook. The first guidebook provides thefollowing:

    Objectives of MIL-STD-498

    Overview of the standard

    Key concepts of the standard

    Conversion guide

    Tailoring and application guidance

    2) MIL-STD-498 Application and Reference Guidebook. The second guidebookprovides the following:

    Topic-by-topic application of the standard including:

    - A summary of MIL-STD-498's requirements

    - Acquirer responsibilities and considerations

    - Things to think about

    Tables and indexes between the guidebook and MIL-STD-498's requirements,activities, and Data Item Descriptions (DIDs).

    4. Beneficial comments (recommendations, additions, deletions) and any pertinent data thatmay be of use in improving this document should be addressed to SPAWAR 10-12,2451 Crystal Drive (CPK 5), Arlington, VA 22245-5200.

    http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/http://498gbot.pdf/
  • 8/7/2019 498GBAR

    11/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page xi

    EXECUTIVE OVERVIEW

    MIL-STD-498 is a standard for the software development process. It is applicable throughoutthe system life cycle. It establishes uniform requirements for acquiring, developing, modifying,and documenting software. It defines standard terminology and establishes activities, tasks,

    and products for a software development or maintenance project. It can be applied to any typeof software, including application software, operating system software, the software portion offirmware, reusable software, and software employed to develop deliverable software.

    The activities in the standard form a comprehensive set, sufficient for a large, complex project,but scalable and adaptable to suit the needs of small ones. The standard is meant to betailored as needed for each project by specifying in the contract which provisions of thestandard apply.

    The standard is intended to be responsive to the rapidly evolving software discipline. It isindependent of any particular methodology, ensuring the acquirer's right to specify the productand the developer's right to be technologically creative and innovative. In particular:

    The activities and tasks in the standard tell what to do, not how to do it. For example,the standard requires the developer to perform architectural design, but does notrequire use of the object-oriented design method.

    The standard does not specify or encourage any software life cycle model (Waterfall,Incremental, Evolutionary, Spiral, etc.). Instead, the standard provides the buildingblocks needed to carry out the life cycle model selected for a software project.

    The standard does not specify or depend on any design or programming language. Itis meant to be applicable regardless of the language used.

    The standard provides flexibility regarding documentation:

    - A distinction is made between the task of generating and recording planning orengineering information, a task that is intrinsic to the development of software,and the task of generating a deliverable containing that information.

    - Information and deliverables can be in hardcopy form (using contractor or DIDformat), in electronic form, or in computer-aided software engineering (CASE)tools.

    The standard does not emphasize any particular software quality factor, such as

    reliability, maintainability, or reusability. This choice is left to each project.

    The standard can be used within an organization or contractually between twoparties.

  • 8/7/2019 498GBAR

    12/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page xii

    The standard provides a performance-based distinction between requirements for aproduct and design of a product. A requirement is a characteristic that a system orsoftware item is required to possess to be acceptable to the acquirer, while design isa characteristic that the acquirer is willing to leave up to the developer. Thisemphasis on required performance can allow a developer to provide quality productsat reduced costs when unique product solutions are not required.

    MIL-STD-498 specifically removes key problems found in the use of predecessor standards.MIL-STD-498:

    a. Is usable with any development strategy. MIL-STD-498 has been structured to betteraccommodate development models other than the traditional "Waterfall" model; toavoid time-oriented dependencies and implications; to provide alternatives to formalreviews (that can force a Waterfall development model); and to explain how to applythe standard across multiple builds or iterations.

    b. Is usable with any development methods. To improve compatibility withobject-oriented and other methods not using functional decomposition, MIL-STD-498allows the developer to define the design and implementation structures, and to usethat structure in the documentation.

    c. Is compatible with CASE tools. MIL-STD-498 recognizes that much of the significantwork on a software development project does not involve writing documents. Thestandard: (1) separates planning and engineering activities from preparation of

    deliverables to make it easier to call for one without the other; (2) provides languagethat permits the recording of project information in forms other than traditionaldocuments, such as CASE tools; (3) acknowledges data in CASE tools as asubstitute for traditional documents; and (4) provides guidance to preventunnecessary deliverables.

    d. Provides requirements for software reuse. MIL-STD-498 recognizes that manyprojects incorporate or are based on reusable software. To provide clearerrequirements when this is the case, the standard: (1) identifies criteria for use inevaluating reusable software, and (2) provides guidance on interpretingMIL-STD-498's activities and deliverables when applied to reusable software.

    e. Supports the use of software measurement. MIL-STD-498 supports the use ofsoftware measurement. The standard requires identification and application ofsoftware management indicators and includes an annex of candidate indicators thatmight be used.

    f. Emphasizes software supportability. MIL-STD-498 has enhanced softwaresupportability requirements. Examples are requirements to: (1) record the rationale

    for key decisions made on the project; (2) identify all resources the maintenanceorganization will need to maintain the software; and (3) demonstrate that thoseresources are sufficient to maintain the software.

    g. Provides a role for software in the system. MIL-STD-498 recognizes that softwareexists in the context of a system. It provides a role for the software developer both inthe case of a hardware-software system and a software-only system.

  • 8/7/2019 498GBAR

    13/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 13

    PARTICIPANTS

    The MIL-STD-498 Application and Reference Guidebook was sponsored by the Joint LogisticsCommanders (JLC) Joint Policy Coordinating Group on Computer Resource Management(JPCG-CRM), and was developed by Logicon under the direction of the MIL-STD-498

    Harmonization Working Group (HWG). At the time this guidebook was completed, the HWGhad the following membership:

    Dr. Raghu Singh, SPAWAR, HWG ChairmanNorma Stopyra, SPAWAR, MIL-STD-498 Guidebook Product Manager

    Paul Anderson, SPAWARLarry Baker, DSMCVictor Charles, ARDECPerry DeWeese, CODSIARobert Gagnon, OASD (ES)Susan Gardner, FAAJoseph Gianuzzi, SEI

    Dung Minh Ha, MCTSSARobert Hegland, USAISSCPriscilla Hopkins, DoD IGAlan Huguley, DMA

    Tim Janes, MoD, UKCapt. Jonathan Liles, HQ AFMCDonna McCloud, HQ DLALTC. Dixie McNeme, USANancy Meier, NSAFred Moxley, DISARandy Paul, CIA

    Glenn Plonk, NSAPaul Shebalin, DSMCLinda Sheets, AFMCMary Synder, USN

    Guidebook Developers:

    Myrna OlsonStuart CampbellKatherine DeanLynne Buss KetchieDorothy KuckuckAl PeschelBill Stuart

  • 8/7/2019 498GBAR

    14/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page xiv

    This page is intentionally blank.

  • 8/7/2019 498GBAR

    15/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 1

    1. SCOPE

    1.1 Purpose . The purpose of this guidebook is to:

    a. Provide guidance to an acquirer in the application of MIL-STD-498 in a contractualrelationship.

    b. Provide ongoing guidance for using MIL-STD-498 over the life of a project, both toevaluate project progress and perform in-house development.

    c. Provide a detailed reference guide covering key topics associated with theacquisition and development of software. This reference guide provides:

    1) A summary of MIL-STD-498's requirements on key topics for easy reference

    2) A description of acquirer responsibilities and considerations regarding thetopic

    3) A list of questions an acquirer might consider in project planning or inmonitoring project risks to ensure objectives and goals are met within cost andschedule constraints

    1.2 Application of the guidebook . This guidebook is intended to be applied as follows.

    1.2.1 Intended audience . This guidebook is addressed to the acquirer, that is, to anorganization that procures software products for itself or for another organization. It can alsobe used by developers and other parties, but its focus is on helping the acquirer understandand apply MIL-STD-498.

    1.2.2 Use on contracts . This guidebook is not intended to be included in procurements or

    contracts as a contractually binding document. It is meant to provide guidance only.

    1.3 Organization of the guidebook . This guidebook is organized into five major sectionswith supporting appendixes.

    a. Section 1 defines the purpose, application, and organization of the guidebook.

    b. Section 2 provides information about documents mentioned in the guidebook.

    c. Section 3 defines key terms used in MIL-STD-498 and this guidebook.

    d. Section 4 describes and gives guidance on the intended application of thestandard by an acquirer in a contractual relationship.

  • 8/7/2019 498GBAR

    16/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 2

    e. Section 5 provides a detailed reference guide covering key topics associated withthe application and development of software. The topics are arranged inalphabetical order, with page footers containing the topic names, to assist thereader in locating information. Each section 5 topic description is divided into foursubparagraphs:

    1) Paragraph 5.x.1 summarizes the key topic-related requirements in thestandard. When specific MIL-STD-498 references exist, this section containsa figure providing an index of relevant references to the topic. Within thisindex, MIL-STD-498 requirements are indicated with normal text; explanatoryor non-mandatory references are indicated with italicized text . Whenapplicable, this section contains a second figure listing key developer activitiesrelated to the topic.

    2) Paragraph 5.x.2 discusses acquirer responsibilities and provides some issuesfor consideration, including lessons learned regarding the topic.

    3) Paragraph 5.x.3 lists topic-related questions. The questions are intended toprovide acquirers and developers with "things to think about" over the courseof the project. These questions are candidates for discussion at joint reviewsand may help surface and resolve problematic issues.

    4) Paragraph 5.x.4 contains a list of topics found elsewhere in this guidebookthat are related to the topic being discussed.

    f. Appendix A provides a list of acronyms used in this guidebook.

    g. Appendix B provides a cross-reference between topics and sources of relatedinformation.

    h. Appendix C provides a list of useful internet addresses.

    i. Appendix D contains tables of contents, one for each of MIL-STD-498's twenty-twoDIDs.

    http://498gbar5.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498arapx.pdf/http://498gbar5.pdf/
  • 8/7/2019 498GBAR

    17/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 3

    2. APPLICABLE DOCUMENTS

    This section identifies documents mentioned in sections 3, 4 and 5 of this guidebook.

    2.1 Government documents .

    2.1.1 Specifications, standards, and handbooks . The following specifications, standards,and handbooks form a part of this document to the extent specified herein. Unless otherwisespecified, the issues of these documents are those listed in the Department of Defense Indexof Specifications and Standards (DoDISS) and supplements thereto.

    SPECIFICATIONS: None

    DEPARTMENT OF DEFENSE STANDARDSMIL-STD-498 - Software Development and DocumentationDOD-STD-1703(NS)* - Software Product StandardsDOD-STD-2167A* - Defense System Software DevelopmentDOD-STD-2168** - Defense System Software Quality ProgramDOD-STD-7935A* - DoD Automated Information Systems (AIS) Documentation

    Standards

    * Superseded by MIL-STD-498** Canceled 20 March 1995

    Unless otherwise indicated, copies of the above specifications, standards, and handbooks areavailable from the Defense Printing Service Detachment Office, (ATTN: Customer Service),700 Robbins Avenue, Bldg. 4D, Philadelphia, PA 19111-5094 or by sending a request by faxto 215/697-1462.

    2.1.2 Other government documents, drawings, and publications . The following othergovernment documents, drawings, and publications form a part of this document to the extentspecified herein.

    DoDI 5000.2 - Defense Acquisition Management Policies and Procedures

    DoDI 8120.2 - Automated Information System Life-Cycle ManagementProcess, Review, and Milestone Approval Procedures

    DFARS - Defense FAR SupplementDI-MGMT-80614 - Data Item Description for Project FoldersDI-MGMT-81453 - Data Item Description for Data Accession List

  • 8/7/2019 498GBAR

    18/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 4

    DD Form 250 - Material Inspection and Receiving ReportDD Form 1423 - Contract Data Requirements ListFAR - Federal Acquisition RegulationGuidebook - MIL-STD-498 Overview & Tailoring Guidebook

    2.2 Non-government publications .

    INTERNATIONAL STANDARDSISO/IEC 12207 - Information technology - Software life cycle processes

  • 8/7/2019 498GBAR

    19/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 5

    3. DEFINITIONS

    The definitions below are the same as those in MIL-STD-498. They are provided here as anaid in using this guidebook. A list of acronyms used in this guidebook can be found inAppendix A.

    3.1 Acceptance . An action by an authorized representative of the acquirer by which theacquirer assumes ownership of software products as partial or complete performance of acontract.

    3.2 Acquirer . An organization that procures software products for itself oranother organization.

    3.3 Approval . Written notification by an authorized representative of the acquirer that adeveloper's plans, design, or other aspects of the project appear to be sound and can be usedas the basis for further work. Such approval does not shift responsibility from the developer tomeet contractual requirements.

    3.4 Architecture . The organizational structure of a system or CSCI, identifying its

    components, their interfaces, and a concept of execution among them.

    3.5 Associate developer . An organization that is neither prime contractor norsubcontractor to the developer, but who has a development role on the same or related systemor project.

    3.6 Behavioral design . The design of how an overall system or CSCI will behave, from auser's point of view, in meeting its requirements, ignoring the internal implementation of thesystem or CSCI. This design contrasts with architectural design, which identifies the internalcomponents of the system or CSCI, and with the detailed design of those components.

    3.7 Build . (1) A version of software that meets a specified subset of the requirements thatthe completed software will meet. (2) The period of time during which such a version isdeveloped. Note: The relationship of the terms "build" and "version" is up to the developer; forexample, it may take several versions to reach a build, a build may be released in severalparallel versions (such as to different sites), or the terms may be used as synonyms.

    3.8 Computer database . See database.

    http://498arapx.pdf/http://498arapx.pdf/
  • 8/7/2019 498GBAR

    20/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 6

    3.9 Computer hardware . Devices capable of accepting and storing computer data,executing a systematic sequence of operations on computer data, or producing controloutputs. Such devices can perform substantial interpretation, computation, communication,control, or other logical functions.

    3.10 Computer program . A combination of computer instructions and data definitions thatenable computer hardware to perform computational or control functions.

    3.11 Computer software . See software.

    3.12 Computer Software Configuration Item (CSCI) . An aggregation of software thatsatisfies an end use function and is designated for separate configuration management by the

    acquirer. CSCIs are selected based on tradeoffs among software function, size, host or targetcomputers, developer, support concept, plans for reuse, criticality, interface considerations,need to be separately documented and controlled, and other factors.

    3.13 Configuration Item . An aggregation of hardware, software, or both that satisfies anend use function and is designated for separate configuration management by the acquirer.

    3.14 Database . A collection of related data stored in one or more computerized files in amanner that can be accessed by users or computer programs via a database managementsystem.

    3.15 Database management system . An integrated set of computer programs that providethe capabilities needed to establish, modify, make available, and maintain the integrity of adatabase.

    3.16 Deliverable software product . A software product that is required by the contract tobe delivered to the acquirer or other designated recipient.

    3.17 Design . Those characteristics of a system or CSCI that are selected by the developerin response to the requirements. Some will match the requirements; others will beelaborations of requirements, such as definitions of all error messages in response to arequirement to display error messages; others will be implementation related, such asdecisions about what software units and logic to use to satisfy the requirements.

  • 8/7/2019 498GBAR

    21/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 7

    3.18 Developer . An organization that develops software products ("develops" may includenew development, modification, reuse, reengineering, maintenance, or any other activity thatresults in software products). The developer may be a contractor or a government agency.

    3.19 Document/documentation . A collection of data, regardless of the medium on which it

    is recorded, that generally has permanence and can be read by humans or machines.

    3.20 Evaluation . The process of determining whether an item or activity meetsspecified criteria.

    3.21 Firmware . The combination of a hardware device and computer instructions and/orcomputer data that reside as read-only software on the hardware device.

    3.22 Hardware Configuration Item (HWCI) . An aggregation of hardware that satisfies anend use function and is designated for separate configuration management by the acquirer.

    3.23 Independent verification and validation (IV&V) . Systematic evaluation of softwareproducts and activities by an agency that is not responsible for developing the product orperforming the activity being evaluated. IV&V is not within the scope of this standard.

    3.24 Interface . In software development, a relationship among two or more entities (suchas CSCI-CSCI, CSCI-HWCI, CSCI-user, or software unit-software unit) in which the entitiesshare, provide, or exchange data. An interface is not a CSCI, software unit, or other systemcomponent; it is a relationship among them.

    3.25 Joint review . A process or meeting involving representatives of both the acquirer and

    the developer, during which project status, software products, and/or project issues areexamined and discussed.

    3.26 Non-deliverable software product . A software product that is not required by thecontract to be delivered to the acquirer or other designated recipient.

    3.27 Process . An organized set of activities performed for a given purpose; for example,the software development process.

    3.28 Qualification testing . Testing performed to demonstrate to the acquirer that a CSCIor a system meets its specified requirements.

  • 8/7/2019 498GBAR

    22/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 8

    3.29 Reengineering . The process of examining and altering an existing system toreconstitute it in a new form. May include reverse engineering (analyzing a system andproducing a representation at a higher level of abstraction, such as design from code),restructuring (transforming a system from one representation to another at the same level ofabstraction), redocumentation (analyzing a system and producing user or support

    documentation), forward engineering (using software products derived from an existingsystem, together with new requirements, to produce a new system), retargeting (transforming asystem to install it on a different target system), and translation (transforming source code fromone language to another or from one version of a language to another).

    3.30 Requirement . (1) A characteristic that a system or CSCI must possess in order to beacceptable to the acquirer. (2) A mandatory statement in this standard or another portion of

    the contract.

    3.31 Reusable software product . A software product developed for one use but havingother uses, or one developed specifically to be usable on multiple projects or in multiple roleson one project. Examples include, but are not limited to, commercial off-the-shelf softwareproducts, acquirer-furnished software products, software products in reuse libraries, andpre-existing developer software products. Each use may include all or part of the software

    product and may involve its modification. This term can be applied to any software product (forexample, requirements, architectures, etc.), not just to software itself.

    3.32 Software . Computer programs and computer databases. Note: Although somedefinitions of software include documentation, MIL-STD-498 limits the definition to computerprograms and computer databases in accordance with Defense Federal Acquisition RegulationSupplement 227.401.

    3.33 Software development . A set of activities that results in software products. Softwaredevelopment may include new development, modification, reuse, reengineering, maintenance,or any other activities that result in software products.

    3.34 Software development file (SDF) . A repository for material pertinent to thedevelopment of a particular body of software. Contents typically include (either directly or byreference) considerations, rationale, and constraints related to requirements analysis, design,and implementation; developer-internal test information; and schedule and status information.

  • 8/7/2019 498GBAR

    23/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 9

    3.35 Software development library (SDL) . A controlled collection of software,documentation, other intermediate and final software products, and associated tools andprocedures used to facilitate the orderly development and subsequent support of software.

    3.36 Software development process . An organized set of activities performed to translate

    user needs into software products.

    3.37 Software engineering . In general usage, a synonym for software development. Asused in this standard, a subset of software development consisting of all activities exceptqualification testing. The standard makes this distinction for the sole purpose of givingseparate names to the software engineering and software test environments.

    3.38 Software engineering environment . The facilities, hardware, software, firmware,procedures, and documentation needed to perform software engineering. Elements mayinclude but are not limited to computer-aided software engineering (CASE) tools, compilers,assemblers, linkers, loaders, operating systems, debuggers, simulators, emulators,documentation tools, and database management systems.

    3.39 Software product . Software or associated information created, modified, or

    incorporated to satisfy a contract. Examples include plans, requirements, design, code,databases, test information, and manuals.

    3.40 Software quality . The ability of software to satisfy its specified requirements.

    3.41 Software support . The set of activities that takes place to ensure that softwareinstalled for operational use continues to perform as intended and fulfill its intended role in

    system operation. Software support includes software maintenance, aid to users, and relatedactivities.

    3.42 Software system . A system consisting solely of software and possibly the computerequipment on which the software operates.

    3.43 Software test environment . The facilities, hardware, software, firmware, procedures,and documentation needed to perform qualification, and possibly other, testing of software.Elements may include but are not limited to simulators, code analyzers, test case generators,and path analyzers, and may also include elements used in the software engineeringenvironment.

  • 8/7/2019 498GBAR

    24/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 10

    3.44 Software transition . The set of activities that enables responsibility for softwaredevelopment to pass from one organization, usually the organization that performs initialsoftware development, to another, usually the organization that will perform software support.

    3.45 Software unit . An element in the design of a CSCI; for example, a major subdivision

    of a CSCI, a component of that subdivision, a class, object, module, function, routine, ordatabase. Software units may occur at different levels of a hierarchy and may consist of othersoftware units. Software units in the design may or may not have a one-to-one relationshipwith the code and data entities (routines, procedures, databases, data files, etc.) thatimplement them or with the computer files containing those entities.

    3.46 Support (of software) . See software support.

    3.47 Transition (of software) . See software transition.

  • 8/7/2019 498GBAR

    25/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 11

    4. APPLICATION GUIDE

    This section describes the intended use of MIL-STD-498 by an acquirer in a contractual(acquirer-developer) relationship and gives guidance to the acquirer for using the standardunder current DoD policies and procedures.

    4.1 Approval of MIL-STD-498 . MIL-STD-498 was issued 5 December 1994. Its approvalextends for a two-year period, at the end of which time a commercial standard is expected tobe ready to use in its place. Readers are advised to check with the DepartmentalStandardization Office (DepSO) Standards Improvement Executive (SIE) of their DoD serviceor government agency or the DoD Standards Office for current policy and guidance regardingthe standard.

    4.2 Supersession of previous standards . MIL-STD-498 supersedes DOD-STD-2167ADefense System Software Development, DOD-STD-7935A DoD Automated InformationSystems (AIS) Documentation Standards, and DOD-STD-1703(NS) Software ProductStandards. An acquirer should take care not to cite superseded, canceled, or conflictingstandards or DIDs on a contract.

    4.3 Use of MIL-STD-498 . MIL-STD-498 may be used on any development that involvessoftware. The standard may be used in a two-party agreement or voluntarily for in-housedevelopment. It may be used for the development of software that is part of ahardware-software system; for software in a software-only system; for part of a system, suchas a subsystem, CSCI, database, functional capability, software unit, or any part of suchsoftware; for development of specific software products associated with a phase ofdevelopment, such as software requirements or design; or for partial/preliminary softwareproducts, such as "builds" or system and software architectures. The standard may be usedfor any type of software (reusable software, software in the engineering and test environment,database, knowledge-based software, networked/client-server, communication, avionic, etc.) inany acquisition phase (Demonstration and Validation, Engineering and ManufacturingDevelopment, etc.) and with any program strategy (Grand Design, Incremental, etc.).MIL-STD-498 may be applied to contractors, subcontractors, or government in-house agenciesperforming software development. The standard is invoked by citing it on a contract. It appliesto each software product and to each type of software, including firmware, covered by thecontract, regardless of storage medium, to the extent specified in the contract.

  • 8/7/2019 498GBAR

    26/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 12

    4.4 Use of MIL-STD-498's Data Item Descriptions . MIL-STD-498's planning andengineering Data Item Descriptions (DIDs) are an intrinsic part of the standard. Unless anactivity has been tailored out, the information specified by the DID is intended to be definedand recorded. The contents of the DIDs apply regardless of whether the information resultingfrom those DIDs is intended to be delivered or not. The wording throughout MIL-STD-498 is

    designed to: (1) emphasize that the development and recording of planning and engineeringinformation is an intrinsic part of the software development process, to be performedregardless of whether a deliverable is required; (2) use the DID as a checklist of items to becovered in the planning or engineering activity; and (3) permit representations other thantraditional documents for recording the information (e.g., CASE tools).

    4.5 Use of MIL-STD-498 to develop software in "builds" . MIL-STD-498 is written in

    terms of developing software in multiple "builds." Each build incorporates a specified subset ofthe planned capabilities of the software. The builds might be prototypes, versions offeringlimited capability, or versions containing full use of some capabilities but not others. Figuresand notes in the standard inform the reader how to interpret the standard on projects involvingmultiple builds. Figure 10 of MIL-STD-498 shows how each major activity in the standard maybe applied in one or more builds. Software builds may be developed in sync with systembuilds where each software build matches those of the system, or multiple software builds may

    be performed as part of a single build for the system. This is illustrated in Figure 1.

    S y s t e m B u i l d 1 S y s t e m B u i l d 2 S y s t e m B u i l d 3

    S o f t w a r e S o f t w a r e S o f t w a r e S o f t w a r e S o f t w a r e S o f t w a r e

    B u i l d 1 B u i l d 2 B u i l d 3 B u i l d 4 B u i l d 5 B u i l d 6

    FIGURE 1. Example showing how system and software build strategies can differ.

    4.6 Use of MIL-STD-498 with DoD's program strategies . DoDI 8120.2 describes threebasic program strategies plus a generic strategy called "other," encompassing variations,combinations, and alternatives to the basic three. DoDI 5000.2 identifies similar strategies,called acquisition strategies. The three basic program strategies with their distinguishingcharacteristics are shown in Figure 2. Figures 9 through 11 of MIL-STD-498 show possibleways of applying the standard to these strategies.

    http://498-std.pdf/http://498-std.pdf/
  • 8/7/2019 498GBAR

    27/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page 13

    Program StrategyDefine All

    Requirements First?Multiple

    DevelopmentCycles?

    Field InterimSoftware?

    Grand Design Yes No No

    Incremental (PreplannedProduct Improvement)

    Yes Yes Maybe

    Evolutionary No Yes Yes

    FIGURE 2. Key features of three DoD program strategies.

    a. Grand Design . The "Grand Design" strategy (not named in DoDI 5000.2 buttreated as one strategy) is essentially a "once-through, do-each-step-once"strategy. Simplistically: determine user needs, define requirements, design thesystem, implement the system, test, fix, and deliver. This is the "traditional"strategy. It is particularly applicable to systems that are precedented (that is,where similar systems of this nature have been previously developed).

    b. Incremental . The "Incremental" strategy (called "Preplanned ProductImprovement" in DoDI 5000.2) determines user needs and defines the systemrequirements, then performs the rest of the development in a sequence of builds.The first build incorporates part of the planned capabilities, the next build addsmore capabilities, and so on, until the system is complete. This strategy is similarto the "Grand Design" with the primary distinction being that only part of theintended capabilities will be present in each increment. Sometimes theseincrements are called "builds." An Incremental strategy is particularly applicablewhen capabilities are required quickly and resources to complete the entire system

    must be funded over time.

    c. Evolutionary . The "Evolutionary" strategy (called "Evolutionary" in both DoDI5000.2 and DoDI 8120.2) also develops a system in builds, but differs from theIncremental strategy in acknowledging that all requirements cannot be defined upfront. In this strategy, user needs and system requirements are partially defined,but are then refined in each succeeding build. This strategy differs from the others

    in that requirements are not totally defined at the start of the project, but "evolve"as both the developer and the user become more knowledgeable of the needs.This strategy is particularly applicable when technology is changing rapidly, wherethe threat is only partially identified, or when requirements are not clear to theusers.

  • 8/7/2019 498GBAR

    28/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 14

    4.7 Use of MIL-STD-498 within system acquisition phases . DoDI 5000.2, DefenseAcquisition Management Policies and Procedures, and DoDI 8120.2, Automated InformationSystem (AIS) Life-Cycle Management (LCM) Process, Review and Milestone ApprovalProcedures, describe system acquisition phases (also known as system life cycle phases).MIL-STD-498 may be used within any phase when tailored appropriately for the objectives of

    each respective phase. Specific software product descriptions are often defined and recordedin certain phases of a program strategy. For example, when using the Grand Design programstrategy, the operational concept description may be developed in Phase 0, system andsubsystem requirements and design in Phase I, with full software implementation in Phase II.When the acquirer's justification for proceeding with development depends upon successfulcompletion of objectives and criteria for a phase, MIL-STD-498's software products, such asplans, operational concept descriptions, design descriptions, and prototypes, can provide

    critical information identifying possible risks that could impact cost and schedule.

    Milestone Phase 0 Phase I Phase II Phase III Phase IV

    DoDI 5000.2Phase Name

    ConceptExploration andDefinition

    Demonstrationand Validation

    Engineering andManufacturingDevelopment

    Production andDeployment

    Operations andSupport

    DoDI 8120.2Phase Name

    ConceptExplorationand Definition

    Demonstrationand Validation

    Development Production andDeployment

    Operations andSupport

    FIGURE 3. DoDI 5000.2 and DoDI 8120.2 acquisition phases.

    a. Concept Exploration and Definition . Most of MIL-STD-498's activities may notapply in this phase. The acquirer's efforts focus on identifying the concept for anew or modified system based on the new or modified aspects of user needs,

    threats, missions, objectives, environments, interfaces, personnel, or other factors.Little may be known about the eventual software product. However, it is possiblethat software will be developed to affirm the feasibility of the concepts proposed.Software developed as part of a feasibility study could eventually form the basis ofthe software developed for the final system. The acquirer should determinewhether such software will be developed, and, if developed, whether that softwarewill be reused later or thrown away. If the software is intended for reuse, the

    acquirer should apply MIL-STD-498 to avoid the all-too-frequent case wheresoftware that no one understands, but that "works" (most of the time), becomespermanently embedded in the system.

  • 8/7/2019 498GBAR

    29/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page 15

    b. Demonstration and Validation . During this phase of system acquisition, theacquirer's efforts focus on determining the best product design. The acquirershould consider that a strong possibility exists that software will be developedduring prototyping of critical components. The acquirer should determine whethersuch software will be developed, and, if so, whether any software developed is

    "throw-away" software or software that will be reused later. If the software isintended for reuse, the acquirer should apply MIL-STD-498.

    c. Development/Engineering and Manufacturing Development . MIL-STD-498 ismost frequently applied to the development of software during this phase ofdevelopment. During this phase, the most promising design approach from theDemonstration and Validation Phase is translated into a stable, producible design.

    Among other considerations, the acquirer will apply MIL-STD-498 taking intoconsideration whether system level requirements/design activities have beencompleted and some software products developed. If software has already beendeveloped that is reusable , Figure 3 of MIL-STD-498 explains how the activities ofthe standard apply to that software.

    d. Production and Deployment . The activities of this phase are concerned with

    manufacturing the system, conducting tests to confirm and monitor performanceand quality, and verifying the correction of deficiencies. For software, productionmeans copying the executable software, not recoding the software from designdocuments. If enhancements are made to the software, MIL-STD-498 should beapplied to those enhancements.

    e. Operations and Support . The objectives of this phase are to ensure that the

    system continues to provide the capabilities required to meet the identified missionneed and to identify shortcomings or deficiencies that must be corrected toimprove performance. Studies have shown that 60-80% of life cycle costs occur inthe operations and support phase. The activities of MIL-STD-498 can be appliedin this phase when making enhancements and when correcting deficiencies. Whenapplying the standard to making enhancements and correcting deficiencies in thesoftware, the standard should be interpreted as for a new build or a reengineeringeffort. Software products, such as requirements, design, code, test procedures,plans, and manuals may already exist (or reside in databases or softwaredevelopment tools). Notes in the standard interpret the application to builds.Figure 12 o f the standard shows one possible way of applying MIL-STD-498 to areengineering project. For software developed under DOD-STD-2167A,DOD-STD-7935A, or DOD-STD-1703(NS), the acquirer should determine whether

    http://498-std.pdf/http://498-std.pdf/http://498-std.pdf/http://498-std.pdf/
  • 8/7/2019 498GBAR

    30/38

    (PDF version) MIL-STD-498 Application and Reference Guidebook Page 16

    DoD service or government agency policies exist that govern whetherMIL-STD-498 or predecessor standards apply.

    4.8 Application of MIL-STD-498 to development of systems . MIL-STD-498 can beapplied to any system that contains software. The term "system," as used in the standard,

    may mean: (1) a hardware-software system (for example, a radar system) for which thisstandard covers only the software portion, or (2) a software-only system (for example, a payrollsystem) for which the standard governs overall development.

    a. Hardware-software systems . MIL-STD-498 was developed for application tosystems that contain both hardware and software, such as communicationssystems, radar systems, flight control systems, and engine control systems. For

    those systems, the standard covers only the software portion. The standardassumes that the contract (Statement of Work (SOW) or other agreement) coversthe remaining portions. To accommodate this relationship, the standard tasks thesoftware developer to "participate in" system development activities. When usedin this manner, "participate in" means that the developer is to " take part in, as described in the software development plan ," performing those activities.

    b. Software only systems . MIL-STD-498 was developed for application todevelopment of software-only systems, such as financial packages and networkedsoftware (possibly with the commercial computers on which that software will run).For those systems, the standard covers the entire system. When a systemconsists only of software, the term "participate" means that the developer is to " be responsible for " performing those activities.

    4.9 Application of MIL-STD-498 to development of parts of systems . MIL-STD-498can be applied to the development of part of a system, such as a subsystem, CSCI, database,functional capability, software unit, or any part(s) or aggregates of such software. If adevelopment is based on alternative breakdowns of the system, the standard and itsdocumentation applies to these alternatives as well.

    a. Subsystem(s) . If a system consists of subsystems, all requirements in thestandard concerning systems apply to the subsystems as well.

    b. CSCI(s) . If a development is for a single CSCI or group of CSCIs, therequirements of the standard can be applied. The standard should be tailored toremove those system requirements that are not applicable to that development.The acquirer should determine whether it is desirable for the CSCI's developer to

  • 8/7/2019 498GBAR

    31/38

    PDF version) MIL-STD-498 Application and Reference Guidebook Page 17

    system architecture and being present at integration testing activities to correct or"tweak" the software) or whether the CSCI is "stand-alone" and no "participationin" system level activities by the CSCI's developer is needed.

    c. Database(s) . The standard can be applied to the development of database

    management systems, to the development of software based on databasemanagement systems, or to the population of databases in such systems.Database development may be considered a system/subsystem developmentproject, or a CSCI development project. A database may also be a software unit,or part of a software unit of a CSCI that is being developed. Application of thestandard to databases, therefore, can vary from application of the standard as fora system/subsystem, to application as a CSCI, or as one part of a larger

    development project.

    d. Capability(ies). The standard can be applied to the development ofcapability(ies) intended to cut across multiple subsystems, CSCIs, software units,or their aggregates. This case often exists when enhancements are required forexisting systems. Enhancements may be considered as a software build or areengineering project. Notes throughout the standard interpret the standard's

    application to builds. Figure 12 of MIL-STD-498 shows one possible way ofapplying the standard to a reengineering project.

    e. Software unit(s) or part(s) or aggregates of such software . The standard canbe applied to any software designated for development. It may be applied to asingle software unit; to part(s) or aggregates of software units; or to only thedesign, or the implementation, or the testing of those units, parts, or aggregates.

    Selected activities may be applied to some of the software and not to others.