Paul R Croll Chair IEEE Software Engineering Standards

  • Slides: 54
Download presentation
Paul R. Croll Chair, IEEE Software Engineering Standards Committee Vice Chair, ISO/IEC JTC 1/SC

Paul R. Croll Chair, IEEE Software Engineering Standards Committee Vice Chair, ISO/IEC JTC 1/SC 7 U. S. TAG Computer Sciences Corporation pcroll@csc. com Eight Steps to Success in CMMI -Compliant Process Engineering: Strategies and Supporting Technology Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM

A Preparatory Exercise Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday,

A Preparatory Exercise Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM Paul R. Croll - 2

1 3 2 5 4 7 6 8 Third Annual CMMI Technology Conference and

1 3 2 5 4 7 6 8 Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 3

8 Steps to Success In CMMI Compliant Process Engineering 1 5 Understand your business

8 Steps to Success In CMMI Compliant Process Engineering 1 5 Understand your business processes Build or Refine Your Process Architecture 2 6 Look to the CMMISM for Process Completeness Execute Your Processes 3 7 Look to 4 Framework Standards for Life Cycle Definition Measure Your Results - Modify Processes as Necessary 8 3 Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM Look to Supporting Standards for Process Detail Confirm Your Status With Independent Appraisals 3 3 3 4

Step 1 – Understand your business processes Third Annual CMMI Technology Conference and Users

Step 1 – Understand your business processes Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 5

Strategy: Your Business is Your Business – It’s Not CMMI Implementation l You must

Strategy: Your Business is Your Business – It’s Not CMMI Implementation l You must fully understand your business processes before you can address process completeness or process compliance. u u u Decision Branch Else Activity 1 What are your business processes? Are they well-documented? Are roles and responsibilities well-defined? Are lines of authority well-defined? Are internal and external interfaces welldefined? Do your business processes satisfy your business goals? Decision Branch Else Activity 2 Activity 4 Activity 5 Activity 3 AND Activity 6 End Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 6

Technology: Use Business Process Modeling Aids to Capture Your Business Processes l Automated tools

Technology: Use Business Process Modeling Aids to Capture Your Business Processes l Automated tools can help you capture and understand your business processes. u Business Process Management Initiative – BPML 1. 0 Specification n u CA’s All. Fusion Modeling Suite n u http: //www. popkin. com/ Proforma Pro. Vision Modeling Suite n u http: //www. casewise. com/ Popkin System Architect n u http: //www. asapsoftware. com/ca/allfusion. pdf Casewise Corporate Modeler n u http: //www. bpmi. org/ http: //www. proformacorp. com/ Rational Suite® Analyst. Studio® n http: //www. rational. com/products/astudio/index. jsp Disclaimer: Tools and services mentioned are for example only. Such mention is not to be construed as an endorsement by the author, CSC, IEEE, ISO. or IEC Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 7

Step 2 - Look to the CMMI for Process Completeness Third Annual CMMI Technology

Step 2 - Look to the CMMI for Process Completeness Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 8

Strategy: Use the CMMI as a Guide to Process Completeness Determine if essential elements

Strategy: Use the CMMI as a Guide to Process Completeness Determine if essential elements of your processes are missing or incomplete Process Management · · Organizational Process Focus Organizational Process Definition Organizational Training Organizational Process Performance · Organizational Innovation and Deployment Project Management · · · · Project Planning Project Monitoring and Control Supplier Agreement Management Integrated Project Management for IPPD Risk Management Integrated Teaming Integrated Supplier Management Quantitative Project Management Engineering · · · Requirements Management Requirements Development Technical Solution Product Integration Verification Validation Support · Configuration Management · Process and Product Quality Assurance · Measurement and Analysis · Decision Analysis and Resolution · Organizational Environment for Integration · Causal Analysis and Resolution Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 9

Technology: Use Tools and Information Assets to the Understand Your Business Processes in the

Technology: Use Tools and Information Assets to the Understand Your Business Processes in the CMMI Context l Checklists and Mapping Tables u l SEI CMMI Adoption. Web Page u l http: //seir. sei. cmu. edu/ Basic Support for Cooperative Work (BSCW) Shared Workspace u l http: //www. sei. cmu. edu/cmmi/adoption. html SEI Software Engineering Information Repository u l http: //www. stsc. hill. af. mil/consulting/cmmi/documents. html http: //jo. sei. cmu. edu/pub/english. cgi/0/323123 Yahoo! CMMI Process Improvement Discussion Group u http: //groups. yahoo. com/group/cmmi_process_improvement/ Disclaimer: Tools and services mentioned are for example only. Such mention is not to be construed as an endorsement by the author, CSC, IEEE, ISO. or IEC Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 10

Step 3 - Look to Framework Standards for Life Cycle Definition Third Annual CMMI

Step 3 - Look to Framework Standards for Life Cycle Definition Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 11

Strategy: Use Process Framework Standards to Aid in Life Cycle Definition l Systems Life

Strategy: Use Process Framework Standards to Aid in Life Cycle Definition l Systems Life Cycle u l ISO/IEC 15288, Systems engineering — System life cycle processes Software Life Cycle u u ISO/IEC 12207, Standard for Information Technology —Software life cycle processes IEEE/EIA 12207. 0, Industry Implementation of International Standard ISO/IEC 12207: 1995 — (ISO/IEC 12207) Standard for Information Technology —Software life cycle processes n n IEEE/EIA 12207. 1, Industry Implementation of International Standard ISO/IEC 12207: 1995 — (ISO/IEC 12207) Standard for Information Technology —Software life cycle processes – Life Cycle Data IEEE/EIA 12207. 2, Industry Implementation of International Standard ISO/IEC 12207: 1995 — (ISO/IEC 12207) Standard for Information Technology —Software life cycle processes – Implementation considerations Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 12

The ISO/IEC 15288 Systems Life Cycle Process Framework ENTERPRISE ENVIRONMENT MANAGEMENT INVESTMENT MANAGEMENT SYSTEM

The ISO/IEC 15288 Systems Life Cycle Process Framework ENTERPRISE ENVIRONMENT MANAGEMENT INVESTMENT MANAGEMENT SYSTEM LIFE CYCLE MANAGEMENT RESOURCE MANAGEMENT SYSTEM LIFE CYCLE (25) ENTERPRISE(5) AGREEMENT (2) PROJECT (7) QUALITY MANAGEMENT ACQUISITION SUPPLY PROJECT PLANNING PROJECT ASSESSMENT PROJECT CONTROL DECISION MAKING RISK MANAGEMENT CONFIGURATION MANAGEMENT INFORMATION MANAGEMENT TECHNICAL (11) STAKEHOLDER REQUIREMENTS DEFINITION REQUIREMENTS ANALYSIS ARCHITECTURAL DESIGN IMPLEMENTATION INTEGRATION VERIFICATION TRANSITION VALIDATION OPERATION MAINTENANCE DISPOSAL Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 13

The IEEE/EIA 12207 Software Life Cycle Process Framework ACQUISITION SUPPLY DEVELOPMENT OPERATION SOFTWARE LIFE

The IEEE/EIA 12207 Software Life Cycle Process Framework ACQUISITION SUPPLY DEVELOPMENT OPERATION SOFTWARE LIFE CYCLE (17+1) MAINTENANCE PRIMARY (5) SUPPORTING (8) DOCUMENTATION CONFIGURATION MANAGEMENT QUALITY ASSURANCE VERIFICATION VALIDATION JOINT REVIEW AUDIT PROBLEM RESOLUTION ORGANIZATIONAL (4) MANAGEMENT Source: Singh 97 INFRASTRUCTURE IMPROVEMENT TRAINING TAILORING Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 14

Relationship between ISO/IEC 15288 and ISO/IEC 12207 Project Planning Project Assessment Risk Management Decision

Relationship between ISO/IEC 15288 and ISO/IEC 12207 Project Planning Project Assessment Risk Management Decision Making Project Control Configuration Management Stakeholder Requirements Definition Validation Usability Information Management Operation Transition Maintenance Requirements Analysis Verification Architectural Design Integration Project processes Technical processes Disposal Implementation Enterprise Environment Management Hardware Implementation Investment Management Software Implementation Refer to ISO/IEC 12207 Human Task Implementation System Life Cycle Processes Management Enterprise processes Resource Management Quality Management Source: ISO/IEC JTC 1/SC 7/WG 7 N 0643, 2002 -10 -20, © ISO/IEC 2002. Acquisition Supply Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM Agreement processes 15

Step 4 – Look to Supporting Standards For Process Detail Third Annual CMMI Technology

Step 4 – Look to Supporting Standards For Process Detail Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 16

Strategy: Use Supporting Standards as Best Practice Support for Your Defined System Life Cycle

Strategy: Use Supporting Standards as Best Practice Support for Your Defined System Life Cycle Life cycle progression ISO/IEC 15288 Life Cycle Model Stages Concept Development Production Utilization Support Retirement Increasing level of detail ISO/IEC 15288 system life cycle processes Activity level detail from a 2 nd Standard For example, ANSI/EIA 632 Task level detail from a 3 rd Standard For example, IEEE 1220 Activity level detail from a 4 th Standard Task level detail from a 5 th Standard A 1. ISO/IEC 15288 and other engineering standards Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM Source: Systems Engineering – A Guide for the application of ISO/IEC 15288 System Life Cycle Processes, ISO/IEC 19760, © ISO/IEC 2003. 17

Strategy: Use Supporting Standards as Best Practice Support for Your Defined Software Life Cycle

Strategy: Use Supporting Standards as Best Practice Support for Your Defined Software Life Cycle Source: IEEE/EIA 12207. 1 -1997, © IEEE 1998. Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 18

CMMI SE/SW/IPPD/SS v 1. 1 Standards Mapping - Process Management ISO/IEC 15288, System Life

CMMI SE/SW/IPPD/SS v 1. 1 Standards Mapping - Process Management ISO/IEC 15288, System Life Cycle Process Management Processes l IEEE 12207. 0, Software Life Cycle Processes EIA 632 - Processes for l IEEE 12207. 1, Guide to Software Life Engineering a System CMMISM SE/SW/IPPD/SS v 1. 1 Cycle Processes—Life Cycle Data IEEE 1220, Application Processand Area/Specific Practice l IEEE 12207. 2, Guide to Software Life Management of the Systems Cycle Processes—Implementation Engineering Process Considerations IEEE 1074, Developing Software Life Cycle Processes Framework Standards 1517 -1999, Reuse Processes l l l Supporting Standards Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 19

CMMI SE/SW/IPPD/SS v 1. 1 Standards Mapping – Project Management l l l l

CMMI SE/SW/IPPD/SS v 1. 1 Standards Mapping – Project Management l l l l IEEE 1220, Application and Management of the Systems Engineering Process IEEE 1058, Software Project Management Plans IEEE 1490, A Guide to the Program Management Body of Knowledge IEEE 1062, Recommended Practice for Software Acquisition IEEE 1540, Risk Management IEEE 1028, Software Reviews l l ISO/IEC 15288, System Life Cycle Processes IEEE 12207. 0, Software Life Cycle Processes IEEE 12207. 1, Guide to Software Life Cycle Processes—Life Cycle Data IEEE 12207. 2, Guide to Software Life Cycle Processes—Implementation Considerations Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 20

CMMI SE/SW/IPPD/SS v 1. 1 Standards Mapping – Engineering l l l l l

CMMI SE/SW/IPPD/SS v 1. 1 Standards Mapping – Engineering l l l l l IEEE 1233, Guide for Developing System Requirements Specifications IEEE 1362, Guide for Concept of Operations Document IEEE 1471, Architectural Description of Software Intensive Systems IEEE 830, Software Requirements Specifications IEEE 1016, Software Design Descriptions IEEE 1012, Software Verification and Validation IEEE 1008, Software Unit Testing l l l l ISO/IEC 15288, System Life Cycle Processes IEEE 12207. 0, Software Life Cycle Processes IEEE 12207. 1, Guide to Software Life Cycle Processes—Life Cycle Data IEEE 12207. 2, Guide to Software Life Cycle Processes—Implementation Considerations IEEE 1228, Software Safety Plans IEEE 1063, Software User Documentation IEEE 1219, Software Maintenance IEEE 1320. 1, . 2, IDEF 0, IDEF 1 X 97 IEEE 1420. 1, Data Model for Reuse Library Interoperability Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 21

CMMI SE/SW/IPPD/SS v 1. 1 Standards Mapping – Support l l l l IEEE

CMMI SE/SW/IPPD/SS v 1. 1 Standards Mapping – Support l l l l IEEE 828, Software Configuration Management Plans IEEE 730, Software Quality Assurance Plans IEEE 982. 1, Dictionary of Measures to Produce Reliable Software IEEE 1045, Software Productivity Metrics IEEE 1061, Software Quality Metrics Methodology IEEE 1219, Software Maintenance l l ISO/IEC 15288, System Life Cycle Processes IEEE 12207. 0, Software Life Cycle Processes IEEE 12207. 1, Guide to Software Life Cycle Processes—Life Cycle Data IEEE 12207. 2, Guide to Software Life Cycle Processes—Implementation Considerations IEEE 1465 (ISO/IEC 12119) - Software Packages - Quality Requirements and Testing IEEE 14143. 1 (ISO/IEC 1443 -1) Functional Size Measurement - Part 1: Definition of Concepts Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 22

An Example - Requirements Development SP 2. 1 -1 Establish Product and Product Component

An Example - Requirements Development SP 2. 1 -1 Establish Product and Product Component Requirements u Establish and maintain, from the customer requirements, product and product component requirements essential to product and product component effectiveness and affordability l ISO/IEC 15288, System Life Cycle Processes u l IEEE/EIA 12207. 0, Software Life Cycle Processes u u l l Clause 5. 5. 3 - Requirements Analysis Process Clause 5. 3. 2 - System Requirements Analysis Clause 5. 3. 4 - Software requirements analysis IEEE 1233, Guide for Developing System Requirements Specifications IEEE 830, Software Requirements Specifications Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 23

An Example - Requirements Development SP 2. 1 -1 Establish Product and Product Component

An Example - Requirements Development SP 2. 1 -1 Establish Product and Product Component Requirements l ISO/IEC 15288, System Life Cycle Processes u Clause 5. 5. 3 - Requirements Analysis Establish and maintain, from the Process customer requirements, product and 5. 5. 3 Requirements Analysis Process product component requirements l IEEE/EIA 12207. 0, Software Life Cycle 5. 5. 3. 1 Purpose of the Requirements Analysis Process essential to product and product The purpose of the Requirements Analysis Process is to transform Processes the component stakeholder, requirement-driven view of desired services into a effectiveness and technical view of a required product that could deliver those services. u Clause 5. 3. 2 - System Requirements affordability This process builds a representation of a future system that will meet Analysis stakeholder requirements and that, as far as constraints permit, does not imply any specific implementation. It results in measurable u Clause 5. 3. 4 - Software requirements system requirements that specify, from the developer’s perspective, analysis u what characteristics it is to possess and with what magnitude in order to satisfy stakeholder requirements. 5. 5. 3. 2 Requirements Analysis Process Outcomes l IEEE 1233, Guide for Developing System As a result of the successful implementation of the Requirements Analysis Process: Requirements Specifications a) The required characteristics, attributes, and functional and performance requirements for a product solution are specified. l IEEE 830, Software Requirements b) Constraints that will affect the architectural design of a system and Specifications the means to realize it are specified. c) The integrity and traceability of system requirements to Source: ISO/IEC CD 15288 FDIS, © ISO/IEC 2002. stakeholder requirements is achieved. . Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 24

An Example - Requirements Development 5. 3. 2. 1 The specific intended use of

An Example - Requirements Development 5. 3. 2. 1 The specific intended use of the system to be developed shall be analyzed to specify system requirements. The system requirements specification shall describe: functions and capabilities of the system; business, organizational and user requirements; safety, security, human-factors engineering (ergonomics), interface, operations, and maintenance requirements; design constraints and qualification requirements. The system requirements specification shalland be documented. l SP 2. 1 -1 Establish Product 5. 3. 4. 1 The developer shall establish and document software Product Component requirements, including the quality. Requirements characteristics specifications, described below. . u Establish and maintain, from the a) Functional and capability specifications, including performance, customer requirements, product and physical characteristics, and environmental conditions under product component requirements which the software item is to perform; l b) Interfacesessential external totothe softwareand item; product c) Qualification requirements; component effectiveness and d) Safety specifications, including those related to methods of affordability operation and maintenance, environmental influences, and personnel injury; e) Security specifications, including those related to compromise of sensitive information. . . l l Source: IEEE/EIA 12207. 0 -1997, © IEEE 2001. ISO/IEC 15288, System Life Cycle Processes u Clause 5. 5. 3 - Requirements Analysis Process IEEE/EIA 12207. 0, Software Life Cycle Processes u u Clause 5. 3. 2 - System Requirements Analysis Clause 5. 3. 4 - Software requirements analysis IEEE 1233, Guide for Developing System Requirements Specifications IEEE 830, Software Requirements Specifications Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 25

An Example - Requirements Development 7. 2 Build a well-formed requirement The analysts carry

An Example - Requirements Development 7. 2 Build a well-formed requirement The analysts carry out this subphase by doing the following: a) Ensuring that each requirement is a necessary, short, definitive statement of need (capability, constraints); b) Defining the appropriate conditions (quantitative or qualitative measures) for each requirement and avoiding SP 2. 1 -1 Establish Product andadjectives suchlas ISO/IEC 15288, System Life Cycle “resistant” or “industry wide; ” Processes Product Component Requirements c) Avoiding requirements pitfalls (see 6. 4); d) Ensuring the readability requirements, which u Clause 5. 5. 3 - Requirements Analysis u Establish andofmaintain, from theentails the following: 1) Simple words/phrases/concepts; Process requirements, product and 2) Uniformcustomer arrangement and relationship; product component requirements 3) Definition of unique words, symbols, and notations; l IEEE/EIA 12207. 0, Software Life Cycle 4) The useessential of grammatically correctand language and symbology. to product Processes e) Ensuring testability. component effectiveness and Example: u Clause 5. 3. 2 - System Requirements Capability: affordability Move people between Los Angeles and New York Analysis Condition: Cruising speed of 200 km/hr Constraint: Maximum speed of 300 km/hr u Clause 5. 3. 4 - Software requirements Well-formed requirement: This system should move people between Los Angeles and New York at an optimal cruising speed of 200 km/hr analysis with a maximum speed of 300 km/hr. l l Source: IEEE 1233 -1998, © IEEE 1998. IEEE 1233, Guide for Developing System Requirements Specifications IEEE 830, Software Requirements Specifications Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 26

An Example - Requirements Development SP 2. 1 -1 Establish Product and Product Component

An Example - Requirements Development SP 2. 1 -1 Establish Product and Product Component Requirements u Establish and maintain, from the customer requirements, product and product component requirements essential to product and product component effectiveness and affordability l ISO/IEC 15288, System Life Cycle Processes u l IEEE/EIA 12207. 0, Software Life Cycle Processes u u l l Clause 5. 5. 3 - Requirements Analysis Process Clause 5. 3. 2 - System Requirements Analysis Clause 5. 3. 4 - Software requirements analysis IEEE 1233, Guide for Developing System Requirements Specifications IEEE 830, Software Requirements Specifications Source: IEEE 1233 -1998, © IEEE 1998. Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 27

An Example - Requirements Development 5. 3. 2 Functions Functional requirements should define the

An Example - Requirements Development 5. 3. 2 Functions Functional requirements should define the fundamental actions that must take place in the software in accepting and processing the inputs and in processing and generating the outputs. These are generally listed as “shall” statements starting with “The system shall” These include: a) Validity checks on the inputs l ISO/IEC 15288, System Life Cycle b) Exact sequence of operations SP 2. 1 -1 Establish Product and c) Responses to abnormal situations, including: Processes Product Component Requirements 1) Overflow 2) Communication u Clause 5. 5. 3 - Requirements Analysis u Establishfacilities and maintain, from the 3) Error handling and recovery Process customer requirements, product and d) Effect of parameters product component e) Relationship of outputs to inputsrequirements. . . l IEEE/EIA 12207. 0, Software Life Cycle 1) It mayessential be appropriate to partition functional requirements into to product andtheproduct Processes subfunctions or subprocesses. This does component effectiveness and not imply that the software design will also be partitioned that way. u Clause 5. 3. 2 - System Requirements affordability 5. 3. 3 Performance requirements Analysis This subsection should specify both the static and the dynamic numerical requirements placed on the softu Clause 5. 3. 4 - Software requirements ware or on human interaction with the software as a whole. Static analysis numerical requirements may include the following: a) The number of terminals to be supported; l IEEE 1233, Guide for Developing System b) The number of simultaneous users to be supported; c) Amount and type of information to be handled. l Source: IEEE 830 -1998, © IEEE 1998. Requirements Specifications IEEE 830, Software Requirements Specifications Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 28

An Example - Requirements Development SP 2. 1 -1 Establish Product and Product Component

An Example - Requirements Development SP 2. 1 -1 Establish Product and Product Component Requirements u Establish and maintain, from the customer requirements, product and product component requirements essential to product and product component effectiveness and affordability l ISO/IEC 15288, System Life Cycle Processes u l IEEE/EIA 12207. 0, Software Life Cycle Processes u u l l Clause 5. 5. 3 - Requirements Analysis Process Clause 5. 3. 2 - System Requirements Analysis Clause 5. 3. 4 - Software requirements analysis IEEE 1233, Guide for Developing System Requirements Specifications IEEE 830, Software Requirements Specifications Source: IEEE 830 -1998, © IEEE 1998. Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 29

Technology: Use Mapping Tools and Reports to Select Supporting Standards and Identify Best Practice

Technology: Use Mapping Tools and Reports to Select Supporting Standards and Identify Best Practice Detail l The IEEE CMMI Mapping Project u l The FAA-i. CMM Project u l http: //computer. org/standards/sesc/ http: //www 2. faa. gov/aio/Process. Engr/i. CMM/index. htm The Software Productivity Consortium’s Quagmap Tool u http: //www. software. org/pub/products/quagmap. asp Disclaimer: Tools and services mentioned are for example only. Such mention is not to be construed as an endorsement by the author, CSC, IEEE, ISO. or IEC Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 30

The IEEE CMMI Mapping Project – Background l Study Group on External Standards Coordination

The IEEE CMMI Mapping Project – Background l Study Group on External Standards Coordination formed u l l l Initial Task: Map the IEEE Software Engineering Standards Collection to the CMMI. Software Productivity Consortium’s Quagmap selected as the mapping tool. License agreements for distribution of Standards and the Quagmap tool to Study Group members negotiated and signed. Results to be published on the SESC web site. Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 31

The SPC Quagmap Tool Source: Software Productivity Consortium www. software. org Third Annual CMMI

The SPC Quagmap Tool Source: Software Productivity Consortium www. software. org Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 32

Quagmap Mappings and Relationships l l Mappings define how well one framework (the Source)

Quagmap Mappings and Relationships l l Mappings define how well one framework (the Source) meets the intent of the second (the Target) Relationships define how well each source framework data item meets the intent of the associated target framework item[s] u u u l [none] Partial Complete Standards mappings are generally done in both directions Source: Software Productivity Consortium, www. software. org Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 33

Quagmap Reports l l l Framework: Description and all data items Relationship: Source framework

Quagmap Reports l l l Framework: Description and all data items Relationship: Source framework items and related data items from one or more target frameworks Coverage: Target framework items and the source data items that meet them Gap Identification: Target items not fully satisfied by the source data items Inferred Mapping: Given a mapping from A: B, and B: C; what is a likely set of relationships from A: C? Source: Software Productivity Consortium, www. software. org Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 34

Quagmap Relationship Report Source: Software Productivity Consortium www. software. org Third Annual CMMI Technology

Quagmap Relationship Report Source: Software Productivity Consortium www. software. org Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 35

How You Can Help. . . l Get involved in the mapping effort u

How You Can Help. . . l Get involved in the mapping effort u u l What you will receive u u l Initial mapping Peer reviewer A Copyright Notice and License Agreement An electronic copy of the standard(s) to be mapped the associated framework standard (s) A copy of the Quagmap tool A mapping guide How to get started u Contact me at: pcroll@csc. com to let me know of your interest Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 36

Step 5 – Build or Refine Your Process Architecture Third Annual CMMI Technology Conference

Step 5 – Build or Refine Your Process Architecture Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 37

Strategy: Use Best Practice Information to Build or Refine Your Process Architecture l l

Strategy: Use Best Practice Information to Build or Refine Your Process Architecture l l Existing process assets CMMISM gap identification Framework and Supporting Standards Industry and Do. D best practices u SEI CMMI Adoption. Web Page n u SEI Software Engineering Information Repository n u http: //seir. sei. cmu. edu/ USAF Software Technology Support Center n u http: //www. sei. cmu. edu/cmmi/adoption. html http: //www. stsc. hill. af. mil Navy SPAWAR Systems Engineering Process Office n http: //sepo. spawar. navy. mil/sepo/index 2. html Disclaimer: Tools and services mentioned are for example only. Such mention is not to be construed as an endorsement by the author, CSC, IEEE, ISO. or IEC Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 38

Technology: Use Tools to Support Process Definition l CMMI Reference Card u l l

Technology: Use Tools to Support Process Definition l CMMI Reference Card u l l l http: //www. sei. cmu. edu/cmmi/public ations/ref-card. pdf Process Asset Libraries Knowledge Portals pragma Systems Corporation’s process. Max 5 u http: //www. pragmasystems. com/max 5 fin. htm Disclaimer: Tools and services mentioned are for example only. Such mention is not to be construed as an endorsement by the author, CSC, IEEE, ISO. or IEC Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 39

Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003,

Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM

Step 6 – Execute Your Processes Third Annual CMMI Technology Conference and Users Group–

Step 6 – Execute Your Processes Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 41

Strategy: Base Your Business Activities on Your Defined Processes l Institutionalize your processes u

Strategy: Base Your Business Activities on Your Defined Processes l Institutionalize your processes u u l Train your workforce in your defined processes Incentivize both management and staff Check process performance u Goal Process Results (GPR) n n Goal Process A business-focused Plan Do Check Act cycle For a given set of results either goals or processes may be modified Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM Results 42

Technology: Use Tools to Facilitate Process Deployment, Training, and Execution l l l Process

Technology: Use Tools to Facilitate Process Deployment, Training, and Execution l l l Process Asset Libraries Knowledge Portals Computer-Based Training (CBTs) Web-Based Training (WBT) Net-Based Collaboration u MS Windows Net. Meeting n u AT&T Web Meeting n u http: //www. microsoft. com/windows/netmeeting/default. asp http: //www. business. att. com/products/productdetails. jsp; jsessionid=PM 0 HJK 2 YN 2 ZQFLAZBYZCFEY? product. Id=wms_eu IBM Lotus Sametime n http: //www. lotus. com/products/lotussametime. nsf/wdocs/homepage Disclaimer: Tools and services mentioned are for example only. Such mention is not to be construed as an endorsement by the author, CSC, IEEE, ISO. or IEC Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 43

Step 7 – Measure Your Results Modify Processes as Necessary Third Annual CMMI Technology

Step 7 – Measure Your Results Modify Processes as Necessary Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 44

Strategy: Establish an Active Measurement Program l For both Processes and Products: u u

Strategy: Establish an Active Measurement Program l For both Processes and Products: u u u Identify measurement objectives that are aligned with your business needs Choose specific measures, data collection and storage mechanisms, analysis techniques, and reporting and feedback mechanisms that support your measurement objectives Implement your measurement program Provide decision-makers with objective results that can be used in making informed decisions Periodically assess your measurement program to ensure that it is meeting current business needs Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 45

Technology: Use Tools to Support Measurement of Process Performance and Product Quality l l

Technology: Use Tools to Support Measurement of Process Performance and Product Quality l l Spreadsheets Control Charts u l PSM Insight u l http: //www. distributive. com/solutions_maturitymodel. html SEI Software Engineering Measurement and Analysis Program u l http: //www. psmsc. com/PSMI. asp Distributive Software’s Data. Drill u l http: //www. isixsigma. com/st/control_charts/ http: //www. sei. cmu. edu/sema/welcome. html INCOSE Measurement Working Group u http: //www. incosemwg. org/ Disclaimer: Tools and services mentioned are for example only. Such mention is not to be construed as an endorsement by the author, CSC, IEEE, ISO. or IEC Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 46

Step 8 – Confirm Your Status With Independent Appraisals 3 3 Third Annual CMMI

Step 8 – Confirm Your Status With Independent Appraisals 3 3 Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 47

Strategy: Select an Appraisal Style Suited to Your Process Improvement Objectives Attributes Usage Mode

Strategy: Select an Appraisal Style Suited to Your Process Improvement Objectives Attributes Usage Mode Class A • Benchmark • Baseline establishment Class B • Initial • Incremental • Self-assessment Class C • Quick Look • Incremental • Gap analysis Relative: • Cost/Duration • Confidence • Accuracy High Medium Low Rating? Yes No No http: //www. sei. cmu. edu/cmmi/appraisals. html Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 48

Technology: Use Process Appraisal Tools to Capture Appraisal Data and Facilitate Findings l l

Technology: Use Process Appraisal Tools to Capture Appraisal Data and Facilitate Findings l l Checklists Spreadsheets Databases Integrated Systems Diagnostics’ Appraisal Wizard u l pragma Systems Corporation’s process. Max 5 u l http: //www. isd-inc. com/index. asp? q=1036& http: //www. pragmasystems. com/max 5 fin. htm SEI Transition Partner Appraisal Services u http: //www. sei. cmu. edu/collaborating/partnerstech. html#SCAMPI Disclaimer: Tools and services mentioned are for example only. Such mention is not to be construed as an endorsement by the author, CSC, IEEE, ISO. or IEC Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 49

8 Steps to Success In CMMI Compliant Process Engineering 1 5 Understand your business

8 Steps to Success In CMMI Compliant Process Engineering 1 5 Understand your business processes Build or Refine Your Process Architecture 2 6 Look to the CMMISM for Process Completeness Execute Your Processes 3 7 Look to 4 Framework Standards for Life Cycle Definition Measure Your Results - Modify Processes as Necessary 8 3 Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM Look to Supporting Standards for Process Detail Confirm Your Status With Independent Appraisals 3 3 3 50

For More Information. . . Paul R. Croll Computer Sciences Corporation 5166 Potomac Drive

For More Information. . . Paul R. Croll Computer Sciences Corporation 5166 Potomac Drive King George, VA 22485 -5824 Phone: Fax: e-mail: +1 540. 644. 6224 +1 540. 663. 0276 pcroll@csc. com For IEEE Standards: http: //computer. org/standards/sesc/ http: //computer. org/cspress/CATALOG/st 01110. htm For ISO/IEC Standards: http: //saturne. info. uqam. ca/Labo_Recherche/Lrgl/sc 7/ Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 51

References CMMI -SE/SW/IPPD/SS, V 1. 1, CMMI for Systems Engineering/Software Engineering/Integrated Product and Process

References CMMI -SE/SW/IPPD/SS, V 1. 1, CMMI for Systems Engineering/Software Engineering/Integrated Product and Process Development, and Supplier Sourcing Version 1. 1, CMMISM -SE/SW/IPPD/SS, V 1. 1, Continuous Representation. CMU/SEI-2002 -TR-011, ESC-TR-2002 -011, Carnegie Mellon University, Software Engineering Institute, Pittsburgh, PA, March 2002. IEEE Standard 830 -1998, Recommended Practice for Software Requirements Specifications, Institute of Electrical and Electronics Engineers, Inc. New York, NY, 1998. IEEE Standard 1233 -1998, Guide for Developing System Requirements Specifications, Institute of Electrical and Electronics Engineers, Inc. New York, NY, 1998. Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 52

References - 2 IEEE/EIA Standard 12207. 0 -1996, Industry Implementation of International Standard ISO/IEC

References - 2 IEEE/EIA Standard 12207. 0 -1996, Industry Implementation of International Standard ISO/IEC 12207: 1995 — (ISO/IEC 12207) Standard for Information Technology —Software life cycle processes, Institute of Electrical and Electronics Engineers, Inc. New York, NY, 1998. IEEE/EIA Standard 12207. 1 -1997, Industry Implementation of International Standard ISO/IEC 12207: 1995 — (ISO/IEC 12207) Standard for Information Technology —Software life cycle processes – Life cycle data, Institute of Electrical and Electronics Engineers, Inc. New York, NY, 1998. IEEE/EIA Standard 12207. 2 -1997, Industry Implementation of International Standard ISO/IEC 12207: 1995 — (ISO/IEC 12207) Standard for Information Technology —Software life cycle processes – Implementation considerations, Institute of Electrical and Electronics Engineers, Inc. New York, NY, 1998. Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 53

References - 3 ISO/IEC 15288: 2002, Systems Engineering — System Life Cycle Processes, ISO/IEC

References - 3 ISO/IEC 15288: 2002, Systems Engineering — System Life Cycle Processes, ISO/IEC JTC 1/SC 7, 2002. ISO/IEC 19760: 2003, Systems Engineering – A Guide for the application of ISO/IEC 15288 System Life Cycle Processes, ISO/IEC JTC 1/SC 7, 2003. [Singh 97] Raghu Singh, An Introduction to International Standards ISO/IEC 12207, Software Life Cycle Processes, 1997. Third Annual CMMI Technology Conference and Users Group– Track 2 –Tuesday, November 18, 2003, 5: 00 -5: 30 PM 54