Download presentation
Presentation is loading. Please wait.
Published byGriffin Ryan Modified over 6 years ago
1
Joonas Sirén, Technology Architect, Emerging Technologies Accenture
Accenture NordicMind DevOps Tooling Day Helsinki, Dec 7th 2016 Joonas Sirén, Technology Architect, Emerging Technologies Accenture
2
Premise DevOps at Accenture
Towards digitalization: How DevOps enabled us to make the shift from 4 releases a year to being able to deploy several times a day into production
3
What is DevOps at Accenture
Storyline Three stories What we did before (2009 – 2014) What we did in between ( ) How we do it now ( ) What is DevOps at Accenture
4
DevOps at Accenture - What we did before
1st project 2009 – 2014 Custom development: Java ~25 developers 7 test environments two system testing, three client testing, uat x 2 9 staging application servers + database & integrations 9 production application servers + database & integrations 0 automation in the beginning Manual builds until 2012 after that Jenkins Manual configuration until the bitter end Manual deployments until 2012 in system&client testing uat, staging&production still manual
5
DevOps at Accenture - What we did before
1st project 2009 – 2014: READY, SET… GO! Project ramp-up time: few months Environments all installations manual, non-repeatable tasks Ant-tasks for build process Subversion setup Developer ready to start developing Tools installations 1-2 hours Source code download 1-2,5 hours Project configuration 1-2 hours Total 4-8 hours (not including the database)!
6
DevOps at Accenture - What we did before
1st project 2009 – 2014: deployment intervals 1 build and deployment to system testing per week, 2 envs 1 deployment to client testing every two weeks, 3 envs ~ 2-5 deployments per week During the project: Builds: 52 weeks, 1 version built per week, 52 x 5 = 260 versions released Deployments: 52 weeks x 5 years x 5 deployments Total 1300 deployments in 5 years to testing + ~400 to uat, staging and production ~ 1700 DEPLOYMENTS TOTAL (MANUALLY!!) WHY?
7
DevOps at Accenture - What we did before
1st project 2009 – 2014 Because of the architecture! The MONOLITHIC ARCHITECTURE
8
DevOps at Accenture - What we did before
1st project 2009 – 2014: State on the go-live day On go-live 50+ defects 200+ un-analysed UAT findings During the next 3 years, UAT findings never came below 150 new ones replaced the old that got fixed
10
Accenture
11
DevOps uses automation techniques to optimize collaboration across development, operations and architecture, enabling faster, more predictable and more frequent deployments to market Development Operations
12
Deliver small increments Experiment frequently
Test early and often Improve continuously Automate everything Cohesive teams Strong source control Deliver small increments Experiment frequently
13
Benefits
14
Repeatable Predictable Increased Quality Lower Delivery Risk
For the project: Repeatable Predictable Increased Quality Lower Delivery Risk
15
For the client: Lower cost Fewer defects Flexibility
16
DevOps at Accenture - What we did in between
2nd project 2014 – 2016 Custom development: Java + Angular ~12 developers 6 test environments 3 uat & staging & production environments 100 % automation from the beginning Project ramp-up time 3-4 weeks New environment (when hardware available) can be setup in < 1h Developer ready to start developing Tools installations 20 minutes Source code download 5 minutes Local environment: VMs with web server, app server and database Up in 10minutes, with 1 command
17
DevOps at Accenture - What we did in between
2nd project 2014 – 2016: deployment intervals Each merge into master will trigger a build process that will run automated tests against the branch On success, the branch will be automatically deployed into integration testing environments, where automatic regression and integration tests are run On success, the version will be packaged and uploaded to artifactory, from where it can be deployed to any given environment During the project: Builds: Frontend 4000 Backend 2800 Deployments: 6000+ in 2 years Testers can initiate a deployment on demand, and test their scenarios and defects without having to wait
18
DevOps at Accenture - What we did in between
2nd project 2014 – 2016: State on the go-live day On go-live 2 defects not fixed (minor priority) 0 un-analysed UAT findings 1st Project 2nd Project 5 years 2,5 years 1700 deployments: 1300 manual, 400 automated 6000+ automatic deployments ~800 automated regression tests run 6000+ automated regression&integration tests run 50+ defects on GO-LIVE 2 defects on GO-LIVE >200 UAT findings un-analysed 0 UAT findings un-analysed 25 developers 12 developers Local env ramp-up/reset 4-8 hours (doesn’t include database) Local env ramp-up/reset 10 minutes (same setup as in production)
19
DevOps at Accenture - What we did in between
2nd project 2014 – 2016 HOW? Because of the architecture! The LIGHTWEIGHT ARCHITECTURE + DEVOPS TOOLS and PROCESSES
20
DevOps at Accenture - How we do it now
Future projects 2016 X developers X test environments Project ramp-up time < 1 week Global DevOps team will come and setup your projects infrastructure in a couple of days
21
Continuous Integration
DevOps at Accenture DevOps Platform The resources and tools support process and quality deliveries. Source Control Code Review Code Quality A-B Test Dev. Build Deploy Testing Release Cloud based hosting & access to application services through Accenture approved Cloud Platform. Cloud hosted development environment integrated to source code repository via code review server Autonomous build & testing of code submissions Continuous Integration Quality gates enforced using standardised tests against re- usable components & libraries Continuous Delivery Managed roll-out of new features – via A/B testing Continuous Deployment Docker IDE • Eclipse • X-code Git / Gerrit • Source code repository • Code branch management • Code review Jenkins • Continuous Integration • Multiplatform builds Code Analysis • Code quality • Coding standards rules • Compliance Deploy • Dev app store • Release repository • Environments Test • Component • Behavioural • Functional • Security • Performance
22
DevOps at Accenture Continuous Delivery Pipeline Architecture
23
Artefact Manager (Artifactory
DevOps at Accenture Pre-Requisites for Continuous Delivery Continuous Integration Platform Infrastructure Virtualization (Containers ) (Tools) Code Quality (Sonar) Code Review (PMD) Build (Maven) CI Tool (Jenkins) SCM (GIT) Deploy (Chef) Artefact Manager (Artifactory ) SDLC Practices Adoption • Configuration Management designed for being always ready for Production deployment − Single Branch Development − Feature Toggles • Cross Functional Teams – BAs, Developers, Testers, Operational Staff Design Practices Adoption • Micro-Services Architectures Container Based Development Based on REST, JSON standards
24
Any questions or comments, you can email me at j.siren@accenture.com
Thank you! Any questions or comments, you can me at
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.