Changes between Version 8 and Version 9 of ConceptualModel


Ignore:
Timestamp:
01/09/25 12:12:17 (6 days ago)
Author:
221514
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ConceptualModel

    v8 v9  
    77 * **Entity: Admin**
    88   * **Description**: An entity that disjointly specializes from the `Account` entity and uniquely identifies administrators of the system.
    9    * **Primary Key**: `email` - Entered when creating the account.
     9   * **Primary Key**: `account_id` - Artificially generated identifier.
    1010   * **Attributes**: None additional to those inherited from `Account`.
    1111
    1212 * **Entity: Student**
    1313   * **Description**: A specialization of the `Account` entity for students enrolled at universities.
    14    * **Primary Key**: `email`.
     14   * **Primary Key**: `account_id` - Artificially generated identifier.
    1515   * **Attributes**:
    1616     * **university**: The university the student attends.
     
    1919 * **Entity: Account**
    2020   * **Description**: Contains main information about application users.
    21    * **Primary Key**: `email`.
     21   * **Primary Key**: `account_id` - Artificially generated identifier.
    2222   * **Attributes**:
    2323     * **name**: User's first name.
     
    2727 * **Entity: Vehicle**
    2828   * **Description**: Generalization entity for all means of transport available on the system.
    29    * **Primary Key**: `plate_num` - The registration/plate number of the vehicle.
     29   * **Primary Key**: `vehicle_id` - Artificially generated identifier.
     30   * **Candidate Key**: `plate_num` - The registration/plate number of the vehicle. This is not used as a primary key due to its augmentative nature.
    3031   * **Attributes**:
    3132     * **model**: The specific model of the vehicle.
     
    3435     * **year_manufactured**: Year the vehicle was manufactured.
    3536
     37
    3638 * **Entity: Automobile**
    3739   * **Description**: A disjoint specialization of the `Vehicle` entity for cars.
    38    * **Primary Key**: `plate_num`.
     40   * **Primary Key**: `vehice_id` - Artificially generated identifier.
    3941
    4042 * **Entity: Bus**
    4143   * **Description**: A disjoint specialization of the `Vehicle` entity for buses.
    42    * **Primary Key**: `plate_num`.
     44   * **Primary Key**: `vehicle_id` - Artificially generated identifier.
    4345
    4446 * **Entity: Train**
    4547   * **Description**: A disjoint specialization of the `Vehicle` entity for trains.
    46    * **Primary Key**: `plate_num`.
     48   * **Primary Key**: `vehicle_id` - Artificially generated identifier.
    4749
    4850 * **Entity: Van**
    4951   * **Description**: A disjoint specialization of the `Vehicle` entity for vans.
    50    * **Primary Key**: `plate_num`.
     52   * **Primary Key**: `vehicle_id` - Artificially generated identifier.
    5153
    5254 * **Entity: Trip**
     
    9092 * **Entity: Route**
    9193   * **Description**: Describes a scheduled/frequent route between two or more places.
    92    * **Primary Key**: `id` - An artificial ID for the route.
     94   * **Primary Key**: `route_id` - An artificially generated ID for the route.
    9395   * **Attributes**:
    9496     * **free_seats**: Derived attribute indicating available seats.
     
    103105 * **Entity: Driver**
    104106   * **Description**: A disjoint specialization of the `Account` entity for individuals responsible for vehicle operation.
    105    * **Primary Key**: `email`.
     107   * **Primary Key**: `account_id` - Artificially generated identifier.
    106108   * **Attributes**:
    107109     * **years_exp**: Number of years the driver has been active.
     
    109111 * **Entity: Location**
    110112   * **Description**: Contains geographical points for route stops (along the way or final destinations).
    111    * **Primary Key**: Composite key (`latitude`, `longitude`).
     113   * **Primary Key**: `location_id` - Artificially generated identifier.
     114   * **Candidate Key**: The composite key (`latitude`, `longitude`). Not used due to its unnecessary complexity for implementation and referencing.
    112115   * **Attributes**:
     116
    113117     * **name**: Descriptive name of the location.
    114118