Software development at INRIA
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,584
On Slideshare
2,581
From Embeds
3
Number of Embeds
1

Actions

Shares
Downloads
33
Comments
0
Likes
1

Embeds 3

http://www.slideshare.net 3

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. From research prototype to reliable software Cl é ment MATHIEU
  • 2. How to build reliable software at INRIA ? How to fulfill both engineer and researcher requirements ?
  • 3. Here is what we * do * OASIS / ProActive
  • 4. Outline
    • Introduction
      • Team
      • Product
      • Issues
    • Evolution
    • Tools & Processes
    • Conclusion
  • 5. The OASIS team
  • 6. Created in 1999 .
  • 7. Based at Sophia Antipolis .
  • 8. Distributed and Parallel Computing.
  • 9. 5 researchers 10 PhDs 10 engineers ~17 Interns
  • 10. * an INRIA spin off ActiveEon *
  • 11. The ProActive middleware
  • 12. ProActive Written in Java
  • 13. ProActive
  • 14. Our issues * * One of
  • 15. Researchers/PhDs are not Engineers * * And don’t want to be
  • 16. They want to publish papers .
  • 17. We want (bullet proof) software (with eye candies) .
  • 18. How to work together ?
  • 19. Outline
    • Introduction
    • Evolution
    • Tools & Processes
    • Conclusion
  • 20. 1998: Project Started .
  • 21. 2000: CVS .
  • 22. 2003: Coding Standards .
  • 23. 2003: Functional Testing . (Home made)
  • 24. 2005: Subversion .
  • 25. 2007: Junit 4 .
  • 26. 2007: Continuous Integration .
  • 27. 2007: JIRA Bug Tracking .
  • 28. Today: Branching .
  • 29. Outline
    • Introduction
    • Evolution
    • Tools & Processes
      • Principles
      • Continuous Integration
      • Branching
      • Bug Tracking
    • Conclusion
  • 30. Principle Automation is the way
  • 31. Which tool ?
    • Avoid tool dependency
    • Community matters
    • Good looking helps adoption
  • 32. Continuous Integration Hudson * rocks ! * Thanks Kohsuke
  • 33. Continuous Integration The whole test suite is run after each commit
  • 34. Continuous Integration Lots of nightly builds / checks
  • 35. Continuous Integration Success Failure Code Correctly Formatted 14% 86%
  • 36. Continuous Integration Success Failure Unstable Build Results 41% 44% 15%
  • 37. Continuous Integration Junit trend
  • 38. Continuous Integration
  • 39. Branching Inspired by agile methods to ease both engineer and researcher work
  • 40. Branching
    • Short iteration
    • For engineers
    • Feature related
    • Merged ASAP
    • Synchronized
    • Long Iteration
    • For research
    • Person related
    • Hopefully merged
  • 41. Branching Each branch has a referee
  • 42. Branching Continuous Integration only applies to the trunk
  • 43. Branching Avoid heavy branching
  • 44. JIRA Bug Tracker
  • 45. Outline
    • Introduction
    • Evolution
    • Tools & Processes
    • Conclusion
  • 46. Conclusion building blocks already exist*. * We did not invented them
  • 47. Conclusion It’s all about tradeoff . Maintenance costs VS productivity gains.
  • 48. Conclusion We will provide feedback * * And I want to hear your
  • 49. Clément MATHIEU Ingénieur Associé INRIA Sophia – Antipolis Projet OASIS