Answers

 

Chris F

.NET Tech Lead

see all my questions

What are the best tools for managing .NET software development?

Which tools would you recommend for managing a .NET software development process, to include these features:

- Requirements repository
- Bug tracking and feature management
- Wiki
- Source control
- Testing

1) Would you go for more powerful individual applications, such as HP Quality Center for requirements and testing, JIRA for bugs and features, Confluence for wiki, and TFS for source control?

2) Or an integrated solution using just TFS for everything, but where the individual components might not be as good as the industry-leading applications?

posted July 8, 2008 in Software Development | Closed

Share This Question

Share This

Good Answers (5)

 

Srikar D

Lead Architect at Kaplan K12 Learning Services

see all my answers

Best Answers in: Software Development (1)

This was selected as Best Answer

We use TFS as the main tool for managing software development. Conceptually TFS is meant to be used in it entirety to achieve continuous integration. Starting from Requirements repository to Bug tracking, work item assignment and source control.

TFS gives you the ability to track lines of code to bugs or work items. It also comes with share point so you can host your own template version of document control. You can use templates for Agile as well and it works well with TFS.

Do not fall into the trap of using multiple tools, it can only complicate your life and you need additional resources to manage these tools and processes.

posted July 8, 2008

 

Nick B

Senior Developer at Think Partnership

see all my answers

Whats the point of paying for TFS if you arn't going to use it? In order to take advantage of the basic features you would need to use the bug tracking and tasks in TFS so you can check in work items to those tasks/bugs so you can manage your builds.

If you want TFS for strictly source control check-in/out maybe you should use VSS or another open source alternative? TFS is very pricey to use as just a source control vault.

posted July 8, 2008

 

Joe M

Author, Consutant, Instructor

see all my answers

Best Answers in: Software Development (2)

TFS is an excellent tool. As one of the previous answers stated, it can handle your entire process. If you have 5 or less developers and have an MSDN subscription that provides the workgroup edition, then you won't have any additional cost. However, for a larger number of developers, you'll need to upgrade, which can be expensive. Then again, compared to other commercial offerings, it might have a lot of value and its an excellent package.

Another option is to go with SVN, Tortise SVN, and Redmine. They don't have as many features as TFS, but are open source.

posted July 8, 2008

 

Jim G

Engineering Manager

see all my answers

Your best bet is a hybrid approach. Falling into the trap of using TFS for everything just because you paid for it will really limit your team.

Requirements repository - TFS does a decent job with storing documents. If you setup the SharePoint site you can access documents through TFS or through a browser. Since it runs on SharePoint you get versioning for free.

Bug tracking and feature management - TFS' interface is completely unusable for this. It's clunky and non-intuitive. I'd go with FogBugz or another hosted service.

Wiki - The wiki provided through the TFS SharePoint site is horrible (It's not a real wiki). Go with MediaWiki for a company wide solution. FogBugz also contains a decent wiki if you go with that for your Bug Tracking solution.

Source control - TFS is a very good source control system. The integration with the IDE is slick. I just hope the offline support gets better.

Clarification added July 8, 2008:

Other developer tools that you will want to look at for building your development environment:
CruiseControl.NET - Integration environment
NANT - Build script
NUnit - Unit testing
WatiN - Browser testing

posted July 8, 2008

 

Larry S

Chief Technology Officer and Part Owner, TrackAbout, Inc

see all my answers

We're a .NET shop, but we've adopted a good bit of open-source software running on linux. For our small (<15) team, we use the following:

BaseCamp: This is a commercial service. Good for managing small projects and interacting with customers outside your organization.

Bugzilla: Bug tracking

RT: Customer issue tracking (would be nice if we could unify bug tracking and customer issue tracking in one system, but we haven't found the ideal one yet)

Subversion + WebSVN + scmbug (integrates Subversion with Bugzilla) + SVN::Notify (pretty emails on checkin)

TortoiseSVN - The best SVN client on Windows

CruiseControl.NET - Continuous integration server

NUnit - Test-driven development/automated unit tests

Drupal - Great content management system, we use it for both our customer community web site and our internal development team's site.

On the customer support side, we're big fans of LogMeIn Rescue for providing remote customer support.

posted July 8, 2008

More Answers (9)

 

Erhan H

Software Developer at Risk Focus

see all my answers

have a look into Assembla,, it just might work for you...

Links:

posted July 8, 2008

 

Ashwin K

Director and Co Founder of Winjit Technologies Pvt Ltd and Owner, Winjit Technologies Pvt Ltd

see all my answers

We have worked on both environments

Option -1
Mantis -- Bug Tracking
Wiki - For requirements
SVN - Source Control
Cruise Control / Nant - Auto Build

Option -2
Mantis -- Bug Tracking
Wiki - For requirements
TFS - Source Control
TFS - Auto Build

I think the best suggestion would be to go with an integrated approach I know you would not get all the features and would miss on the best solutions but I would suggest go with an Integrated approach as the head ache of management and control of multiple systems is very high.

TFS requires a lot of resources for various activities and you need some good hardware systems while the other open source are comparatively easy on resources but again they are not very well documented on support issues though there is a large community using it and supporting it but the reliability and ownership is not known at times and you cannot target the right resource for help.

Conclusions
1.) Integrated one Solution
2.) Avoid Multiple solutions.
3.) Even if you have multiple solutions look for solutions which has addons to make it work like one integrated solution (Eg SVN works with TFS ide)

posted July 8, 2008

 

Andy W

Freelance IT Consultant

see all my answers

Personally I would only use the following:

Mantis -- Bug Tracking
Wiki - For requirements
SVN - Source Control
Cruise Control/Nant

Although I've had issues with CruiseControl in past - mainly my own stupidity...

Something I have also used with some success is SourceForge

posted July 8, 2008

 

Jackey Y

CTO & Co-Founder of ArcherMind

see all my answers

Best Answers in: Wireless (2)

HI Chris,

I got the right answer for you.

TestLink: Requirements Repository and Testing Management
Trac: Bug Tracking, Wiki and Source Control (Web)
Subversion: Source Control

Both TestLink and Trac can do feature management. It really depends on
your project requirement. Both Trac and TestLink can integrate with JIRA and other bug tracking system (e.g. Bugzilla). Trac is an awesome tool to manage your project and make everything on track. TestLink is also a good tool to do test management.

If you are interested in how it works, I can give you more detail. I am running a mobile software development company and have been using this various US customers. We use TestLink to manage couple large scare testing projects that our customers outsourced to us. We also use it to do a mobile product.

I am very interested in integrating open source tools to manage software development projects. Please let me know if you have any additional questions about this area.

Jackey

posted July 8, 2008

 

Antoine R

Software Engineer at Dassault Systemes

see all my answers

You can also try the trac [1] solution, which lets you plug in the source configuration management system of you choice (it works fine with subversion and mercurial, at least), as well as cruise control, and handles the requirement/bugs/documentation part.
Another one to try is gforge [2], which interfaces nicely with tinderbox to handle continuous integration, and which is really great if you have several projects to manage.

It is worth doing the effort to set trac or another forge up, since adding new projects with a similar setup will then be very easy.

Links:

posted July 8, 2008

 

Harry B

Vice President, Engineering at Disaboom.com

see all my answers

As far as Requirements Repository, Bug Tracking and Feature Management and Source Control, I recommend Source Gear's Fortress.

* It has a great repository that runs on SQL Server so that you can back up your source code in a familiar manner.
* It has a product development portion that will allow you to plan features and track bugs
* It has a web interface for non-licensed users to report bugs and propose features (be careful how you expose this)
* On check in from VS, you can actually tie code to bugs/features resolved (pretty sweet for reporting).

I've used it and variations of their previous solutions for the past few years and have had no issues.

It's $499 per dev and I think $199 for a BA

Links:

posted July 8, 2008

 

Matthew L

Technical Lead at AMN Healthcare Inc.

see all my answers

SVN, Tortoise, CruiseControl, NUnit, FogBugz / Jira / Scarab?, Sharepoint for docs. There are a million wikis out there. DekiWiki looks good.

You don't need to spend a dime and these products will blow TFS away. I think MSFT dropped the ball big time on this product suite.

Clarification added July 8, 2008:

+1 SourceGear Vault / Fortress as well

posted July 8, 2008

 

Pedro R

Developer Advisor & Community Manager at Microsoft

see all my answers

I think you should really consider Team System . The usage of Team Foudation Server and Visual Studio Client enables that all the development process to be done inside the VS.

If you are considering it now you have two choises: VS2008 or Rosário.
Rosario is the next version and you cand try it downloading from Microsoft Site. The 2008 version is the current version and it gives you everything you mentioned in one integrated tool.

posted July 8, 2008

 

Wonoh K

Embedded Software and Hardware. Measurement System. Machine Vision. Motion Control. Control System. Power Electronics.

see all my answers

Best Answers in: Software Development (1)

As many Windows application programmer, I don't like Microsoft products full of bugs but yet the best match for .NET software development is again another Microsoft product: Visual Source Safe.

posted July 8, 2008