tags:

views:

74

answers:

2

I am in the planning stages of writing a new program, and there's a feature I'd like to include, but I was wondering if it's too much for non-technical users to handle, or if it invites potential problems.

My program is a C# app with a SQL db. I'd like to use a version of SQL that would allow the db to be accessed from multiple computers (btw, I'd definitely build it so that only one computer at a time could have the db open.) The user would be able to install the program on multiple computers, but if they tried to open it while it's open on another computer, they'd get a message that it can't be opened at this computer until it's closed on the other one (and I don't feel bad about that restriction.)

For non-technical users, even a standard next-next-next setup can be confusing and intimidating. I was wondering if including this ability might result in the install being too complicated or if there are too many other things that could go wrong, making the feature not worth the potential down side. (I want to keep support and troubleshooting as low as possible.) I appreciate your opinions.

+2  A: 

I really can't envision a scenario where you would have complete, singular access to a database unless your users were very technical and performing surgical-like techniques with the database.

If this is a regular application for multiple users, then the application should be coded to handle multiple users without the expense of queuing them serially.

If you have no problems with this restriction of one-user-at-a-time, then a database is really a bad idea, as almost all modern database systems are meant for access by multiple users at one time.

casperOne
You don't seem to understand what I'm asking. For one example of the problems I was wondering if I should avoid, see redtuna's answer.
ChrisC
A: 

If I understand correctly, to get the multiple-computer feature you need to add a "next-next-next" setup, to install the database?

I don't think that's going to be an issue for non-technical users; most programs do that anyways. However, those same non-technical users might freak out when their application firewall tells them that "application SQL Server is trying to accept connections from the outside"

redtuna
To your first question. I would want the install to, as automatically as possible, find the SQL server and connect to it, in as much of a next-next-next setup as possible. And the firewall message is just the kind of thing that I'm afraid people can't handle. I don't guess there's a great great way to hide all of that stuff from the users, is there?
ChrisC
I don't think you can prevent an app firewall from warning the user, since that's what they're for: to warn the user if an app starts listening to incoming connections.
redtuna