Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Jim Caggy
Manager, Solutions Architecture
June 13, 2017
DevOps on AWS: Accelerating
Software Delivery with AWS
Developer Tools
https://secure.flickr.com/photos/mgifford/4525333972
Why are we
here today?
What we'll cover
What is DevOps?
The Amazon DevOps story
AWS Code Services
AWS DevOps Portfolio
Software moves
faster today
Why does DevOps matter?
30xMore Frequent
Deployments
200xShorter Lead Times
60xFewer Failures
168xFaster Recovery
What is DevOps?
What is DevOps?
• Cultural philosophies
• Practices
• Tools
DevOps Culture
• Dev & Ops coming together
• No more “silos”
• Shared responsibility
• Ownership
• Visibility and communication
DevOps Practices
• Microservices architecture
• Moving away from large “monolithic”
architectures to smaller decoupled services
DevOps Practices
• Continuous Integration
• Continuous Delivery & Deployment
DevOps Practices
• Infrastructure as Code
• Model your AWS resources using code
DevOps Practices
• Monitoring and Logging
• Track and analyze metrics and logs
• Understand real-time performance of
infrastructure and application
Reliability
Benefits of DevOps
Speed
Scale
Rapid DeliveryImproved Collaboration
Security
A look back at
development at
Amazon..
https://secure.flickr.com/photos/pixelthing/15806918992/
2001
Development transformation at Amazon: 2001-2009
2009
monolithic architecture +
hierarchical organization
Decoupled services +
2 pizza teams
Things went much
better under this
model and teams
were releasing faster
than ever, but we felt
that we could still
improve.
In 2009, we
ran a study to
find out where
inefficiencies
might still exist
We were just waiting.
WaitWrite
Code WaitBuild
Code WaitDeploy
to Test
Deploy
to
Prod
We were just waiting.
WaitWrite
Code WaitBuild
Code WaitDeploy
to Test
Deploy
to
Prod
Mins Days Mins Days Mins Days Mins
We were just waiting.
WaitWrite
Code WaitBuild
Code WaitDeploy
to Test
Deploy
to
Prod
Weeks
Mins Days Mins Days Mins Days Mins
We were just waiting.
WaitWrite
Code WaitBuild
Code WaitDeploy
to Test
Deploy
to
Prod
Weeks
Mins Days Mins Days Mins Days Mins
We built tools to
automate our software
release process
https://secure.flickr.com/photos/lindseygee/5894617854/
Automated actions and
transitions; from check-
in to production
Development benefits:
• Faster
• Safer
• Simplification &
standardization
• Visualization of the
process
Pipelines
This has continued to work out really well:
In 2014:
• Thousands of service teams across Amazon
• Building microservices
• Practicing continuous delivery
• Many environments (staging, beta, production)
50 million deploys
This has continued to work out really well:
Every year at Amazon, we perform a survey of all our
software developers. The 2014 results found only one
development tool/service could be correlated statistically
with happier developers:
Our pipelines service!
continuous delivery == happier developers!
Where do you
?
Introducing: AWS CodeStar
Quickly develop, build, and deploy applications on AWS
Start developing on AWS in minutes
Work across your team, securely
Manage software delivery easily
Choose from a variety of project templates
AWS Code Services
AWS CodePipeline AWS CodeCommit AWS CodeBuildAWS CodeDeployAWS CodeStar
AWS Code Services
Source Build Test Production
Software Release Steps:
AWS Code Services
Source Build Test Production
Software Release Steps:
AWS CodeCommit
AWS Code Services
Source Build Test Production
Software Release Steps:
AWS CodeBuild
AWS Code Services
Source Build Test Production
Third Party
Tooling
Software Release Steps:
AWS Code Services
Source Build Test Production
Software Release Steps:
AWS CodeDeploy
Source Build Test Production
Third Party
Tooling
AWS CodeCommit AWS CodeBuild AWS CodeDeploy
AWS CodePipeline
AWS Code Services
Software Release Steps:
AWS Code Services
Source Build Test Production
Third Party
Tooling
Software Release Steps:
AWS CodeCommit AWS CodeBuild AWS CodeDeploy
AWS CodePipeline
AWS CodeStar
AWS DevOps Portfolio
AWS CodeCommit
AWS CodeDeploy
AWS CodePipeline
Software Development and
Continuous Delivery Toolchain
AWS CloudFormation
AWS OpsWorks
AWS Config
Infrastructure
as Code
Amazon CloudWatch
AWS CloudTrail
Monitoring
& Logging
AWS Elastic Beanstalk
Platform
as a Service
AWS CodeBuild
AWS CodeStar
More info
Get started with AWS CodeStar at:
https://console.aws.amazon.com/codestar
Learn more at:
https://aws.amazon.com/codestar
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Michele Causey, IRS, Director of UXD
Carleton Jillson, MITRE, Principal Engineer
June 13, 2017
Improving the Taxpayer Experience
Using DevOps
OLD APPROACH
To create great experiences for taxpayers online,
IRS needed a different way of working …
 Linear product development life cycle
 Static UI designs
 No live testing with taxpayers
 One-on-one stakeholder reviews via laptop
 Technology constraints
 Hard to adapt to evolving view of user needs
 No way to test and verify design alternatives
 Risk of missed taxpayer needs and expectations
 Limited stakeholder feedback; single location
 Limited team collaboration
IMPACT OF OLD
APPROACH
… that enabled a more user-focused and
collaborative approach.
Collaborative Prototyping With IRS Labs
PROTOTYPING
Any team member can
‘spin up’ a container to
host a web application in
minutes and post a front
end prototype to a live
URL.
USER EXPERIENCE
IRS can quickly and
easily gather feedback
from stakeholders and
taxpayers.
COLLABORATION
Teams can easily and
quickly collaborate on
prototypes within their
team and with
stakeholders.
Success Stories
Accelerated time to
market for a new
service concept
through agile
collaboration among
IRS business, IT and
online orgs, and
contractors at remote
and on-site locations.
E-AUTHENTICATION
Created over 60
interface prototypes
and conducted six
remote and in-person
usability tests with 30
taxpayers over a 4-
week period.
DIRECT PAY
Improved a service
that saw double-digit
usage increases by
refining the UI with
stakeholders using
responsive, interactive
front end prototypes.
ACCOUNT
…requirements
shared by
Product
Manager and
conduct user
research.
…concept or
prototype using
HTML or off-the-
shelf tools (e.g.,
Axure).
…concept or
prototype with
product team by
uploading it to IRS
Labs and
deploying a live
version.
…concept or
prototype with
potential users in
the field wherever
web access is
available.
…high-quality
product using
feedback obtained
through taxpayer
research.
Analyze … Design … Share … Test … Produce…
Optimize product features, navigation, and designs through
user research. Share concepts and prototypes with
stakeholders and study participants using IRS Labs.
Our GoalDesigns products using
input from stakeholders
and taxpayer research
User Journey: User Experience Designer Role
…requirements,
mockups, design
patterns and code
stubs from IRS
Labs.
…and version
control working
prototype based on
requirements and
designs discussed
with Team.
…seamlessly with
stakeholders and
contractors by
sharing project
artifacts and
iterative product
builds through IRS
Labs.
…and version
control code from
a contractor or
IRS site through
GitLab within IRS
Labs.
…and un-deploy
code in IRS Labs to
show features during
weekly sprints. Test
products on browsers
taxpayers’ common
devices.
Access … Build … Collaborate … Manage … Deploy…
Build and deploy an application with a joint government and
contractor team. Manage, test, and review iterations from
government or contractor facilities using IRS Labs.
Our GoalDevelops and deploys
software releases
User Journey: Software Developer Role
IRS Labs at a Glance
STORAGE
Amazon RDS, Amazon S3, MongoDB
HOSTING
Amazon EC2, Amazon Route 53
E-MAIL
Amazon SES
AUTOMATED CODE DEPLOYMENT
Docker, Amazon ECS
VERSION CONTROL
GITLAB, Zip Upload
USER MANAGEMENT & AUTHENTICATION
LDAP
STANDARDS-BASED INTERFACES
RESTful Architecture APIs
MODERN WEB TECHNOLOGIES
nginx, Node.js, Angular, CSS
IRS Labs Architecture
Proxy
NGINXInternet
Userlab
Persona
IRS Labs Team Site
Authentication
Redis
Auth Gateway
Host
Troubadour
Prototype
Prototypes (AWS ECS)
GitLab
Amazon S3,
SES, Route 53
MongoDBLDAP
Amazon RDS
Relational Database
Stevedore
Docker Image Builder
Amazon ECR
Docker Image Store
Matador
Container deployment Mgmt
Services
Legend
AWS Service
Other App/Service
Thank You!
Michele.l.causey@irs.gov
carleton@mitre.org

More Related Content

DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS Public Sector Summit 2017

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Jim Caggy Manager, Solutions Architecture June 13, 2017 DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools
  • 3. What we'll cover What is DevOps? The Amazon DevOps story AWS Code Services AWS DevOps Portfolio
  • 5. Why does DevOps matter? 30xMore Frequent Deployments 200xShorter Lead Times 60xFewer Failures 168xFaster Recovery
  • 7. What is DevOps? • Cultural philosophies • Practices • Tools
  • 8. DevOps Culture • Dev & Ops coming together • No more “silos” • Shared responsibility • Ownership • Visibility and communication
  • 9. DevOps Practices • Microservices architecture • Moving away from large “monolithic” architectures to smaller decoupled services
  • 10. DevOps Practices • Continuous Integration • Continuous Delivery & Deployment
  • 11. DevOps Practices • Infrastructure as Code • Model your AWS resources using code
  • 12. DevOps Practices • Monitoring and Logging • Track and analyze metrics and logs • Understand real-time performance of infrastructure and application
  • 13. Reliability Benefits of DevOps Speed Scale Rapid DeliveryImproved Collaboration Security
  • 14. A look back at development at Amazon.. https://secure.flickr.com/photos/pixelthing/15806918992/
  • 15. 2001 Development transformation at Amazon: 2001-2009 2009 monolithic architecture + hierarchical organization Decoupled services + 2 pizza teams
  • 16. Things went much better under this model and teams were releasing faster than ever, but we felt that we could still improve.
  • 17. In 2009, we ran a study to find out where inefficiencies might still exist
  • 18. We were just waiting. WaitWrite Code WaitBuild Code WaitDeploy to Test Deploy to Prod
  • 19. We were just waiting. WaitWrite Code WaitBuild Code WaitDeploy to Test Deploy to Prod Mins Days Mins Days Mins Days Mins
  • 20. We were just waiting. WaitWrite Code WaitBuild Code WaitDeploy to Test Deploy to Prod Weeks Mins Days Mins Days Mins Days Mins
  • 21. We were just waiting. WaitWrite Code WaitBuild Code WaitDeploy to Test Deploy to Prod Weeks Mins Days Mins Days Mins Days Mins
  • 22. We built tools to automate our software release process https://secure.flickr.com/photos/lindseygee/5894617854/
  • 23. Automated actions and transitions; from check- in to production Development benefits: • Faster • Safer • Simplification & standardization • Visualization of the process Pipelines
  • 24. This has continued to work out really well: In 2014: • Thousands of service teams across Amazon • Building microservices • Practicing continuous delivery • Many environments (staging, beta, production) 50 million deploys
  • 25. This has continued to work out really well: Every year at Amazon, we perform a survey of all our software developers. The 2014 results found only one development tool/service could be correlated statistically with happier developers: Our pipelines service! continuous delivery == happier developers!
  • 27. Introducing: AWS CodeStar Quickly develop, build, and deploy applications on AWS Start developing on AWS in minutes Work across your team, securely Manage software delivery easily Choose from a variety of project templates
  • 28. AWS Code Services AWS CodePipeline AWS CodeCommit AWS CodeBuildAWS CodeDeployAWS CodeStar
  • 29. AWS Code Services Source Build Test Production Software Release Steps:
  • 30. AWS Code Services Source Build Test Production Software Release Steps: AWS CodeCommit
  • 31. AWS Code Services Source Build Test Production Software Release Steps: AWS CodeBuild
  • 32. AWS Code Services Source Build Test Production Third Party Tooling Software Release Steps:
  • 33. AWS Code Services Source Build Test Production Software Release Steps: AWS CodeDeploy
  • 34. Source Build Test Production Third Party Tooling AWS CodeCommit AWS CodeBuild AWS CodeDeploy AWS CodePipeline AWS Code Services Software Release Steps:
  • 35. AWS Code Services Source Build Test Production Third Party Tooling Software Release Steps: AWS CodeCommit AWS CodeBuild AWS CodeDeploy AWS CodePipeline AWS CodeStar
  • 36. AWS DevOps Portfolio AWS CodeCommit AWS CodeDeploy AWS CodePipeline Software Development and Continuous Delivery Toolchain AWS CloudFormation AWS OpsWorks AWS Config Infrastructure as Code Amazon CloudWatch AWS CloudTrail Monitoring & Logging AWS Elastic Beanstalk Platform as a Service AWS CodeBuild AWS CodeStar
  • 37. More info Get started with AWS CodeStar at: https://console.aws.amazon.com/codestar Learn more at: https://aws.amazon.com/codestar
  • 38. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Michele Causey, IRS, Director of UXD Carleton Jillson, MITRE, Principal Engineer June 13, 2017 Improving the Taxpayer Experience Using DevOps
  • 39. OLD APPROACH To create great experiences for taxpayers online, IRS needed a different way of working …  Linear product development life cycle  Static UI designs  No live testing with taxpayers  One-on-one stakeholder reviews via laptop  Technology constraints
  • 40.  Hard to adapt to evolving view of user needs  No way to test and verify design alternatives  Risk of missed taxpayer needs and expectations  Limited stakeholder feedback; single location  Limited team collaboration IMPACT OF OLD APPROACH … that enabled a more user-focused and collaborative approach.
  • 41. Collaborative Prototyping With IRS Labs PROTOTYPING Any team member can ‘spin up’ a container to host a web application in minutes and post a front end prototype to a live URL. USER EXPERIENCE IRS can quickly and easily gather feedback from stakeholders and taxpayers. COLLABORATION Teams can easily and quickly collaborate on prototypes within their team and with stakeholders.
  • 42. Success Stories Accelerated time to market for a new service concept through agile collaboration among IRS business, IT and online orgs, and contractors at remote and on-site locations. E-AUTHENTICATION Created over 60 interface prototypes and conducted six remote and in-person usability tests with 30 taxpayers over a 4- week period. DIRECT PAY Improved a service that saw double-digit usage increases by refining the UI with stakeholders using responsive, interactive front end prototypes. ACCOUNT
  • 43. …requirements shared by Product Manager and conduct user research. …concept or prototype using HTML or off-the- shelf tools (e.g., Axure). …concept or prototype with product team by uploading it to IRS Labs and deploying a live version. …concept or prototype with potential users in the field wherever web access is available. …high-quality product using feedback obtained through taxpayer research. Analyze … Design … Share … Test … Produce… Optimize product features, navigation, and designs through user research. Share concepts and prototypes with stakeholders and study participants using IRS Labs. Our GoalDesigns products using input from stakeholders and taxpayer research User Journey: User Experience Designer Role
  • 44. …requirements, mockups, design patterns and code stubs from IRS Labs. …and version control working prototype based on requirements and designs discussed with Team. …seamlessly with stakeholders and contractors by sharing project artifacts and iterative product builds through IRS Labs. …and version control code from a contractor or IRS site through GitLab within IRS Labs. …and un-deploy code in IRS Labs to show features during weekly sprints. Test products on browsers taxpayers’ common devices. Access … Build … Collaborate … Manage … Deploy… Build and deploy an application with a joint government and contractor team. Manage, test, and review iterations from government or contractor facilities using IRS Labs. Our GoalDevelops and deploys software releases User Journey: Software Developer Role
  • 45. IRS Labs at a Glance STORAGE Amazon RDS, Amazon S3, MongoDB HOSTING Amazon EC2, Amazon Route 53 E-MAIL Amazon SES AUTOMATED CODE DEPLOYMENT Docker, Amazon ECS VERSION CONTROL GITLAB, Zip Upload USER MANAGEMENT & AUTHENTICATION LDAP STANDARDS-BASED INTERFACES RESTful Architecture APIs MODERN WEB TECHNOLOGIES nginx, Node.js, Angular, CSS
  • 46. IRS Labs Architecture Proxy NGINXInternet Userlab Persona IRS Labs Team Site Authentication Redis Auth Gateway Host Troubadour Prototype Prototypes (AWS ECS) GitLab Amazon S3, SES, Route 53 MongoDBLDAP Amazon RDS Relational Database Stevedore Docker Image Builder Amazon ECR Docker Image Store Matador Container deployment Mgmt Services Legend AWS Service Other App/Service