Unit 41 Programming in Java and Unit 35 Web Application development ([email protected])

profileAssignmenthelp1234
web_application_and_design.pdf

Department of Information Technology Page 1 of 10

HND Assignment Brief Session: September 2015

Programme title BTEC HND in Computing and Systems Development

Unit number and title 35 Web Applications Development (L5)

Assignment number & title 1 of 1 Web Applications Development (L5)

Unit Leader Dr. Gebremichael

Assessor (s) Yonas Gebremichael and Hassan Baajour

Issue Date 30 Sep 2015

Final assignment submission deadline 28 Dec 2015 – 09 Jan 2016

Late submission deadline

11 – 16 January 2016 The learners are required to follow the strict deadline set by the College for submissions of assignments in accordance with the BTEC level 4 – 7 submission guidelines and College policy on submissions. They should also refer to Merit and Distinction criteria that require evidence of meeting agreed timelines and ability to plan and organise time effectively without which the learner may not expect to receive a higher grade.

Resubmission deadline TBA

Feedback

In-class feedback will be available from draft submissions on a task- by-task basis as a formative feedback and also for initial submission. Final feedback will be available within 2 – 3 weeks of the assignment submission date.

General

Guidelines

1. The work you submit must be in your own words. If you use a quote or an illustration from somewhere you must give the source.

2. Include a list of references at the end of your document. You must give all your sources of information.

3. Make sure your work is clearly presented and that you use readily understandable English.

4. Wherever possible use a word processor and its “spell-checker”.

Internal verifier Dr. Hasan

Signature (IV of the brief) * Dr. Hasan Date 06/10/15

Department of Information Technology Page 2 of 10

ICON College of Technology and Management BTEC HND in Computing and Systems Development

(CSD) Unit 35: Web Applications Development (L5)

Session: September 2015 Coursework

Recommended maximum words: 3,000

This Unit will be assessed by assignment and Presentation. You are strongly recommended to read “Preparation guidelines of the Coursework Document” before answering/solving your assignment. Scenario Lingo Academy provides people with short time courses in IT. You are required to create a simple web

application which we will call ‘Lingo Management System’ for the purpose of maintaining student’s

details and monitoring their academic progress. The system has an admin who has full administrative

rights to register, remove, update and maintain the students’ details and to register and update

courses in the system. Each course at Lingo Academy has only one teacher who has the rights to

insert and update the grades directly in the system only for his students (less than 50 Fail, between 50

and 60 Pass, between 60 and 70 Merit, above 70 Distinction). The student should be able to login to

the system and check his progress. To implement the site, you must use HTML5, CSS and JavaScript

for the client- side coding. PHP must be used for the server side coding. The site must run from a local

web server. The backend will be built with MySQL Server database.

Functional Specification 1. Accounts Creation

- Create HTML forms as needed to create accounts for the users of the system and to store and

maintain the required data.

- Account and other data (e.g. courses) details are to be stored in your MySQL database.

- The system must prevent duplicate usernames being chosen (Do not use the email address

as a username).

-

2. Forms Validation

It is important that you validate the forms on client side using html5 and JavaScript code, in addition to

the validation using server side code (i.e. PHP) and you should display proper error messages as

needed.

3. Authentication

Any available login form on your website should be usable by the all the user types of the system,

however they should be allowed to access only what is related to their roles.

Department of Information Technology Page 3 of 10

4. Search

The admin and the teacher should be able to search available students. However, the teacher should

only be allowed to find and view his own students. Also, all users of the system should be allowed to

search and find courses available in the system.

5. Contact

Your website must provide users with a contacting form that uses html5, JavaScript and PHP. The

form should send the message directly to the admin or the teacher depending on the user selection. It

should as well keep a copy of the email inside the MYSQL db.

6. Other issues Your website should look simple and nice and must include minimum 5 different pages including

home, courses, about, contact us (public pages) and accounts management (private pages). All public

pages must have a header and footer with relevant logo, navigation links menu, login form, images

and/or videos.

Task 1 In the reference to the above scenario:

1.1 Critically evaluate the functions and advantages of web applications. [P1.1]. 1.2 Critically compare different types of server-side and client-side scripting languages. [P1.2, M1]. 1.3 Examine web security concerns and make recommendations for security improvements for

your web application. [P1.3].  To achieve M1; Student has to define clearly the difference between the client side and server

side languages. In addition, student has to identify and define multiple server and client side

languages and to list main differences between them.

Task 2 This task focuses in the design of the web application and associated database. Within this context

and in the reference to the above scenario: 2.1 Design a web application to meet the given requirements in the scenario above. Use all relevant

techniques such as wire-framing, storyboarding and sitemap. Your website shall have all the

relevant pages for full implementation of the above scenario including a sitemap. [P2.1, M2] 2.2 Demonstrate a client-server architecture suitable for your web application. [P2.2, D1] 2.3 Design a database system for use in your web application. [P2.3, D2] 2.4 Evaluate alternative designs and solutions to meet a given requirement. [P2.4]

 To achieve M2; Student has to introduce proper and consistent wire-frames and storyboards

including header, footer, main content sections with logo, navigation links menu, login form,

crumb-bread, relevant images and videos … etc.

Department of Information Technology Page 4 of 10

 To achieve D; Student has to illustrate proper client-server architecture that suits his system

and has to demonstrate the role of each component and how they communicate together.

 To achieve D; Student has to create a multiple tables database, demonstrate the relations

between them and justify his design.

Task 3 This task aims to establish a good familiarity with the implementation of the web application using

proper client-server technologies connected to a relational database using html, CSS, JavaScript,

PHP and MySQL DB. To this end you have to:

3.1 Implement the proposed wireframe and storyboards introduced in task 2 using mark-up and

scripting languages as appropriate: HTML for web pages, CSS for presentation styles,

JavaScript for client side script [P3.1]. 3.2 Implement web-enabled database management system to store, retrieve and manipulate data

in the web application as specified in the scenario above using PHP and SQL queries. [P3.2, D3]

3.3 Identify and implement opportunities for error handling and reporting. [P3.3]

 To achieve D3; Student has to implement a proper functional system that reflects creativity in

developing the proposed client-server architecture introduced in Task 2.

Task 4 4.1 Review and test your web application on front end and back end levels. [P4.1] 4.2 analyse actual test results against expected results to identify discrepancies (Use verification

table). [P4.2]

4.3 Critically evaluate independent feedback on a developed web application and make

recommendations for improvements [P4.3, M3] 4.4 Create user documentation for a developed web application. [P4.4, D3]

 To achieve M3; Student has to list the independent feedback and demonstrates how they will deal with it in proper way.

 To achieve D3; Student has to provide proper documentation for the technical side in a way that allows other developers realise how to fix and update the code of the system. Also student has to demonstrate clearly how the actual user of the system will be able to use it. The user guide has to include clear instructions and relevant screen shots.

Assessment Methods This is an individual coursework.

There are TWO components to this assignment.

1. Your system will be assessed at a laboratory demonstration/viva where the complete system

(software or hardware) you produced will be demonstrated and you will be asked to answer

related questions. For this, you will need to prepare a power point presentation or similar

Department of Information Technology Page 5 of 10

presentation package of your choice to aid your oral presentation. The presentation will last

no more than 10-15 minutes. You will be marked on content, presentation style and clarity of

delivery. This is important and you should treat it as an examination.

2. You will need to produce a short report addressing all the questions in each learning outcome.

You must include your power point slides in this report. There is no written examination for this unit.

Additional Specs, Hints & Good Programming Practices • The marking scheme for this coursework will assign marks for Functionality, Quality of Code,

Program Design, Style, Documentation and Working Binaries. Style and Documentation are

crucial – you must neatly comment your code.

• Try and break the coursework down into do-able chunks as identified by the task list. These

are distinct programs in the coursework, so try and modularise your effort – for instance - first

you need to set up the menu system and build functionalities of each menu item one by one.

This approach will help in the testing and debugging process of your code.

• You should aim in achieving good level of Modularity in implementing your developed

Algorithm and to avoid High inter-Dependability between the implemented Functions of your

Program Code.

• DEBUGGING HINT: Compile and test your program after every change, even if it was as simple a change as adding a single line. This will allow you to find and fix errors early before you write more code. This is another reason why you have to write the skeleton program which runs first even if it does not do anything yet.

• Your main program should have the following heading shown below. You must customise it to

your particular details.

/*************************************************************************************

About: This program is written as part of the fulfilment for the ‘put your Unitname’

Course - HND in EEE/CSD at Icon College, London.

Date : Put date here

By : Put your name here. Student ID: Put your student ID Here

*************************************************************************************/

• Each function must have its own comment heading which describes exactly what the code

does as shown below as an example.

/*************************************************************************************

About: This program takes your date of birth as an input and returns your age.

*************************************************************************************/

In addition to the above, follow good programming practices. Below are some of the common good

practices generally accepted as industry standard and followed by those in industry. You will get more marks for following good programming practices. Some examples are given below.

• When naming identifiers,

Department of Information Technology Page 6 of 10

o Do not start with underscore (used for technical programming). e.g. _grades (this is

bad practice)

o Write single word variables in all lower case , e.g. int grades, roots;

o Space is not allowed in identifiers, e.g. ‘student grades’ is wrong! write this as

studenGrades or student_grades. Note the use of capitalisation or the underscore.

o Use CAPITAL LETTERS TO DECLARE CONSTANTS, e.g. PI = 3.14, SIZE = 100;

o Start function names with capital letters. e.g. AverageGrades(). Spaces are not

allowed in function names. ‘Average Grades()’ is wrong. Use AverageGrades() or

Average_grades().

• Emphasis and care must be taken in producing good descriptive COMMENTS in the Program

Code, following a ‘tidy’ indentation of the Program Code, and using descriptive names for the

Functions and Variables implemented in the Program Code.

• Make a habit of using Meaningful identifier and Function Names to make your code easier

for others to understand. Think about it, what does "g" mean? Is it grades, garbage, grave,

etc. Thus do not use cryptic identifier names, e.g. Use ‘grades’ to refer to student grades

rather than ‘g’. Similarly, use sensible function names. If you want to write a function that

assigns student’s grades, then call it StudentGrades(). Do not use your names or names of

your pets or any name that does not describe what the function does, but at the same time do

not use more than 3 words, i.e. do not use a sentence to name a function. e.g.

ThisIsMyAverageFunction() while syntactically correct is not good programming practice.

• You are encouraged to use efficient Programming skills in implementing the designed

Algorithm, e.g. for avoiding unnecessary Variables Declarations etc., and in taking into

consideration the Computational Costs in Hardware of your written Program Code, e.g. avoid

unnecessary Repetition Statements etc.

• Remember PHP & JavaScript are case sensitive so ‘Grades’ and ‘grades’ are not the same as

identifier names. Thus be case and spelling consistent. Use an identifier name only once

and spell it (upper and lower case) the same way within your program.

Finally give the project and your report a sensible name like E.g. Unit35_CW_ID3344.

Department of Information Technology Page 7 of 10

Relevant Information

To gain a Pass in a BTEC HND Unit, you must meet ALL the Pass criteria; to gain a Merit, you must meet ALL the Merit and Pass criteria; and to gain a Distinction, you must meet ALL the Distinction, Merit and Pass criteria 1. Outcomes of the unit and assessment criteria

Outcomes Assessment criteria for pass. To achieve each outcome a learner must demonstrate

Questions reflecting the outcome

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

Task 1 & TCA

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

Task 2 & TCA

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

Task 3 & TCA

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.

Task 4 & TCA

Department of Information Technology Page 8 of 10

2. Grading Criteria for Merit and Distinction of this coursework Merit (M1, M2, M3) Distinction (D1, D2, D3)

Descriptors Indicative characteristics Descriptors Indicative characteristics

M1. Identify and

apply strategies to

find appropriate

solution

 Pass requirements

achieved

 effective judgment

have been made

 an effective approach

to study and research

has been applied

D1. Use critical reflection to

evaluate own work and

justify valid conclusions

Pass and Merit requirements

achieved

 The validity of results has

been evaluated using

defined criteria

 Realistic improvements have

been proposed against

defined characteristics for

success

M2. Select/design

and apply

appropriate

methods/techniques

 Relevant theories and

techniques have been

applied

 A range of sources of

information has been

used

 The design of

methods and

techniques/sources

has been justified

D2. Take responsibility for

managing and organising

activities

 Autonomy/independence

has been demonstrated

 Substantial activities,

projects or investigations

have been planned,

managed and organised

 Activities have been

managed

 The importance of

independence has been

recognised and achieved

M3. Present and

communicate

appropriate findings

 The appropriate

structure and

approach has been

used

 Coherent, logical

development of

principles/concepts for

the intended audience

 A range of methods of

presentation has been

used and technical

language have been

accurately used

 Communication has

taken place in familiar

and unfamiliar

contexts

D3. Demonstrate

convergent/lateral/creative

thinking

 Ideas have been generated

and decisions taken

 Convergent and lateral

thinking have been applied

 Problems have been solved

 Innovation and creative

though have been applied

 Receptiveness to new ideas

is evident

Department of Information Technology Page 9 of 10

3. Preparation guidelines of the Coursework Document a. All coursework must be word processed. b. Document margins must not be more than 2.54 cm (1 inch) or less than 1.9cm (3/4 inch). c. Font size must be within the range of 10 point to 14 point including the headings and body text

(preferred font size is 11). d. Standard and commonly used type face such as Arial should be used. e. All figures, graphs and tables must be numbered. f. Material taken from external sources must be properly refereed and cited within the text using

Harvard standard g. Do not use Wikipedia as a reference. h. Word limit must be strictly followed.

4. Plagiarism and Collusion

Any act of plagiarism or collusion will be seriously dealt with according to the College regulations. In this context the definition and scope of plagiarism and collusion are presented below: Plagiarism is presenting somebody else’s work as your own. It includes copying information directly from the Web or books without referencing the material; submitting joint coursework as an individual effort. Collusion is copying another student’s coursework; stealing coursework from another student and submitting it as your own work. Suspected plagiarism or collusion will be investigated and if found to have occurred will be dealt with according to the college procedure. (For details on Plagiarism & Collusion please see the student hand book)

5. Submission

a. Initial submission of coursework to the tutors is compulsory in each unit of the course. b. Student must check their assignments on ICON VLE with plagiarism software Turnitin to

make sure the similarity index for their assignment stays within the College approved level. A student can check the similarity index of their assignment three times in the Draft Assignment submission point located in the home page of the ICON VLE.

c. All Final coursework must be submitted to the Final submission point into the unit (not to the Tutor). A student would be allowed to submit only once and that is the final submission.

d. Any computer files generated such as program code (software), graphic files that form part of the coursework must be submitted as an attachment to the assignment with all documentation.

e. Any portfolio for a unit must be submitted as a hardcopy to examination office. f. The student must attach a tutor’s comment in between the cover page and the answer in the

case of Resubmission.

6. Good practice a. Make backup of your work in different media (hard disk, memory stick etc.) to avoid distress

for loss or damage of your original copy.

7. Extension and Late Submission a. If you need an extension for a valid reason, you must request one using an Exceptional

Extenuating Circumstances (EEC) form available from the College examination office and ICON VLE. Please note that the lecturers do not have the authority to extend the coursework deadlines and therefore do not ask them to award a coursework extension. The completed form must be accompanied by evidence such as a medical certificate in the event of you being sick.

b. Late submission will be accepted and marked according to the college procedure. It is noted that late submission may not be graded for Merit and Distinction.

c. All Late coursework must be submitted to the Late submission point into the unit (not to the Tutor). A student would be allowed to submit only once and that is the final submission.

Department of Information Technology Page 10 of 10

8. Submission deadlines Formative feedback Week 11 Presentation Week 12 Final Submission 28 Dec 2015 – 09 Jan 2016 Late submission 11 – 16 Jan 2016 Submit to: Online to the ICON VLE only Glossary: Analyse: Break an issue or topic into smaller parts by looking in depth at each part. Support each part with arguments and evidence for and against (Pros and cons). Critically Evaluate/Analyse: When you critically evaluate you look at the arguments for and against an issue. You look at the strengths and weaknesses of the arguments. This could be from an article you read in a journal or from a text book. Discuss: When you discuss you look at both sides of a discussion. You look at both sides of the arguments. Then you look at the reason why it is important (for) then you look at the reason why it is important (against). Explain: When you explain you must say why it is important or not important. Evaluate: When you evaluate you look at the arguments for and against an issue. Describe: When you give an account or representation of in words. Identify: When you identify you look at the most important points.

  • Additional Specs, Hints & Good Programming Practices