Requirements

Functional

  • The system should allow for the persistence of sensor readings into a central repository.
  • The system should provide access to a variety of relevant sensor and chronological data to external clients.
  • The system should provide the ability to remove or edit data stored in the system.
  • The system should provide the ability to view custom reports based on environmental and chronological data.
  • The system should have the ability to measure a variety of environmental factors.
  • The system should be configurable by local and remote clients on a variety of platforms.
  • The state of the system should be viewable by local and remote clients on a variety of platforms.
  • The system should respond to environmental changes by applying configurable rules which adjust the environment.
  • The system should allow for integration with other systems such as a home automation system.

Non-functional

  • Small Footprint
    • The sensor infrastructure required by the system should be kept to a minimum.
    • The system devices should be optimised for energy efficiency.
    • The system should be scalable in such away that adding additional components does not adversely affect system performance.
  • Ease of Maintenance
    • It should be straightforward to replace faulty sensors, etc.
  • Security
    • The system should be secured in such a way as to prevent unauthorised access and use.
  • Accessibility
    • The system should be easily accessible.
    • The user interface should be intuitive and provide a high level of accessibility.
  • Reliable
    • System must handle failures such as:
      • Dead devices
      • Communication problems
      • Power supply issues
  • Provide useful environmental information
  • Provide a solution to the cost optimization problem, with the following constraints:
    • Safety
    • Interaction with the system should be intuitive