Upload
bartholomew-johnston
View
215
Download
1
Embed Size (px)
Citation preview
© 2014 The MITRE Corporation. All rights reserved.
S E D C 2 0 1 4
A p r i l 4 , 2 0 1 4
N a d y a S u b o w o
Towards Agile Systems Engineering for the National Airspace System
The contents of this document reflect the views of the author and The MITRE Corporation and do not necessarily reflect the views of the Federal Aviation Administration (FAA) or the Department of Transportation (DOT). Neither the FAA nor the DOT makes any warranty or guarantee, expressed or implied, concerning the content or accuracy of these views.
Approved for Public Release; Distribution Unlimited. 14-0890
| 2 |
Outline
Why do we need Agile? Background
– Next Generation Air Transportation Vision
– Acquisition Management System Motivation and Scope Agile Systems Engineering Framework Agile System Design Framework Stakeholder Analysis and Impact Conclusion Next Steps
© 2014 The MITRE Corporation. All rights reserved.
| 3 |
© 2014 The MITRE Corporation. All rights reserved.
Why Do We Need Agile?
Information Technology is a large part of today’s enterprise infrastructure
Defense Science Board Task Force [1] found that large information systems take about 91 months to field from conceptual design to deployment
– Conventional acquisition process does not accommodate systems that require any hardware/software updates and changes in the operational requirements
Statutory restrictions have risen due to lack of confidence in the execution of such program, resulting in increased program scrutiny and budgetary actions (e.g. funding cuts)
| 4 |
Federal Aviation Administration Vision
© 2014 The MITRE Corporation. All rights reserved. http://www.jpdo.gov/library/20090521AllHands/20090521_Enterprise_Architecture_Presentation_Jay_Merkle_v2.pdf
| 5 |
Acquisition Management Process
© 2014 The MITRE Corporation. All rights reserved.
Where does Systems Engineering fit in?
Federal Aviation Administration. (2006). National Airspace System System Engineering Manual v3.1.
| 6 |
Motivation & Scope
The Federal Aviation Administration (FAA) utilizes traditional waterfall approach during Solution Implementation
How can the FAA leverage emerging agile practices to deliver usable NextGen operational capabilities to the aviation community?
© 2014 The MITRE Corporation. All rights reserved.
FAA Lifecycle Management Process Flowchart – Systems Engineering
Concept & Requirements
Definition
Investment Analysis Solution Implementation
Support concept and
Requirements Defintiion
Support Initial
Investment Analysis
Support Final Investment
Analysis
Define System
Architectural Design
Analyze System Requirements
Develop System Architectural
Design
Develop System
Detailed Design
Develop and Test Software
Code
Integrate Software and
Conduct Design Qualification Tests
| 7 |
Agile Systems Engineering Framework
Adopt agile principles Solution Implementation of the AMS process
A single release is comprised of several iterations, adapting to any technical changes and creating a usable system for the end user
Use in design of non-safety-critical systems
© 2014 The MITRE Corporation. All rights reserved.
Agile Iteration #1
Concept Definition
Requirements Analysis
System Functional Design
Implementation
Verification
Deployment
| 8 |
Integrated Technical Planning
Process that encapsulates the upfront program planning work, defining the program’s goals and the goals for each iteration and associated release
Agile Process
– Macro vs. Micro view
– Iteration address high priority and high risk operational features
– Release represents a fully integrated and usable capability
– Continuous user feedback from stakeholders Evidence Based Framework
The Agile Manifesto states that the “…highest priority of a program is to satisfy the customer through early and continuous delivery…” [2]
© 2014 The MITRE Corporation. All rights reserved.
Iteration # n
Integrated Technical Planning
Concept Development
Requirements Analysis
Functional Design
Implementation Verification Deployment
| 9 |
Concept Development
Define the mission needs and capture the primary operational functions and requirements
Agile Processes
– Establish enterprise understanding of the mission need and the program’s architecture and objectives to ensure alignment Defer any detailed design decisions until sufficient information is
available by fostering a collaborative design environment
– Open architecture enables rapid responses and asynchronous upgrades
© 2014 The MITRE Corporation. All rights reserved.
Iteration # n
Integrated Technical Planning
Concept Development
Requirements Analysis
Functional Design
Implementation Verification Deployment
| 10 |
Requirements Analysis
Output a set of known system functions, system requirements, and measures of performance (acceptance criteria) based on mission need and additional technical needs from Specialty Engineering
Agile Process
– User stories to define the operational needs and system requirements
– Backlog of user stories
– Prioritization of user stories based on risk, need, and/or complexity User stories for non-functional requirements should be considered as
high priority due to its complexity and may require multiple iterations
The Agile Manifesto stresses the importance of welcoming requirements changes, even if it is late in the development [2]
© 2014 The MITRE Corporation. All rights reserved.
Iteration # n
Integrated Technical Planning
Concept Development
Requirements Analysis
Functional Design
Implementation Verification Deployment
| 11 |
Functional Design
Define an architectural solution that addresses the stakeholder’s needs and the operational
Agile Process
– The first iteration should define the enterprise level concept and architecture
– Iterations to refine the enterprise physical architecture
– All internal and external interactions captured as interface requirements in the requirement’s Backlog for future iterations
© 2014 The MITRE Corporation. All rights reserved.
Iteration # n
Integrated Technical Planning
Concept Development
Requirements Analysis
Functional Design
Implementation Verification Deployment
| 12 |
Agile System Design Framework
System design is based on fulfilling an operational need
– What happens when the system becomes too large and costly for any minor requirements change or technical upgrades?
Desirable to have system components that can be rapidly modified without repeating the entire system design process
© 2014 The MITRE Corporation. All rights reserved.
ReconfigurableFlexible
Agile System Design enables rapid adaptation change from one operating condition to another after initial deployment
– Use in small technical, non-safety-critical systems
– Benefits come from ability to hedge against an uncertain future
– Balance between design flexibility and life cycle cost, including investment costs and cost for switching operations
Reusable Scalable
| 13 |
NextGen Stakeholders
A challenge in systems engineering is balancing disparate stakeholder needs
© 2014 The MITRE Corporation. All rights reserved.
Who is a key enablerfor agile?
Who may present a Challenge for adopting
agile?
| 14 |
POET Analysis and Impact
© 2014 The MITRE Corporation. All rights reserved.
OperationalPolitical
Economic Technical
Many stakeholders including:
Development Contractors
Joint Resource Council (JRC)
Bargaining Units
FAA Organizational Structure
Oversight Committees (GAO, IG)
Congress
Procedures, rulemaking, etc.
Aircraft Standards – Certification and Equipage Mandates – standards implementation
Air Carriers & General Aviation
Airports/Airport Authority
Acquisition Management System and Systems Engineering Process
Information Systems Security Managers
Safety systems categorization
Technology availability and maturity
DOT Budget and FAA Appropriation
Investment and maintenance costs
Program Technical Staffing Resources
*Legend: Red represents strong program influence
| 15 |
How Can Agile be Beneficial?
Technical availability and maturity may be mitigated by an agile systems engineering or agile system design
– Agile system design - smaller technical, non-safety critical systems
– Agile systems engineering - joint effort for non-safety critical system/service design and implementation
The FAA can increase USER confidence by incorporating them early and often into the design and requirements process
Agile allows the FAA to focus on building and delivering incremental value to the end users in a rapid manner
– Planning for a release incorporates program risks, operational priorities, cost and schedule constraints
© 2014 The MITRE Corporation. All rights reserved.
| 16 |
Next Steps
Validate the Agile Systems Engineering and Agile System Design frameworks through a use case study with non-safety-critical NextGen programs
Identify quantifiable and qualitative metrics that show the benefits of an agile engineering approach
© 2014 The MITRE Corporation. All rights reserved.
| 17 |
Questions?
Nadya Subowo
© 2014 The MITRE Corporation. All rights reserved.
| 18 |
References
[1] Force, Defense Science Board Task. (2009). Department of Defense Policies and Procedures for the Acquisition of Information Technology (T. Office of the Under Secretary of Defense For Acquisition, and Logistics, Trans.) (pp. 109). Washington, D.C. 20301-3140.
[2] “Agile Manifesto.” Manifesto for Agile Software Development. http://www.agilemanifesto.org/
© 2014 The MITRE Corporation. All rights reserved.
| 20 |
Agile vs. Waterfall
The following definitions characterize agile as the following:
– Agile is an effective response to an opportunity and problem within the construct of the mission, where effective response is defined as timely, affordable, predictable (quality), and comprehensive [3]
– Agility applies memory and history to adjust to new environments, react and adapt, take advantage of unexpected opportunities, and update the experience base for the future [4]
– A shift from plan-driven to value-driven software development
© 2014 The MITRE Corporation. All rights reserved.