Object Oriented Design with UML and Python

Intro

Translating UML diagram into Python code. I'm feeding the sqlite 3 database with objects data at the end.

In the project I utilize two methods: OOAD and UML.

Due to wikipedia:

Object-oriented analysis and design (OOAD) is a technical approach for analyzing and designing an application, system, or business by applying object-oriented programming, as well as using visual modeling throughout the software development process to guide stakeholder communication and product quality.

Unified Modeling Language (UML) is a general-purpose, developmental, modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system.

Features

App includes following features:

  • UML diagram
  • OOP

Demo

  • Step 1st: preparing UML diagram that shows all of the classes along with associations bettwen them.
    - Association: instance of Person type can be associated with many instances of Address type (one to many relationship).
    - Employee class inherits from parent class: Person.
    - Trainer class inherits from parent class: Person.
    - Association: Trainer - Course (one to many relationship).
    - Association: Employee - Course (many to many relationship with helper Enrollment table).
  • Step 2nd: reflecting UML diagram with Python code.
  • Step 3rd: creating class instances with in-memory data.
  • Step 4th: feeding instances into SQL database (Python sqlite3).

Setup

No specific installation required.

Source Code

You can view the source code: HERE