• No results found

The Impacts Of Agile Development On The System Engineering Process

N/A
N/A
Protected

Academic year: 2021

Share "The Impacts Of Agile Development On The System Engineering Process"

Copied!
13
0
0

Loading.... (view fulltext now)

Full text

(1)

The Impacts Of Agile Development

On The System Engineering

Process

17

th

Annual Systems Engineering Conference

October 27-30, 2014

Springfield, Virginia

(2)

Discussion Topics

• Background

• What Is Agile Development

• Benefits

• Impacts on the Traditional Engineering Process

• Solutions

(3)

Background

• Driver for Change

• Cost Effective Capability Development that Meets the

Warfighter’s Needs

• Enablers

• Technology – Hardware Platforms Are Available on

Day One of the Development Effort

• Open Architecture – Standard Interfaces Simplify the

Integration of Capabilities as They Are Developed

• Commercially Available Libraries – Leverage

Commercial Industry’s Research and Development

• Agile Development – Simplify Development by

Providing Flexibility at the Detailed Implementation

Level

(4)

Agile Development

• Definition

• The Agile Manifesto is based on 12 principles:

• Customer satisfaction by rapid delivery of useful software • Welcome changing requirements, even late in development

• Working software is delivered frequently (weeks rather than months)

• Close cooperation between business people, the customer, and developers • Projects are built around motivated individuals, who should be trusted

• Face-to-face conversation is the best form of communication (co-location) • Working software is the principal measure of progress

• Sustainable development, able to maintain a constant pace • Continuous attention to technical excellence and good design

• Simplicity—the art of maximizing the amount of work not done—is essential • Self-organizing teams

• Regular adaptation to changing circumstances

Agile software development is a group of software development methods in

which requirements and solutions evolve through collaboration between

self-organizing, cross-functional teams. It promotes adaptive planning, evolutionary

development, early delivery, continuous improvement and encourages rapid

and flexible response to change.

(5)

5

System Agile/Traditional Engineering

Process Overview

Conceptual

System Design Develop/Build

Identify…Conceptual System Specification

Production Release Design

Inception Elaboration Implementation Transition

A GIL E W at e rf all Maintenance Customer Baseline Need/Opportunity Business Requirements Review (BRR) System Baseline Component / Application Baseline Design

Baseline Production Baseline

Preliminary Design Review (PDR) Critical Design Review (CDR) Test Readiness Review (TRR) Production Readiness Review (PRR) System Requirements Review (SRR) Acceptance Test Test Baseline Iterative Cycle Phase Iteration System Requirements Review (SRR) SRS IRS SDD … SRS IRS SDD … Customer Assessment

(6)

Agile Development Process

Transition Implementation Maintenance Inception Planning Requirement Definition Elaboration Req Analysis/ Feature Definition Implementation Planning Architecture Definition

Concepts and Prototypes

System Integration Acceptance Test Dev Dev Dev Dev Dev Test Test Test Test Test

Completed and Tested Software Component at the End of Each Iteration

Deliverable to the Customer without Further

Modification System Requirements Review (SRR) Initial Mapping of Requirements to Feature Sets An iteration implements one or more feature sets

(7)

Benefits of Agile Development

• Optimal Implementation

• Traditional Waterfall Defines the Implementation at CDR thereby

Potentially Constraining the S/W Developer in the Use of Commercial

Libraries or More Optimal Design Approaches

• Adaptable to Change

• The Iterative Approach Facilitates Change Late into the Development

Cycle without Impact

• Early Assessment of Product Features

• Each Iteration Provides a Completed Capability of the System that

Can Be Demonstrated to the Customer

• Continuous Testing

• Testing Is Initiated at the End of Iteration 1 Development and

Continues without Interruption through the Nth Iteration thus

Significantly Reducing the Final Integration and Acceptance Test

Time.

(8)

Impacts of Agile Development

• Functional Decomposition

• Feature Sets Represent Complete Capabilities that Once Built

Become Testable Entities and Part of the Final Delivery without Modification

• Detailed Requirement Definition

• SRS Level Requirements Defined During Development Based on Internal Interfaces, Optimal Use of Libraries, etc.

• Customer Inter-action

• Requires Commitment of Time from the Customer for Regular Involvement in the Development and Test Process

R1 R2 R10 R3 R21 R4 R5 R6 R7 R32 R9 R1 R32 R2 R7 R10 R6 R4 R9

Feature Set 1 Feature Set 2 System/Subsystem Level Requirements R1 R32 R2 R7 Iteration 1 R1.1 R1.2 R1.3 R1.4 Software Requirements Level Specification (SRS) Complete Capability Complete Capability

Feature Set 1

Implementation

Customer Involvement through Development and Test

(9)

Impacts of Agile Development

Objectives of PDR and CDR

• The following are typical objectives of a PDR:

• Ensure that all system requirements have been allocated, the requirements

are complete, and the flow down is adequate to verify system performance

• Show that the proposed design is expected to meet the functional and performance requirements

• Show sufficient maturity in the proposed design approach to proceed to final design

• Show that the design is verifiable and that the risks have been identified, characterized, and mitigated where appropriate

• The following are typical objectives of a CDR:

• Ensure that the "build-to" baseline contains detailed hardware and software

specifications that can meet functional and performance requirements

• Ensure that the design has been satisfactorily audited by production, verification, operations, and other specialty engineering organizations

• Ensure that the production processes and controls are sufficient to proceed to the fabrication stage

• Establish that planned Quality Assurance (QA) activities will establish

perceptive verification and screening processes for producing a quality product • Verify that the final design fulfills the specifications established at PDR

(10)

Issues/Concerns

• Preliminary Design Review (PDR) and Critical Design Review (CDR)

timing

• Traditional/Waterfall PDR/CDR occur before development starts • Not consistent with the Agile model

• Lack of PDR/CDR limits the customers ability to understand the design and the architecture.

• Holding PDR/CDR review after all design is done in agile would be at the end of the development cycle also

• How to communicate requirements and design to a customer that is

not present?

• Generate high-level designs, (PDR level) and review with the customer before the inception phase

• Create formal system engineering cycles and give the customer time to review/provide input

• Provide a light-weight way to show/discuss with customer (who may be remote) progress over an iteration.

(11)

Issues/Concerns

• What Documentation Needs to Be Generated and When? (IRS, IDD,

SDD, SRS, SPS)

• Build Documentation as a Part of the Development Process • Documentation Accurately Reflects that System as Built • Periodically provide requirement updates to the customer

• How Do I Get My Customer Involved in the Process?

• On-site Demonstrations

(12)

Solutions

Transition Implementation Maintenance Inception Planning Requirement Definition Elaboration Req Analysis/ Feature Definition Implementation Planning Architecture Definition Concepts and Prototypes

System Integration Acceptance Test Dev Dev Dev Dev Dev Test Test Test Test Test SE Initial Mapping of Requirements to Feature Sets Initial SRS Requirements at the Beginning or Each Iteration SE SE SE SE

Create “Living” Documentation by Updating Each Document at the End of an Iteration Resulting in the Documentation Being a True

Representation of the System

Periodic Demonstrations to Ensure Customer Satisfaction

Customer concurrence on the requirements implemented in the iteration and approval of SRS requirements for the next iteration

(13)

Summary

• Agile Development Provides a Cost Effective Means for Ensuring

Customer Expectations Are Met

• Agile Development Encourages Innovation by the Developer

• Tailoring of the Agile Development Process Can Aid the

Transition for the Traditional Waterfall to the Agile Methodology

• Creating an Initial Feature Set Baseline

• Defining an Initial Set of SRS Level Requirements at the Beginning of

Each Iteration

• Creating Traditional Documentation But at Different Points in the

Development Timeline to Reflect the Agile Development Approach

• Introducing Ways of Involving the Customer Throughout the

Development Process

References

Related documents

secara tepat waktu, memadai, jelas, akurat dan dapat diperbandingkan serta mudah diakses oleh stakeholders sesuai dengan hakny, Informasi yang harus

Recently, MPTs National Distribution & Marketing (ND&M) Team conducted a survey of all the Public Television Stations (PTV) to help track the use of Daily Download

Top, A-C, approximate section levels: Distal (A), mid-shaft (B) and proximal (C) transverse sections stained for K6 and K7. K6 is expressed in the urethral plate and basal cells of

Skills: Dodge, Fast Talk, Hide, Listen, Research, Spot, Stealth, and three of the following: Art (Photography), Brawl, Disguise, Etiquette, Firearm (any), Grapple,

In particular, research has started to investigate in-game purchase behavior in free-to-play games (both on mobile and on other platforms) by exam- ining attitudes towards

Our estimation results suggest that the landscape of international migration among rural households in Bangladesh changed substantially, and that entry barriers to

He Cried Uncle is a one-act opera scored for six voices, saxophone quartet, and percussion, and electronic media.. The percussion parts consist of crotales, temple blocks (5),

Well-designed market-based instruments such as carbon taxes and cap-and-trade systems have several advantages over non-market climate policies for the road transport