• Like
  • Save
ATH2013-Sreedhar Joshi- Agile implementation - A developer’s view
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

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

  • 74 views
Published

 

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
74
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Agile Implementation: A Developer’s view Sreedhar Joshi Alliance Global Services
  • 2. Retrospective Confidential – Do Not Distribute © Alliance Global Services 2012 2
  • 3. AllianceWay – Building Software Confidential – Do Not Distribute © Alliance Global Services 2012 3
  • 4. Agenda Tools and Methodologies Confidential – Do Not Distribute © Alliance Global Services 2012 4
  • 5. Design Skills – Evolutionary Design Confidential – Do Not Distribute © Alliance Global Services 2012 5
  • 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. 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. Design Skills – Apply design principles Confidential – Do Not Distribute © Alliance Global Services 2012 8
  • 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. Design Skills – Clean Code Confidential – Do Not Distribute © Alliance Global Services 2012 10
  • 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. Mindset and Approach - Passive implementer vs. Active contributor Confidential – Do Not Distribute © Alliance Global Services 2012 12
  • 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. Mindset and Approach – Team player and sense of ownership Confidential – Do Not Distribute © Alliance Global Services 2012 14
  • 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. Tools and Methodologies - Automation Confidential – Do Not Distribute © Alliance Global Services 2012 16
  • 17. Tools and Methodologies - Refactor Confidential – Do Not Distribute © Alliance Global Services 2012 17
  • 18. Refactoring • Technical Debt • Keep design fit • How to get most of it Confidential – Do Not Distribute © Alliance Global Services 2012 18
  • 19. Tools and Methodologies – Polyglot Programming Confidential – Do Not Distribute © Alliance Global Services 2012 19
  • 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. Tools and Methodologies – Continuous Delivery Confidential – Do Not Distribute © Alliance Global Services 2012 21
  • 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. Tools and Methodologies - Ensure code is fit Confidential – Do Not Distribute © Alliance Global Services 2012 23
  • 24. Continuous Integration - Sonar Confidential – Do Not Distribute © Alliance Global Services 2012 24
  • 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. Conclusion Confidential – Do Not Distribute © Alliance Global Services 2012 26
  • 27. Thank You Confidential – Do Not Distribute © Alliance Global Services 2012 27