I'm curious about this. For one of my side gigs, there is an online service to assign workers to it.
There are about 25,000 gigs a year. Each gig has at least 2 people that need to work it, some need 3, and some need 4. There are about 100 different locations for these gigs. Each gig has a date, time, location, Party 1, Party 2, Worker 1, Worker 2, [Worker 3, Worker 4], and Assigner.
There are about 20 assigners, and probably 900 workers. The gigs are put up anywhere from 1 hour in advance to 1 month in advance. Workers sign in, request gigs, and get back a confirmation that is their last chance to say "no, guess I can't do this". Then we can see the schedule afterwards.
We're able to search pretty specifically--we can eliminate certain locations from all searches, search within date ranges, search only for specific levels, search only for gigs from specific assigners... You get the idea.
Right now, it isn't working well. The function is so old that with a recent update of the Windows Server, it was no longer able to generate. It was "fixed", but the server/site can only handle about 50 people at a time, queries (searches for gigs) take forever, it has literally caused me to lose money. It is really becoming a problem, enough so that I'm going to go to the board meeting to voice my displeasure with it.
I know how much it costs us. I think that we're being royally screwed over. How much should something like this cost?