Changes between Version 2 and Version 3 of RelationalDesignAIUsage


Ignore:
Timestamp:
09/02/26 16:16:57 (4 days ago)
Author:
236024
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • RelationalDesignAIUsage

    v2 v3  
    129129The AI checked the sample data and confirmed that every event edition except BOMBA has either a Main Organiser function or a full core team with accepted applications. BOMBA was left as the exception because it is coordinated through the HR function.
    130130
     131'''Prompt 18:'''
     132With the following schema design, would {{{ef_no}}} and {{{es_no}}} have to be entered manually by the user? Can they be generated automatically even though they're not global?
     133
     134'''AI response 18:'''
     135The AI explained that the user should not manually enter these numbers. They are internal partial identifiers, and the application can later assign the next available number inside the selected event edition.
     136
     137'''Prompt 19:'''
     138How should the {{{applications}}} relation reference event editions and event functions if not every application is for a function?
     139
     140'''AI response 19:'''
     141The AI explained that {{{ee_id}}} should always reference {{{event_editions}}}, while {{{ef_no}}} can be nullable. The composite foreign key {{{(ee_id, ef_no)}}} references {{{event_functions}}} only when {{{ef_no}}} is present, so participation applications can reference only an event edition.
     142
     143'''Prompt 20:'''
     144Debated with AI whether {{{young_members}}} table should reference full members indices since a full member would at one point become an alumni or could revert to a young member.
     145
     146'''AI response 20:'''
     147The AI explained that referencing {{{members}}} is more flexible for historical cases, but referencing {{{full_members}}} matches the ER model more strictly. Since the ER model keeps mentorship between !FullMembers and !YoungMembers, the stricter relational representation is {{{mentor_index REFERENCES full_members(student_index)}}}. After back and forth discussion I expressed that the young member is technically automatically mentored by the current HR Coordinator should the full member not be a full member anymore, so the young members table should keep referencing full member indices. The business logic would get implemented later on.
     148
     149'''Prompt 21:'''
     150Change the sample data so that {{{data_load.sql}}} stays consistent with the updated relational schema.
     151
     152'''AI response 21:'''
     153The AI aligned the existing sample data with the updated table names, numeric identifiers, event function/session numbers, application types, and foreign key references, while keeping the same realistic BEST Skopje data requirements from the earlier sample-data prompt.
     154
     155'''Prompt 22:'''
     156Check whether the current {{{schema_creation.sql}}} and {{{data_load.sql}}} are consistent.
     157
     158'''AI response 22:'''
     159The AI checked that every inserted table exists in the schema, every inserted column exists in the corresponding table, and the table names match between the schema and data load scripts.
     160
     161'''Prompt 23:'''
     162Asked the AI model to help me update the TracWikis by only proposing the necessary changes and additions.
     163
     164'''AI response 23:'''
     165The AI kept the existing page text as much as possible and only helped with updating outdated parts: the ER model version reference, the relational schema block, old string-key explanations, old weak-entity descriptions, renamed relations, and references to the new Locations entity.
     166
     167'''Prompt 24:'''
     168Check whether the updated {{{RelationalDesign}}} TracWiki relation list matches the current schema.
     169
     170'''AI response 24:'''
     171The AI checked that the relation names in the TracWiki schema block match the tables created in {{{schema_creation.sql}}}.
     172
    131173== Changes made based on AI assistance ==
    132174
     
    139181* Realistic, connected sample data was prepared and revised for all tables.
    140182* The sample data was revised with official UKIM/faculty study programme names and more realistic BEST Skopje event, activity, location, responsibility, and core team examples.
    141 * Membership-stage history and sample attendance data were corrected to better represent previous Observer/Young member stages, Board meeting attendance, and core team attendance for event-related meetings.
     183* Membership-stage history and sample attendance data were corrected to better represent previous !Observer/Young member stages, Board meeting attendance, and core team attendance for event-related meetings.
    142184* The final files were checked for duplicate names in the ER model, stale removed concepts, matching DDL/DML table sets, duplicate primary keys, and broken foreign-key references.
    143185* The `RelationalDesign` wiki page was prepared according to the required phase template.
     
    147189* Participation applications were kept only for event editions where an actual application process exists in the sample data, such as Hackathon and BEST Course in Summer.
    148190* Event function slots were adjusted so larger events have several core-team functions, smaller events have only a Main Organiser function, and BOMBA has no Main Organiser because it is coordinated by HR.
     191* The consistency of `schema_creation.sql`, `data_load.sql`, the relational design page, and the use-case SQL was checked after the changes.