Point of Sale for Grocery Store

Howdy Experts,

I would like to hear some comment on POS for a Supermarket store. I would like to build that system myself and would like to know:

1- What DBMS should be chosen(Free one such is mysql compare to MS ACCESS)
2- What Programming language is best? (VB? VB.NET? C# ..etc.)
3- Intended to have 3 terminals for the main store and 1 terminal for the warehouse. (expandable in the future)
4- How about Networking stuff? i.e. What kind of consideration to make when dealing with wiring and network topology?
5- Hardware stuff: cash register, monitor etc. (how much would that cost?)
5- Any other comments ? Any pre-lim questions i should ask myself before going to build such a system.

This system would be built using MS Window Based.
With Regards and Thank you,

Who is Participating?
Shane Russell2nd Line Desktop SupportCommented:
1.} mysql or something free, not access !
2.} Depends what programming language(s) you prefer and are good at, if you are begining to program I would either suggest vb or vb.net if not and you are really good then it would be worth while looking in to the OOP languages like C#, c++, etc
3.} Not sure what you wanted in terms of advice or suggestions on this one ?
4.} I would say Star topology, RJ 45 wiring or the new cat 6 if you are going to use the 1 Gig stuff, so either Cat5 or Cat 6 ( I am not really a networking person so to speak but those are my thoughts on this part )
5.} I am not sure on costs of monitors, cash registers etc, that would depend on how many you wanted and where you purchased or got them from , so there are too many variables in this part to give you a reasonable figure in terms of prices that I am aware of.
6.} Yeah - make sure you plan this out well from database design ( normalisation as its called ) all the way to whose going to be using this system as that will most likely affect the type of data to be stored and where it is stored, what about security issues with regards to the database ? Will you need any ?

Other then that wait on other experts inputs :)

1- It's up to you, depending on the data that you're storing, some people like to create their own Database system :)
2- I personally prefer Java (for just about everything), but if you're going to stick with an MS technology: C#.
3- -
4- Don't bother with wireless, as it costs a lot more than cables, and you also have to be very careful with security.
    all you'd need, is 3 long ethernet cables, and either a router or a hub (router is best, but costs a little more).
5- Not sure, it depends on makes and models. But you're looking at at least £1000.
6- Are their any existing systems around, which would save you money in the long run?

Good luck with it - Regards;
Shane Russell2nd Line Desktop SupportCommented:
I say not access , because it has limitations on how many people can access it at anyone time and its not really meant for commercial use !
Cloud Class® Course: MCSA MCSE Windows Server 2012

This course teaches how to install and configure Windows Server 2012 R2.  It is the first step on your path to becoming a Microsoft Certified Solutions Expert (MCSE).

sokhodomAuthor Commented:
hi guys,
Thanks very much for the info. Here some parts i'd like to hear some more comment:

So for open source RDBMS should be MySQL whereas the programming language of choice would be VB or VB.NET as i am more familiar with that. Do you think that match perfectly? Speed wise, security and other stuff?

Some more about networking part: Do you think updating database in realtime to the main sever will cause a problem? and slow down the updating of the databse? << I mean what type of database updating should i adopt? for example: store every database( price of each product etc.) in each terminal and update to the main server only at the end of the day. OR Updating real time to the main server is better?

I agree with IM and gecko's recommendations for the most part.  I wouldn't rule out wireless connectivity, however.  The current routers/nics support excellent encryption features (some of the older ones only supported weaker encryption technologies).  You will need to do a "site survey" before you decide on either wireless or wired.  Ethernet cables cannot exceed 100 meters in length... and if you install wiring jacks in the runs you will need do reduce that length to perhaps 90 meters to account for some small losses introduced at each connection point.

It's true that wireless routers/nics may cost a bit more than their wired cousins but if you catch them on sale (Compusa, BestBuy, etc) they can be nearly as cheap.  I just bought a Belkin 54g 4-port router and USB nic for about $35 (after rebates) last month.  Wireless offers an awful lot of convenience, flexibility, and ease of installaton if it works in your environment.  I'd recommend getting a router and nic to test with.  There is a distance factor with wireless also, but it will depend more on what might interfere with the signal (such as passing through metal barriers, being close to other electronic equipment (especially 2.4 GHz phones), etc.

You need to measure the distance between the two terminals that will be the farthest apart.  I'd recommend locating a server midway between them if you can (you probably want it to be in a more secure area than out in the open part of the market).

I agree with coding the app in Java, C#, or VB.Net (or anything else you might be more familiar with).  Since this is a new application, I'd hesitate to use an old technology such as VB6.  There's not much point starting out with a tool that is losing support from its creator.  RealBasic would also be a good choice.

Also, MySQL is an absolutely great backend to use.  And like gecko said, do not use Access under any circumstances.  If you want to stay with a Microsoft product, then download the free MSDE 2000A database (be sure to search the web for a freely available Management Tool for it because, unlike the other versions of SQL Server 2000, MSDE doesn't come with Enterprise Manager or Query Analyzer)... it wiill be more than adequate for this project.

Shane Russell2nd Line Desktop SupportCommented:
I would have to say VB.NET then in that case just because it is the OOP version of Visual Basic and it would probably be more suited for mysql , Visual Basic can still do it but the choice between the 2 is entirely up to you :)

It depends because if you update it in real time you will need validation with regards to making sure that what is being updated or w/e isnt being updated to something that is invalid or even if one person updates it then someone else updates it again, how do you know which update(s) are valid or even if they need updated ?

Then again if you leave it till the end of the day, then someone will have to go through everything and determine and figure out what is to be updated and that is a lot of work.

So it may be worthwhile even though it is harder just to basically update it in real time with relevant validation checks etc.

Security will probably involve passwords and encryption and different user levels ( read only, read and write, write only and such like )

Speed will vary on a lot of factors with regards to the coding of the application, the connection between the application and the database as well as how many people are using the database at anyone time. Correct me if I am wrong !!

imho - those are things that I think would effect speed etc.

Anyway I hope this gives you a little insight, hopefully other experts can give you a more in depth view or advice on this :)
sokhodomAuthor Commented:
Thank you once again :) I really appreciate any input. Thank you Lynn for pointing out on the 100meter stuff.
How about the interfacing with Hardware? will it pose any problem using VB.NET?

I wonder if there is any sample of real application or any article to get me start on building such application?

With Regards,
Shane Russell2nd Line Desktop SupportCommented:
With regards to what JesterToo Said, I would highly reccomend linksys and 3com with regards to networking equipment ! Just for there reliablity and customer support ( well at least for linksys because I have not had any 3com equipment ) however I have had a lot of people vouch for 3com and have seen that there stuff is pretty good so not trying to be negative about 3 com in anyway :)
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.