ICTWEB501 Building A Dynamic Website: Assessment 1 Answer

pages Pages: 4word Words: 890

Question :

ICT60115 Advanced Diploma of Information Technology 

ICTWEB501 - Build a dynamic website


Assessment 1: Knowledge based

Task 1: Write a report that shows your knowledge and understanding by summarising the following:

NOTE: This will require you to do some research, do not just Wikipedia, dig deeper and reference your material using the APA referencing system. 

  1. HTTP including Request/Response Methods
  2. Session management and stateless programming
  3. Programming control structures
  4. Object-oriented programming including classes and objects
  5. Authentication and web security

Word Limit: 1000 words

Task 2: Code Tests

  1. Write the PHP code that starts the session of a webpage.
  2. Write the PHP/SQL code that makes a connection to a MySQL database.
  3. Write the PHP/SQL code that INSERTS data, UPDATES data and SELECTS specific data from a MySQL database.
  4. Write the jQuery code to submit information from a form but remaining on the same page

Assessment Task 2Case Study - Your Earth. Your Home

“Your Earth. Your Home” is a not for profit organisation that aims to promote sustainability initiatives at a grassroots level through individual awareness.

Their mission is to educate individuals of the importance and urgency of change from within to bring about to change the world. They believe that saving the world from man-made disasters should start from the individual. They adhere in Mahatma Gandhi’s famous words, “Be the change you wish to see in the world.”

Their brand conveys energy, growth, vitality and colour – a bright future and they need a new website to promote brand awareness and which encompasses these things.

The brief

“Your Earth. Your Home” needs a site that will act as a showcase for their fresh and contemporary new branding. There is a lot of information which needs to be contained within the website and structured in a simple and accessible way. The design must be visually engaging to its audience and abide by the basic principles of analysis and design. The aim of site is to encourage individuals to act and become involved.

As a charitable organisation, “Your Earth. Your Home” wants users to join online, book events and donate through their website. They also need an area where they can sell unique gifts designed to encourage further support.

The website also collects information from users via the “Subscribe” page i.e. email addresses and demographic data to be collected, stored and exported for use by the company for direct marketing projects.

Your site should show your understanding of the principles of design through the visual presentation of the material.

The following pages are required:

Page NameWebsite Content
  1. Home
Must include a corporate logo, image/s to attract new subscribers to the site and that are related to sustainability, links to sustainability sites and other relevant information including:
We are focused on minimising and reducing the individual’s consumption of power, water and other consumables at home and at work. We do this by offering individual support and advice on sustainability issues and environmental projects. We believe that to save our planet, we should first change ourselves. Change starts with you. As Mahatma Gandhi once said, “Be the change you wish to see in the world.”
Sustainability sites may include:
http://www.earthhour.org
http://www.greenpeace.org
http://www.wwf.org.au/
2. About us

This page explains the organisation’s aims and objectives which are:
Our vision is to save the planet from man-made environmental catastrophe.
Our mission is to create a sustainable future for humanity starting from every individual.
Our objective was to start sustainability initiatives at the grassroots level through individual awareness.
We aim to educate each individual person to the importance and urgency of starting change with themselves to change the world.
We believe in the words of Mahatma Gandhi, “Be the change you wish to see in the world.”
You can also put a picture of yourself as the CEO of the organisation. And use Lorem Ipsum for any additional text requirements.
3. Image galleryCan be present on your landing page or its own page.
4. A blog pageFeaturing tips from guest contributors on how to conserve energy at home. You can link your blog with a blog site such as blogger.com.
5. SubscribeThis page provides a form where users can register their personal information to join. Should include at a minimum Name; Age; Sex; Address; email address; telephone contact; 
These need to be connected to the MySQL database.
6. Calendar pageProvide a class or object that provides the following functionality. 
Users can book to attend.
The events already noted in the calendar are as follows:
  • July 1, 201x
Sustainability in the home workshop
  • August 12, 201x 
Soap-making from organic ingredients
  • September 20, 201x
Setting up a solar-panel workshop
  • October 3, 201x
Reducing power consumption seminar
  • November 14, 201x
Reducing your carbon footprint
  • December 1, 201x
Planning your first sustainable Christmas (Seminar)
7. DonateA form where users can donate money using a credit card or PayPal. (Note: This does not need to be a working component but can be a visual representation of the donation page. i.e. Create a webform for the front-end with no backend functionality.)
8. ShopSite visitors and registered users can shop in the online store for unique gifts designed to encourage further support. (Note: This does not need to be a working component but can be a visual representation of the shopping cart. i.e. Create a front-end interface with no backend functionality.) For extra credit, provide the backend functionality.
Contact DetailsThe following contact details should be used in the site where specified.
123 Sustainability Street, Green City
Tel. (Work) 02 9280 1111
Mob. 0411 111 111
Fax 02 9280 1112
Email info@yourearth.com.au
Web http://www.yourearth.com.au


In addition, the client would like to be able to make changes to the website themselves and would like you to recommend a CMS solution.

Project Requirements

  1. To ensure you have accurately interpreted the client requirements, you need to prepare a requirements checklist. (Template provided).
  2. Using a tool of choice (i.e. Google calendar, Word, Excel, Project), create a simple project management schedule for your client for the proposed project.
  3. You are to produce a navigation diagram that shows the hierarchy of the website.
    Create a navigation diagram that shows both the navigation of the site and the positioning of any specific requirements (i.e. feeds, social media, calendar etc.)
  4. Use NotePad++ or NetBeans to create your Dynamic Website/OOP application and follow guidelines for developing maintainable code adhering to PHP coding standards.
  5. You are to create wireframes for your website showing the user interface.
  6. Website Technical Requirements
    1. The website must incorporate the corporate colours in all the pages (see logo)
      1. Green (Hex #008000)
      2. Yellow (Hex #FFFF00)
  7. Create a Web User Control for the header of the pages
    1. Show the name of the business and the logo. Use your understanding of Design Principles to ensure it is aesthetically pleasing.
    2. Provide the business contact details in the header.
  8. Create a Web User Control for the footer of the pages.
    1. Position links to other pages of the web site in the footer using breadcrumb navigation.
  9. Confirm the header and footer with all of the web pages to ensure that the look and feel of the web site is the same on each page.
  10. Data entry forms must include validation controls. For example, to check whether correct email addresses are entered.
  11. Front-end web forms capturing user information and donation details are stored on a back-end database that can be created, extracted, updated, deleted, and queried.
  12. Use TRY-CATCH exception handling to ensure program stability
  13. Use GUI components such as buttons, text input fields, checkboxes, drop-down lists etc. Each component must have a fully functioning code-behind written in PHP. For example, clicking Add Member button will save the data to a database.
  14. Use class inheritance for types of members. For example, there are Corporate Sponsors and Individual Members but could be classified as derived classes under the parent Member class.

Use the Requirements Checklist template to gather client feedback and adjust web application as required. (Get feedback from your trainer to make the required correction)

Requirements Checklist 
Purpose of the website: 
Clients expectations of the website: 
Minimum functionality of this website: 
Description of primary user/visitor to this site: 
Description of secondary user/visitor to this site: 
Website user/visitor needs: 
Dynamic/interactive web requirements: 
Client-side components and appropriate programming languages: 
Server-side components and appropriate programming languages: 
10 Expected users browsers and operating systems: 
11 Data storage requirements: 
12 Access point to the database: 
13 Summary of website security plan: 
14 Database access and security feature design: 
15 Hardware, software and tools to design the web components: 
16 Database functional requirements: 

Validate HTML and CSS codes using a Code Validator service. Analyse and document the results in the body of a Test Documentation form. Note: All code documentation must be well-formed mark-ups validated against industry standards for documentation (e.g. W3C). Provide screen shots of before and after.

Show More

Answer :

Hypertext Transfer Protocol 

HTTP is protocol used at application level for collaborative, and  distributed systems (Denium and Rubio, 2016). This protocol is  foundation for the WWW World Wide Web for data communication since the year 1990. HTTP can be used for many purposes that follows general and stateless protocol . It can also be used for  request methods and error codes

GET Method

GET HTTP verb retrieves data from a web server. The request may contain parameter specified in the URL. To retrieve any document usually this method is used. The below request response shows a GET request response (Richardson and Ruby, 2017).

HEAD Method

There is a similarity between HEAD method and GET method in comparison to their functionalitybut in this case the server replies with response code and response headersbut we do not get anybody (Deinum and Rubio, 2016). 

POST Method

The usage of POST query comes with the aim of providing some data to the server such as form data to update or enter data or to upload file. In post query the data is sent to the sever with parameters containing their respective value. It can be in JSON format also.

PUT Method

The PUT HTTP verb proves to be beneficial when the aim is to request the server for storage of included data in entity-body form to location specified by the URL

CONNECT Method

To establish network connection between the server and the client over HTTP CONNECT HTTP method is used. 

OPTIONS Method

The usage of OPTIONS method is to list out all the methods that are allowed on particular endpoint or a page. If a page is allowing only GET and POST method it would say that only these methods are allowed (Richardson and Ruby, 2017).

TRACE Method

TRACE method is used for debugging purposes. It will echo the contents of HTTP request is sent back to the requester.

Stateless Programming

Stateless programming is a procedure in which the functions, methods, procedures etc we implement are not dependent and sensitive to the state of the computing. So when we call function twice same result is obtained.

Session management is the process of maintaining multiple requests from the same user or entity. session starts by authenticating a user with his credentials.

Session Id

These are unique token or value assigned when users sessions starts. When the user log into he gets a unique token which is unique and strongly framed and hashed.

Cookies

These are unique entity assigned to user when he logs with his true credentials. These are responsible for riding the session.

Session Expiry

When the user wants to go out from his access control his session id should get expired.

Control Structures

Flow of Control:

Control flow in any program is implemented through three basic structure Sequential, Selection and Repetition

Useful keywords used in Control Structure-

pseudocode - it is the false code of structure

flowchart - graphical representation to formulate an program's flow

True and False

  • Repetition and Selection  statements involve following decision steps. 
  • Mostly functions has yes/no situation.
  • If an expression gives 0 on evaluation, then its value is false
  • If an expression gives non-zero value on evaluation its value is true

Logical Operators:

The arithmetic comparison works much likely the symbols we use in mathematics calculation.  Either the value is  true or a false.

  a == b        if a is equal to b

  a != b        if a is not equal to b

  a < b         if a is less than b

  a <= b        if a is less than or equal to b

  a > b         if is greater than b

  a >= b        if is greater than or equal to b

Selection Statements

If-else Selection Statement

This is the most common selection statement is the if-else statement. syntax:

   if (expression)

      statement

   else

      statement

  • The else is an optional, the proper syntax for it would be

   if (expression)

      statement

switch statement

  • switch statement is more convenient whenever there is multiple options.
  •  syntax :

switch (expression)

    case 1

        statements 

    case 2: 

        statements 


    default:           

        statements 

The Conditional Operator

Conditional operator are used for shot expression. 

Format:

  first_expression ? correct_expression :wrong_expression

Work flow:

  • first_expression evaluates for correct/wrong value. Much like the first expression of an if-statement
  • If the first expression is correct, then operator will returns the correct_expression
  • If the first expression is false, then operator will returns the wrong_expression

  (x > y ? "x greater than y" : "x less than or equal to y");


  if (x > y)

     x greater than y";

  else

     "x less than or equal to y";

OOPS

Object-oriented programming is programming that defines not only the data type of data structure but also different type of functions that can be applied to the data structure also.

Different properties of OOP’s are:

Abstraction: It allows us to pick out the common features of objects and the procedure.

Class: The class defines all element that share common properties.

Encapsulation: The process of combining series of operation.

Information hiding: Hiding the details of an object or function. 

Inheritance: The process of inheriting the properties of a class.

Interface: platform used to communicate

Object: an instance of class that consists of data and procedures to change the data.

Polymorphism: The ability to process objects according to their data type or class.


Classes and Objects

blueprint of an object is called classBefore creating object you need to implement class. So, A class named ‘Car’ would provide a blueprint for what a car looks like and what is the mileage of the car. To actually use a ‘car’ in your program, we need to create an object. We can use the car class to create an object of the type 'person.Then we can describe this person.

Authentication

Authentication is a way of determining whether is who he pretends to beBy Authentication we provide access to a person to a systems by checking to know whether user's credentials matches the credentials in the database and then after he authorized to access his control (Stefanov, 2015).

Authentication as cyber security point of view

It is important to have authentication in an organization in order to keep the  network secure by allowing only authenticated user to enter to access the critical assents of the organization likes sensitive file, databases or in website.

A website need to be protected with some authentication over the sensitive parts so that the authentic user can access the website. This is very reason we have login portal in website. Every genuine user with their credentials could access their page on the website (Drozdek, 2015) .

With authentication authorisation has also some existence but they are par different from each other. Authorisation means some action which requires your authority other are not allowed to do that part. For example the user has only authority to change his profile picture. Authorisation is the privilege which a user enjoys. Whereas by authentication we mean  to say that with only true credentials or recognition the user would be allowed to the protected areas.

Web Security 

The web was always vulnerable to attack from the hacker, if proper steps are not taken to  secure like  strong encryption and safe network not used. The are many attacks like SQL injection, XSS, IDOR and parameter tampering that is very dangerous for an Website or Mobile app.