Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering...
Transcript of Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering...
![Page 1: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/1.jpg)
Agile Development & Systems Engineering: “The Odd Couple”
December 2017
Glenn Tolentino, PhD
John Wood, PhD
Copyright © 2017 by Glenn Tolentino & John Wood. Permission granted to INCOSE to publish and use.
![Page 2: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/2.jpg)
Presentation Goals
• Define Agile Development and Systems Engineering
• Understand strengths and weaknesses of each discipline
• Describe approach to integrate the disciplines in a manner that maximizes the benefits while minimizing the weaknesses of each
2
![Page 3: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/3.jpg)
The Odd Couple
3Image source: https://resizing.flixster.com/ZvIbrWYxq0kI7w9RfsKzj59nErY=/206x305/v1.bTsxMTIwNzE1OTtqOzE3NTQ0OzEyMDA7MTUzNjsyMDQ4
![Page 4: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/4.jpg)
New Main Characters
4Image source: http://4.bp.blogspot.com/_xtBmdA2H-GE/S5hnV6qWbGI/AAAAAAAABKQ/TVGdBk2MGM8/s400/WhitonEngineer.jpg
Hat Tip – Barclay Brown
![Page 5: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/5.jpg)
What is Agile Development?According to the Agile Alliance:
Agile Software Development is an umbrella term for a set of methods and practices based on the values and principles expressed in the Agile Manifesto.
5Source: https://www.agilealliance.org/agile101/
![Page 6: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/6.jpg)
What is Systems Engineering?
According to INCOSE:
Systems Engineering is an interdisciplinary approach and means to enable the realization of successful systems. It focuses on defining customer needs and required functionality early in the development cycle, documenting requirements, then proceeding with design synthesis and system validation while considering the complete problem:
6
Operations Cost & Schedule
Performance Training & Support
Test Disposal
Manufacturing
Source: http://www.incose.org/AboutSE/WhatIsSE
![Page 7: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/7.jpg)
Project Context
7Image source: http://www.navair.navy.mil/img/uploads/PICT0080.jpg, http://www.navair.navy.mil/img/uploads/E-2D%20Advanced%20Hawkeye%205.jpg, http://www.navair.navy.mil/index.cfm?fuseaction=home.displayplatform&key=c927dd6a-12f6-41f8-9547-9c1ce41a66a5, & http://navylive.dodlive.mil/2014/07/08/naval-aviation-enterprise-10-years-of-advancing-cost-wise-readiness/
![Page 8: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/8.jpg)
Behind the Scenes…
8
Disparate Data Sources
Data Types • IETM
• Faults
• Sensor data
• AC Diagnostics
• Maintenance
• Engineering/Modeling
• Configuration/Supply/Vendor
• Mission
• Training
• Discrepancies
Collect Condition & Store Consolidate/Fuse Consume
Services • Ingest, Parse and/or
condition data
• Transform data as to
support consumers
• Identify data gaps and
notify provider
• Gap fill for missing data
if needed
• Store data in repository
Services • Transform, fuse, consolidate data to support:
• Targeted analytics
• Reporting
• Fleet, logistics, engineering and Readiness
activities
• Persist meta-data in repository
• Provide Common web portal for access to data,
analytics and tools
• Inter-widget communication
Services • Targeted analytics
• Automated alerting
• Automated reporting
• CAP activity services
• Metrics collection/distribution
• Engineering Support
• Logistics Support
• Fleet Support
Data Repository
Engineering
Logistics
Fleet Support
Reports/Alerts
Target Analytics
Common Web Portal, Inter-widget communication,
Data Services
Alerting
Analytics
Reports
Data Mining
Graphic Viewers
Text Mining
CAP Services
Metrics
In Service Support Activities
Corrective Action
![Page 9: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/9.jpg)
Old Perception of SEs
9Image source: http://www.trainsarefun.com/lirr/fresh%20pond/1929brakemanFreshPondWest.jpg & http://www.museumsyndicate.com/images/3/28897.jpg
![Page 10: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/10.jpg)
Old Perception of Agile Developers
10Image source: https://swittersb.files.wordpress.com/2011/10/locomotive-coal.jpg?w=655
![Page 11: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/11.jpg)
Appearance vs. Reality
• Appearance
• SEs appeared to be slowing down progress
• ADs appeared to be advancing efforts quickly
• Reality
• SEs were considering not only the development efforts but also the life-cycle sustainment effects
• ADs were quickly developing products without regard to life-cycle sustainment constraints
11
![Page 12: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/12.jpg)
Results?
At first…
12Image source: http://www.historyinsidepictures.com/siteimages/R57.JPG
![Page 13: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/13.jpg)
Results?
13Image source: https://upload.wikimedia.org/wikipedia/commons/1/19/Train_wreck_at_Montparnasse_1895.jpg
But then…
![Page 14: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/14.jpg)
And the SEs response…
14
![Page 15: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/15.jpg)
And the SEs response…
15
I told you so!!
(No, not really.)
![Page 16: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/16.jpg)
Why did this happen?
• Remember the definitions…
16
![Page 17: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/17.jpg)
Why did this happen?• Agile Software Development is an umbrella term for a set of methods and practices based on the values
and principles expressed in the Agile Manifesto.
• Individuals and interactions over processes and tools
• Working software over comprehensive documentation
• Customer collaboration over contract negotiation
• Responding to change over following a plan
• Systems Engineering is an interdisciplinary approach and means to enable the realization of successful systems. It focuses on defining customer needs and required functionality early in the development cycle, documenting requirements, then proceeding with design synthesis and system validation while considering the complete problem:
• Operations
• Cost & Schedule
• Performance
• Training & Support
• Test
• Disposal
• Manufacturing17
Source: https://www.agilealliance.org/agile101/ & http://www.incose.org/AboutSE/WhatIsSE
![Page 18: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/18.jpg)
Symptoms of Uncontrolled Development
• Building tools without regard to how they will be owned, maintained, governed, etc.
• Building tools without regard to operating and sustainment costs
• Building tools without regard to applicable policy (e.g., requirement for Authority to Operate on DoD networks)
• Building tools without regard to future plans (i.e., no product roadmap)
• Building tools without regard to future plans of interfaces and inherited components (e.g., end of life dates for commercial software)
• Building tools without regard to site constraints (e.g., available servers, CPUs, data storage, HVAC, power)
18
![Page 19: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/19.jpg)
How to fix?
• Engineer a collaborative environment that maximizes ADs ability to develop quickly while empowering SEs to influence design
19
![Page 20: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/20.jpg)
Key Tools
• 3-Tier Roadmap –Show the big picture
• Systems Engineering Plan – Introduce structured approach
• Change Control Board – Allow for inevitable change
• Prioritization and Task Monitoring –Visually measure progress
PLUS
• Understanding of Culture Change
20
• 3-Tier Roadmap
• Systems Engineering Plan
• Change Control Board
• Prioritization and Task Monitoring
![Page 21: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/21.jpg)
3-Tier Roadmap
21
![Page 22: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/22.jpg)
Execution Tips
• Engage key developers one-on-one, building understanding, relationships, and trust
• Use Post It exercise to capture ideas, align to timeframes, and cluster related concepts
• Ensure to capture viewpoints of other key stakeholders (e.g., sponsor, users, etc.)
22
![Page 23: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/23.jpg)
Systems Engineering Plan
23
Business Case Analysis Software Development Plan
Test Plan Test Report
Schedule Product Support Plan
![Page 24: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/24.jpg)
Execution Tips
• Avoid the appearance of Waterfall approach (the nemesis of Agile!)
• Vee model concepts are solid, but many developers equate the Vee model to waterfall approach
• Embed SEs with the development team to complete required documentation
• Remember: ADs value “working software over comprehensive documentation”
24
![Page 25: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/25.jpg)
Change Control Board
25
![Page 26: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/26.jpg)
Execution Tips
• Have ADs actively participate in change request review and approval
• Have ADs dictate the level of documentation required for them to make a decision
• Remember: ADs value “working software over comprehensive documentation”
26
![Page 27: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/27.jpg)
Prioritization and Task Monitoring
27
![Page 28: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/28.jpg)
Execution Tips
• Leverage Scrum Board style visualization tools
• Allow individual teams to define process within each state and requirements to progress to the next state (e.g., moving from “In Progress” to “Review”)
28
![Page 29: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/29.jpg)
But processes and tools are NOT enough…
29Image source: https://pontusstaunstrupdotcom.files.wordpress.com/2014/08/culture-eats-strategy-for-breakfast.png
“Culture eats
Strategy for
Breakfast”
- Peter Drucker
![Page 30: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/30.jpg)
Two Culture Change Frameworks
• Strategic Level
• John Kotter’s 8-step model
• Tactical Level
• Gleicher’s change formula
30
![Page 31: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/31.jpg)
John Kotter’s 8-step Model
31Image source: http://gtwebmarque.com/wikis/gtwm/images/8/82/Kotter.gif
![Page 32: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/32.jpg)
Gleicher’s Change Formula
32
(Dissatisfaction) (Vision) (First Steps) (Resistance to Change)
![Page 33: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/33.jpg)
Gleicher’s Change Formula(modified by John Sahlin, PhD)
33
(Number of Change Efforts)
![Page 34: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/34.jpg)
Missing Elements
34Image source: http://day-by-day.park.bz/2011/02/can-design-drive-organisational-change/
![Page 35: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/35.jpg)
Execution Tips
• Have realistic expectations
• “It’s harder than expected, takes longer than planned, and there’s usually a crisis.” – Thom Walsh, PhD
• Constantly communicate the vision
• Build momentum by taking credit for early wins
35
![Page 36: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/36.jpg)
Results?
36Image source: https://en.wikipedia.org/wiki/Golden_spike#/media/File:East_and_West_Shaking_hands_at_the_laying_of_last_rail_Union_Pacific_Railroad_-_Restoration.jpg
![Page 37: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/37.jpg)
Q&A
37
![Page 38: Agile Development & Systems Engineering€¦ · Define Agile Development and Systems Engineering ... • Individuals and interactions over processes and tools • Working software](https://reader036.fdocuments.net/reader036/viewer/2022081617/6059baca8c1ea5411222f9dd/html5/thumbnails/38.jpg)
In Conclusion
• ADs are great at developing fast
• SEs are great at seeing the big picture as well as managing both near- and long-term risks
• Get the most out of both by creating a collaborative environment that maximizes ADs ability to develop quickly while empowering SEs to influence design
• Be prepared – Culture change is hard and takes significant time
• Key tips:
• Involve ADs in the development and execution of tools (create a sense of ownership and control)
• Shift documentation burden away from ADs
• Avoid the appearance of waterfall
• Embrace appearance of agile and scrum38