Attention: We are retiring the ASP.NET Community Blogs. Learn more >

I need a high-quality web application

Imagine that I come up to you and ask you to build me an ASP.NET web application for my testing team and start listing off my requirements:

  • Users must be able to create projects
  • The project creation phase must be done via a wizard interface
  • You must be able to assign users to roles within a project
  • The UI must be fast and intuitive
  • I need a reporting engine which will allow me to run and save custom reports
  • The entire application must be very well written using current best practices
  • I need a custom authentication and security system
  • I also need the Datalayer abstracted in such a manner that we can easily port to different databases

I'll bet that you are already starting to think about how you will build and combine those features, well, let me tell you this - I've just spent 3 days playing with the latest ASP.NET Starter Kit : Issue Tracker Starter Kit and I have to say that it is very impressive. Here's a list of the features according to the blurb on that page:

Create Projects

  • Define project name and description
  • Create issue categories and custom fields
  • Add project members and permissions
Create and Track Issues
  • Assign issue owners and add notes
  • Track issue status, related issues and history
  • Query and sort issues using a boolean search
Technologies and Design Approaches Demonstrated:
  • Best practices for building applications in preparation for ASP.NET 2.0
  • Multiple database support (Access (Jet) and SQL Server)
  • Mobile web application development

You really need to see this app. to believe how simple but cool it is. For starters, just fire-it-up and check out the Wizard - it blew me away!.You can download it and play with it via the following link:

    Issue Tracker Starter Kit

I'd recommend this application for everyone. If you are experienced then you should review the application to learn some new tricks and also to use it as a base for practicing some new tricks. I'm thinking of using this application for 2 purposes. 1) Pirate as much goodness out of it as possible, 2) look at using it to practice extending it and integrating it with other applications. If you would like to play with it to extend or integrate with it, here's some suggestions on things that you might like to do:

  • Implement the ability to Clone projects
  • Make the security model more "pluggable"
  • Make the UI skinnable
  • Create a larger application which has TimeTracker and IssueTracker as integrated modules and allows time to be tracked per project/issue

4 Comments

  • I would tell you not to do it in Asp.Net. Simply having multiple database support is a pain since IDbCommand won't let you specify parameters so if you want to use parametrized queries (and you should if you want a secure application) you have to restrict yourself to a single db provider.



    Skinning and especially localization is lot easier done in frameworks that actually support it, like Struts with Tiles (and even JSTL). Asp.Net provides absolutely no support for localized web projects. And MVC framework as Struts also separates business logic from presentation, unlike Asp.Net.



    Asp.Net is simple to use, but it just doesn't cut it when it comes to large projects.

  • Wow! Thanks for sharing this with us Jerry. I guess your right though, and I only wish I had know this a little earlier; before throwing away three years on this lame asp.net stuff.



    Yup, Struts it is then...

  • LOL... Thanks Christian ;-)

  • Oh, don't mention it ;)

Comments have been disabled for this content.