Google Answers Logo
View Question
 
Q: Creating a Web Based Business Application/Database ( Answered 5 out of 5 stars,   2 Comments )
Question  
Subject: Creating a Web Based Business Application/Database
Category: Computers > Programming
Asked by: mike36-ga
List Price: $100.00
Posted: 15 Mar 2006 16:50 PST
Expires: 14 Apr 2006 17:50 PDT
Question ID: 707761
Background:
I am a new employee at a small business in Vancouver (BC, Canada)
where we do not have the resources for a full time I.T. person.  I
have taken it upon myself to try to improve our current operations by
replacing a paper-trail product order and filing system with an
internet based system and database.

Current Situation:

The business is primarily a distributor of medical implants used in
surgeries.  Sales representatives currently fax a paper order for a
range of ?parts? they will need for a planned surgery to the office,
and a paper copy is kept in a file.  A range of sizes of implants
(?Parts?) are shipped out to the hospital where they will be needed,
and part numbers and lot numbers (to be kept in case of recall) are
written in a ledger as the products go out.   Once the surgery is
completed the representative returns the parts that were not used
(wrong size) and a paper invoice is issued for the parts that were
actually used.  The part numbers and lot numbers that were used in
surgery are logged in a binder.

What We Need:

I would like to replace this system with an internet based system.  I
envision a website the sales reps can access where (after logging in)
they pull up an order form and place their order, including a myriad
of additional information (doctor, hospital, time of surgery,
instruments required, surgery type, etc.,etc.).  The order would be
given a file number and all the data would be saved in a database on a
server in the office and electronic versions of the form would be sent
to appropriate people in the organization (shipping, invoicing, etc.).
 In addition, a calendar function would be built in so that the
surgery date could be logged and all surgeries could be viewed from
the internet portal on a master calendar so that everyone with access
will know what is scheduled.  There is currently a bar scanner in the
wharehouse which is used to collect product information of parts as
they come from the supplier (it is connected to the suppliers system).
 I would like to integrate this tool into our system to collect parts
data as we ship to the hospital and when unused parts are returned so
that part numbers and lot numbers of products used will be kept
automatically in the database file that is created when the initial
order form was filled out.

Hardware Situation:
The company does not have a dedicated server or local area network in
place, however, we will be having one with file sharing and print
sharing installed in the near future with the help of an affiliated
company's (supplier) I.T. personel.  Shortly thereafter I will
contract someone to build us a website.  The server should be big
enough to hopefully be able to run the order application/database
system I am envisioning.  The bar scanner mentioned above is hooked up
to a computer which is tied to the supplier with the supplier?s
software for order tracking, however we own the computer and scanner. 
The office is small, and currently there are 6 employees working here,
each with a stand alone computer, but with access to internet and the
suppliers order system and intranet.

Problem:
I am not certain of the best, most efficient (time and money) way to
create the web based application I am thinking of and get it up and
running.  I will need to hire someone individually or hire a
consulting firm to take this on, however, cost control is imperative.
 
Four specific questions I would like help with:

1.	What software/hardware packages and type of system(s) will I need
to do the job and what function will each have?
2.      Which of these software/hardware packages already exist for
purchase and what is their estimated cost? Is it realistic that I am
able to create this solution on my own given that I have only limited
knowledge and minimal programming experience?
3.	Who can I call (preferrably in my local neighborhood of Vancouver
but not absolutely necessary) who does this sort of consulting work
and what might the cost be for the project?
4.      Is there a standard type of Request for Proposal or Request
for Quote I can use to get price indications for this project so I can
begin the process of hiring someone if that is the route you
recommend?

Please let me know if you need additional information.

Request for Question Clarification by answerguru-ga on 15 Mar 2006 22:16 PST
Hello Mike,

I took particular interest in your question since
a) I'm also based in Vancouver, and
b) I do quite a bit of software consulting (mostly web-based projects)

From your question, I get the sense you would like a high quality
solution at the end of the day. You should be aware that there are
several consulting firms (big and small) in the Vancouver area who
specialize in these types of projects. However, your cost could run
(from what limited information you've provided) between $15K to well
over $100K when you consider both hardware and software. It pays to be
well-informed regarding exactly what you need and potential solutions
that are available.

I can answer your questions #1 and #2, but you should keep in mind
that if your business has to deal with specialized information (which
it seems it does), then your package options may be limited, and a
customized solution should be seriously considered. My answer would
fully cover these two areas in terms of both package and custom
solution options available.

Regarding #3 and #4, I believe you should split this part out into
another similarly priced question. The bulk of the effort on this
question is concerning the RFP - as there is no "standard" a complete
answer would need to cover what the main sections are and how it would
need to be structured. You may direct this question to me if you wish
to do so.

Please let me know what you think about the above and how you would
like to proceed.

Cheers,
answerguru-ga

Clarification of Question by mike36-ga on 16 Mar 2006 09:31 PST
I am on board with your suggestion.  How can I direct the second
question to you?  Shall I create a new one?

Request for Question Clarification by answerguru-ga on 16 Mar 2006 10:39 PST
Great - for the second question you can just create the question with
"(for answerguru-ga)" appended to the title.

Clarification of Question by mike36-ga on 16 Mar 2006 11:02 PST
Please answer only questions 1&2 under this question for $100.  I am
creating a new question for #s 3&4.

Request for Question Clarification by answerguru-ga on 16 Mar 2006 11:07 PST
Will do - I will get started on this shortly.

answerguru-ga
Answer  
Subject: Re: Creating a Web Based Business Application/Database
Answered By: answerguru-ga on 17 Mar 2006 00:45 PST
Rated:5 out of 5 stars
 
Hello Mike,

Based on the scenario you've provided, I have provided answers to your
questions #1 and #2 below. Before being able to provide further
analysis, it is worthwhile to break down the major requirements of the
system and the environment within which the system will run.

Informal requirements/objectives of the new system:

1. Eliminate physical paper trail in favour of database system.
2. Users (sales reps) access the system via a web browser; there is
software installed on user machines)
3. Database and application server are to be physically located on premises.
4. Purchase of supporting hardware (database and application servers)
will be required.
5. Purchase of networking capability (Internet access)
6. Major features include:
(a) Ability to place new orders via a web form
(b) Ability to share order forms across multiple departments
(c) Surgery calendar
(d) Integration with supplier to obtain parts data via barcode scanning
(e) Tracking of parts as they are shipped, returned, etc.

Now, on to the questions at hand (I've rephrased them slightly to
reflect the way that this answer is being presented).

Question #1: What software and hardware will be required to implement
a system like this?

First, let's address the major hardware/networking components
necessary to get this system up and running:

A. Physical server(s)

Servers are used to host your website, web application, and database
server. The reason I indicate you may need more than one is purely due
to my own preference that a corporate file server should be seperated
from any databases or applications. Databases and application servers
should actually be kept seperate as well for larger applications but
you should be able to get away one in your case.

Dell is a popular choice as a server provider and has options
available for the full range of needs. It is reliable hardware with
good tech support in my experience. I used the Dell Server Advisor to
obtain cost estimates on servers I thought would meet your needs. It
came back suggesting the PowerEdge 1800, which you should budget about
$4K per server (it varies since you can configure it further depending
on specific components you may want to add/remove.

The Dell Server Advisor is available from:
http://www1.ca.dell.com/content/topics/topic.aspx/global/products/pedge/topics/en/server_advisor

Details on the PowerEdge 1800 configurations are available here:
http://www1.ca.dell.com/content/products/features.aspx/pedge_1800

B. Client PCs

This one is fairly straightforward and essentially requires that all
of your users have access to a PC that has Internet access. Browser
and OS compatibility ease the development process, so it's best to try
and have a 'standard issue' of PC hardware for all users of the
system. Since you've mentioned that this is already in the works I
won't go any further here.

C. Testing Environment

Something that is often overlooked until the last minute is a testing
environment. Ideally this environment should be a replica of the
production environment and have it's own dedicated resources
(servers). The reason for this is so that the functionality of the
system can be verified prior to making it available to your user
group. You also want to make sure you have a testing database so that
your data integirty in production is not affected if ever you want to
make changes to the application. More on database servers in the next
section.

D. Server Facility (optional)

A best practice for organizations that don't have a dedicated IT
support staff is to keep their servers at a co-location facility. This
is essentially a managed datacenter that stores physical servers. It's
a much better option than having the server sitting next to Bob's
desk. Just something to keep in mind.

Here are a couple "COLOs" based in Vancouver:

Peer 1:
http://www.peer1.net/en/location.asp?city=501

BCHosting:
http://www.bchosting.com/colocation/vancouver.php


Next, we need to identify the software required:

A. Database Server

A database server is a software service that is responsible for the
storage and management of your business data. I've included a short
list of some of the more popular ones here. I've taken the liberty of
choosing a specific edition where applicable that is suitable for your
needs.

Microsoft SQL Server (standard edition):
http://www.microsoft.com/sql/editions/standard/default.mspx

Oracle (standard edition):
http://www.oracle.com/database/Standard_Edition.html

mySQL:
http://www.mysql.com/products/database/mysql/

The cost of a database server runs from free (for the open source
mySQL) to several hundred dollars for the MS and Oracle versions. The
difference is in the technical support and robustness of the higher
priced options.


B. Application/Web Server

Every web application requires an underlying service that is used to
serve content to users. This is not an expensive component, but the
choice is generally determined by the development tools you settle on.

The two main alternatives are IIS and Apache. Internet Information
Services is actually built into Windows operating systems and is
typically used to host Microsoft .NET web content. Apache, also free
and available for download, is the common choice for Java/J2EE web
applications.

C. Third Party Components

A popular phenomenon in the web development industry of late is the
use of third party components in web applications. Essentially what
this means is that the developer doesn't have to re-invent the wheel
to develop some functionality that is being offered as a packaged
component. In many cases, it is cost-effective to simply buy the
component and then customize/integrate it into your application. This
is something your contractor may bring to you, so it is good to be
aware of ahead of time. You generally wouldn't need to select such
components yourself, but rather approve their use within the system.

From what you've provided regarding system features, I believe you may
consider using something to provide you with calendaring functionality
(to support your sugery calendar). I found an example that could be
used within your your proposed system from ActiveUp:

ActiveUp: Active Calendar
"Active Calendar is an ASP.NET server control that allows users to
select a date and/or time quickly using a professional looking date
picker with a client-side managed event system. No postback to the
server required, no external script file required."
http://www.activeup.com/products/components/activecalendar/

The barcode scanning functionality is also a potential candidate for a
third-party component.

D. Development Tools

The decision of the development toolset to use is perhaps the most
significant and may be driven by the party you decide to do this work
for you. Depending on your arrangement, you may not even care about
this. Most consulting firms doing this type of work already have a
development environment ready and would just need to deploy the final
product to your production servers upon completion.

Nevertheless, below is a list of the types of software/tools
developers would need to create your system.

(i) Integrated Development Environment - this is the place where the
"coding" happens
(ii) Source Control Repository - a data store used to centralize
source code and other files
(iii) Design/modeling tools - assuming a thorough design is
undertaken, models are created (usually with UML) that represent how
the system should behave.
(iv) Deployment tools - required to convert and package source code
into a format that allows for delivery into a production environment


Question #2: Is there already an existing package that meets my needs,
and if so, what is its estimated cost?

I did an extensive search for packaged software that met your
requirements, and unfortunately there is nothing that is even close to
what you are trying to do. You can imagine that your company operates
in somewhat of a niche market - this means that the data your need to
manage is somewhat unique.

There are packaged systems that do the generic order processing, but
these are not in line with what you are trying to achieve. As a
result, I would suggest that this particular project be undertaken as
a custom web development effort. The benefit of this is that you will
be able to tailor the software to meet your current and future needs
without the need to conform to a product. The downside is that this is
not plug-and-play; you will need to be patient and work with your
contractor(s) to capture your vision in the software.

It is important that you are careful and that you limit your
functionality requirements to the absolute essentials. A good way to
do this is the following:

1. Brainstorm a "laundry list" of features
2. For each feature/functional area, mark it as "Need" or "Want"
3. Include your set of needs in your RFP
4. Retain your full list for potential future improvements

The next factor to consider is your time frame; in other words, how
long can your organization wait until the software is ready to use?
This expectation is something you need to express up front as this is
the other major determinant of overall system cost.

Since you are in the very early stages of hashing out the requirements
of this system and don't have a defined timeframe yet, I will hold
back on giving you an estimate on cost. However, keep the following in
mind:

1. Developing the system is not the end of it - you will need to
ensure your investment is protected by having support, periodic
application maintenace, and data backups. Budget for an overall
maintenance cost of about 10% of the total development cost for each
year the system is in use.

2. Projects quoted on a "time and materials" or "fixed bid" basis. The
first is essentially an hourly or daily rate for the people you need
to complete the work (usually up to some ceiling based on an
estimate). The second is a flat amount that doesn't change regardless
of how much effort is actually required - be careful here as sizeable
contingencies are often built into these types of bids to cover the
risk.


Hopefully the information above familiarizes you with the requirements
for developing a web application. If you have any questions please do
post a clarification and I will respond promptly. I will be looking
into the second part of your question shortly.

Cheers,
answerguru-ga

Request for Answer Clarification by mike36-ga on 17 Mar 2006 09:45 PST
This is GREAT information.  Our main supplier (major public company)
has an I.T. dept that we call on for help now and again, as we have a
friendly relationship and they are motivated to keep us running
smoothly.  I was talking with the guy there about putting a server and
LAN system with print/file sharing into our office as a first step in
this process and I offered to fly him out here for a weekend to
install and set it up for us when we did it.  He was happy to ablige
on our dime as he likes it out here on the west coast.  He mentioned
that he could perhaps get his company to sell us a server that they
have been using that is coming off lease.  The server he would sell us
is an HP DL 380 Proliant G4, which he said they would probably sell
for $500-600 or so.  Is this sufficient for our needs?  He recommended
we also put in redundant additional drives of 100GB or so, in addition
to the existing 36GB drives that it comes with.  This sounds like a
great deal if it will work.  What do you think about this as a server?
 Also, do you think we should wait to do this or make the server
integration part of the total package we would probably go RFQ for?

I consider this question answered, but if you could comment on this it
would be appreciated!

Clarification of Answer by answerguru-ga on 17 Mar 2006 14:01 PST
Hi Mike,

I'm glad you found the answer helpful. Regarding your follow-up
question, I would gauge the value of the offer for the HP server by
going to Dell's website and trying to configure something with similar
specs. Keep in mind that you would be getting a new server that is
still under warranty and maintenance contract (I don't know if that's
true with the HP). Although the price may be tempting, the fact that
it's used and you are thinking of making further modifications to it
makes me cautious to endorse it.

For the RFQ, I wouldn't specifically say that you want XYZ hardware
components as it is usually something a contractor would advise on
what they suggest and then pass it forward at cost. Different software
solutions presented in proposals may also require slightly different
hardware, so you don't want to limit yourself to certain choices this
far in advance. Since you already have an idea of what you will need,
you can use that as a measuring stick against proposals you receive.

answerguru-ga
mike36-ga rated this answer:5 out of 5 stars
This was great help, exeptional answer very thought out and organized.

Comments  
Subject: Re: Creating a Web Based Business Application/Database
From: vamshi_pavan-ga on 17 Mar 2006 11:00 PST
 
You could have a look at this FREE solution http://nola.noguska.com/
It's software that contains accounting, inventory, point of sale,
contact management, billing, purchasing, and reporting all in one
integrated package.
Subject: Re: Creating a Web Based Business Application/Database
From: golfresearcher-ga on 21 Mar 2006 13:52 PST
 
Also, look into DotNetNuke. 

http://www.dotnetnuke.com/Home/tabid/510/Default.aspx

The product is free (always a good thing). 

You can have it hosted on many web hosting sites - including godaddy.com

You can then buy modules that accomplish much of what you have
outlined and the great thing is that it requires minimal if any
knowledge of HTML or other web programming languages..

Important Disclaimer: Answers and comments provided on Google Answers are general information, and are not intended to substitute for informed professional medical, psychiatric, psychological, tax, legal, investment, accounting, or other professional advice. Google does not endorse, and expressly disclaims liability for any product, manufacturer, distributor, service or service provider mentioned or any opinion expressed in answers or comments. Please read carefully the Google Answers Terms of Service.

If you feel that you have found inappropriate content, please let us know by emailing us at answers-support@google.com with the question ID listed above. Thank you.
Search Google Answers for
Google Answers  


Google Home - Answers FAQ - Terms of Service - Privacy Policy