Software development task (topic cars). Must be presented and working in Apache NetBeans. Your task is to create a web application agreed with your module tutor, using the techniques and guidelines you have been given in the module. You cannot obtain a pass for static web pages alone.
Not every page needs to be dynamic, however. The web application must use Java EE server-side technology and a backend database. It must demonstrate the features that you have been taught in the course, in particular Java beans, JavaServerTM Faces, Ajax, and accessing a database in a web application.
The database could be any of Java DB, Apache Derby, MS Access, MySQL, Oracle, and MS SQL. Your database must be completely different to any sample database supplied during the course, by Deitel.com or netbeans.org websites – in terms of table and field names. You will need to get your proposal signed off for this reason.
This rule does not apply to login tables, if any. The deliverables:
1. A zip archive of your complete project folder, including the database.
2. A single document in PDF, or MS Word compatible. The document should include your full name and student id. P .T.O 2 The report (approx 1500 words, not including the code printout) should include:-
(a) A brief description of your application, including the title of your project, purpose, audience, notable features and the implemented functions.
(b) Site map showing the whole structure of your site – how the pages link together – using a diagram where appropriate.
(c) A short discussion of usability/design showing (with 5 specific examples) how your web user interface design demonstrates good named usability/design principles e.g. consistency, structure, but not simplicity (no marks for saying easy to use or bright/attractive colours!!!).
(d) Listing of database tables, and the table relationship diagram. Note that your database must have at least a table with at least 3 field types.
(e) A concise explanation of the Java classes of your application, including the Java PageBean server pages, a non-trivial CSS script and a non-trivial JavaScript script of your submitted work. You must explain the purpose of, and technologies used in, the generated code used in your application.
(f) Test plan with expected and actual test results. Test screen dumps (live, maximum of 2 screen shots per A4 side) with annotation.
(g) A reflection of your experience of using your chosen development tool (e.g. NetBeans, etc.) to develop a Java EE web application interfacing a backend database, which features you like and why, what issues you experienced and your solution to overcome it.
Important notes:
1. Failure to follow these instructions e.g. not using Java EE, JSF, or databases, – or using pages from multiple websites can mean an automatic fail.
2. Before the submission please check that your application runs in at least 2 PCs!
Marking Scheme.
Individual Coursework 2 This coursework counts for 30% of the module mark. Mark each item listed on the mark scheme as per the table below.
1. A web application is up and running 5
2. Content, functionality and usefulness of the application 5
3. User Interface design and common look and feel using JSF and/or 5 CSS, JavaScript and tables
4. Menu structure / navigation 5
5. Database tables populated with meaningful test data 5
6. Connecting to the database 5
7. Use of common JSF components 5
8. Use of JSF Standard Validators, and Session Tracking 5
9. Programming Java page beans 5
10. Database CRUD operation: a page to insert data to the database; to 5 validate at least one field with JavaScript or JSF validation facility.
11. Database CRUD operation: a page to display data from the 5 database
12. Database CRUD operation: a page to update data from the 5 database.
13. Database CRUD operation: a page to delete data from the database.
14. Use of Ajax e.g. on a search screen/form 5:
a. A brief description of your application 2.5
b. Site map showing whole structure of site with links 2.5
c. Short discussion of usability/design 2.5
d. Database table relationship diagram, the tables’ structures 2.5
e. Concise explanation of the Java classes of your application 2.5
f. Test plan and test data, screen dumps (live, 2 per page) with 2.5 annotation.
g. A reflection of your experience 2.5:
1. Clarity of code which shows the underlying algorithm 2.5
2. Sensible naming of programmer-defined variables, classes, 2.5 properties and methods
3. Useful comments in code 2.5
4. Data validation and exception handling 2.5 5 User interface design and usability of the system