Coder Social home page Coder Social logo

uml-to-django's Introduction

uml-to-django

This tool automatically generates the Django model and admin interface from a UML class diagram.

How does it look like?

uml-to-django can convert this diagram (drawn with ArgoUML):

No manual python/django coding was involved in this conversion, the default application is completely generated for you.

However you can customise it after conversion. Customisations won't be lost if you re-run uml-to-django to include new changes from your UML diagram to the django code.

It currently works from a class diagram saved as a XMI file. Most UML authoring tools (Visio, ArgoUML, , Altova UModel, Visual Paradigm...) can export their diagrams in that format.

Note that the current project has only been tested with diagrams generated with ArgoUML (version 0.26).

Configuration Please read the instructions for setting up and running uml-to-django.

Philosophy Promote collaborative and transparent data modeling

The main motivation behind this tool is to allow (UML) data modeling before and during the implementation of the database editing interface and your website. Other tools already allow you to do the opposite (i.e. generate a diagram from a Django model) but the point of UML is to collaboratively discuss, design and transform a model in a graphical form first and then implement it into a logical or physical model, not the opposite.

Therefore the main advantage offered by this tool is that it allows you to always keep your diagram and your application synchronised; you don't need to manually update one each time the other has been modified since this process is fully automated and fast. This prevents the actual data model to be completely encapsulated and obscured by the technical implementation, typically making the developers the only people with the knowledge about the conceptualisation of the information system and its details.

Rapid application development for dummies

Another important advantage of this tool is that it lets people build and maintain an entire database and web-based interface without any programming or strong technical knowledge. If you are not too demanding regarding the aesthetics of the web interface you can go a long way simply by drawing your tables and fields on a diagram.

Delegate tasks to non-programmers

As a corollary it also allows developer to delegate some tasks (such as documenting the fields) to non-technical people since the information is not hard-coded into a source code with a strict syntax but easily accessible via a graphical interface.

Comments and contributions There is a discussion group about UML to Django for all your questions and constructive comments. I'll do my best to help however I cannot guarantee prompt responses.

Do not hesitate to let me know if you feel like contributing to the code to improve this tool.

uml-to-django's People

Contributors

auvipy avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.