Your SlideShare is downloading. ×
0
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Java Development EcoSystem
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Java Development EcoSystem

815

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
815
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
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
  • Вспомните проекты в которых вы учавствовали с самого начала проекта. Есть чистый лист на котором рисуете карандашом свои идеи. Со временем что-то становится лишним вы стираете ластиком – остаются серые следы. Вы нарисовали картинку, а если нужно что-то исправить? Снова стирать оставлять грязные следы.Development ecosystem – это также как человеческая среда обитания. Свежий воздух, ясное солнце, деревья – всё это делает жизнь нашу лучше.
  • Transcript

    • 1. Java Development EcoSystem<br />Andrey Khaisin, Ciklum<br />Java User Group, June 2011<br />
    • 2. Who am I?<br />More than 5 years in:<br /><ul><li>Testing, automated testing
    • 3. Project quality analyzing
    • 4. UI, persistence, business logic development
    • 5. Development for non Ukrainian Banks</li></ul>And always 20% of all activities are in development ecosystem <br />www.ciklum.net<br />2<br />
    • 6. What is it all about?..<br />www.ciklum.net<br />3<br />“I can remember when the air was clean …” <br />George Burns, comedian<br />After some development<br />
    • 7. Problems <br /><ul><li>Easily configurable build
    • 8. No JAR hell
    • 9. Keep it stable
    • 10. One click deploy
    • 11. Look to the future</li></ul>www.ciklum.net<br />4<br />
    • 12. Part 1. Ecosystem components<br />www.ciklum.net<br />5<br />
    • 13. Development tools<br />www.ciklum.net<br />6<br />
    • 14. Jenkins (Hudson)<br /><ul><li>Start build process after source code change or after certain period of time
    • 15. Distribute build process across a set of build servers
    • 16. Build result statistic
    • 17. Notification about build results
    • 18. Executing post-build processes (e.g. deploying to testing server)</li></ul>Alternatives: <br />Apache Continuum, JetBrainsTeamCity, Atlassian Bamboo, CruiseControl, Team Foundation Server, … thousands of them<br />www.ciklum.net<br />7<br />
    • 19. Source version control system<br /><ul><li>Trigger build process on build server on source code change
    • 20. Store all states of application code base
    • 21. Know who and when made that change which crash the build</li></ul>www.ciklum.net<br />8<br />
    • 22. Maven<br /><ul><li>Convention over configuration
    • 23. Standard project building life circle
    • 24. Dependency management
    • 25. Configuration and environment profiles
    • 26. IDE independent project</li></ul>Alternatives:<br /><ul><li>Ant + Ivy
    • 27. IDE custom build and dependencies management</li></ul>www.ciklum.net<br />9<br />
    • 28. Nexus<br /><ul><li>Keep all project dependencies in one place
    • 29. Cache all dependencies from different remote repositories
    • 30. Manage rules for main source of certain artifact
    • 31. Control security side – no untrusted dependencies must be used for project build
    • 32. Maven central works under Nexus</li></ul>Alternatives:<br /><ul><li>Artifactory
    • 33. Apache Archiva</li></ul>www.ciklum.net<br />10<br />
    • 34. Code analyzing tools<br /><ul><li>Cobertura – test coverage
    • 35. PMD – static code analyzing
    • 36. FindBugs – static code analyzing
    • 37. Checkstyle – check code style rules</li></ul>www.ciklum.net<br />11<br />
    • 38. Sonar<br /><ul><li>Collecting project analyzing results
    • 39. Track project metrics changes for a period of time
    • 40. Visualizing project metrics
    • 41. Flexible configurable dashboards for users with different project roles</li></ul>www.ciklum.net<br />12<br />
    • 42. Sonar - project metrics UI<br /><ul><li>Summarize
    • 43. Analyze
    • 44. Visualize</li></ul>www.ciklum.net<br />13<br />Sonarize you project!<br />
    • 45. Part 2. Project metrics<br />www.ciklum.net<br />14<br />Each metric is an answer to:<br />How many tests?<br />How big your code?<br />What is code test coverage?<br />How nice style of your code?<br />
    • 46. LOC and Test Coverage<br />www.ciklum.net<br />15<br />
    • 47. Radar - Sonar<br />www.ciklum.net<br />16<br />The rounder shape the better metrics<br />
    • 48. Thank you!<br />www.ciklum.net<br />17<br />Andrey Khaisin<br />kha@ciklum.net<br />Ciklum<br />

    ×