Database assignment question 1

Assignment Task:

Your school has been offered access to a range of devices that collect environmental data. Your principal thinks they could be used to provide data about the classrooms and other school areas. He believes access to accurate data will ensure appropriate decisions are made about updating areas around the school. The school currently has a trial set of devices and has asked you to create a prototype system to collect some data and provide äccess to it, presenting the information in meaningful and effective ways, so that the effectiveness of implementing this system across the college can be assessed.

This project requires you to complete three interrelated components:

  • You must design and create a MySQL database suitable for collecting data from the full range of possible devices.
  • The devices push data to a given internet location at regular intervals. You are required to write a PHP script to collect the data posted to your given address and save it to your database. A web interface must be designed and built using PHP to provide access to the data in your database. The user should be able to select data and compare the data from different locations at different times of day.

Part 1: Database design

  • You must design and describe the database using NIAM. All steps of this process must be documented using standard conventions in your report.
  • Assume that you are recording information from a range of indoor and outdoor locations in the school for temperature, light levels, humidity, sound levels etc. The locations will require information such as the room number or other identifier and additional information about these locations (such as rooms or outdoor areas, level within the building, building name, whether air conditioned or not, student or staff areas). In addition, information from a school weather station must be collected in the same way.
  • The database must be implemented as a MySQL database. The tables should be populated with data for test purposes.
  • Once the database is complete it is to be exported from XAMPP and will be uploaded to your site by your teacher. Note: Once this task has been completed there will be limited ways of making changes to the database structure.

Part 2: Collecting the data

  • Data from the devices will be sent to your given web address as posted variables. Eg data may be sent as: location=G2&temp=25.6&humid=75&sound=20 Data will be pushed out every 15 minutes. Other data elements may include information labelled light (light levels) baro (barometric pressure), rain (rainfall in mm), mintemp (minimum temperature), maxtemp (maximum temperature), and wind (wind speed). Not all devices will deliver the same information, but if valid will always include a location element.
  • You should provide a clearly designed algorithm to be used in the implementation of this script. All planning must be included in your documentation.
  • You will be provided with access to your individual location for your data collection script file and web interface. You should implement your design using NetBeans and FTP access information provided for your site.

Part 3:

  • A web interface must be provided to display selected data to the user. This is to be implemented using PHP and the NetBeans IDE, FTP access details will be provided.
  • There must be an administration page to allow entry and editing of location data.
  • To demonstrate the potential of this system you must create pages that allow the user to select and compare data — sound, light levels and temperature — from rooms in a selected building. The user should be able to compare:
  • o daily averages, maximums and minimums across a range of days for a selected measurement type o averages for the selected type.
  • The home page must be named index.php and is to be placed at the IP address provided. Full documentation of your planning, including the design, algorithms and interface, must be included.

Report:

The report will cover the five steps for software development:

  • The problem definition must include a detailed description of the problem and all known details must be included. Any assumptions or restrictions that you will be applying must be clearly outlined. There must be sufficient information on which to create the solution and to make an evaluation as to the effectiveness of your solution.
  • The planning and specification must include all of the elementary sentences, CSD, constraints, ONF, relational schema, and table designs for the database. Algorithms used in the development of the data collection script and the web interface are required. Planning for the interface must be included (with annotated drawings of the proposed screen layouts). Interfaces must demonstrate your knowledge of HCI. Plans for testing, and criteria for evaluation of your finished product, should be included,
  • The implementation of the system must be carried out using PHP with a MySQL database. Details -of the planning, coding and database structures must be included in the report.
  • Testing of each part of the system must be carried out and documented. _Discussion of the testing process and outcomes should be included in the report.
  • A detailed evaluation of both the process and the product must be included.