A Computer System For Electricity Readings Computer Science Essay

Published: November 9, 2015 Words: 4823

We are going to provide service to enable client to in put the readings of electricity meter using the internet, CitiPower company will setup a web server that can be access though internet by the customer to input the reading. The server must able to generate different content according to the user input such as authentication which have to retrieve information from database management system. And we need to use Common Gateway Interface(CGI) to achieve the goal.

Use PHP as Development Tools

PHP is a kind of open source project, especially for Web database application, because of its integrated network and database environment tools. In particular, is embedded in HTML pages scripts that allow flexibility and easy integration of HTML code. Database layer integration support is also very good, more than 15 libraries available for almost all popular interaction with the database server. [1] This does not mean that other scripting languages do not have the excellent performance. However, there are signs that make PHP a better choice than others, especially well supported to access the DBMS for many reasons.

PHP has many clients with fast, personalized access to the database management system is a very good library and developing countries in the middle of a three-tier application ideal for application logic.

PHP and HTML, integration, and to make use of PHP is a static sequence of characters is much more complex than other high-level language is very interesting.

We can use plan text edit to write PHP script, you can use any text editor, such as the UNIX editor, Joe, Vim, or Microsoft Windows, such as Notepad or WordPad, edit, create.

[1] Web Database Applications with PHP and MySQL , 2nd Edition, David Lane, Hugh E. Williams, O'Reilly

What is our system?

Our system has three-tier layer. In our system, the banded architecture include a database which is construct with a cluster of database and several web servers run as front end for the client to access from internet.

Some databases are separated from web servers in the first part. Database server hold a huge database and table that they need power to server heavy I/O of data processing. So the it need strong power of hardware system to provide high performance task.

We need several web servers in the second part that the architecture will be arrange to work as load-balancing to process heavy work load of client access though internet. In the other hand, the database server was not connected directly with the front end web servers that will protect the information from accessing outside the internet and this architecture can provide higher security for the system.

The last part that the customer will complete the steps using the web browser. Since the client use the web browser to input information and program installation is no need. In fact the user can upload data whenever the browser is available cause the high availability.

Store information as CSV

In our design, a Comma Separated Value (CSV) will used to store meter reading of clients which was created by the web server. When the client click the "Submit" button and the data will be append into CSV file.

-------------------------------------------------------------------

Fig 1.2 The meter input page

Fig 1.3 The inserted data in CSV file

What is the procedure of the process?.

We want the user has good experience when they use the interface. Simple, user-friendly and easy understand are important. Only 3 steps to complete the upload work of the meter reading.

Login the system and open the upload page of the meter reading using the web browser.

Enter information of Account number. Meter reading and Meter Serial Number and select date.

Click the button to submit and the message will show that like "Meter reading upload successfully" and user can check the information that is correction or not.

Step 1:

Start the web browser and input the url "http://www.citipower.com/login.html" and the upload page will be display(Fig 1.4) after user input username, password and meter reading . Client will see their meter reading that they last input.

Fig 1.4 Customer will find their last meter reading

Step 2:

Input "Electricity account number.", "Meter Reading", "Serial no of Meter " and select or enter data in the calendar manuelly use yyyy /mm/dd format for the date. Then click "submit" button.

Fig 1.5 Customer data sample

Step 3:

Click "submit" button, and then the client will see a notice: "Meter reading upload successful" and the information they submitted. These means, the data was successfully uploaded.

Fig 1.6 The notification page

Task 2

To help customers enter the correct information to avoid error in the upload meter reading, we should prevent the upload meter reading is compared with the previous meter readings are not allowed to read and invalid date. In addition, the website should be the message, inform the user what is going wrong. In addition, users will not be able to submit their error data, and then clean it.

The ability to make site inspection data and real-time response, it should use the technology called AJAX (Asynchronous JavaScript and XML). AJAX is a name for a group of technologies, including JavaScript, CSS and XML. It can run in Web browsers, enhanced interactivity, ease of use and speed.

JavaScript may be a client-side scripting language developed by Netscape development. JavaScript is published since 1996. At the time, it supports Netscape Navigator 2.0 and Internet Explorer 3.0.

XML (Extensible Markup Language) is designed to improve the data description, storage and exchange. It is published by the W3C in 1998. Its conceptual design and hierarchy node to provide good support for data storage.

CSS (Cascading Style Sheets) is a style sheet language. It is used to separate the data layer and display layer in HTML. In other words CSS can provide a solution to be defined and looked at the web page format.

The most important is the use of AJAX, use XHR (XMLHttpRequest) for playing Web server. XHR object created when a user will establish a connection to the Web server. XHR object occurs between the Web browser and Web server. XHR object will listen to the web server updates the Web page production part of the update. XHR then be adopted by the update to the web browser to update the Web page is part of it. This mechanism successfully reduced bandwidth usage and data processing. Widespread use of AJAX interactive Web pages, such as Google Maps, Google search suggested that the stock price quote.

In our system, we will use JavaScript for validation, because JavaScript is a scripting language. JavaScript is the ability to use the function to verify the client's data input incorrect data and we want. For example, if you enter the correct date, month and year. In addition, JavaScript can prevent users from submitting data, if the data does not meet the system asks.

In order for the site have the ability to validate data and respond in real time, it was a technology called AJAX (Asynchronous JavaScript and XML) to use. AJAX is a name of a group of technologies, including JavaScript, CSS and XML. It could run on a web browser and increase interactivity, user friendliness and speed.

JavaScript could be a client-side scripting language developed by Netscape. JavaScript has been published since 1996. At that time, she supported Netscape Navigator 2.0 and Internet Explorer 3.0.

XML (Extensible Markup Language) has been design, improve data description, storage and exchange. It published in 1998 by W3C. His concept nodes and the hierarchical structure also provide support for data storage.

CSS (Cascading Style Sheets) is a style sheet language. It is used to separate the data layer and layer display in HTML. to provide other word to define a CSS could be fixed method and format to search the site.

The most important use of AJAX is playing with XHR (XMLHttpRequest) to deal with web server. A XHR is made, user must connect to the Web server. The XHR object is passed between web browsers and web servers. The XHR object is heard on the Web Server "Update Web site update a part. Then XHR will be going in the update to the web browser on the part of the web site to renew. This mechanism successfully, the bandwidth decreases with and data processing. AJAX has been cited widely by using interactive Web page, such as Google Map, Google's proposal and the share price.

In our system, we will use JavaScript to do the validation, because JavaScript is a scripting language. JavaScript is able to function, but want that data, client input with real data confirm we are not. For example, it is input the correct day, month and year. In addition, JavaScript could prevent users from sending data when the data was not met, the system inquires.

Pic 2.2 Create the variable

At the beginning, the script would built a lot of variables that we will use (Pic 2.2).

Pic 2.3 The validation function

Then, we shall use the procedure to do the validation (Pic 2.3). On line 19, the code was used to begin checking by if loop with the conditions. The code on line 22 alert user "Please select date for meter reading!", if user have not enter the day. From line 25 to 41, the function was setup to notice user whether they are input the incorrect year, day, month, also the meter reading.

Pic 2.4 The validation to the meter reading

From line 52, the JavaScript will check the meter reading input. It will alert if user input the meter reading is less then previous or it is not a number.

Pic 2.5 These code will disable the submit button

From line 120 to 136, JavaScript will have the result from the script we have mention above. If user input incorrect data, the submit button will gray out to prevent user to press it. If the information is correct, the function will change the button to normal status and user can click it.

Pic 2.6 The submit button

The script of the line 147 to 160 on the send button. The Send button is with JavaScript (line 152), are playing to validate information. Since there is, if the browser do not play with JavaScript, allow line 155-158 users submit button without JavaScript.

With JavaScript, there are some advantages and disadvantages.

On the negative side, there are security and reliability problem. Because JavaScript runs on the client computer, they will be used in a position for malicious purposes such as: Dead code insertion code conversion, register re-allocation ... Some people stop running JavaScript, it will affect the system running.

In addition, the results of its portable, it is fully operational and rely completely on the client side web browser. That is, when client browser does not support JavaScript, or not enough new version of some script failed in the current.

Although JavaScript has some weaknesses, there are many positive feature to help developers become the first choice.

First, JavaScript is not on the server side to load the current resources and increase server capacity to save. In other words, client JavaScript functions can immediately instead of waiting to respond Server.

Second, JavaScript is relatively easy to learn and implement. It is an open source high-level language is, it is easy to implement, compared to other programming languages such as Python, Perl, C # ...

Finally, a well-tolerated JavaScript language. It may be written in other web page in another language, like PHP and Perl. It may interact with other language for a variety of applications to play well.

Finally, AJAX (JavaScript and XML in particular) offer the ability to validate our system, greatly reduce the occurrence of bad data, do. And cost reduced compatibility with PHP much development time. Finally, because it can run on the client side, saving them directly to server computing resources. It indirectly reduce administrative costs, hardware investment costs and save development costs.

Task 3

In order to increase traffic http://faq.energyco.com and http://blog.energyco.com we can use a website plug-in called "add this." "This" is the easiest way to share we can Facebook, Twitter, and various web mail or other social networking sites. "Join the" who can share our website are used by different sites it is only one ball. If the site requires login, the user has logged in, "add this" automatically log on to the site. Moreover, users need only enter the information they want to share or send and kick button, and then will be shared. This will remember to add users. It allows users to more easily share can increase traffic to our website. "Add this" can also help us to collect statistics, remember how many users to share our website or send them to friends. "Add this" how much traffic can be collected back to your static web pages, you can see what share of the preliminaries on our website. "Add This" shared data to an existing Google Analytics report is easy, lets you view the "Add This" share custom events, on your dashboard. "Add this" will show all data in the past 30 days on any available domain. It can help us to update our website, so that more people can see and use our site.

"YouTube" is one of the largest video sharing site, one of the reasons it can be so successful because "YouTube" are using the "add this", it allows "YouTube" of a growing number of tourists. Not only the "YouTube" have a great marketing skills, but also "YouTube" site has to use other so that more people know. This is a good example to understand the power of "sharing."

"Add this" is to create a Web page form. The form has asked where to put the button. And the need to select the button style like the number of shares does not necessarily need to have, and how the button's appearance. And the website's code will automatically create your web site administrators only need to select and copy the HTML code into the HTML document on our website, then we can have a "add this" feature. "This" has the largest open collection service, and to "add this" better. "Add this" also supports 50 languages, it will automatically translate into appropriate language, for us. "Join the" trusted sites like the White House and many government no doubt that security is very economical. "Add this" can also be applied to different web browser, such as "Internet Explorer" in the "Firefox" and "Chrome."

For using the "add this" blog can increase our site traffic and frequently asked questions, because it can provide a very simple way to allow users to share our website and blog. Through the use of email and the largest social networking site "Facebook." When the blog and website to increase traffic, we can accept questions in the form of more and more users, we can solve this problem, and answer questions as soon as possible in the form of our users.

Which is why many advantages of using the "Add to this." Fulisite, we can more easily gather quiet, because we can better understand how people know that our site is search engine, they know it or they know their friends to our site. Only, and "add this" can support Flash and SSL / HTTPS security, will fit our site, it can meet the requirements, frequently asked questions in our website and our blog. On the other hand, mobile Web browsing also need to consider, because many people view their cell phones, "adding this" is supported by the Android mobile Caozuoxitong will increase traffic. Another advantage of using the "add this", it would be easier to answer questions in the form of our users, because if the user is always to share our answers, more people can see our information technology so that more people understand our The problem is not asked.

Although the "add this" get a lot of advantages, but we need more human resources to control the plug on our website. In addition, perhaps we need to use a better server to host our FAQ site and blog.

Use the "Add this" We need to put more human resources and time to control and collect statistics. We will "add this" bottom of the questions and answers for each, which allows users to easily share our site to other countries. Our "Add this" button, the "Face" Twitter "and" G - e-mail "and" Hot Mail "is a general way to share. In order to control the" Add to this, "we will check the statistics every day and mark it written in a file, "add this" can display the data in the form of an entire domain in the past 30 days has crossed us. and "add this" report model can output a different flow like a different summary of our visit; content; services and geographical environment, it is easy for us to do the report the site administrator. This report can help webmasters understand how people know and what we always make our web site, their friends, then the site administrator can use this statistical data to improve our site.

Task 4

Virtual host is much cheaper than a dedicated server. Instead of having a machine that hosts a website, an ISP can configure a computer to host hundreds of websites. For a user simply browsing their website, seems to have a dedicated server. The disadvantage of a virtual host is that your site is to share the resources of the machine with all the other sites hosted on this machine. You can also limit what kind of programs that can run on the server. If you can run CGI programs, is likely to be limited to very simple scripts must choose from a list of scripts that have pre-chosen by the ISP. You might also be linked to any e-commerce solution for the ISP has chosen.

Host Virtual hosting is a method to host multiple domain names on a computer with a single IP address. This allows a machine to share its resources, such as cycles of memory and processor, to use their resources more efficiently.

An application that is using shared hosting. prices are lower than shared hosting to a dedicated web server for many clients can be accommodated on a single server.

Virtual web hosting is often used in large scale companies business model is to provide low cost web hosting for customers. The vast majority of these sites web hosting, customer service worldwide are hosted on shared servers using virtual hosting technology.

Many companies use virtual servers for internal use, where there is a reason for the technology and administrative provisions necessary to maintain several different websites, such as extranet website, employee extranet, intranet internal intranet for different departments. If there are no security problems on the website of architectures that can be combined into a single server with virtual hosting technology, which reduces management and general administrative expenses and the number of separate servers required to business support.

Our system is a three-tier architecture. In this architecture, including a group of back-end database, a set of web servers on the front, and how the customer location.

In the first part, there are databases. The database is separate from web servers. It has a large-scale data, which means that we need more system resources to handle I / O and data processing. As a result, the performance will be greater.

In the second part, there is a set of web servers. This architecture can provide load balancing to handle large number of Internet in the form of client requests. Furthermore, the database was isolated as Web servers, secure database to prevent direct Internet access form. As a result, the level of security will be enhanced.

In the last part, the customer can finish all the steps with a web browser. As the motor system is maintained in the server side, clients need not install any software. In reality, the client can upload their meter reading anywhere if the browser can access the Internet. As a result, the availability will be greater.

A specific definition of "cloud" is the cause of much controversy in the blogs, technology publications in the popular and even within my own office. The prevailing definition is based on the fact that the clouds are constantly changing, like the Internet itself. Whatever your definition may be, "the cloud" certainly encompasses many different technologies. Some of these include computing in the cloud and cloud web hosting.

Cloud Hosting was developed years ago and somehow mimics cloud computing. Web hosting is a type that has a load balancer to determine the amount of CPU and other resource needs of each client. It then allocates these funds based on a demand servers web hosting provider. People are just so used.

Cloud Hosting can host websites, but is actually built to be a virtual environment for developing scalable resource intensive application.

Cloud hosting is very useful when you're developing an API (application programming interface) or anything that requires large amounts of CPU or other resources. Examples include:

• If you have to upload thousands of images, resized and displayed on a site like iStock Photo.

• If you have a project that requires thousands of calculations without time limitation.

The cloud computing is Internet-based computing, whereby the shares, software and information provided by computers and other devices on demand, as the electricity grid.

The cloud computing is a paradigm shift after shift from mainframes to client-server in the 1980s. The details abstracted from users who no longer have need for technical advice, or control over the technology infrastructure "in the cloud" that supports. Cloud computing describes a new supplement, consumption and delivery model for IT services based on Internet, which generally involves the delivery of Internet resources dynamically scalable and virtualized often. It is a derivative product and result of the ease of access to sites offering Internet remote computer. Often this takes the form of web-based tools or applications that users can access and use through a web browser as if it were a program installed locally on your own computer. NIST provides a more objective and specific definition here. The term "cloud" is used as a metaphor for the Internet based on the cloud pattern used in the past to represent the telephone network, and later to represent the Internet computer network diagrams as an abstraction that represents the underlying infrastructure. Typical cloud computing providers to provide common business applications online that are accessed from another Web service or software as a website, while the software and data stored on servers. A key element of cloud computing is customization and creating a user-defined experience.

Most cloud computing infrastructure consisting of services provided through schools and built on common servers. Clouds often appear as a single access point for all computing needs of consumers. commercial deals are expected to meet quality of service (QoS) of clients, and typically include service level agreements (SLAs). The cloud of the leading service providers including Microsoft, Hewlett Packard, IBM, Salesforce, Amazon and Google.

Cloud hosting

Virtual Host hosting

is developed for many years and in some ways mimics the cloud computing..

a method for hosting multiple domains on a computer using a single IP address.

Cloud hosting is very useful if you develop an API (application programming interface) or anything that requires large amounts of CPU or other resources..

web hosting virtual is often used widely in enterprises whose business model is to provide website hosting at low prices for customers.

Task 5

Secure Sockets Layer (SSL) and Transport Layer Security (TLS) protocol to provide encryption for secure communications networks like the Internet. SSL and TSL encrypted network connections section of the application layer, end to end to ensure the safe passage of the transport layer. Several versions of the protocol widely used in applications such as web browsing, e-mail, Internet fax, messaging and voice over IP (VoIP).

The Secure Sockets Layer (SSL) protocol is a security policy management of the transmission on the Internet. SSL was developed by Netscape for transmitting private act through the Internet. It also received support from Microsoft and other Internet clients / server developers as well as the standard until evolving into Transport Layer Security. Now SSL is included as part of modern web browsers such as IE, Firefox and Chrome, and the product web server.

Web servers and Web browsers rely on SSL to create a unique encrypted communication channel private over the public Internet. Each SSL Certificate contains two keys: a public key and private key. The public key used to encrypt information and the private key used to decrypt the encrypted information. When the Web browser to a secure area, a level of encryption that is established based on the SSL certificate and the client Web browser, operating system and the ability of the host server. As the use of SSL became larger, some types of SSL certificates have emerged: Extended Validation (EV) SSL and certificates of Domain Validation (DV) SSL certificates.

Extended Validation (EV) SSL certificates are a new type of SSL certificate, which aims to provide users with more trust, who you are, you can control or own your site. EV SSL Certificates give high security Web browsers information to clearly identify the site of tissue identity. In the development of the network to identify the browser EV SSL certificate is considered high-security browser. Their goal is to trigger unique visual cues to indicate the presence of EV SSL certificates.

As people use e-commerce, business and social activities of the network, they share their personal and confidential information. High-profile fraud and phishing scams can users concerned by incidents of identity of their problems. Before entering sensitive data, they want to prove that the site is to believe that their information will be encrypted. Without it, they may abandon their shopping cart or other transaction, and other places to do business. Web browsers, high security and EV SSL Certificates provide third party and the visual presentation, so that consumer confidence and construction confidence validation of online business.

Domain Validation (DV) SSL certificates are security certificate of the server that provides a minimum level of validation can be a commercial CA.

How does it work? When the user registration process SSL, you will receive an e-mail address of your choice and with SSL to verify domain ownership links verification email. You only need to open the link and check "I agree" and your order will be validated and SSL will be published soon. This makes the issue of Validation SSL Domain faster because it takes several minutes to complete the whole process. Domain Validation SSL is the most suitable needing SSL, and want immediate forms and normal and safe shopping cart website.

DV also provide SSL encryption and high reliability, because they have a standard AC RapidSSL, GeoTrust, Thawte issued. Domain Validation SSL information in the SSL domain name only. SSL equipment you want to display your business name and location of the proposed installation of SSL certificate validation business.

DV before an SSL certificate can be issued, the issuing certification authority to verify the contacts in the field of the certificate of approval request. This approval is usually done by e-mail, but can also be by telephone or by other methods. This is because the SSL certificate issuance DV in general can be automated, the DV SSL certificates price is usually higher than the guarantee or EV SSL certificate requires a human factor in the process of issuing the certificate, and other organizations to provide the low level of the audit process.

Although the owner's consent DV SSL certificate, they have not attempted to verify the identity of the owner of this domain is very important. The area in which authentication to this choice for a fishing license and man the middle attack.

Transport Layer Security (TLS) protocol is to ensure confidentiality and data integrity between client / server applications to communicate through the Internet. TLS enables authentication of terminals and communications privacy over the Internet using encryption. When the server and client communicate, TLS to ensure that no third party can not intercept or modify any message. TLS is the Secure Sockets Layer (SSL) successor.

TLS is composed of two layers: Record and TLS TLS Handshake Protocol. TLS Record Protocol provides some, such as security encryption Data Encryption Standard (DES) of the connection. TLS Record Protocol can also be used without encryption. TLS Handshake Protocol allows the server and client authenticate each other and negotiate an encryption algorithm and encryption key data before the exchange.

TLS is based on Netscape SSL 3.0, however, TLS and SSL are not interoperable. TLS contains a mechanism to reach back to SSL 3.0 TLS. The latest versions of browsers support TLS. TLS Working Group, established in 1996 to continue work on TLS and related applications.