Feature List

April 11, 2008 – 8:11 pm

I skipped an important step in my previous post: I wasn’t explicit about the features something had to have to qualify (in my mind, if no one else’s) as a “software project portal”. Here are my current thoughts, sorted in order of importance.

  1. Identity management and access control (i.e., accounts, privileges, and all that jazz).
    • Bonus marks if privileges are organized into roles for easier administration.
    • More bonus marks if administrators can define new roles.
    • Still more if it integrates with OpenID or the like.
  2. Issue tracking (a.k.a. “ticketing”), or some other kind of to-do list.
    • …with a query interface that lets users filter and sort.
      • Bonus marks if F&S settings can be saved and shared, so that users can set up things like “all the high-priority items assigned to me that are due within a week”.
    • More bonus marks if fields in tickets can be customized without rewriting any code.
    • Still more bonus marks if this is combined with a calendar so that users can group tickets by release or due date.
      • DrProject’s “milestones” have been inherited from Trac, and are just as lame.
  3. Version control repository browser (browser only because there’s no safe and easy way to do a commit through a browser).
  4. Mailing list management (even though Trac doesn’t have this, and I still consider it a portal).
  5. A wiki.
    • Marks taken off if the wiki’s grammar doesn’t have shortcuts for linking to tickets, code revisions, mail messages, and the like.
  6. Cross-component search.
  7. A plugin or extension system.
  8. Some kind of over-the-web API (REST, SOAP, or RPC doesn’t matter, just so long as it allows remote scripting, automation, and integration).
  9. An integrated view of the project’s history.
    • This should be available as an RSS feed as well as in the browser.
    • Users should be able to get more immediate notification of selected events (e.g., email when tickets they care about are created or changed).
    • There should also be a separate, more detailed event log for auditing and administrative purposes.
    • Plus charts and other analytic tools.
      • We’re going to try again this summer to build something like this for DrProject.
  10. Project blogs.
  11. Continuous integration.
    • Most systems rely on external tools like CruiseControl, in which case this becomes “integrate with continuous integration”.
  12. Test case management.
    • Actually, most don’t bother to do this separately (Rally being a notable exception). I’m still trying to figure out why nobody has integrated with FitNesse yet…
  13. Requirements management.
    • A lot of systems, including DrProject, just use tickets for this, but Mingle and other agile-oriented portals support user story cards or the like.
    • As an aside, I think it’s pretty telling that nothing smaller than ClearCase offers, or even integrates with, a “classic” requirements management tool like DOORS.
  14. Time tracking.
    • This comes near the bottom of my list because I believe most people input random numbers.
  15. Integration with IRC, instant messaging, VoIP, and other communication tools.
    • Anyone?
  16. Support for internationalization and localization.
  17. Forums or some other kind of bulletin board system.
    • I personally think this is redundant given mailing lists and a wiki, but a lot of portals offer them, and we regularly get requests to add them to DrProject.

One more consideration is that a portal should be installable, rather than a hosted service: not every project is open source, and many universities aren’t allowed to store student information out of their own jurisdiction.

  1. 6 Responses to “Feature List”

  2. Hi,
    At work, we looked for, and could not find, an integrated graphing package.
    It is much easier to look at bugs/tickets over time; coverage over time; regression % pass rate vs time - if they are are all graphs.

    - Paddy.

    By Paddy3118 on Apr 12, 2008

  3. I also missed “IDE integration” — still rare to have everything from the portal available inside the IDE as well, but Mylyn (http://www.eclipse.org/mylyn/) and other projects have shown how useful it is.

    By Greg Wilson on Apr 12, 2008

  4. One of the more unique applications that I have used is from Avensoft (Perfect Tracker)… Though Perfect Tracker has been replaced, Avensoft has been around for many years and in use by major multinational org’s and academic institutions (IBM, Avaya, Yale, ect). Although closed source, they have some interesting features, including an internal development studio.

    Avensoft has implemented some interesting features through their Service Server and other offerings - including team management, billing, knowledge repository, ect… Perhaps a good one to include when reviewing your competition.

    Cheers,
    SB

    By Shawn Berney on Apr 13, 2008

  5. A key feature I don’t see that you’ve listed is linking between the issue tracker and the version control system. When an issue is fixed you want to know what revision and branch it was committed. And for each commit, you’d like to be able to link to the discussion for a full justification.

    By Doug Cutting on Apr 14, 2008

  6. Cool posts!

    A way to integrate 2 posts (Competition and Features List) is a table listing features and how DrProject and main competitors was in the features !

    Like this: http://www.assembla.com/tour - (this is comparing assembla’s versions, but the idea is the same) :)

    I’m done a little tour in DrProject’s page and I missed a list of features with simple explanation about it.

    By Luciano Pacheco on Apr 15, 2008

  1. 1 Trackback(s)

  2. Aug 5, 2008: Features « Pyrtl

Post a Comment