Comments 0

Document transcript

various client side technologies and server sidetechnologies andundertakefurther research into those fields

and show how they relate to ecommerce.

In the ‘research’ sections I shall provide my research evidence and I shall then in my summaries,discuss each aspect. My final thoughts and decisions shall be contained in the conclusion section ofthis document which is located at the end of this report.

2.

Introduction

I have been asked to compile a brief, non technical report into the field ofecommerce. This reportshall briefly discuss the history ofecommerce and the various aspects involved in the development ofecommerce

including client side technologies and server side technologies. This report shall alsocontain brief explanations and discussions regarding various client and server side technologies andhow they relate to theecommerce sector.

3.

Technologies

3.1.

Client side technologies

“Client-side scripts run within theuser’s

browser, using the processing power of the users (client) computer. Theycan be written in any language supported by the browser; the most common is JavaScript, which is supported bymost browsers. Some browsers, such as Internet

Explorer, also support Microsoft Visual

Basic Scripting Edition(VBScript). Client-side scripting enhances Web pages with a variety of custom capabilities. For example, you canuse scripts to perform field edits and calculations, manipulate the client window, or validate form input. Scriptsnormally appear directly on the page they affect, but they can be used to manipulate the content of pages in anotherframe or browser window as well.”

(microsoft.com, 2007)

Commentary

Client side scripts run within the user’s browser meaning the user does nothave to wait for a response tohis/her request. One of the percs when using such a technique is the web server will not get bombarded withthousands of simple requests because it is all happing within the user’s computer, which means the webserver can run at a decent level constantly.

Page |2

3.2.

Server side technologies

“Server-side scripting is a web server technology in which a user's request is fulfilled by running a script directlyon the web server to generate dynamic HTML pages. It is usually used to provide interactive web sites that interfaceto databases or other data stores.”

(Wikipedia.org, 2007)

“The benefits of using a server-side configuration:

The main advantage is that it reduces the download size for end users by optimising what they actually download-

the stylesheet and script are processed on the server, and only include the code for the features you're actuallyusing-

so you get smaller and faster-loading menus.

The output code looks to the browser like regular CSS and javascript, and is cached just the same as it otherwisewould be. Depending on the options you use, the total filesize can be as low as 20K! For more details about thisparticular aspect, please see Reducing the filesize by removing features found athttp://www.udm4.com/manual/final/reducingphp/#final-reducingphp-removing

A server-side configuration also has the tremendous advantage that the styling can be generated as pure CSS, sothe manual process of generating a noscript stylesheet is no longer required.”

(udm4.com, 2007)

Commentary

Server-side technologies run directly from the web server, thus hiding the various scripts from the users.Server side scripts are use to interact withdatabases, and with the above mentioned point about hidingscripts from users, the scripts that govern the interaction between the web site and the database are hiddenfrom the user to.

Because server-side technologies run the web sites from the web server, when a userrequests a web site it loads quicker because only the requested information is sent to the users browser.

Additional information

One point that is critical to mention for this report is the antivirus strategy for client-side and server-sidetechnologies.

Please refer to appendix 1-

antivirus strategies.

In today’s market,viruses are

rampant. According to the BBC

(http://www.bbc.co.uk/science/hottopics/computerviruses/), there are 53,000 computer viruses in existence,with a new virus being detected every 18 seconds.

The “ILOVEYOU” virus infected up to 45 million computers, causing £7 billion worth of damage world-wide.

Page |3

4.

Brief Description of Ecommerce

4.1.

History

of Ecommerce

“History of ecommerce dates back to the invention of the very old notion of “sell and buy”, electricity, cables,computers, modems, and the Internet. Ecommerce became possible in 1991 when the Internet was opened tocommercial use. Since that date thousands of businesses have taken up residence at web sites.

History of ecommerce is a history of a new, virtual world which is evolving according to the customer advantage. Itis a world which we are all building together brick by brick, laying a

secure foundation for the future generations.”

(Ecommerce-Land.com, 2007)

4.2.

Current Development ofEcommerce

“Statistics show that the growth in internet sales is relentless & that there is a marked difference between thosebusinesses using ecommerce as a

tool & those that don’t.

Marks & Spencers recovery is in part due to its ecommerce activity . Tesco’s continuing growth is the same story.

Whereas companies that haven’t, such as Next HMV & MVC, suffered & complained about the impact of onlinesales ontheir businesses.

"There can no longer be any doubt that the internet is a major part of the

retail landscape,

and that it will dominate the retail agenda for the next

several years" BBC News quote.

(idat.co.uk, 2007)

Ecommerce has comeon in leaps and bounds since the early 1990’s.

There have been majorimprovements in the areas security, standards, functionality and accessibility.

There is no doubt thatto survive in today’s ‘virtual’ commerce world market, companies have to have their products orservices advertised online, as stated above in the idat.co.uk statement with the examples of companieswith ecommerce and companies without.

4.3.

Future Development of Ecommerce

“In the coming year, five years, and ten years the only thing that we canbe sure of in relation to ecommerce is thatnothing will stay the same. The development of more intelligent based systems will make browsing easier contentwill be pushed rather than pulled. Vendors will benefit in more sales of products that customers will not otherwisethought of buying. The technology will be less important than the strategy the only limit will be the bravery of themanagement teams involved, technically anything is possible. The internet and EC will become part of the way welive oureveryday lives a measure of its success will be by how much we realise it.”

(consult-accountacy.com, 2007)

The only area I think is important to mention from the above statement is the fact that the internet andecommerce will constantly be getting updated and improved in most areas whether it be software orhardware. The future for online businesses will simply improve because more products shall be onoffer and made more available to the public. As the generations grow up, more and more people willbeusing computers in regards with online shopping which in turn means more ecommerce websitebeingsetup.So unless there is a nuclear fallout, ecommerce is here to stay.

Page |4

5.

Technologies Involved in Ecommerce

5.1.

Introduction

“According to Netcraft, a companythat keeps statistics on the leading web servers and the platforms on theInternet, the most popular platforms and web servers are:



UNIX and Linux running Apache web server (60.17%)



Window NT/2000 running Internet Information Server (IIS) (30.78%)”

(Lowest-price-hosting.com, 2007)

According to the Netcraft survey shown above, it is maderatherclear which platforms and

webservers are being most commonly used in today’s ecommerce market. There are of course variousother platforms and web servers availablefor

use, but for the sake of this ‘brief’ report, I shall befocusing onidentifying and researching

into the field of

platforms, web servers, databases andscripting languages

being usedinopen sourcetechnologies

and Microsofttechnologies.

5.2.

Open Source:Linux running Apache web server

*LINUX is a UNIX-likebasedoperating system and is one of the most prominent examples of freesoftware and open source development.

“LINUX is the cornerstone of the LAMP server-software combination (Linux, Apache, MySQL, andPerl/PHP/Python) which has achieved popularity among developers, and which is one of the more commonplatforms for website hosting.”

(Wikipedia.org, 2007)

In accordance with the above statement from Wikipedia, I shall endeavour to research and explain themain areas involved in the open source website hosting technologies.

LAMP refers to a solution stack of software;this is often

open-source software

and

used to rundynamic Web sites or servers.

L(inux)

-

platform

Please refer to the abovemarked *

description of LINUX.

A(pache)

–

web server

“Apache has been the most popular web server package on the Internet for over a decade. Netcraft’s November2005 Web Server Survey shows more than 70% of all websites on the Internet use Apache. Apache is ideal forcompanies using web design, content, and interactivity tools. Apachesupports TomCat, languages like PHP andPerl, and other popular products like Adobe® Macromedia® Flash®.”

(redhat.com, 2007)

Apache is mostly used for UNIX, Linux and Solaris platforms.

Apache can handle great server loads and run on sites that get millions

ofhitseveryday

without anyproblems.

Apache isstable, it's highly configurable and it’s free.

Page |5

M(ySQL)

-

database

“MySQL is a relational database management system (RDBMS). A relational database stores data in separatetables rather than putting all the data into one large repository. Doing so adds tremendous speed and flexibility.

RDBMS's play a central role in many types of eCommerce and eBusiness solutions.

Amazon.com and eBay.com areexamples of complex eCommerce solutions that depend on database applications to transact business with theircustomers and partners.”

(Panorama-publishing.com, 2007)

“MySQL is easy to use, yet extremely powerful, secure, and scalable. And because of its small size and speed, it isthe ideal database solution for Web sites.

Some of its advantages include the following:



It's easy to use: While a basic knowledge of SQL is required—and most relational databases require thesame knowledge—MySQL is very easy to use. With only a few simple SQL statements, you can build andinteract with MySQL.



It's secure: MySQL includes solid data security layers that protect sensitive data from intruders. Rights canbe set to allow some or all privileges to either individuals or groups. Passwords are encrypted.



It's inexpensive: MySQL is distributed under the GNU General Public License (GPL) and available by freedownload from www.mysql.com.



It's fast: In the interest of speed, MySQL designers made the decision to offer fewer features than othermajor database competitors, such as Sybase and Oracle. However, despite having fewer features than theother commercial database products, MySQL still offers all of the features required by most databasedevelopers.



It's scalable: MySQL can handle almost any amount of data, up to as much as 50 million rows or more.The default file size limit is about 4 GB. However, you can increase this number to a theoretical limit of 8TB of data.



It manages memory very

well: MySQL has been thoroughly tested to prevent memory leaks.



It runs on many operating systems: MySQL runs on many operating systems, including Novell NetWare,Windows Linux, many varieties of UNIX (such as Sun Solaris, AIX, and DEC UNIX), OS/2, FreeBSD, andothers.



It supports several development interfaces: Development interfaces include JDBC, ODBC, and scripting(PHP and Perl), letting you create database solutions that run not only in your NetWare 6.5 environment,but across all major platforms, including Linux, UNIX, and Windows.”

(Panorama-publishing.com, 2007)

P(HP)

–

scriptinglanguage

PHP is a reflective programming language designed for producing dynamic web pages. PHP is mainlyused in server-side application software.

Examples of PHPinaction:

http://www.properties-in-europe.com/

-

A European property portal, which has a searchable database of properties.

comparison between how the ASPupdates its dynamic information from the database as compared to the CGI approach.

Fig. 1 CGI and ASP access to Databases

Figure 2 shows how the interaction between the Web server and the database takes place on a Windows NTplatform.

Fig. 2 ASP script with ACCESS Database on IIS

Page |7

The Unix based system uses Apache for an HTTP Server and implements, amongst other languages, PHPfor scripting purposes. Figure 3 shows how PHP updates its dynamic information from the database on aLinux platform.

Fig. 3 Linux implementation of PHP access to Databases

Figure 4 shows how the interaction between the Web server and the database takes place on a UNIX / Linuxplatform.

Fig. 4 PHP script with SQL Database on Apache

Page |8

5.3.

Summary

In regards to theLinux

platform, it is open source, so it is free.The only negative aspect which I thinkis important to mention is the fact thatLinux

distributions

are often aimed at specialised fields andrequire a certain level of knowledge in regards to installing, running and maintaining aLinux

major pros and cons of Linux versus Windows for the corporate desktop?

The reason I picked apache web server is because it (a) comes as part of the bundled softwarecollection in Linux systems, (b) apache is customizable meaning you can build a server that is “madeto measure” (c) apache is efficient in regards to a lot of effort has been put into optimizing the apacheC code for performance, (d) apache runs on a wide variety of operating systems as mentioned insection5.2,

and finally (c) apache is supported by the Apache Group which consists of a large numberof dedicated users

which means quick support response.

The reason why I picked PHP and MySQL for this report is mainly because they complement eachother. PHP collects data, and MySQL can in turn

store the information. PHP can create dynamiccalculations, and MySQL can provide it with the variables it uses.PHP can create a shopping cart foryour web store, but MySQL can then keep the data in a format PHP can use to create receipts ondemand, show current order status, or even suggest other related products.

There are of course other variant to the LAMP system setup, for example:



WAMP = for Windows, Apache, MySQL, and PHP



FWIP = for Firebird, Windows, IIS, and PHP



WIMP = for Windows, IIS, MySQL, and PHP



WIMSA or WISA = for Windows, IIS, Microsoft SQL Server, and ASP



WISC = for Windows, IIS, SQL Server, and C#



WISP = for Windows, IIS, SQL Server, and PHP



WIPP = for Windows, IIS, PostgreSQL, and PHP

Page |9

5.4.

Microsoft:Window NT/2000 running Internet Information Server (IIS)

“Windows NT/2000 is graphic-based, multitasking Operating Systems developed over the past few years byMicrosoft. Both can act as standalone OS for personal computers/workstations, or can serve as an OS for a Website/network. Most Web hosting companies and resellers offer Windows-based hosting in some capacity or other.”

(studiodog.com, 2007)

Windows NT/2000

–

platform

Please refer to the above statement.

IIS

–

web server

“(Internet Information Services) Microsoft's suite of

Internet-related software included with the Windows 2000 andabove operating system software. IIS provides both FTP server and web server capability.”

(digitalsignagetoday.com, 2007)

“Short for Internet Information Server, Microsoft's Web server that runs on Windows NT/2000 platforms. With IIS,Microsoft includes a set of programs for building and administering Web sites, a search engine, and support forwriting Web-based applications that access database.”

(ebusinessoftware.co.uk, 2007)

Access/MySQL

–

database

“Microsoft Access is a relational database management system from Microsoft which combines the relationalMicrosoft Jet Database Engine with a graphical user interface and software development tools.

Access can use data stored in Access/Jet, Microsoft SQL Server, Oracle, or any ODBC-compliant data container.

Access is used by small businesses, within departments of large corporations, and hobby programmers to create adhoc customized desktop systems for handling the creation and manipulation of data. Access can be used as adatabase for basic web based applications hosted on Microsoft's Internet Information Services and utilizingMicrosoft Active Server Pages ASP. Most typical web applications should use tools like ASP/Microsoft SQL Serveror the LAMP stack.”

“MySQL is a true multi-user, multithreaded SQL database server. MySQL is fast and flexible enough to allow youto store logs and picturesin it. Its main goals are speed, robustness, and ease of use.”

(vitalnet.net, 2007)

ASP.net/SQL

–

scripting language

“Microsoft ASP.NET is a free technology that allows programmers to create dynamic web applications. ASP.NETcan be used to createanything from small, personal websites through to large, enterprise-class web applications.”

(msdn2.microsoft.com, 2007)

“SQL is a standard interactive and programming language for getting information from and updating a database.Although SQL is both anANSI and an ISO standard, many database products support SQL with proprietaryPage |10

extensions to the standard language. Queries take the form of a command language that lets you select, insert,update, find out the location of data, and so forth. There is alsoa programming interface.”

(Wikipedia.org, 2007)

“Structured Query Langauge. SQL is a special-purpose, nonprocedural language that supports the definition,manipulation, and control of data in relational database management systems.”

(rtlabs.com, 2007)

5.5.

Summary

To be honest, I don’t think there is much to say in this summary. Microsoft systems and their setupsare easy to learn, easy to use and comes with very good support help. The negative side aboutMicrosoft is the setup cost.

Obviously the windowsserver has been upgraded from the windows nt/2000 system I discussed insection 5.4. The current windows server is windows 2007 but at the moment a beta version ofwindows server 2008 is available to download and install.

In regards to the database management software, Microsoft access is relatively easy to use, but is inmy opinion only suitable to small to medium size businesses. For bigger operations something likemySQL or even oracle systems would be better to use purely because they can handlea lot