Making Sense of Agile Dev Ops and Dev

  • Slides: 71
Download presentation
Making Sense of Agile, Dev. Ops and Dev. Sec. Ops

Making Sense of Agile, Dev. Ops and Dev. Sec. Ops

Agile Basics 2

Agile Basics 2

Quiz of Agile Terms 3

Quiz of Agile Terms 3

Scrum • An iterative project framework within Agile Let’s talk terminology Scrum Master •

Scrum • An iterative project framework within Agile Let’s talk terminology Scrum Master • Certified Scrum Masters (CSMs) help project teams properly use Scrum Product Owner (PO) • Product Owner represents the voice of the stakeholder and holds the vision of the outcomes on their behalf. 4

Agile is an iterative approach to project management and software development 5

Agile is an iterative approach to project management and software development 5

What is Agile Software Development (ASD)? An iterative and incremental (evolutionary) approach to software

What is Agile Software Development (ASD)? An iterative and incremental (evolutionary) approach to software development which is performed in a highly collaborative manner by self-organizing teams Sprint 1 Sprint 2 Sprint 3 6

February 2001: The Lodge at Snowbird Ski Resort 7

February 2001: The Lodge at Snowbird Ski Resort 7

Twelve Principles Customer satisfaction by early and continuous delivery of valuable software Welcome changing

Twelve Principles Customer satisfaction by early and continuous delivery of valuable software Welcome changing requirements, even in late development Working software is delivered frequently (weeks rather than months) Close, daily cooperation between businesspeople and developers Projects are built around motivated individuals, who should be trusted Face-to-face conversation is the best form of communication (colocation) Working software is the primary 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 Best architectures, requirements, and designs emerge from self-organizing teams Regularly, the team reflects on how to become more effective, and adjusts accordingly 8

Values of Agile http: //danielcoding. net/scrum-part-1 -agile-manifesto/ 9

Values of Agile http: //danielcoding. net/scrum-part-1 -agile-manifesto/ 9

What Agile is not 10

What Agile is not 10

Sprint • The time boxed unit of development in Scrum Let’s talk terminology Sprint

Sprint • The time boxed unit of development in Scrum Let’s talk terminology Sprint Backlog • This is a subset of the Product Backlog from which the development team prioritizes Product Backlog • The known list of the user stories, outcomes, requirements, tasks, and bug fixes that remain to be completed for the project. 11

What is Scrum? https: //www. youtube. com/watch? v=TRc. Rey. RYIMg Scrum Alliance What is

What is Scrum? https: //www. youtube. com/watch? v=TRc. Rey. RYIMg Scrum Alliance What is Scrum? 12

Waterfall Methodology 13

Waterfall Methodology 13

The Agile framework used in the Scrum methodology 14

The Agile framework used in the Scrum methodology 14

15

15

The difference between Scrum and Waterfall WATERFALL Requirements 444 Documentation: • System requirements •

The difference between Scrum and Waterfall WATERFALL Requirements 444 Documentation: • System requirements • Architecture • Software requirements • Models • Schema • Business rules Design Implementation Unverified system Test System Installation Maintenance 16

Kanban Methodology https: //www. youtube. com/watch? v=R 8 d. YLb. Ji. TUE 17

Kanban Methodology https: //www. youtube. com/watch? v=R 8 d. YLb. Ji. TUE 17

Extreme Programming (XP) 18

Extreme Programming (XP) 18

Test Driven Development (TDD) 19

Test Driven Development (TDD) 19

Dev. Ops 20

Dev. Ops 20

Development Operations 21 21

Development Operations 21 21

 Developers All the people involved in developing the product` Systems administrators Operations staff

Developers All the people involved in developing the product` Systems administrators Operations staff Release and Network Engineers 22 22

Continuous Integration (CI) Continuous Delivery 23 23

Continuous Integration (CI) Continuous Delivery 23 23

Big Bang vs. Continuous Integration 24

Big Bang vs. Continuous Integration 24

25 25 https: //www. bmc. com/blogs/continuous-delivery-continuous-deployment-continuous-integration-whats-difference/

25 25 https: //www. bmc. com/blogs/continuous-delivery-continuous-deployment-continuous-integration-whats-difference/

Dev. Sec. Ops 26

Dev. Sec. Ops 26

Development Application Delivery Operations Security 27

Development Application Delivery Operations Security 27

28

28

29

29

Dev. Sec. Ops 30 https: //www. bmc. com/blogs/continuous-delivery-continuous-deployment-continuous-integration-whats-difference/

Dev. Sec. Ops 30 https: //www. bmc. com/blogs/continuous-delivery-continuous-deployment-continuous-integration-whats-difference/

It’s all about Dev. Sec. Ops 31

It’s all about Dev. Sec. Ops 31

Cloud Architecture 32

Cloud Architecture 32

PLAN & DEVELOP Do. D Enterprise Dev. Sec. Ops Technology Stack (Exemplar) DEPLOY &

PLAN & DEVELOP Do. D Enterprise Dev. Sec. Ops Technology Stack (Exemplar) DEPLOY & OPERATE BUILD TEST “Continuous Integration & Continuous Delivery” Orchestration MONITOR SECURE Container and Container Management SCALE STORE ARTIFACTS 33

Cloud One • Infrastructure • Baked-in security • Certified provider • Authority to Operate

Cloud One • Infrastructure • Baked-in security • Certified provider • Authority to Operate (ATO) • Compute/storage Platform One by Level. UP: • Dev. Sec. Ops/Software Factory • Baked-in security • Deployment and/or maintenance • CI/CD pipeline with a Continuous ATO (c-ATO) 34

Infrastructure as a Service (Iaa. S) Infrastructure as a service (Iaa. S) is a

Infrastructure as a Service (Iaa. S) Infrastructure as a service (Iaa. S) is a form of cloud computing that provides virtualized computing resources over the internet. Iaa. S is one of the three main categories of cloud computing services, alongside software as a service (Saa. S) and platform as a service (Paa. S). 35

Pulling it all together

Pulling it all together

Basic Scrum 37

Basic Scrum 37

Sprint Planning Meeting A meeting between the Product Owner and Scrum Team, where the

Sprint Planning Meeting A meeting between the Product Owner and Scrum Team, where the PO chooses user stories for the Sprint Backlog. Let’s talk terminology Backlog refinement • Formerly backlog grooming, when the product owner and Scrum team review the backlog Daily Check-in / Daily Stand-up / Daily Scrum • The daily short time-boxed meeting (usually 15 minutes) in which the scrum team answers the following questions: “What did I accomplish yesterday? ”, “What will I do today? ”, “Do I have any blockers impeding my progress? ”

The Scrum Master is the most important person in making Scrum work 39 39

The Scrum Master is the most important person in making Scrum work 39 39

There are many stakeholders in Scrum • Customers • Key decision-makers in your organization

There are many stakeholders in Scrum • Customers • Key decision-makers in your organization • Project sponsors • Colleagues who work with and understand your customers • People from each part of the business needed to deliver the product • Professional worrywarts like legal • External parties such as donors or regulators 40 40

Definition of Done • A clear list of tasks or requirements that must be

Definition of Done • A clear list of tasks or requirements that must be completed before an item can be called done. Let’s talk terminology Epic • A big chunk of work that has one common objective User Story One or two sentences in everyday language that captures the who, what and why of an Independent, Negotiable, Valuable, Estimable, Small, Testable

What are we going to build? Requirements 42 42

What are we going to build? Requirements 42 42

Requirements to Backlog Enterprise Level Epics Solutions Level System Level Capabilities Features Stories Features

Requirements to Backlog Enterprise Level Epics Solutions Level System Level Capabilities Features Stories Features Stories Backlog Priority Stories 43 25

Aircraft: • Target 1. 5 hours Missile: Reach target in 30 Requirement: What do

Aircraft: • Target 1. 5 hours Missile: Reach target in 30 Requirement: What do you want to do? Software: • Requirements. Manned and Drone Flight Control Software: Req Missile Comp: Tradeoff-D, W, T Comp: • Tradeoffs: Co-efficient of drag, weight, thrust Flight Control Computer: Prescribed accuracy Computer: • Prescribed missile accuracy 44 44

Definition of Done 45

Definition of Done 45

 • Agile ceremonies completed correctly • Roles defined and filled • Integration of

• Agile ceremonies completed correctly • Roles defined and filled • Integration of team members • Project velocity • Project burndown • Percentage of story points completed • Training participation • Dev. Sec. Ops metrics, deployment frequency, test results Cost • Testing results: % Pass/Fail • Number of defects found: • Number of customer support requests • Percentage of automated test coverage Process/Performance • Roadmap • Product Backlog • Sprint • Release Quality Measures Delivery Progress Am I making progress? • Total work committed by sprint • Actual work completed against sprint plan • Total hours planned per user story • Actual work completed against user story plan 46 6

Writing Backlog User Stories 1. As a [role], I can [feature] so that [reason]

Writing Backlog User Stories 1. As a [role], I can [feature] so that [reason] As an account owner, I can check my balance online so that I can keep a daily balance 24 hours a day. 2. As a [role], I want [feature] because [reason] As an account owner, I want to check my balance online because I want to keep a daily balance 24 hours a day. 3. As a [role], I can [feature] As an account owner, I can check my balance online. 47 47

Example of Product Backlog for New Payroll System Task ID Story Estimate Priority 5

Example of Product Backlog for New Payroll System Task ID Story Estimate Priority 5 1 4 2 3 As a user, I want to enter my work hours so I can make sure I get paid on time As an administrator, I want to approve timesheets so employees get paid As a user, I want to log in to the system so I can perform payroll functions 4 3 1 As a user, I want to log off of the system so no one can enter erroneous information in my account 4 4 10 5 7 6 4 2 6 5 As an administrator, I want to run consolidated payroll reports so I can provide a weekly status to senior management As an administrator, I want the ability to create new accounts so we can add employees after they’re hired 48

49

49

50

50

Software Factories Kessel Run Kobayashi Maru BESPIN Ski. Camp Space Camp Sonicube Tron Rogue

Software Factories Kessel Run Kobayashi Maru BESPIN Ski. Camp Space Camp Sonicube Tron Rogue Blue Level Up Mad Hatter Maintenance Depot 51 1

DEPLOY & OPERATE MONITOR SCALE 52

DEPLOY & OPERATE MONITOR SCALE 52

Definition of Ready/Definition of Done 53

Definition of Ready/Definition of Done 53

Artifacts • Use Cases • Source Code • Diagrams • Images • Software documents

Artifacts • Use Cases • Source Code • Diagrams • Images • Software documents • Meeting Notes • Risk Assessments • Prototypes • Test Output • The compiled application 54

Let’s talk terminology Sprint Review/Demo A time-boxed meeting in which the completed work delivered

Let’s talk terminology Sprint Review/Demo A time-boxed meeting in which the completed work delivered in a sprint is demonstrated Sprint Retrospective A time-boxed meeting where the past sprint is evaluated, and improvements are identified

There will be changes… Contracting RFP Metrics Scrum Team Integration Velocity Definition of Done

There will be changes… Contracting RFP Metrics Scrum Team Integration Velocity Definition of Done Sprints Continuous Deployment Lifecycle Management Backlogs 56

Contracting Structure Changes Multiple programs Single value stream By program task completion Waterfall Program

Contracting Structure Changes Multiple programs Single value stream By program task completion Waterfall Program Releases Agile/Factory Cadenced releases Significant organizational and cultural change required 57

What Agile methodology should I use? PROJECT CHARACTERISTICS SPONSOR CHARACTERISTICS AGILE AWARENESS AND ACCEPTANCE

What Agile methodology should I use? PROJECT CHARACTERISTICS SPONSOR CHARACTERISTICS AGILE AWARENESS AND ACCEPTANCE 58 12

59

59

Traditional to Agile Alignment Source: Contracting Considerations for Agile Solutions (18 November 2019) 60

Traditional to Agile Alignment Source: Contracting Considerations for Agile Solutions (18 November 2019) 60 7

Culture is very important Explicit Processes Persistent Rituals Team Productivity Implicit Behaviors Rewards and

Culture is very important Explicit Processes Persistent Rituals Team Productivity Implicit Behaviors Rewards and Celebrations 61

Agile Adoption Challenges • Prevailing philosophy at odds with Agile • Inadequate experience with

Agile Adoption Challenges • Prevailing philosophy at odds with Agile • Inadequate experience with Agile approaches • Lack of management support • Pressure to follow Legacy systems and processes 62

Strategy is key! • Executive training: high level and wordy • Spread the word:

Strategy is key! • Executive training: high level and wordy • Spread the word: high level and wordy • Pick a one highly functional group or team to train and implement (Pilot) • Agile Coach is a must • Communicate progress and success • Training, training • Start small…one function, matrixed, Scrum • Planning should include entire Team • Lifecycle integration • Praise, communicate success 63

Software Acquisition Pathway Interim Policy and Procedures Web-based Guides: SW Pathway Website 6 OVERVIEW

Software Acquisition Pathway Interim Policy and Procedures Web-based Guides: SW Pathway Website 6 OVERVIEW 64

Proposed ASD courses Agile Management Courses (2020 -2021) *Agile S/W Acquisition Project Management Introduction

Proposed ASD courses Agile Management Courses (2020 -2021) *Agile S/W Acquisition Project Management Introduction Courses ASD Overview Webinar June 2020 *Notional Agile Software Development (cross functional) Fall 2020 *Agile S/W Acquisition Contracting *Agile S/W Scaled Development *Agile S/W Budgeting Technical Courses (2020 -2021) *ASD and Systems Engineering *Continuous Integration and Continuous Deployment *Dev. Sec. Ops Applied 65

To thrive, today’s organizations of any size or purpose must grow within the new

To thrive, today’s organizations of any size or purpose must grow within the new normal: we are now living a much more Agile world 66

Let’s talk terminology Backlog A ledger of Agile requirements written mostly in the form

Let’s talk terminology Backlog A ledger of Agile requirements written mostly in the form of user stories and epics. Backlog refinement Formerly backlog grooming, when the product owner and Scrum team review the backlog Daily Check-in / Daily Stand-up / Daily Scrum The daily short time-boxed meeting (usually 15 minutes) in which the scrum team answers the following questions: “What did I accomplish yesterday? ”, “What will I do today? ”, “Do I have any blockers impeding my progress? ” Definition of Done A shared and understood definition of the activities that must be completed for a given user story to be considered complete. Epic A big chunk of work that has one common objective

Let’s talk terminology Minimum Viable Product (MVP) An Agile concept that refers to the

Let’s talk terminology Minimum Viable Product (MVP) An Agile concept that refers to the first version of a product that provides value, data, and learning for the users. Product Backlog The known list of the user stories, outcomes, requirements, tasks, and bug fixes that remain to be completed for the project Product Owner (PO) Product Owner represents the voice of the stakeholder and holds the vision of the outcomes on their behalf Release The core element of the program structure, guiding how frequently the program delivers capabilities to the end users Scrum An iterative project framework within Agile Scrum Master Certified Scrum Masters (CSMs) help project teams properly use Scrum 68

Let’s talk terminology Sprint The time boxed unit of development in Scrum Sprint Backlog

Let’s talk terminology Sprint The time boxed unit of development in Scrum Sprint Backlog This is a subset of the Product Backlog from which the development team prioritizes Sprint Planning Meeting A meeting between the Product Owner and Scrum Team, where the PO chooses user stories for the Sprint Backlog Sprint Review/Demo A time-boxed meeting in which the completed work delivered in a sprint is demonstrated Sprint Retrospective A time-boxed meeting where the past sprint is evaluated, and improvements are identified Story Points A unit of measure to determine the size or amount of work a development team needs in order to complete a user story 69

Let’s talk terminology Sprint Planning Meeting A meeting between the Product Owner and Scrum

Let’s talk terminology Sprint Planning Meeting A meeting between the Product Owner and Scrum Team, where the PO chooses user stories for the Sprint Backlog Sprint Review/Demo A time-boxed meeting in which the completed work delivered in a sprint is demonstrated Sprint Retrospective A time-boxed meeting where the past sprint is evaluated, and improvements are identified Story Points A unit of measure to determine the size or amount of work a development team needs in order to complete a user story. 70

Let’s talk terminology Test-Driven Development (TDD) A practice that involves developing test cases and

Let’s talk terminology Test-Driven Development (TDD) A practice that involves developing test cases and test scripts before developing the functioning code User Story The smallest unit of requirements written from the users’ perspective on how they will use the software One or two sentences in everyday language that captures the who, what and why of an Independent, Negotiable, Valuable, Estimable, Small, Testable (INVEST) requirement: e. g. , “As a <role>, I want to <goal>, so that <benefit>” Velocity The measure of the amount of work completed in a given sprint for a given Agile team 71