Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

AWS reinvent 2019 - Transforming to feature-driven development

675 views

Published on

When moving to Feature-Driven Development (FDD), with geographically distributed development centers, it is customary to have a dedicated light weight environment per feature-development effort and to have robust automation support for the build and deploy life cycle of each feature branch at your own will.

In this session, learn about the Feature-Driven Development transition story of a cloud-based supply chain leader that shows how AWS services helped provide a highly scalable, elastic, and cost-effective solution to facilitate on-demand Feature Development Environments supported by an independent build, deployment, and test-automation framework.

Published in: Software
  • Login to see the comments

AWS reinvent 2019 - Transforming to feature-driven development

  1. 1. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Transforming to feature-driven development Bhuvaneswari Subramani D V C 1 4 - 9 9 6 7 9 Director, Engineering Operations Infor
  2. 2. Quick Intro Bhuvaneswari Subramani (Bhuvana) Director, Engineering Operations, Infor AWS Community Hero Organizer, AWS User Group Bengaluru Currently working on Cloud Computing, DevOps &, Performance QA https://installjournal.blogspot.com
  3. 3. Agenda Feature Driven (Quality Boxed, Parallel Development) The Role of AWS Feature Test Env - Lifecycle Feature Test Env – Build & Deploy Benefits of Move to AWS
  4. 4. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  5. 5. Feature Driven (Quality Boxed) [ALPHA] (xx.3.0) (xx.3.1-r) (xx.4.0-r) (xx.4.0) [RCT] [PROD] (alpha) (prod) (rct) (weekly) [WEEKLY] (xx.3.0-r) (xx.3.1) (xx.4.0)(xx.3.0) Conventions [] = environment () = branch = code-flow = promote () = release timeline -w = weeks before major release - 7w Branching Strategy 0 w (xx.3.0)(xx.2.0)
  6. 6. Feature Driven (Quality Boxed) [ALPHA] [Feature 2] [Feature 1 ] (feat-n) (xx.3.0) (xx.3.1-r) (xx.4.0-r) (xx.4.0) [RCT] [PROD] (feat-a) (feat-b) [Feature n] (alpha) (prod) (rct) (weekly) [WEEKLY] (xx.3.0-r) (xx.3.1) (xx.4.0)(xx.3.0) Conventions [] = environment () = branch = code-flow = promote () = release timeline -w = weeks before major release - 7w Branching Strategy 0 w {create} + {rebase} * {promote} * {create} + (xx.3.0)(xx.2.0)
  7. 7. Full fledged Test Environment Click here 👆 or Launch EnvArchitecture.jpg from the path to view the Full Test Environment
  8. 8. Timelines for a feature Test Environment S EPTEMBER Feature Development Starts NOVEMBER Feature Development Ends D ECEMBER Feature branch merged to Alpha S EP -NOV FTE in-testing D EC QA Signs-off the feature D EC FTE deleted S EP FTE created
  9. 9. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  10. 10. Creating the initial FTE Subset VM export / import Datacenter Environment Windows Peer • win_app • Multi- datasource cluster Linux Peer • lin_app • Multi- datasource cluster Corporate data center https://<fteid>.fte.gtnexus.info AWS Cloud Availability Zone VPC Public subnet Internet gateway Windows Peer Linux Peer Feature Test Env FTE Users
  11. 11. Feature Test Environment - Usage https://<fteid>.fte.gtnexus.info AWS Cloud Availability Zone VPC Public subnet Internet gateway Windows Peer Linux Peer Feature Test Env FTE Users DMVPN Corporate Network SAML 2.0 SSO with Multifactor Authentication CloudOps / Admin
  12. 12. Feature Test Environment in 4 Regions Total Env : 442
  13. 13. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  14. 14. Feature Test Environment (FTE) - Lifecycle Create Build & Deploy Test Shutdown Delete
  15. 15. FTE – Create new Environment Create Build & Deploy Test Shutdown Delete Power Down Launch
  16. 16. FTE – Create new Environment Create Build & Deploy Test Shutdown Delete • Feature Test Environment is tightly integrated with Jira – feature tracking • Feature Test Environment can exist as long as feature passes QA
  17. 17. FTE – Build & Deploy Create Build & Deploy Test Shutdown Delete
  18. 18. Create Build & Deploy Test Shutdown Delete FTE – Built-In Test Automation
  19. 19. Create Build & Deploy Test Shutdown Delete FTE – Built-In Test Automation
  20. 20. FTE – Shutdown Create Build & Deploy Test Shutdown Delete
  21. 21. Feature Test Environment (FTE) - PowerDown Create Build & Deploy Test Shutdown Delete Power DownLaunch “activity based” shutdown rules
  22. 22. FTE – End of life - Delete Create Build & Deploy Test Shutdown Delete F T E Time lin e
  23. 23. Running 100s of Environments… • Controlled updates is a costly affair. How did we get past that? • Seamless upgrade with new feature • Command line utilities - lfte up, down, reboot, remove, ssh, exe, connect, disconnect • Environment owner can create a new Env from updated AMIs from the region closer to them • Migrate their data from old to new with automated precisions lfte migrate --yes --source <fteid> --target <fteid> -v • Software upgrades, fixpacks, new product features are easier now!
  24. 24. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  25. 25. FTE Build
  26. 26. FTE Deploy
  27. 27. FTE – Elasticity in Build & Deploy Infra Build Node 5 executors per build node Scales Up & Down based on executors Deploy Node 20 executers per deploy node Scales Up & Down based on executors
  28. 28. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  29. 29. What did we achieve ? • 250+ QA accessible test environments; per Feature • 250+ Features in overlapping parallel development efforts • Feature can be quality boxed (or time boxed). • Allows hooks for automation and contrast testing • Allows for Integration branches - test multiple features together earlier
  30. 30. How useful is the move to AWS ? Reliability Elasticity Cost Optimization Security
  31. 31. Reliability - On-Demand Low-latency FTEs guaranteed using IaC Total Env : 442
  32. 32. Great Elasticity in FTEs using AWS Create Environments On-Demand Tear down at End of Feature Development
  33. 33. Cost Optimization • Major challenge with elastic environments is the need to manage costs • AWS Cost Optimization • Reserved Instances • Activity monitor to auto-shutdown the environments idle for 6 hrs, terminate Build Node for 58 mins & DeployNode for 30 mins • Lambda scheduled with CloudWatch events to notify expired FTEs to the owners • Tagging plays a crucial role for all exemptions • Next steps: Containerization to further optimize cost
  34. 34. Security • Federated services to perform single sign-on across the organization • Restricted access to Dev, QA & Admins based on IAM Groups integrated with Corporate login credentials
  35. 35. Thank you! © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Bhuvaneswari Subramani https://www.linkedin.com/in/bhuvanas/ @installjournal
  36. 36. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  37. 37. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. v 2:00 PM - 2:30 PM Venetian, Level 2, Hall C, Expo, Developer Lounge When moving to Feature-Driven Development (FDD), with geographically distributed development centers, it is customary to have a dedicated light weight environment per feature-development effort and to have robust automation support for the build and deploy life cycle of each feature branch at your own will. In this session, learn about the Feature-Driven Development transition story of a cloud-based supply chain leader that shows how AWS services helped provide a highly scalable, elastic, and cost-effective solution to facilitate on- demand Feature Development Environments supported by an independent build, deployment, and test-automation framework. 12/3 v DVC14 Transforming to feature-driven development Bhuvaneswari Subramani Director, Engineering Operations Infor AWS Community Hero

×