Shared publicly  - 
 
My company does software development with only a handful of developers--usually 2 to 4. This is a list of the infrastructure we use for our development process.

Source Control

http://www.bitbucket.org

Bitbucket is free for up to 5 users with no limits on the number of repositories. This makes it perfect for most of our projects. We use Git, but it supports Mercurial as well. Bitbucket offers issue tracking, wikis, etc. but we aren't using any of those features.

Issue Tracking

http://www.atlassian.com/software/jira/pricing/?tab=download

Atlassian offers a 10 user version of JIRA for $10. Your $10 goes to the Room to Read Charity. They also offer a hosted version for $10 per month. We also use Bonfire which makes it very easy to get do manual testing and get the results (including screenshots) back into JIRA.

Code Analysis

http://www.sonarsource.org/

Sonar provides our code analysis. This isn't something we spend a lot of time in, but it is useful to see historically how our code bases have been progressing, get an idea of our test coverage and see big dollar values labeled "technical debt" that encourage us to spend a few extra minutes cleaning up our code before checking it in. etc. Sonar is opensource and freely available.

Continuous Integration

http://hudson-ci.org/

Hudson provides our continuous integration and runs our tests. The Selenium tests are the only complicated part of this process and we use xvnc to handle running in a headless environment. Hudson is open source and freely available.

Chat & Email

Google Talk & Gmail provides most of our communication that takes place outside of JIRA. The ability to search both email and chat histories together saves quite a bit of time. Google Talk has good mobile support which has proved surprisingly useful when you have a team in widely separate timezones.

Servers

Our servers are hosted at Joe's Datacenter in Kansas City where we pay $50 per month to colocate a server. We run the free version of VMware ESXi server and create virtual machines running Ubuntu. JIRA, Sonar, and Hudson are hosted in this environment. This is also where we deploy test versions of our software for user testing during the development process.

One of the big reasons for owning our own machine is because RAM is very inexpensive to buy, but it can be very expensive to rent as part of a VPS, dedicated server or a cloud provider.

VMware makes it easy to bring machines up and down as needed and the total cost is much less than trying to provision similar machines on a cloud based service. Of course the difference is that we aren't paying for the same level of reliability. The hardware belongs to us so if it goes down, we have to stop what we are doing and work on getting it back up. Our uptime has been very good and trouble free, but our expectations are very different from what we'd expect from AWS.

Most of the services running on these machines are things that can be run locally as well. For example, we can run our tests locally from the command line and not being able to get to Sonar doesn't really change our ability to write code. JIRA going down would be the biggest problem, but Eclipse Mylyn caches all of the issues locally so even that doesn't represent a complete shutdown of our ability to work.

One of the advantages of using ESXi is that we have the ability to move the virtual machines off the server to another physical machine if it became necessary.

Total Cost
$10 - JIRA
$10 - Bonfire
$00 - BitBucket
$00 - Hudson
$00 - Sonar
-----------
$20 upfront

$50 monthly (colocation cost)
(We already had the server so I don't know how much it would be valued at.)

Other tools

For awhile, we used http://www.repositoryhosting.com. They have a very nice product that works well, is very inexpensive, and has very few limitations. Our only issue was the Trac isn't very well suited for handling multiple projects and we needed more of a centralized issue management tool. If we ever needed more than 5 Git users we'd probably go back to them for just the repository.

Atlassian offers hosted versions of most of their tools for $10 per month. If we didn't already have a server in place, we would have seriously considered that option.

We've looked at a time reporting plugin for JIRA that follows Atlassian's pricing model with a $10 option for small environments. (http://www.tempoplugin.com/buy/starter-licence)
1
1
Add a comment...