Skip to content

A comprehensive UML diagram tool that supports the creation and modification of UML Class Diagrams and UML Use Case Diagrams. It provides users with the ability to freely draw, drag, move, edit, and rename diagram components, as well as save and load UML projects.

Notifications You must be signed in to change notification settings

Takreem-Jaffery/UML-Diagram-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UML-Diagram-Project

Description

UML-Diagram-Project is a comprehensive UML diagram tool that supports the creation and modification of UML Class Diagrams and UML Use Case Diagrams. It provides users with the ability to freely draw, drag, move, edit, and rename diagram components, as well as save and load UML projects. This tool features serialization and deserialization for project persistence and offers an option to generate Java code from a Class Diagram JSON file. Additionally, users can save diagrams in various image formats, including PNG and JPEG.

Table of Contents

  • Installation
  • Usage
  • Features
  • Technologies Used
  • Contributing
  • Contributors & Contact Information:

Installation

To install and run the UML-Diagram-Project, follow these steps:

- Clone the repository: bash git clone https://github.com/Takreem-Jaffery/UML-Diagram-Project.git

- Navigate into the project directory: bash cd UML-Diagram-Project

- Install dependencies: Depending on the setup (Java, dependencies like Swing for UI, or any other tools), run the following command to install the required dependencies: bash mvn install

- Run the project: After installation, you can run the project by executing the following command: bash mvn exec:java

Usage

Once the UML-Diagram-Project is running, you can:

- Draw Diagrams: Select UML Class Diagram or UML Use Case Diagram and begin drawing by dragging components.

- Move and Resize: Drag components to move them around, resize them using the resize handle.

- Rename Components: Right-click to rename components like Use Case or Actor in the diagram.

- Save and Load Projects: Save your UML diagrams and load them later for further editing. The project supports serialization and deserialization.

- Generate Java Code: Export your diagram to a JSON file and generate corresponding Java code.

- Export Diagrams: Save your UML diagrams as images in PNG, JPEG, or other supported formats.

Features

- Free Drawing and Editing: Draw, move, and resize components of UML Class Diagrams and Use Case Diagrams.

- Serialization/Deserialization: Save and load UML diagram projects.

- Java Code Generation: Generate Java code from a JSON file representation of the diagram.

- Image Export: Export diagrams in various formats like PNG or JPEG.

- Customizable Components: Add, edit, or rename components in diagrams freely.

- User-friendly Interface: Easy-to-use interface built for both novice and experienced users of UML inspired by UMLetino and StarUML.

Technologies Used

- Java: The project is built using Java with a GUI based on Java Swing.

- Serialization/Deserialization: Used for saving and loading diagrams in binary or JSON formats.

- Graphics2D: Used for rendering the UML diagrams and components.

- Maven: Used as a build tool for managing project dependencies and running the project.

Contributing

We welcome contributions from the community. If you'd like to contribute, follow these steps:

  • Fork the repository.
  • Create a new branch (git checkout -b feature-branch).
  • Make your changes.
  • Commit your changes (git commit -am 'Add new feature').
  • Push to the branch (git push origin feature-branch).
  • Create a pull request.

Contributors & Contact Information:

For questions or inquiries about the UML-Diagram-Project, please contact the project maintainers:

Contributor 1: Takreem Jaffery Email: l227949@lhr.nu.edu.pk GitHub: https://github.com/Takreem-Jaffery

Contributor 2: Miraal Fatima Email: l227902@lhr.nu.edu.pk GitHub: https://github.com/MiraalFatima

Contributor 3: Aneeza Junaid Email: l227903@lhr.nu.edu.pk GitHub: https://github.com/aneezajunaid

About

A comprehensive UML diagram tool that supports the creation and modification of UML Class Diagrams and UML Use Case Diagrams. It provides users with the ability to freely draw, drag, move, edit, and rename diagram components, as well as save and load UML projects.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •