Web Applications Development Assignment
Qualification - BTEC Higher National Diploma in Computing and System Development
Unit number and title - Unit 35 Web Applications Development
QFC Level - Level 5
Unit Code - K/601/1510
Purpose of this assignment
This assignment requires you to analyse a scenario and then design, build and test a dynamic, interactive web application to meet the needs of the user. This practical demonstration of your skills will furnish you with an opportunity to utilise the latest web technologies demanded by industry.
Scenario
The largest birds of prey owners group in the UK has decided to setup a website for its members. They have agreed upon the following functional requirements:
New users can sign up and open an account
Existing users can sign in and out
Existing users can add the details of a new bird in their ownership
Existing users can query the database on the bird type (these are: eagle, falcon, hawk, owl, buzzard, harrier, kite, vulture), where upon the name, owner, location and picture of each of the corresponding birds meeting the search criteria are display
Task 1
List the typical features of web applications that support people who belong to a hobby and the advantages that such an application can bring to its community
Pick two server-side scripting languages and compare them; give some example code for each. Do the same for two client-side scripting languages
For each of the following areas, choose one security concern and discuss how it can be avoided or the risk reduced: Apache web server, SQL, PHP
Task 2
Produce design plans for the following:
A justification for the design of a web application to meet the needs of its users
Logos and images
Typography
Storyboard for each page clearly showing the page elements
A navigation map showing the relationship of the pages to each other and the names of the files needed to display each page
Identify areas where accessibility could be implemented
You should produce at least two different designs and have these evaluated by a third party before deciding upon a final design to implement. You should fully document the feedback produced by the evaluator(s). A very rough ERD of the database is attached to the end of this document.
Task 3
Build the web application ensuring that your design is followed.
The application should utilise a back-end database that holds records of owners and their birds. You should employ the following technologies in your web application: HTML, CSS, PHP, MySQL and possibly JavaScript. Both kinds of scripting must be employed. You should be sure to implement some form of error handling.
Task 4
Thoroughly test your web application as follows:
Draw up test plans and, using them, test your application to ensure that it functions correctly. The tests should be systematic and you should clearly contrast the actual results against the expected results.
Prove that your application meets the HTML5 and CSS3 standards by submitting the files for checking online using the appropriate W3C online validator. Discuss every item of adverse feedback received and advise whether these need addressing or can be ignored. (Place the actual online W3C reports in the appendix of your assignment). Note: The validator cannot validate PHP. Instead, you need to validate the HTML code generated after it has been parsed by the PHP server. To do this, copy the source code from your browser using the view source option.
Obtain feedback on your website by carrying out usability studies with an independent third party. Using this, list ways that your website could be improved. (note: do not implement the improvements)
Create a short user guide to explain how to use the website you have created (sorry, but you cannot incorporate this into the website). Produce an asset list to show what files are employed, where they are located and the websites dependency upon them (build time or runtime)
LO1 Understand the concepts of web application development
1.1 critically evaluate the functions and advantages of web applications
1.2 critically compare different types of server-side and client-side scripting languages
1.3 examine web security concerns and make recommendations for security improvements
LO2 Be able to design web applications
2.1 design a web application to meet a given requirement
2.2 synthesise client-side and server-side functionality in a web application
2.3 apply a database design for use in a web application
2.4 evaluate alternative designs and solutions to meet a given requirement
LO3 Be able to implement web applications
3.1 implement a web application to a prepared design using client-side and server-side scripting languages
3.2 implement a web-enabled database management system to store, retrieve and manipulate data in a web application
3.3 identify and implement opportunities for error handling and reporting
LO4 Be able to test web applications
4.1 critically review and test a web application using a web-enabled database management system
4.2 analyse actual test results against expected results to identify discrepancies
4.3 critically evaluate independent feedback on a developed web application and make recommendations for improvements
4.4 create user documentation for a developed web application