More Related Content
Similar to ATH2013-Sreedhar Joshi- Agile implementation - A developer’s view (20)
More from India Scrum Enthusiasts Community (20)
ATH2013-Sreedhar Joshi- Agile implementation - A developer’s view
- 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
- 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
- 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
- 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