CMMI Level 5 in Towed Artillery Software Development



Similar documents
Implementing Measurement and Risk Management in CMMI

ACC-NJ Small Business Overview

The purpose of Capacity and Availability Management (CAM) is to plan and monitor the effective provision of resources to support service requirements.

Contrasting CMMI and the PMBOK. CMMI Technology Conference & User Group November 2005

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.

CMMI KEY PROCESS AREAS

MKS Integrity & CMMI. July, 2007

Darshan Institute of Engineering & Technology Unit : 7

Quality Systems Frameworks. SE 350 Software Process & Product Quality 1

Future of CMM and Quality Improvement. Roy Ko Hong Kong Productivity Council

You Want to Use Scrum, You are Told to Use CMMI

The Configuration Management process area involves the following:

Synergism of the CMMI Development and Services Constellations in a Hybrid Organization

Interpretation and lesson learned from High Maturity Implementation of CMMI-SVC

Extending CMMI Level 4/5 Organizational Metrics Beyond Software Development

A comprehensive strategy for successful data center consolidation

CGI FEDERAL CMMI HIGH MATURITY IMPLEMENTATION LESSONS LEARNED

Capability Maturity Model Integrated (CMMI)

Product sheet 8 p - Carl-Gustaf - eng - v. 3 sep 14

CMMI: Specific Goals and Practices

Measurement Strategies in the CMMI

Distributed and Outsourced Software Engineering. The CMMI Model. Peter Kolb. Software Engineering

Software Quality Management

[project.headway] Integrating Project HEADWAY And CMMI

A Report on The Capability Maturity Model

IA Metrics Why And How To Measure Goodness Of Information Assurance

CMMI and IBM Rational Unified Process

360 Degree Leadership Competencies and Questions

CAPABILITY MATURITY MODEL INTEGRATION

Capability Maturity Model Integration (CMMI SM ) Fundamentals

EASPI EASPI. The Integrated CMMI-based Improvement Framework for Test and Evaluation. Jeffrey L. Dutton Principal Consultant

West Point Negotiation Project. ADRP 6-22 (Army Leadership) Negotiation Content

Managing Commercial-Off-the- Shelf (COTS) Integration for High Integrity Systems: How Far Have We Come? Problems and Solutions in 2003

Business Continuity Position Description

Fundamentals of Measurements

Camber Quality Assurance (QA) Approach

Supporting the CMMI Metrics Framework thru Level 5. Márcio. Silveira. page 1

IEEE SESC Architecture Planning Group: Action Plan

Case Study of CMMI implementation at Bank of Montreal (BMO) Financial Group

Capability Maturity Model Integration (CMMI ) Overview

Software Development Life Cycle (SDLC)

Software Configuration Management. Wingsze Seaman COMP250SA February 27, 2008

Using Lean Six Sigma to Accelerate

QUALITY MANUAL CUSTOMERS ARE AT THE CENTER OF EVERYTHING WE DO

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into

Leveraging CMMI framework for Engineering Services

CMMI 100 Success Secrets

Truly Managing a Project and Keeping Sane While Wrestling Elegantly With PMBOK, Scrum and CMMI (Together or Any Combination)

<name of project> Software Project Management Plan

How To Understand And Understand The Cmm

Aligning CMMI & ITIL. Where Am I and Which Way Do I Go? cognence, inc.

Business Systems Analyst Job Family

Software Engineering Compiled By: Roshani Ghimire Page 1

Module 1. Introduction to Software Engineering. Version 2 CSE IIT, Kharagpur

Using the Agile Methodology to Mitigate the Risks of Highly Adaptive Projects

PSM. Using CMMI To Improve Contract Management Within DCMA. Guy Mercurio, DCMA Boston, MA

Business Analysis Capability Assessment

ReMilNet Service Experience Overview

2015 Customer Success Industry Trends Report

Information Briefing and Reception. Chris Van Metre President, SCRA Applied R&D December 4, 2014

Program Lifecycle Methodology Version 1.7

CRM SUCCESS GUIDELINES

IT Governance and Managed Services Creating a win-win relationship

Applied Agile Practices for Large-scale Organizations

Using Measurement to translate Business Vision into Operational Software Strategies

An Integrated Model of ISO 9001:2000 and CMMI for ISO Registered Organizations

Exploring CMMI-ISO ISO 9001:2000 Synergy when Developing a Process Improvement Strategy

A Systematic Review of Software Process Improvement by CMMI

Change Management and Consensus Building

CMMI-Services Visao Geral & CMMI v1.3 Plans

Software Engineering. Standardization of Software Processes. Lecturer: Giuseppe Santucci

Software Process Improvement Software Business. Casper Lassenius

Best Practices for the Acquisition of COTS-Based Software Systems (CBSS): Experiences from the Space Systems Domain

ENTERPRISE RISK MANAGEMENT FRAMEWORK

Overview of how to test a. Business Continuity Plan

NCHRP Target-Setting Methods and Data

The multisourcing approach to IT consolidation

NOVEL EXAMINATION OF GUN BORE RESISTANCE ANALYSIS AND EXPERIMENTAL VALIDATION

Software Engineering. Introduction. Software Costs. Software is Expensive [Boehm] ... Columbus set sail for India. He ended up in the Bahamas...

PROGRAM MANAGER S GUIDE

ECM Rescue Recovering Failed Project - Top 10 Reasons

Process Improvement. From the Software Engineering Institute:

How to Incorporate Lessons Learned for Sustained Process Improvements

Improving Software Project Management Skills Using a Software Project Simulator

Software Safety Strategy for US Navy Gun System Acquisition Programs

Software Process Improvement CMM

Realize More Success with Software-plus-Services. Cloud-based software from Microsoft Dynamics ERP

Testing Metrics. Introduction

Engineering Standards in Support of

Consulting projects: What really matters

Leveraging Agile and CMMI for better Business Benefits Presented at HYDSPIN Mid-year Conference Jun-2014

The Capability Maturity Model for Software, Version 1.1

Improving Organizational Project Management Maturity A Siemens Case Study

Transcription:

U.S. Army Research, Development and Engineering Command CMMI Level 5 in Towed Artillery Software Development May 7, 2014 Ross D. Arnold

Bio Ross D. Arnold Towed Artillery Software Lead Mr. Ross D. Arnold has over 10 years of experience employing CMMI best practices in software development. He is currently the Towed Artillery Software Lead for the U.S. Army Armament Research, Development and Engineering Center. Mr. Arnold has led the software development efforts of several high profile, highly successful U.S. Army weapons systems. His work focuses on developing stateof-the-art software technology solutions for Fire Control applications in mortars and artillery systems. He has an undergraduate degree in Computer Science along with a Masters in Quantitative Software Engineering, and is a PhD Candidate in Systems Engineering at Stevens Institute of Technology. His research focuses on the application, measurement, and development of Systems Thinking skills across a wide variety of disciplines.

Intro Outline ARDEC Intro Intro to Artillery Brief description Examples Role of software CMMI in Towed Artillery Software Overview Examples Lessons Learned Personal Experiences Conclusion Future

Intro ARDEC U.S. Army Armament Research, Development and Engineering Center (ARDEC) Located at Picatinny Arsenal, NJ Mission: Empower, unburden, and protect the Warfighter by providing superior armaments solutions that dominate the battlefield. What does that mean? Developing advanced weapons, ammunition, and fire control systems Armament Software Engineering Center Sub-division of ARDEC Software design and development Artillery, mortars, many others CMMI level 5

Intro Artillery What is Artillery? Large-caliber guns Used on land Direct or indirect fire Infantry support How does software fit in? Fire Control Systems

Intro Fire Control What is a Fire Control System? Software & hardware that enables: Digital communications Fire missions Ballistic calculations Point and shoot Movement Purpose: Digitize manual gunnery Applied to: Towed Artillery Mortars Self-Propelled Artillery

Fire Control Systems Artillery Artillery Fire Control Systems: M119 (Towed 105mm) M777 (Towed 155mm) Portable Excalibur Fire Control System (PEFCS) Paladin (Self-propelled 155mm)

Overview CMMI in Towed Artillery Software Why is it important? Safety critical Reliability is key How is it used? Live and breathe Standard defect removal at CMMI level 5: 1 defect per 1,000 lines of code* Towed Artillery defect removal at CMMI level 5: 0 critical defects 1 non-critical defect per 30,000 lines of code Regularly field with 0 critical and <5 total defects in large software system *Jones 2012

Defect Scarcity How are defects kept so low? Specifics Highly mature process Re-appraised 3 times consecutively at CMMI level 5 Organizational support Infrastructure and management buy-in Software reuse maximized 90% software commonality between weapon systems Extensive testing using different types of tests Development Test, Unit Test, Integration Test, Dry Run Formal Quality Test, Record Formal Quality Test Constant interface between users and developers What are the details?

Team Organization Software Team Organization

Peer Reviews Code Peer Reviews LOC per Hour Formal vs. Over the Shoulder (Informal) Preliminary Data Caveats: Not a controlled experiment Data collection methods under review 400.00 350.00 300.00 250.00 Code Review LOC Per Hour 200.00 150.00 100.00 50.00 0.00 M777 Standard Avg Standard M119 Standard - SCOV M119 Standard M777 OTS Avg OTS M119 OTS

Peer Reviews Code Peer Reviews Defects per KLOC Formal vs. Over the Shoulder (Informal) Preliminary Data Caveats: Not a controlled experiment Data collection methods under review 35.00 30.00 25.00 20.00 Code Review Defects Per 1000 LOC 15.00 10.00 5.00 0.00 M777 Standard Avg Standard M119 Standard - SCOV M119 Standard M777 OTS Avg OTS M119 OTS

Personal Experiences Software Developer Experiences Challenges we encountered: Tailoring Documentation Requirements, design, code, what is needed? Effective peer reviews Avoid Death by Process Benefits we realized: High software quality Easier transitions for new personnel Reduction of human error through process controls Historical data for analysis If done correctly, saves time

Conclusion What Worked and What Didn t Worked: Organizing software process Different types of testing Code reviews Challenging but beneficial if done effectively Design for reuse as part of review Didn t work: Tendency to focus too much on process instead of product Process not always appropriately tailored Documents maintained beyond useful lifetime

Future Evolution Future Systems Thinking CMMI tied to Systems Thinking and Complexity Theory. CMMI should evolve into an approach that recognizes the software development process as a system. Big picture view AND small picture view Recognize interconnections and feedback loops Not just What processes should be used, but How to further optimize them systemically.

Questions and Contact Questions? Contact: Ross Arnold Towed Artillery Software Lead U.S. Army ARDEC (973) 724-8618 ross.arnold@us.army.mil

Backup - CMMI Tools - DAR Decision Analysis and Resolution Experiences In our experience, best used: When a choice now could have long-term effects As a communication tool To justify a decision to client To provide evidence of a logical thought process When multiple sign-offs are required Lessons Learned Not as useful on smaller items Could try a tailored approach to smaller items

Backup - CMMI Tools - CAR Causal Analysis and Resolution Experiences In our experience, best used: To resolve complex problems To detect potential hidden root causes When there are many stakeholders with differing opinions Lessons Learned When a consensus is reached, stop Do not overuse Tailored approach for smaller problems