Solved

Building a dabase for a network of users. I need your thoughts.

Posted on 2006-10-29
7
289 Views
Last Modified: 2010-04-16
Greetings,

I am a recent computer science graduate and I am developing a small (but growing) software application for my employer.  The design of the application is in its infancy and I am in need of “Experts” who can coach my direction with its development.  

Application Information:
      
-      The  application will be used to collect, process and publish information in real time.  I intend to leverage a platform independent user interface and a database backbone to accomplish this.

-      initially the application will be used by 300 to 400 users – but this may quickly increase to something between 3,000 and 10,000 users.

-      The application will need to display information from the DB to the user, and allow the user to update that information relatively quickly.

-      The application will need to produce reports for the user – similar to the reports in MS Access ( I WILL NOT USE MS ACCESS.)

Development tool information:

-      I can code in C#, SQL, VB, C++, and a variety of other popular languages.  I am most comfortable with C# , C++, and SQL.  I very much enjoyed using visual studio but have not fully explore how easily it integrates with a declarative language (SQL).  After some initial research, I am seriously considering using Visual Web Developer and MS Sequel Server.  I am a novice at integrating SQL with other languages.

-      I need to find a good reference (preferably a textbook) that can aid my understanding of how databases, and platform independent user interfaces are appropriately designed.

Given this information, I now need your thoughts on ANYTHING that will be useful for me to know about the above issues, or others, that I have not even addressed.

Thank you for your time,

-Travis
0
Comment
Question by:travishaberman
7 Comments
 
LVL 17

Assisted Solution

by:CSecurity
CSecurity earned 150 total points
Comment Utility
When you are going to manage large amount of users, your application should be so dynamic and should be coded properly to be able to support such users.

If you are going to have large amount of data in SQL and alot of queries, I suggest you to use Oracle database. Fast, secure, but not easy!

If this software will be client/server based, I suggest you to have good authentication and encryption support and if it is available run the server in a different platform such as Solaris and code server in Java.

If you think your clients can use different operating systems, I suggest you to code in Java as it is most OS independent language.

Ask your questions and I'll try to answer them...
0
 
LVL 3

Accepted Solution

by:
herreruud earned 250 total points
Comment Utility
Given that you are in need of both a good DB Server, that you are comforatble in C# and need something that integrates easily (DB & Logic) I'd say you should definetly go with Visual Studio 2005 + SQL Server 2005. This will allow you to write in C# and T-SQL, Visual studio even has Wizards that will help you utilize your SQL and it let's you use Crystal reports for reporting.

I would have to disagree with CSecurity on reccomending java on the grounds of beeing platform independent; as long as you're coding a web-app the only dependency you will be creating is to the server OS.
0
 
LVL 17

Expert Comment

by:CSecurity
Comment Utility
>> The  application will be used to collect, process and publish information in real time.  I intend to leverage a platform independent user interface and a database backbone to accomplish this.

- So OS indepentance is needed! Also I think for large options and supporting such large users you need to have client/server based software. Not web interface as web interface is limited.
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 4

Expert Comment

by:hclgroup
Comment Utility
I disagree with CSecurity.
Large number of users is not a limitation web-based application (quite the opposite is true).
0
 
LVL 17

Assisted Solution

by:CSecurity
CSecurity earned 150 total points
Comment Utility
Large number of users isn't limitation for web-based application.
Web-based application have limitation in coding... For example deploying cryptography and sending custom commands to clients or broadcasting live and stream data... And alot of other limitations!
0
 
LVL 4

Assisted Solution

by:bdunz19
bdunz19 earned 100 total points
Comment Utility
Hi Travis,
I myself, am currently working on such a project (90% complete). I want to give you an idea of how I went about completing this task to create an infinitly expandable application.

My design started around my off premise database, which is on a very powerful server and could be expanded via cluster services (running on windows 2003 server). The next step was to develop a way for this information to be accessed from anywhere in the world, but to have limitations on that access. So I created a service in Win32/C++ that sits on a server with access to the database, that listens on a spec. port for incoming connections (TCP). Services are applications that are monitored by the operating system and can be started as a SYSTEM user so that no login is needed for the application. The connections pass their autorization information, and once validated they are then able to send packets that will actually respond with data from the DB. My client application, due to the complexity and situation, was written in MFC/C++ and stores login info in the registry for fast loggin in. This entire application is built upon a unique protocol that I created to satisfy the complex needs of the client applications (modeled after Cisco's SCCP/Skinny). I would recomend this route because you will quickly find how expandable this server/client situation can be. In the future - from our web site - we will be able to program a COM dll to interface with ASP to perform the same capability of the MFC client software from our web site!

As you can see, the most important peice of the puzzel to this project was our server service, that acts as the client autenticater and traslater. I chose Win32 for the speed and low overhead. Though I had to use some MFC (CDatabase/CRecordset) for the SQL interface ;). My favorite Code Projector, Nish, wrote a great beginners article on C++ services: http://www.codeproject.com/system/serviceskeleton.asp.

The key here, is flexablity and expandablity.

I hope this will serve as some insight for your project. Good luck,
Brandon
0
 

Author Comment

by:travishaberman
Comment Utility
Thank you for the insight one and all.  I will have more questions comming soon!  Thanks again, Travis...
0

Featured Post

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

This article is meant to give a basic understanding of how to use R Sweave as a way to merge LaTeX and R code seamlessly into one presentable document.
Although it can be difficult to imagine, someday your child will have a career of his or her own. He or she will likely start a family, buy a home and start having their own children. So, while being a kid is still extremely important, it’s also …
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now