Changes between Version 4 and Version 5 of P4


Ignore:
Timestamp:
01/03/26 22:41:06 (2 weeks ago)
Author:
193284
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • P4

    v4 v5  
    99
    1010== Technologies and Tools
    11 
    1211The prototype is implemented using the following technologies:
    1312
    14 Python 3.11
    15 
    16 Flask web framework
    17 
    18 SQLite relational database
    19 
    20 SQL schema and seed scripts
    21 
    22 Flask development server (local execution)
     13* Python 3.11
     14* Flask web framework
     15* SQLite relational database
     16* SQL schema and seed scripts
     17* Flask development server (local execution)
    2318
    2419== Prototype Architecture
    25 
    2620The backend prototype consists of:
    2721
    28 An SQLite database created using SQL DDL scripts
    29 
    30 Pre-populated sample data using seed scripts
    31 
    32 A Flask application exposing REST endpoints
    33 
    34 JSON responses for all API calls
     22* An SQLite database created using SQL DDL scripts
     23* Pre-populated sample data using seed scripts
     24* A Flask application exposing REST endpoints
     25* JSON responses for all API calls
    3526
    3627The application is executed locally and accessed through a web browser using HTTP requests.
    3728
    3829== Implemented REST Endpoints
    39 
    4030The following REST endpoints are implemented and operational:
    4131
    42 '''/weddings'''
     32'''/weddings''' 
    4333Returns a list of weddings stored in the database.
    4434
    45 '''/weddings/<wedding_id>/events'''
     35'''/weddings/<wedding_id>/events''' 
    4636Returns all events associated with the selected wedding.
    4737
    48 '''/weddings/<wedding_id>/guests'''
     38'''/weddings/<wedding_id>/guests''' 
    4939Returns all guests related to a specific wedding.
    5040
    51 '''/weddings/<wedding_id>/attendance'''
    52 Displays attendance information for a wedding event, including guest names, roles, attendance status, and table assignments.
     41'''/weddings/<wedding_id>/attendance''' 
     42Displays attendance information for a wedding event, including guest names, roles,
     43attendance status, and table assignments.
    5344
    54 '''/weddings/<wedding_id>/rsvp'''
     45'''/weddings/<wedding_id>/rsvp''' 
    5546Returns RSVP responses for guests for a selected event.
    5647
    57 '''/availability/venue'''
     48'''/availability/venue''' 
    5849Checks venue availability for a given venue, date, and time interval and detects possible scheduling conflicts.
    5950
    6051== Demonstrated Functionalities
    61 
    6252The prototype demonstrates the following key functionalities:
    6353
    64 Retrieval of wedding data from the database
    65 
    66 Display of attendance overview per event
    67 
    68 Role-based guest participation (guest, best man)
    69 
    70 Handling of optional attributes (e.g. table number)
    71 
    72 Venue availability checking with time overlap detection
     54* Retrieval of wedding data from the database
     55* Display of attendance overview per event
     56* Role-based guest participation (guest, best man)
     57* Handling of optional attributes (e.g. table number)
     58* Venue availability checking with time overlap detection
    7359
    7460== Venue Availability Logic
    75 
    7661Venue availability is determined by checking existing bookings for a selected venue on a specific date.
    7762
    7863Two scenarios are demonstrated:
    7964
    80 Conflict case
     65'''Conflict case''' 
    8166If an existing confirmed booking overlaps with the requested time interval, the venue is not available.
    8267The response returns "available": false and provides details about the conflicting booking.
    8368
    84 Free case
     69'''Free case''' 
    8570If no overlapping bookings exist, the venue is available.
    8671The response returns "available": true with an empty conflicts list.
     
    8974
    9075== Prototype Evidence
    91 
    9276The following screenshots are attached to this page as evidence of the working prototype:
    9377
    94 Flask development server running locally
    95 
    96 Overview of available REST endpoints
    97 
    98 Wedding list endpoint response
    99 
    100 Attendance overview endpoint response
    101 
    102 Venue availability conflict example
    103 
    104 Venue availability free example
     78* Flask development server running locally
     79* Overview of available REST endpoints
     80* Wedding list endpoint response
     81* Attendance overview endpoint response
     82* Venue availability conflict example
     83* Venue availability free example
    10584
    10685These screenshots confirm the correct execution of the backend prototype and successful interaction with the database.
    10786
    10887== Implemented Use Cases
    109 
    11088The prototype demonstrates the following usage scenarios:
    11189
     
    11997
    12098== Conclusion
    121 
    12299Phase P4 successfully demonstrates a working backend prototype for the Wedding Planner system.
    123100The implementation validates the database design from previous phases and confirms the correct behavior
    124101of core system functionalities through RESTful API endpoints.
    125102
    126 The prototype provides a solid foundation for further development and potential frontend integration.
     103The prototype provides a solid foundation for further development and future frontend integration.