Making Software Management tools work for you - 2011 PHPBenelux Conference


Published on

With the advent of such rich open source tools such as Subversion, Git, Trac, CruiseControl, and Review Board, managing software projects of any size has become much easier than ever. But how do you best use these tools in your organization? Picking the tool for you team is not a trivial task, and it requires insight into your team’s size, dynamic, and experience level; these tools are far from one-size-fits-all solutions. In this talk we’ll look at how these tools can fit into any software project and how to pick the right tool for your project, helping you make your team more efficient than before.

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Survey the audience, explain you will hit all demographics in one way or another
  • Software projects are complex beasts, not as straightforward as building a building. Use example of father-in-law’s shed, how they could scope out everything ahead of time.Building a building is more or less a perfected art, while software is still evolving. For example, compare building a building and software 40 years ago versus now.
  • Lots of choices is because developers first project is to build tools to support their own needs. However, each developer takes a different approach to the problem because their situation is different
  • Say how the quote almost invalidates the talk. The most mediocre teams will never be great with the best tools money can buy.However, a deeper look at the quote says that having the right tool is better than having the most expensive/most trendy/most used one.
  • Not having a process will make any implementation of tools unsuccessful. Correlate to how we see this in CRM implementations.
  • Differentiate between development and management tools. For example Eclipse is a development tool, but Bugzilla is a management tool ( and Git is both ).
  • Point out where version control fits into management ( tracking development and parallelizing teams ). Talk about how Sugar does it.
  • Describe the picture.Cool the fires about Git > SVN
  • Biggest problem for teams is keeping organized. Have lots of requests coming in, need to triage and prioritize them. Need to figure out how much can successfully be accomplished with a given amount of resources. Always make sure your tool agrees with your dev methodology
  • Differentiate Bug Tracker versus Project ManagementIntroduce the sticky note board
  • People love good documentation, but teams hate to write it. Lots of focus on tools that make it simple
  • Testing Is both automated and manual. Both are needed, since manual testing can uncover usability or consistency issues that automated will miss.
  • Reiterate the importance of your team working being able to accept the tools into their workflow.
  • Making Software Management tools work for you - 2011 PHPBenelux Conference

    1. 1. Making software management tools work for you<br />John Mertic ( @jmertic )<br />Partner and Community Developer Liaison at SugarCRM<br />Provide feedback at<br />
    2. 2. Disclaimer: There are no silver bullets<br />“For every complex problem, there is a solution that is simple, neat, and wrong.” <br />– H. L. Mencken<br />Source:<br />
    3. 3. Lots of Choices<br />
    4. 4. Where do you begin?<br />“A determined soul will do more with a rusty monkey wrench than a loafer will accomplish with all the tools in a machine shop.”<br />- Robert Hughes<br />Source:<br />
    5. 5. Don’t proceed without a process<br />Source:<br />
    6. 6. Toolbox of Software Project Management<br />Source:<br />
    7. 7. What kinds of tools should be in the toolbox<br />Version Control<br />Task Management<br />Documentation<br />Testing<br />
    8. 8. Version Control<br />Keeps track of your codebase<br />Enables parallel development<br />What’s you choices<br />Backup files manually ( not a real choice )<br />CVS <br />Subversion (SVN)<br />Git<br />
    9. 9. Evolution of Version Control<br />
    10. 10. Task Management<br />Biggest problem for teams in keeping organized<br />Good task management enables developers and managers to plan<br />Should support the development methodology you are using<br />
    11. 11. Task Management Tool Matrix<br />Bug Trackers<br />Project Management<br />web2Project<br />Redmine<br />JIRA ( proprietary )<br />FogBugz( proprietary )<br />Bugzilla<br />Mantis<br />Github Bug Tracker<br />Trac<br />Launchpad<br />Google Docs / Excel<br />
    12. 12. Source:<br />
    13. 13. Documentation<br />User facing documentation AND developer documentation<br />Documentation by nature is painful to write, so make it as much as a part of the development process as possible<br />
    14. 14. Documentation Matrix<br />Users<br />Wiki<br />Inline Help<br />Docbook<br />Sphinx<br />Developers<br />Wiki<br />PHPDoc<br />Doxygen<br />
    15. 15. Testing<br />Automated<br />Unit<br />Functional or Acceptance<br />Performance<br />Manual<br />Usability<br />Consistency<br />
    16. 16. The Do’s of Testing Management<br />DO make automated tests automated with continuous integration <br />Hudson / Jenkins<br />phpUnderControl / CruiseControl<br />DO develop a testing strategy that is integrated with build strategy<br />DO analyze testing coverage<br />But don’t believe automated code coverage metrics<br />
    17. 17. Testing Tools Matrix<br />Unit Testing<br />PHPUnit<br />Whatever JavaScript unit testing framework you like -<br />Functional Testing<br />Selenium<br />Watir<br />SODA -<br />
    18. 18. Testing Tools Matrix (cont)<br />Performance Testing<br />ApacheBench<br />Jmeter<br />MeterMaid-<br />
    19. 19. How to find the tools that can work for you<br />Evaluate where you are now<br />Find the problems you have in your current tools<br />Try out different tools that address the problems you are having<br />Pick a tool and implement it<br />Repeat<br />
    20. 20. Thanks for coming!<br />Tell me how you liked this talk…<br />Submit feedback on this talk to<br />Contact Info:<br />Email -<br />Blog -<br />Twitter - @jmertic<br />Who I work for:<br />Partner and Community Developer Liaison at SugarCRM –<br />We’re hiring!<br />