MagicDraw is a visual UML modeling and CASE tool with teamwork support. Designed for Business Analysts, Software Analysts, System Analysts, Programmers, QA Engineers, and Documentation Writers, this dynamic and versatile development tool facilitates analysis and design of Object Oriented (OO) systems and databases. It provides the industry's best code engineering mechanism (with full round-trip support for J2EE, C#, C++, CORBA IDL programming languages, .NET, XML Schema, WSDL), as well as database schema modeling, DDL generation and reverse engineering facilities. In short, MagicDraw is: A handy UML editor. A friendly and customizable GUI let you express your ideas in UML as quickly and straightforwardly as possible. The entire UML 2 notation and semantics are supported. A powerful code engineering tool. You can construct UML model, generate source code from it, write more code by hand or in your favorite IDE, then reverse the code, make some changes in the MagicDraw, and merge your model with the code again. No details are lost, no matter which way (backward or forward) you go. Support for Java, C#, C++, CORBA IDL, DDL. A UML model reporting facility. Based on the XSL files, you can generate custom HTML reports for each model element. MagicDraw allows you to select what parts of the model to include and how the report should look. An OO model analysis tool. MagicDraw generates package dependency diagrams, recover and display inheritance trees, or track any other kind of relation as a method parameter or a return value, such as dependencies, associations, realizations, and class usage. A custom OO model generator. Predefined set of desing patterns including GoF, Java, JUnit design pattern. All pattern can be extended and new pattern can be created using Java or Jython. Team modeling tool. More than one developer can work with the same OO model. The UML model is stored in the Teamwork Server repository. Every single developer can lock a part of the model and work on that part individually. Later the changes can be committed to the server and shared with the team. The server works much like a source code version control system. Database modelling tool. You can design database schema in UML class diagram, then generate it's DDL code. If you want to analyze structure of existing database you can reverse engineer it via JDBC bridge. The tool is suited for a wide variety of systems including real-time, client/server and distributed n-tier application design. MagicDraw runs on a wide variety of operating systems, such as Windows 98/ME/NT/2000/XP, Solaris, OS/2, Linux, HP-UX, AIX, MacOS (X) and everywhere else where Java 1.4, 5 or 6 is supported. = MagicDraw is available in the following editions: MagicDraw Reader. MagicDraw Reader edition is made for reading and previewing UML models created with MagicDraw and is free of charge. It is extremely useful when you want to share your ideas expressed in UML with partners, colleagues, or clients, who do not have their copy of MagicDraw. This edition is also equipped with printing and image export capabilities. MagicDraw Community edition.MagicDraw Community Edition is a free edition for developers working on non-commercial projects. This edition a minimal set of features enabled and only allows full functionality for class diagrams. All other diagrams are read only. MagicDraw Community Edition is designed for creating static structure models when XMI output is needed and is ideally suited for Open Source projects. This edition has printing and image export capabilities enabled. MagicDraw Personal Edition. The MagicDraw Personal Edition contains all of MagicDraw's powerful UML diagramming capabilities, including full UML 2 support and extensibility features, basic reporting functionality and image export. Files are stored in XMI format. All model elements can be accessed via MagicDraw's Open API. In this edition, you will find everything you need to draw, edit and publish your UML models. MagicDraw Standard Edition. The Standard Edition takes all of the Personal Edition's features and adds to them a WAE, content, and Robustness diagrams, model analysis and facilitation features, customizable and extendable patterns, integrations with most popular IDEs and a set of predefined model templates and UML profiles. The Standard Edition also supports UNISYS XMI diagramming extensions for interchanging the MagicDraw models you create with other UML modeling tools as well as the latest Model Driven Architecture (MDA) tool offerings. The Standard Edition is available in standalone, floating and mobile license versions and is fully compatible with the MagicDraw Teamwork Server. The Standard Edition is ideally suited for all analysts and architects who need various model extensions and modeling facilitations. MagicDraw Professional Edition. The Professional Edition is built on the Standard Edition's capabilities and is available in one of three programming language specific versions - Java, C++ and C#. In addition to the Standard Edition's features, the Professional Edition adds code generation and reverse engineering functionality. The Professional Edition is ideal for anyone who wants to generate code out of an existing model or create a UML model from an existing project. MagicDraw Enterprise Edition. The MagicDraw Enterprise Edition represents the top of the line of the MagicDraw family of products and represents the ultimate solution for all your modeling needs. The Enterprise Edition combines all of the functionality of the Personal and Standard Editions, and all three versions of the Professional Edition, into a comprehensive state-of-the-art UML programming solution. But the Enterprise Edition does not stop there and adds code engineering and diagramming functionality in CORBA IDL, EJB, WSDL and XML schema. For working with DB structure, the Enterprise Edition not only provides code engineering and diagramming but also provides structure retrieval via JDBC. The MagicDraw Enterprise Edition is a must when working with multiple development technologies and databases.