For a long time I've been wishing to build a open-source web 2.0 application using all kind of free and open-souce code available on the internet.
So after some thinking, I came to the ideia of building a issue tracking system.
It's a relative simple application to build, and I can use a bunch of open-source code to add cool functionality to the application.
So, I'm thinking of using:
I'll use the Provider Model for the authentication and data access. This will facilitate the later usage, for instance, of the amazing SubSonic for the data layer.
This will also help us if we later on change the authentication provider, since I don't yet know if I can easily integrate the OpenID or even the Google Account into a Provider Model, this because of the redirects made, as you can see in the diagram bellow:
The workflow of the application itself is simple:
The "client" user:
First, the user logins to the application. After that, the application will show all projects assign to the user, and their tasks. The user can review, close, reopen and create new tasks. A issue (or task) is defined by a project, workid, title, description, severity, status, release date and version.
The "programmer" user:
The programmer user does all a "client" user, but we is the only one how fills the release date and version.
The "administrator" user:
The administrator is the only one that can create projects and assign users to projects.
So, there you have it. If you have any ideia, suggestion, or are willing to participate, go on and drop me an email.
[UPDATE]
Decided to add two more tools to the package:
Another thing I forgot to mention is that one of the main objective of this project is to learn more about these tools. So all post will have reference links that helped me understand the usage of the tools used.