An agile approach to automated builds sela

448 views
400 views

Published on

Published in: Technology, News & Politics
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
448
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

An agile approach to automated builds sela

  1. 1. © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel www.sela.co.il
  2. 2. What is Build Automation?Feedback Cycle TimeAgile Approach in BuildAutomationExample Build ProcessesSummary © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 2
  3. 3. • ‘The act of scripting or automating … tasks that software developers do in their day-to-day activities …’ (Wikipedia)• Often includes, but is not limited to: – Compilation – Tests (unit, integration, functional, etc.) – Preparation of installation packages – Deployment to staging and/or production servers – Others © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 3
  4. 4. • Benefits of build automation: – Reduce human errors when manually building – Have a single ‘authoritative’ source for the product – Let people focus on creative things! – Let QA ‘pull’ builds when they are ready IMPROVE PRODUCT QUALITY! © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 4
  5. 5. • Daily/Nightly Build – Runs at a scheduled time in the day, automatically – Builds the entire product from scratch – Runs tests, builds installer packages, etc. – May take hours• Continuous Integration (CI) Build – Runs many times during the day – Triggered by check-in operations – Compiles the code, maybe run some sanity or smoke tests – Should take several minutes at most © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 5
  6. 6. Nightly / DailyCI Minutes Hours Days © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 6
  7. 7. Nightly / DailyCI Minutes Hours Days © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 7
  8. 8. • Short Feedback Cycles: – Individual Teams – Fine-grained business components – Run only small subset of unit tests, keep build fast! (<10 minutes)• Long Feedback Cycles: – Entire Products – Build from scratch on dedicated machine – Run all tests, including automated functional tests © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 8
  9. 9. • A combination of 3 consecutive build stages• Stage 1: – Compilation, unit tests – Short feedback cycle• Stage 2: – Integration tests and/or acceptance tests – Longer feedback cycle• Stage 3: – Functional tests and installation packages – Longest feedback cycle © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 9
  10. 10. Stage 1 QA Stage 2 Stage 3 Time © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 10
  11. 11. Identify the feedback cycle you wantfor each of your build typesUse multiple build types together forcovering all feedback cyclesIterate! © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 11
  12. 12. © Copyright SELA software & Education Labs Ltd. 14-18 Baruch Hirsch St.Bnei Brak 51202 Israel 12

×