ATH2013-Sreedhar Joshi- Agile implementation - A developer’s view

371 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

ATH2013-Sreedhar Joshi- Agile implementation - A developer’s view

  1. 1. Agile Implementation: A Developer’s view Sreedhar Joshi Alliance Global Services
  2. 2. Retrospective Confidential – Do Not Distribute © Alliance Global Services 2012 2
  3. 3. AllianceWay – Building Software Confidential – Do Not Distribute © Alliance Global Services 2012 3
  4. 4. Agenda Tools and Methodologies Confidential – Do Not Distribute © Alliance Global Services 2012 4
  5. 5. Design Skills – Evolutionary Design Confidential – Do Not Distribute © Alliance Global Services 2012 5
  6. 6. Evolutionary Design • • • • What is Design? Why Evolutionary Design? Potential pitfalls How to do it right? Confidential – Do Not Distribute © Alliance Global Services 2012 6
  7. 7. Design Skills - TDD • Write unit test case • See that it fails • Refactor the code • Make sure it does not break functionality by running tests • Write just the minimum code necessary • Validate the test now passes successfully Confidential – Do Not Distribute © Alliance Global Services 2012 7
  8. 8. Design Skills – Apply design principles Confidential – Do Not Distribute © Alliance Global Services 2012 8
  9. 9. Design Principles • • • • • YAGNI DRY SOLID Magnanimous writer and Tolerant Reader Create your own knowledge base for the organization Confidential – Do Not Distribute © Alliance Global Services 2012 9
  10. 10. Design Skills – Clean Code Confidential – Do Not Distribute © Alliance Global Services 2012 10
  11. 11. Clean Code • • • • • • Code for future self KISS Avoid Noise Small classes and Small methods Reuse Use patterns Confidential – Do Not Distribute © Alliance Global Services 2012 11
  12. 12. Mindset and Approach - Passive implementer vs. Active contributor Confidential – Do Not Distribute © Alliance Global Services 2012 12
  13. 13. Mindset and approach • • • • From nice to have to must have Raise your concern Doing it right Give feedback Confidential – Do Not Distribute © Alliance Global Services 2012 13
  14. 14. Mindset and Approach – Team player and sense of ownership Confidential – Do Not Distribute © Alliance Global Services 2012 14
  15. 15. Mindset and Approach • • • • There is no more “My Task” You succeed only if your team succeeds Build team bonding Who is a leader ? Confidential – Do Not Distribute © Alliance Global Services 2012 15
  16. 16. Tools and Methodologies - Automation Confidential – Do Not Distribute © Alliance Global Services 2012 16
  17. 17. Tools and Methodologies - Refactor Confidential – Do Not Distribute © Alliance Global Services 2012 17
  18. 18. Refactoring • Technical Debt • Keep design fit • How to get most of it Confidential – Do Not Distribute © Alliance Global Services 2012 18
  19. 19. Tools and Methodologies – Polyglot Programming Confidential – Do Not Distribute © Alliance Global Services 2012 19
  20. 20. Polyglot Programming • There is no more one skill, one language , one Shop • Keep learning different programming paradigms • Learn at least one scripting language Confidential – Do Not Distribute © Alliance Global Services 2012 20
  21. 21. Tools and Methodologies – Continuous Delivery Confidential – Do Not Distribute © Alliance Global Services 2012 21
  22. 22. Continuous Delivery • • • • Make sure you have enough code coverage Make sure test cases are Independent and Fast Run the test suite after every refactoring Integrate test cycles into your build Confidential – Do Not Distribute © Alliance Global Services 2012 22
  23. 23. Tools and Methodologies - Ensure code is fit Confidential – Do Not Distribute © Alliance Global Services 2012 23
  24. 24. Continuous Integration - Sonar Confidential – Do Not Distribute © Alliance Global Services 2012 24
  25. 25. Continuous Integration - Sonar • • • • • • • • Cyclomatic Complexity Percentage Comments Unit Test Coverage (%) Successfully Run Unit Tests (%) Duplicate Code (%) Violations Rules Compliance (%) Technical Debt Confidential – Do Not Distribute © Alliance Global Services 2012 25
  26. 26. Conclusion Confidential – Do Not Distribute © Alliance Global Services 2012 26
  27. 27. Thank You Confidential – Do Not Distribute © Alliance Global Services 2012 27

×