Wednesday, August 27, 2008

Website

A website (alternatively, web site or Web site, a back-construction from the proper noun World Wide Web) is a collection of Web pages, images, videos or other digital assets that is hosted on one or more web servers, usually accessible via the Internet.

A Web page is a document, typically written in (X) HTML that is almost always accessible via HTTP, a protocol that transfers information from the Web server to display in the user's Web browser.

All publicly accessible websites are seen collectively as constituting the "World Wide Web".

The pages of websites can usually be accessed from a common root URL called the homepage, and usually reside on the same physical server. The URLs of the pages organize them into a hierarchy, although the hyperlinks between them control how the reader perceives the overall structure and how the traffic flows between the different parts of the sites.

Some websites require a subscription to access some or all of their content. Examples of subscription sites include many business sites, parts of many news sites, academic journal sites, gaming sites, message boards, Web-based e-mail, services, social networking websites, and sites providing real-time stock market data. Because they require authentication to view the content they are technically an Intranet site Intranet.

Roughly speaking, there are two kinds of Web sites: those with static content and those with dynamically generated content. These are also called static Web sites and dynamic Web sites, or Web sites with static pages versus Web sites with dynamic pages.

What is Web content? Content is everything that can appear on a Web page: text, graphics, form fields, hyperlinks to other pages, navigation buttons, menus, etc.

Static Web Sites

For a static-content Web site, all content appearing on Web pages is placed manually by professional Web developers. This is also called "design-time page construction," because the pages are fully built while the site is being developed. Static-content Web site is developed and then maintained by experienced professionals. Such Web site usually costs less when initially developed, but then all future changes still have to be done by Web professionals. Therefore a static Web site can be more expensive to maintain, especially when you want to make frequent changes to your site.

In the case of static Web sites, all the pages are fully constructed by Web designers; any subsequent changes also need to be made by them.

Such pages are called "static" because their content doesn't change dynamically - the only way to change them is to have a Web designer modify them explicitly.

Example

To better understand Web sites with static content, let's consider the following example.

John owns a small bakery. One day he decides to advertise his business on the Internet. On his Web site, he wants to put information about breads, rolls, bagels, doughnuts, and cakes his bakery makes. Few times a year he comes with a new kind of bread or cake, so he would like his Web site to be updated when this happens. In addition, he wants to have a map with directions to help new customers with locating his bakery. He also decides that he is not going to sell his baking goods online.

Correctly, John selects static-content Web site: he is not going to have many changes to his Web site. This also helps him keep the initial Web site development costs down.

Few months later...

John's new Web site proved to be quite a success: he got new customers. But now they have to wait longer because the line is longer... So he starts to think about hiring a new person to speed up the ordering line. However, many customers, especially these who found him online, keep asking about ordering his baking goods online. In most cases, they told him that they would like to order the day before and then the next next morning just stop by to quickly pickup the order. John likes the idea, because this would reduce the line and help him in better planning while reducing the waste. However, he is aware that adding credit card transactions online might be too costly. But if he could just receive emails with orders...

To John's surprise, the changes required to support online ordering where not very costly: a simple shopping cart had to be added to his site, but other than that the content on his site remained static.

Summary

Based on the above discussion, we can summarize when a static-content Web site is a good idea:

Pages on the site are not going to change frequently. This applies to cases when:

you don't have to frequently change text and graphics on your main pages;

the products and/or services your company offers don't change much over time..

The list of products and/or services is not very long and individual pages describing them can be easily constructed.

There is no need for a sophisticated online ordering system. This means that you either don't plan to have online orders, or you will be fine with a very simple, email-based ordering system. Such ordering system supports basic shopping cart functions like selecting multiple items and calculating the total amount owned. Once the order is confirmed, it is delivered to you by email.
However, this simple ordering system cannot support advanced features like order tracking, long list of available products, verifying availability of requested items against what you have in stock, automatic stock tracking, online credit card transactions, and the like. If you require any of the above advanced options, you will need a dynamic Web site.

You don't need to have your Web site in any way connected to your back-end system.

The Web site itself is not offering any services to the visitors.

Dynamic Web Sites

On the other hand, pages in a dynamic-content Web site are constructed "on the fly" when a page is requested from a Web browser. Dynamic-content Web site, while still developed by professionals, can be maintained directly by you, our customer. Such Web site initially costs more to develop, but then you don't have to pay Web professionals every time you need to change something on your site. If you plan to make frequent changes to your site, you most likely will be better off with a dynamic Web site.

In the case of dynamic Web sites (a.k.a. database-driven Web sites, or Web applications), page content is generated based on some information usually stored in a database or resulting from processing the inputs provided by the Web site visitor. This information , and thus the corresponding pages, can be changed by you and/or the visitor at any time.

The pages are called "dynamic" because their content is generated "on the fly" each time a page is requested by the Web site visitor. Of course, typically dynamic Web sites also have some static pages, too.

Next, we will walk you through several examples to get you familiar with what can be achieved with dynamic Web sites.

First Example

Diana and Tom are music teachers. They both give piano and violin lessons to children. They have a number of dedicated students who come for lessons every week. But they also offer ad-hoc tutoring, especially for children playing in school orchestras that need more help before a scheduled concert for parents. Scheduling such ad-hoc lessons is time consuming: it usually requires several phone calls between them and parents to confirm availability.

Tom and Diana want to have a Web site describing and advertising their piano and violin lessons. In addition, they want potential students or their parents to be able to see available time slots and schedule lessons using an online calendar. Both Tom and Diana would each enter their already scheduled classes into the calendar and would also like to block some time as not available. Additionally, they want to be able to see who is scheduled for any day and time, but they don't want anybody else see such details: the "publicly visible" calendar should just display time availability.

Implementing such online calendar with scheduling capabilities requires pages with dynamically generated content. Additionally, part of the Web site will have to be protected with a special password so the access to it would be limited only to Diana and Tom.

Second Example

An online store is a common example these days. Many existing stores want to have Internet presence. Roughly speaking, there are three approach to online presence for stores:

Online store info - Web site contains only basic information about the store and offered products. Shoppers have to either visit the store in person or order a paper catalog.
Static Web site will be just fine for this approach.

Online catalog - clients can browse the catalog, see details of each catalog item, but they can't place online orders.
Although online catalog could be built as a static Web site, this is not a practical approach because frequent changes required to keep the catalog up to date will quickly surpass the cost of building dynamic Web site.

Online shopping - clients can browse and order products online. This means that the Web site not only provides the catalog of products, but also implements an "online shopping cart" that simplifies online purchasing.
Such Web sites are typically built as dynamic, database-driven sites.

Summary

To summarize, if any of the below conditions apply, you will most likely need a dynamic Web site:

You have to change your main pages frequently because you want to have people coming back to your site.

Products and/or services your company offers change frequently. This especially applies to stores.

You want to be able to quickly change product prices, mark some products as being on sale, offer special promotions, mark recently added items as new and automatically show new products on special pages, etc.

You will be frequently adding new products/services and removing some of the existing ones.

The list of your products or services is too long - time (and therefore cost) spent for developing the corresponding static pages would be larger than developing Web site based on a database of products and dynamically generated pages describing products.

You need to have a more complex ordering system capable of supporting one or more of the following functions:

checking availability of items against the stock,

maintaining the stock,

tracking orders with order status (like received, shipped, on back-order, etc.),

paying online with automated credit card transactions,

You Web site is to have advanced search capabilities, for example, by product brand name, by price range, by product specifications or parameters, by service type and time availability, etc.

You want to track your customers and possibly offer personalized services for them. For example, if a person bought a camera, you may want to show her or him matching equipment that is currently on sale. Or you want your clinic's Web site to pickup the assigned doctor when scheduling a new appointment.

Your Web site should do the mapping of customer needs to available services. This includes many different opportunities like online doctor appointment system, finding available time for music lessons, pre-selecting services based on several questions asked, at many more.

The Web site accepts some inputs from a visitor, processes it and generated the resulting page. In some cases, such processing could also modify some information in the database permanently affecting content some other pages show. For example, this includes a Web site that enables the visitor to find and book an available time slot for a music lesson; once booked, this time slot would not be shown as available to other visitors.

You need to connect your Web site to the existing back-end system.

0 comments: