1. Homepage
  2. Programming
  3. ISYS1101-1102 Database Applications Assignment 4: Web Database Applications

ISYS1101-1102 Database Applications Assignment 4: Web Database Applications

Engage in a Conversation
RMITISYS1101ISYS1102Database ApplicationsWeb Database ApplicationsSQLPHPWeb Development

Database Applications ISYS1101/1102 | Semester 2 2023 Assignment 4: Web Database Applications CourseNana.COM

1 Overview CourseNana.COM

1.1 Assessment Criteria CourseNana.COM

This assessment will determine your ability to: CourseNana.COM

  1. compare and analyse relational and non-relational database systems; CourseNana.COM

  2. write technical reports suitable for a non-technical audience; CourseNana.COM

  3. write SQL statements required for CRUD (create, read, update and delete) operations on the CourseNana.COM

    database you built; CourseNana.COM

  4. by embedding above SQL as appropriate, write the complete web application using HTML, PHP, CourseNana.COM

    JavaScript and any other required tools; CourseNana.COM

  5. Demonstrate your complete web database application. CourseNana.COM

1.2 Learning Outcomes CourseNana.COM

This assessment will assess how you attained the following course learning outcomes: CourseNana.COM

CLO 1: apply advanced data analysis and modelling concepts, physical design, integrity, security and transaction management.
CLO 4: build an efficient database application with an emphasis on storage management, indexing and query optimisation;
CourseNana.COM

CLO 6: develop a simple web-based interface for a database. CourseNana.COM

RMIT Classification: Trusted CourseNana.COM

2 Assessment Details CourseNana.COM

2.1 Preparation Work CourseNana.COM

Mandatory: CourseNana.COM

You are required to be able to write code in HTML, PHP, JavaScript and any other programming/ scripting languages to build a fully-fledged web database application. More importantly, you should be able to use Oracle API (oci8) within a PHP program. In order to acquire this pre-requisite knowledge, you must complete Week 2 lab session. CourseNana.COM

Optional: CourseNana.COM

If you haven't done any web programming before, you are highly recommended to complete the LinkedIn Learning tutorials listed in Week 2 Pre-lecture activities. CourseNana.COM

The assignment solution (web application) must be hosted on a separate folder on school’s web server (titan.csit.rmit.edu.au). The recommended folder is
/[Your Home Directory]/public_html/dba/asg4/
Then, your URL of your application homepage will be
https://titan.csit.rmit.edu.au/~s<student_number>/dba/asg4/index.php CourseNana.COM

In order to protect this website from unauthorised access AND only allowing staff members access it, include a .htaccess file in the /[Your Home Directory]/public_html/dba/asg4/ folder. A pre-configured .htaccess file is available on Canvas in the Assignment 4 folder (along with this specification). CourseNana.COM

We build the application based on the design you submitted for Assignment 1. If it was partially completed or discovered any shortcoming in the design, a partial schema that you can use to build tables required for this assignment is also available on Canvas in the Assignment 4 folder (along with this specification). CourseNana.COM

2.2 Assignment Task Description CourseNana.COM

Task 1: Build a simple web database application CourseNana.COM

The Australian Electoral Commission (AEC – https://aec.gov.au) is responsible for conducting federal CourseNana.COM

elections and referendums. Australia’s manual system of federal elections has one of the most complex CourseNana.COM

and time-consuming counting operations in the world. While it can at times require patience, the CourseNana.COM

federal election counting process delivers (1) integrity to the results, concentrating on (2) accuracy in a CourseNana.COM

(3) highly transparent manner. CourseNana.COM

While manual process ensures these three key priorities, there are two areas of concern to may stake CourseNana.COM

holders, namely: CourseNana.COM

The time it takes to count votes and the human resources required to complete the process CourseNana.COM

within an acceptable time frame CourseNana.COM

The volume of papers it requires and the environmental impact of running a manual election. CourseNana.COM

RMIT Classification: Trusted CourseNana.COM

Let’s suppose you are employed by a software development company that just received a contract from CourseNana.COM

AEC to build a computerised voting system for federal elections. As in the case with manual elections, CourseNana.COM

the most important aspect of this system is to ensure the integrity of the voting system, accuracy, and CourseNana.COM

transparency. CourseNana.COM

System requirements CourseNana.COM

The system is developed in several phases. The first phase, which you are responsible for, is limited to federal general elections for House of Representatives. The following voting processes are not in the scope of this phase: CourseNana.COM

1. Federal general elections for senate
2. Federal by-elections
3. State and territory elections
4. City council and shire council elections 5. Referendums
CourseNana.COM

6. Any other election services provided by AEC CourseNana.COM

In the first assignment, you had analysed the database requirements, designed the database backend for the voting system, identified various database optimisations, and implemented the backend infrastructure for the electronic voting application. CourseNana.COM

In this assignment, you are required build a front-end web application for one of the main tasks of the application. The task within the scope of the assignment is the interface for voting. CourseNana.COM

Note: On the election date, registered voters are required to attend a polling station and cast their vote on a ballot paper similar to above. The actual voting process is much more flexible with pre-poll voting, postal voting, absentee voting, and declaration votes. However, for the scope of this assignment, we only consider regular voting process that happen on the election day. CourseNana.COM

The computerised voting process will mimic the current manual voting process. CourseNana.COM

Steps to replicate: CourseNana.COM

When a voter visits a polling station, the polling official will ask the voter the following questions: CourseNana.COM

Question 1: 'What is your full name?' CourseNana.COM

This enables the polling official to look up your name on the electoral role for that division. If your name is on the electoral role, you will be asked the next question. CourseNana.COM

Question 2: 'Where do you live?' CourseNana.COM

If the address given is the same as that shown on the electoral role you will be asked the next question. CourseNana.COM

Question 3: 'Have you voted before in THIS election?' CourseNana.COM

If you have not voted before in this election, you will be issued with a ballot paper. In your application, a web form will capture the answers to these questions. CourseNana.COM

RMIT Classification: Trusted CourseNana.COM

Under the Address field, when the user starts to enter their address, the form should use an (externally available) Australian Address Lookup facility and pre-fill the other subsequent fields. CourseNana.COM

e.g.: CourseNana.COM

There are a number of free JavaScript-based address lookup facilities available. One of the very customizable facilities is addressfinder.com.au Their free-tier allows you to do 300 address lookup a month, which will be sufficient for the assignment. CourseNana.COM

In the manual system, you will be issued a ballot paper similar to the following: CourseNana.COM

RMIT Classification: Trusted CourseNana.COM

In your application, a dynamically generated form will be presented to the voter. It will be similar to the following: CourseNana.COM

You must use html, JavaScript, CSS, and PHP web technologies to generate these pages.
Once the form is submitted, the data must be stored in appropriate tables in your Oracle database.
CourseNana.COM

RMIT Classification: Trusted CourseNana.COM

[Very important] To ensure integrity and confidentiality of the voting process, once a voter is issued a computerised ballot paper, there should not have any identification records to positively identify who cast that vote. As such, only the following data are stored with each computerised ballot paper. CourseNana.COM

However, in order to avoid double-voting, there must be some mechanism in place to note down when a voter votes in the current election. You may use either the function developed in assignment 1 or a new mechanism for this purpose. CourseNana.COM

Your application must have appropriate validations at each of the steps: CourseNana.COM

  1. When the voter enters their name and address, it must be cross-checked against the electoral register. If the combination doesn’t exist, with an appropriate explanation the voter should present a blank form to re-fill their name and address again. CourseNana.COM

  2. If the voter is valid, however, if they have previously voted, the system should give the voter a formal warning (i.e. voter fraud is a criminal offence) and revert to the home page of the application. CourseNana.COM

Note: You may not validate the preference votes cast on the computerised ballot paper. While your computerised system is, in fact, capable of validating the preferences entered and make sure that all ballots are formal, the real system does not do any such validations. Voters, in current system, may inadvertently or intentionally enter informal preferences (such as missing numbers, doubled up numbers, writing anything that identifies a voter, etc). Since your task is to mimic the current system, you are not required to validate the preferences entered. CourseNana.COM

All in all, your application must have at least three pages: CourseNana.COM

  1. An html form for the electoral role check-up; CourseNana.COM

  2. A dynamically generated web form (using PHP) for the ballot paper; CourseNana.COM

  3. Another PHP script to process the ballot. It will do the following tasks: CourseNana.COM

  1. Store preference data in appropriate tables in your Oracle database. Depending on the schema used, it may require inserting data on to more than one table. For example, if you use the sample schema provided ballot data are stored in Ballot table and BallotPreference table; CourseNana.COM

  2. Update the ballot issuance record, so, if the same voter attempts to vote again, we know that that’s an illegal attempt. If you use the sample schema provided, this information is stored in Voted table. CourseNana.COM

In addition to above, you may require other PHP scripts (required by the above scripts) and/or JavaScript and CSS files. CourseNana.COM

RMIT Classification: Trusted CourseNana.COM

Task 2: Analyse different database platforms CourseNana.COM

You have implemented the Computerised Voting application and the AirBnB-lite application using two very different database backends: (1) Oracle implementation in assignment 1; and (2) MongoDB implementation in assignment 2. In this Task, you are required to write a research report analysing these two implementations. CourseNana.COM

The system requirements between these two applications are somewhat different. The current computerised voting system caters for about 17 million voters in Australia and manages 3-yearly federal elections. In contrast to that, AirBnb has 2.9 million hosts with 14,000 new hosts each month, and 7 million listings worldwide. A registered voter record (a row in VoterRegistry table) is much smaller than a document in listringsAndReviews document collection.
Based on the findings from your two implementations, write a report identifying the advantages and disadvantages of both backend approaches and a conclusion making your recommendations.
Following metrics can be used to compare two database backend implementations:
CourseNana.COM

  • Query performance CourseNana.COM

  • Resource requirements (disk, memory, CPU, network bandwidth, etc) CourseNana.COM

  • Security issues, such as SQL injection CourseNana.COM

  • ACID properties, transaction and concurrency control CourseNana.COM

  • Scalability CourseNana.COM

  • Ability to handle massive volumes of data CourseNana.COM

  • Ability to execute complex queries CourseNana.COM

  • Data integrity CourseNana.COM

  • Differences in (for example media) data types CourseNana.COM

    Note that while the current implementation of the MongoDB database does not deal with security, you should consider how this would be handled in the real application.
    Your report may also include case studies (implementations other than your computerised voting and AirBnB applications) for both paradigms and draw conclusions based on their findings.
    CourseNana.COM

    The report length should be between 1000 - 1500 words. You must be careful about quoting texts extracted from other sources. You can paraphrase them with proper referencing. Before you start your report, please refer RMIT Library Referencing Guide, available at: https://www.rmit.edu.au/library/study/referencing CourseNana.COM

    3 Submission CourseNana.COM

    Follow the instructions on Canvas to complete your submission. CourseNana.COM

    3.1 Task 1 Submission CourseNana.COM

    You will need to submit two things: CourseNana.COM

1. The URL of the Task 1. Please submit your website URL as submission instruction. It must follow the pattern https://titan.csit.rmit.edu.au/~s<Student_Number>/DBA/asg4/index.php CourseNana.COM

RMIT Classification: Trusted CourseNana.COM

2. A zipped file containing full codebase for your website. It must include html, JavaScript, CSS, and PHP files and also make sure your Oracle credentials are also included. DO NOT use the RMIT authentication (or any other confidential passwords) for Oracle. CourseNana.COM

3.2 Task 2 Submission CourseNana.COM

The report length should be between 1000 - 1500 words. You must be careful about quoting texts extracted from other sources. You can paraphrase them with proper referencing. Before you start your report, please refer RMIT Library Referencing Guide, available at: https://www.rmit.edu.au/library/study/referencing CourseNana.COM

You can use Microsoft Word or another word processing application to work on your research report. At the end, convert it into PDF format. Do not submit Word file. if that option is not available on your system there are free pdf converters online you can utilise. e.g. http://convertonlinefree.com/ CourseNana.COM

3.3 Assessment Declaration CourseNana.COM

When you submit work electronically, you agree to the RMIT assessment declaration. CourseNana.COM

3.4 Late Submissions & Extensions CourseNana.COM

A penalty of 10% per day is applied to late submissions up to 5 business days, after which you will receive zero marks. CourseNana.COM

Short extensions may be granted by the course coordinator up to 1 business day before the due date in accordance with RMIT Assessment Adjustment process. However, extensions are not guaranteed and require suitable documentation. The course coordinator may refer requests to Special Considerations. CourseNana.COM

Special Consideration may result in an equivalent assessment, which may take the form of a timed assessment assessing the same knowledge and skills of the assignment and are generally granted on an individual basis. For more information refer to the RMIT Special Consideration process. CourseNana.COM

3.5 Supported software for assessment and grading CourseNana.COM

The markers will check the functionality of the hosted web application. Make sure it is up and running for another two weeks after the submission deadline. CourseNana.COM

4 Marking Guidelines CourseNana.COM

4.1 Task 1 CourseNana.COM

15 marks for the statements required for tasks 1 – 6. 4.2 Task 2 CourseNana.COM

20 marks for the report
The detailed breakdown is provided on the marking Rubric available on Canvas.
CourseNana.COM

5 Academic Integrity and Plagiarism (Standard Warning)
Academic integrity is about the honest presentation of your academic work. It means acknowledging the CourseNana.COM

work of others while developing your own insights, knowledge and ideas. You should take extreme care that you have: CourseNana.COM

CourseNana.COM

RMIT Classification: Trusted CourseNana.COM

  • Acknowledged words, data, diagrams, models, frameworks and/or ideas of others you have quoted (i.e., directly copied), summarised, paraphrased, discussed or mentioned in your assessment through the appropriate referencing methods CourseNana.COM

  • Provided a reference list of the publication details so your reader can locate the source if necessary. This includes material taken from Internet sites. If you do not acknowledge the sources of your material, you may be accused of plagiarism because you have passed off the work and ideas of another person without appropriate referencing, as if they were your own. CourseNana.COM

    RMIT University treats plagiarism as a very serious offence constituting misconduct. Plagiarism covers a variety of inappropriate behaviours, including: CourseNana.COM

  • Failure to properly document a source CourseNana.COM

  • Copyright material from the internet or databases CourseNana.COM

  • Collusion between students CourseNana.COM

    For further information on our policies and procedures, please refer to the RMIT Academic Integrity Website.
    The penalty for plagiarised assignments includes zero marks for that assignment, or failure for this course. Please keep in mind that RMIT University uses plagiarism detection software. 
    CourseNana.COM

Get in Touch with Our Experts

WeChat (微信) WeChat (微信)
Whatsapp WhatsApp
RMIT代写,ISYS1101代写,ISYS1102代写,Database Applications代写,Web Database Applications代写,SQL代写,PHP代写,Web Development代写,RMIT代编,ISYS1101代编,ISYS1102代编,Database Applications代编,Web Database Applications代编,SQL代编,PHP代编,Web Development代编,RMIT代考,ISYS1101代考,ISYS1102代考,Database Applications代考,Web Database Applications代考,SQL代考,PHP代考,Web Development代考,RMIThelp,ISYS1101help,ISYS1102help,Database Applicationshelp,Web Database Applicationshelp,SQLhelp,PHPhelp,Web Developmenthelp,RMIT作业代写,ISYS1101作业代写,ISYS1102作业代写,Database Applications作业代写,Web Database Applications作业代写,SQL作业代写,PHP作业代写,Web Development作业代写,RMIT编程代写,ISYS1101编程代写,ISYS1102编程代写,Database Applications编程代写,Web Database Applications编程代写,SQL编程代写,PHP编程代写,Web Development编程代写,RMITprogramming help,ISYS1101programming help,ISYS1102programming help,Database Applicationsprogramming help,Web Database Applicationsprogramming help,SQLprogramming help,PHPprogramming help,Web Developmentprogramming help,RMITassignment help,ISYS1101assignment help,ISYS1102assignment help,Database Applicationsassignment help,Web Database Applicationsassignment help,SQLassignment help,PHPassignment help,Web Developmentassignment help,RMITsolution,ISYS1101solution,ISYS1102solution,Database Applicationssolution,Web Database Applicationssolution,SQLsolution,PHPsolution,Web Developmentsolution,