wiki:ConceptualModel

Version 23 (modified by 221296, 11 days ago) ( diff )

--

Conceptual Design – ER Diagram and Data Requirements

ER Diagram

No image "ЕR.jpg" attached to ConceptualModel

Data Requirements

Entities

  • User: Entity representing all users who access the platform (students / learners).
    • User_ID – INT (PRIMARY KEY)
    • First_Name – VARCHAR
    • Last_Name – VARCHAR
    • Email – VARCHAR(unique)
    • Password – VARCHAR
  • Administrator: Entity representing instructors who create and manage educational content.
    • Admin_ID – INT (PRIMARY KEY)
    • Admin_Level – VARCHAR
  • Instructor: Entity representing instructors who upload and manage course materials.
    • Instructor_ID – INT (PRIMARY KEY)
    • BIO – VARCHAR
    • Ekspertise – VARCHAR

  • Course: Entity representing the courses offered on the platform.
    • Course_id – INT (PRIMARY KEY)
    • Certificate – VARCHAR
    • Name – VARCHAR
    • Price – Decimal
    • status – VARCHAR
  • Enrollment: Entity representing the enrollment of a user in a course.
    • Enrollment_id – INT (PRIMARY KEY)
    • Enroll_date – DATE
    • Completion_Status – VARCHAR
    • Progress_percentage – INT
  • Payment: Entity representing financial transactions.
    • Payment_ID – PRIMARY KEY
    • Amount – DECIMAL
  • SubscriptionPlan: Entity representing available subscription plans.
    • Plan_ID – INT (PRIMARY KEY)
    • Name – VARCHAR
    • Price – DECIMAL
    • Duration_months – INT
    • Description – VARCHAR
    • Access_type – VARCHAR
  • Certificate: Entity representing certificates issued after course completion.
    • Certificate_id – INT (PRIMARY KEY)
    • Issue_date – DATE
    • Certificate_code – VARCHAR
    • Status – VARCHAR
  • UserSubscription: Entity representing active subscriptions of users.
    • Subscription_ID – INT (PRIMARY KEY)
    • Start_date – DATE
    • End_date – DATE
    • Status – VARCHAR
  • SupportTicket: Entity representing user support requests.
    • Ticket_ID – INT (PRIMARY KEY)
    • Subject – VARCHAR
    • Description – VARCHAR
    • Status – VARCHAR
    • Created_at – DATE
  • Category: Entity representing course classification.
    • Category_ID – INT (PRIMARY KEY)
    • Name – VARCHAR
    • Description – VARCHAR
  • Module: Entity representing logical subdivisions of a course.
    • Мodule_id – INT (PRIMARY KEY)
    • Тitle – VARCHAR
    • Description – VARCHAR

  • Lesson: Entity representing individual learning units.
    • Lesson_ID – INT (PRIMARY KEY)
    • Тitle – VARCHAR
    • Material – VARCHAR

  • Quiz: Entity representing assessments associated with lessons.
    • Quiz_ID – INT (PRIMARY KEY)
    • Total_points – INT
    • Passing_score – INT

Relationships

  • belongs_to - 1:N релација која ги поврзува ентитетите Product и Category. Еден продукт може да припаѓа само на една категорија, а една категорија може да има повеќе продукти.
  • supplied_by - 1:N релација која ги поврзува ентитетите Product и Supplier. Еден продукт може да се добавува од еден добавувач, а еден добавувач може да добавува повеќе продукти.
  • holds - 1:N релација која ги поврзува ентитетите Warehouse и WarehouseStock. Едно складиште може да има повеќе запасни ставки, а една запасна ставка припаѓа на едно складиште.
  • has_stock_in - 1:N релација која ги поврзува ентитетите Product и WarehouseStock. Еден продукт може да има запас во повеќе складишта, а една запасна ставка е за еден продукт.
  • made_by - 1:N релација која ги поврзува ентитетите Sale и User. Една продажба е направена од еден корисник, а еден корисник може да направи повеќе продажби.
  • made_for - 1:N релација која ги поврзува ентитетите Sale и Customer. Една продажба е за еден клиент, а еден клиент може да има повеќе продажби.
  • contains - 1:N релација која ги поврзува ентитетите Sale и SaleItem. Една продажба содржи повеќе ставки, а една ставка припаѓа на една продажба.
  • includes_product - 1:N релација која ги поврзува ентитетите SaleItem и Product. Една ставка во продажба е за еден продукт, а еден продукт може да биде во повеќе ставки.
  • placed_to - 1:N релација која ги поврзува ентитетите PurchaseOrder и Supplier. Една нарачка е кон еден добавувач, а еден добавувач може да прими повеќе нарачки.
  • includes_item - 1:N релација која ги поврзува ентитетите PurchaseOrder и PurchaseOrderItem. Една нарачка содржи повеќе ставки, а една ставка припаѓа на една нарачка.
  • orders - 1:N релација која ги поврзува ентитетите PurchaseOrderItem и Product. Една ставка во нарачка е за еден продукт, а еден продукт може да биде во повеќе ставки.
  • shipped_from - N:1 релација која ги поврзува ентитетите Sale и Warehouse. Повеќе продажби можат да бидат испратени од едно складиште.
  • received_at - N:1 релација која ги поврзува ентитетите PurchaseOrder и Warehouse. Повеќе нарачки можат да бидат примени во едно складиште.

Attachments (1)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.