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.
Word Limit: 1000 words
Task 2: Code Tests
Assessment Task 2: Case 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 Name | Website Content |
| 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 gallery | Can be present on your landing page or its own page. |
4. A blog page | Featuring 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. Subscribe | This 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 page | Provide a class or object that provides the following functionality. Users can book to attend. The events already noted in the calendar are as follows:
|
7. Donate | A 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. Shop | Site 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 Details | The 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
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 | |
1 | Purpose of the website: |
2 | Clients expectations of the website: |
3 | Minimum functionality of this website: |
4 | Description of primary user/visitor to this site: |
5 | Description of secondary user/visitor to this site: |
6 | Website user/visitor needs: |
7 | Dynamic/interactive web requirements: |
8 | Client-side components and appropriate programming languages: |
9 | 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.
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 functionality, but in this case the server replies with response code and response headers, but 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. A 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
Control flow in any program is implemented through three basic structure Sequential, Selection and Repetition
pseudocode - it is the false code of structure
flowchart - graphical representation to formulate an program's flow
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 a is greater than b
a >= b if a is greater than or equal to b
This is the most common selection statement is the if-else statement. syntax:
if (expression)
statement
else
statement
if (expression)
statement
switch (expression)
{
case 1:
statements
case 2:
statements
default:
statements
}
Conditional operator are used for shot expression.
Format:
first_expression ? correct_expression :wrong_expression
Work flow:
(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
A blueprint of an object is called class. Before 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 be. By 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).
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.
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.