Skip to content

Conceptual Model

Jorge Heleno edited this page Mar 13, 2017 · 3 revisions

Conceptual Model

This model represents the different concepts that the users of our application need to understand in order to use the application and what actions they can perform. It defines objects, their attributes, operations and how different objects are related to each other. Note that this is not the internal object modelling of the application (UML), but can be used as a starting point for defining it.

Objects and attributes

Main objects

  • Message (author, title, message, Location, Policy, Delivery mode, Topics, Life time)
  • User (username, password, Profile)
  • Profile (topics)
  • Location (name, coordinates/wifi IDs, radius)

Secondary objects

These objects only exist as part some of the main objects:

  • Key (or maybe Interest or Topic)
  • Policy (Black/white list)
  • Life time (start, end)
  • Message notification
  • Delivery mode (centralised/decentralised)

Relations

  • A User can post a message to a location, providing a list of topics to filter the message receivers
  • A User has a Profile
  • A User can read a message after receiving a message notification
  • Users can create/delete locations
  • Users can add interest topics to their profile
  • ...

Actions

  • Sign up (create profile)
  • Sign in/out
  • List/create/remove location
  • Post/unpost message
  • Read message
  • Edit profile
    • add/remove topics
Clone this wiki locally