HardwareSoftware Requirements

Hardware/Software Requirements

I often open my Web Project Management class at Merrimack College in North Andover, Massachusetts, with two statements. The first statement you are already familiar with. It opens Chapter 8 of this book, and I hung it on the wall of my dorm room when I was a young engineering student: "The road is not always to the swift, but to those who keep on running." The other is purely personal reflection:

"I have made mistakes. I am not proud. I will share. However, I will dis-avow any knowledge of said mistakes, you as my student, and my involvement at Merrimack College, should anything be discussed beyond the walls of this room. This presentation will self-destruct in ten seconds."

Like most people, I probably have learned more from my mistakes than my successes. One of my more important nonsuccessful experiences involved a database that my company built for a large computer distributor in our area. I was very anxious to impress my new clients with a highly functional Web site. So the software architecture of this particular site flowed freely, and I enthusiastically coded SQL statements in my sleep. I didn't worry too much about my coding hours as I was interested in adding this to a list of portfolio sites for my company. However, as much as I was solid with the software requirements, I didn't spend enough time finding out about a more foreign concept called the "RAID System." (RAID stands for redundant array of independent disks.)

My education began one spring morning when I tried to connect to the site, and I kept getting errors. When I called the server administrator, I was told that the hard drive on the server had crashed. The machine was being worked on. However, all of the sites on that server were down. I accepted that. After all, computers went down-end of story. However, when the down time stretched into the afternoon and into the next day, and my clients were wondering where their Web site was, it was a panic!

When my associate and I had gone in to pitch the Web site, we had suggested hosting the site off site, even though our clients built servers and had them readily available to use to host a site in house. I explained that while subcontracting on another Web site, I had previous experience coding on a particular server. It was all set up with the software configuration that I wanted and would make for rapid deployment of the Web site. My clients graciously went along with me.

When the server hiccuped, I found out more than I ever wanted to know about server hardware configurations, RAID systems, and connectivity.

For my clients, this was a big issue. After all, they built and sold servers. Their clients would find it odd that their Web site was everdown, slow, or not functioning perfectly. It would be a poor reflection upon them. They had gone along with my idea of hosting it outside, but I could tell that this option was not their first choice.

Apparently, my server choice did not have a RAID system in place. Thus, when the hard drive crashed, the server administrators could not recover quickly, reducing the amount of necessary, if any, down time.

As a programmer, I was crushed that my hard work was not visible for my clients to see. As a project manager, I kicked myself hard. Why didn't I know about this? Already too many hours to count were invested in this Web site, hours that could not be billed, and, what was much more upsetting, I let an important client down. They were right to insist that the Web site not remain on this server. However, it would mean that the client would have to assume the burden of building, configuring, and co-locating a box that could handle the code that I had already developed. I figured that I was history with them.

Luckily, the people involved at the client side were extremely forgiving. They set up their own box, had the operating system and middleware configured, and co-located it with an ISP. I made the modifications necessary to allow the UNIX-based database to run on the new server, gratis, and thanked heaven that I had run into nice people. They remain good clients to this day, and I happen to buy all of my computers from them- not because they're clients, but because in dealing with them, I know that they'll stand behind what they sell.

This is a dark project management story with a silver lining. If I make a mistake, I do try to "keep on running," as the saying goes, keep at the project until it finishes successfully. However, a project manager can never expect that a client is going to help solve any technical difficulty. Thus, if one's expertise is in coding, one must come up to speed quickly in understanding the hardware side and vice versa. One hinges tightly upon the other, as I found out.

Exercises

Identify Server Requirements

a)Define a RAID system. What are the benefits of having such a system in place on a server?

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

b)Determine the hardware configuration for an up-to-date robust server.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Identify Connectivity Requirements

a)What is referred to as a "pipeline" or "pipe" to the Internet? Give examples of several acceptable pipeline configurations.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

b)Describe how connectivity redundancy effects server performance.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Identify Operating System

a)You are building an online store. Describe the benefits of using an NT platform as a foundation for development.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

b)As in 12.1.3a, describe the benefits of using a UNIX platform to build an online store.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Identify Middleware Requirements

a)Middleware is a software application that provides a coding environment for developing databases and online stores. Give several examples of NT-based online store middleware and its capabilities.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

b)Give several examples of UNIX-based middleware and how it could be used in the development of an online store.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Identify User Requirements

a)You are developing an online store that company employees will access to purchase t-shirts, bags, and other promotional items with the company logo on it. Employees will access this Web site through the company intranet. How will this impact upon programming tools used to deliver content?

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

b)What kinds of user requirements might impact upon the development of a law firm's static brochureware Web site?

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Exercise Answers

This section gives you some suggested answers to the questions in Lab 12.1 with discussion related to those answers. Please post any alternative answers to these questions at the companion Web site for this book, located at http://www.phptr.com/phptrinteractive.

Answers

a)Define a RAID system. What are the benefits of having such a system in place on a server?

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:The following information was found at PC Webopaedia-http://webopedia.internet.com-a super resource providing explanations for current technical terms.

A server's ability to deal with a software or hardware crash is called "fault tolerance." A RAID (redundant array of independent disks) System is one mechanism used to improve fault tolerance. RAID systems are designed to provide the following levels of protection:

Level 0: Data striping (blocks of each file are spread out across multiple disks) but no redundancy. This improves server performance, but doesn't enhance fault tolerance.

Level 1: Provides disk mirroring, which is the process by which two disks are kept up to date. Should the primary disk crash, the back up disk can be instantly activated, thus insuring there will be no interruption of service.

Level 3: Provides the same level of protection as Level 0 but reserves a disk for error correction data.

Level 5: Data striping at the byte level and stripe error correction information. Again, this provides better server performance and some level of fault tolerance.

When launching an online store and/or database with a RAID-enabled server, I would most prefer a server using RAID Level 1.

There are other more expensive options, such as server mirroring. Unlike RAID Level 1, where disks are mirrored, with server mirroring the entire server is duplicated by a back-up server, ready to come online should the primary one fail.

b)Determine the hardware configuration for an up-to-date robust server.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:My main concerns would center around server processor speed, hard drive capacity, and RAM (random access memory).

As far as the hard drive goes, the project manager must ascertain that the server isn't running middleware, like SQL server, and hosting too many Web sites. This is going to slow the server down, just as if one has too many applications running on a PC. The requirements are going to vary from server to server. The server's hard drive compatibility for your Web site is in direct ratio to how it's being used. The question here is, "What else is on it?" Then make up your mind as to whether the server is overburdened.

Most current Web servers are running Dual Pentium 400-MHz processors or above. Recently, while looking into the purchase of an NT box to stage Web sites on, I received a specification that included Dual Pentium III 450-MHz processors. This is now pretty standard among new equipment. Of course, those of us with several old PCs in the basement know that these numbers are constantly changing.

Lack of RAM definitely can slow a server down, especially if it is running memory-heavy middleware. 512 MB or above can help to facilitate a robust database environment.

You must weigh the type of Web site being staged on a server, the number of hits that site may receive, and the weight of the graphics. Then you can evaluate whether the site needs to reside with a more robust host or can be uploaded without too much worry on just about any reasonable platform.

Answers

a)What is referred to as a "pipeline" or "pipe" to the Internet? Give examples of several acceptable pipeline configurations.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:The terms "pipe" or "pipeline" are usually used to refer to a server's connection to an Internet backbone provider, like UUNet or MCI.

A T1 line transfers data at a rate of 1554 Kbps, and a T3 line will move data at 44.7 Mbps.

Most ISP servers are connected to the Internet using a combination of T1 and T3 lines, as well as one or more Internet backbone providers. The reason behind this is redundancy. If one T1 line becomes inoperable or one backbone service provider goesdown, there is another connection that can be used to route traffic. As a developer, depending on the size of the ISP, I would at least want to see two T1 lines used to connect to two different Internet backbone providers.

Many medium-sized ISPs use two T3s, a T1, and several backbone providers.

b)Describe how connectivity redundancy effects server performance.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:If an ISP's pipeline includes only one T1 or T3 line out to one backbone provider, should anything go wrong either with the line or the backbone provider, the ISP's server will be unable to process requests. Therefore, redundancy is key. Depending on the size of the ISP, the system administrator should determine whether the current server connectivity can handle all of the traffic effectively, should one component fail. The best configuration, albeit not the least expensive option, would include T1 or T3 connections, preferably through several different systems (e.g., Bell Atlantic or Sprint), going to several different Internet backbone providers. This would better the chances of keeping any connectivity problems transparent to the user.

Answers

a)You are building an online store. Describe the benefits of using an NT platform as a foundation for development.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:If the client isn't too choosy about customization, the NT platform, using Microsoft programming wizards, provides a good foundation for rapid application development. The client can be trained to update his or her site using products like Microsoft Front Page and, if the site has been built using Microsoft Site Server Commerce Edition, has the ability to go in and change inventory on the fly. The development costs associated with an online store such as this, barring any huge customization of how the programming code functions, usually are lower when compared to developing a similar site using the UNIX platform.
b)As in 12.1.3a, describe the benefits of using a UNIX platform to build an online store.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:UNIX allows developers direct access to code from the ground up. In an NT environment, I always feel that I'm programming through a veil, that I'm unable to access directly how programming code will function on the server. If you have ever built Web sites in Front Page versus writing straight HTML in a Web editor, you will understand what I mean. Using a straight Web editor, the developer can control exactly how the page will look, whereas Front Page sometimes controls the developer.

Therefore, after having used both platforms, I would much rather use a UNIX platform if the client requirements are very strict and differ substantially from what can be accomplished using the wizards in the Microsoft products.

Also, UNIX provides a more secure environment, which is especially important as a foundation for an online store. Unfortunately, there are still security glitches in even the most updated version of NT. Therefore, the client must weigh functionality versus flexibility versus security.

Answers

a)Middleware is a software application that provides a coding environment for developing databases and online stores. Give several examples of NT-based online store middleware and its capabilities.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:Middleware products used in the development of online stores on the NT platform include Microsoft Site Server Commerce Edition, SQL Server, and Oracle.
b)Give several examples of UNIX-based middleware and how it could be used in the development of an online store.

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:MySQL and Oracle can be used as database middleware for UNIX-based online stores. Granted, these middleware products do not support wizardlike rapid application development. Therefore, the use of them on UNIX is more labor intensive.

Answers

a)You are developing an online store that company employees will access to purchase t-shirts, bags, and other promotional items with the company logo on it. Employees will access this Web site through the company intranet. How will this impact upon programming tools used to deliver content?

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:Developing applications on an intranet allows for a stable user environment. Most users will be accessing the intranet using similar software and hardware configurations. Thus, all the developer needs to determine is how the company's machines are configured and then build the application in such a way that it is cross-platform for those users.

For a Web site that is accessible to the public, a developer needs to build it in such a way that all browsers and connection speeds can be accomodated. Developing on an intranet does not require this type of cross-platform accessibility.

b)What kinds of user requirements might impact upon the development of a law firm's static brochureware Web site?

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

_________________________________________________

Answer:I would consider whether the lawyer dealt in personal injury law. If the firm did provide these types of services, the Web site should be accessible by visually im-paired users. If the rest of the pages are static, our only concern would be providing al-ternate descriptions for the images and not using frames on the Web site.

Self-Review Questions

In order to test your progress, you should be able to answer the following questions:

1)(True/False) Developers should consider the following issues when deciding where to host a web site.

  1. _____ The hosting cost is competitive with other Web hosting companies offering the same services.
  2. _____ The Web hosting company is running the middleware and operating system necessary to fulfill the technical requirements of the contract.
  3. _____ The hosting company has redundant connections to the Internet.
2)(True/False) Client budget would affect the following:

  1. _____ Choice of operating system
  2. _____ Choice of server hardware configuration
  3. _____ Programming flexibility


Exploring Web Marketing and Project Management
Exploring Web Marketing and Project Management
ISBN: 0130163961
EAN: 2147483647
Year: 2000
Pages: 87

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net