Free Zend Framework-based code generator from UML2 models

August 26, 2009

Zend Framework

BOZA Framework is a conceptual instantiation of the Model-Driven Development (MDD) paradigm that aims at shifting the abstraction level from code to models. BOZA Framework comes with an integrated Eclipse-based toolset that allows developers to automatically generate a substantial part of the application source code. All you need is draw the UML2 structural model of the entities and their interrelationships within your application. Hit the generate button and the tool will produce:

  • A complete model of your application (model as in Model View Controller)
  • A complete admin back-end
  • A complete database scheme ready to import in MySQL
  • An overall structure of the Zend folders
  • An initial and working setup which will put you in the fast development lane.

Visit the tool page on our website to find out more the toolset.

www.bozasolutions.com/generator

You can consult the toolset documentation to find out more about the tool and what it does.

www.bozasolutions.com/public/generator/index.html

NEW – DEMO VIDEO OF THE TOOL ADDED

www.bozasolutions.com/index/demo

About aramhovsepyan

I am currently finishing my phd at the Katholieke Universiteit Leuven on model-driven generative technologies. My areas of specialization are aspect-oriented modeling, model transformations and code generation from EMF models.

View all posts by aramhovsepyan

20 Responses to “Free Zend Framework-based code generator from UML2 models”

  1. hobodave Says:

    This site requires you provide personal information to access it’s downloads. There is no visible privacy policy. There is no mention of what license the software is provided under. On top of that, they provide virtually no information on what the software actually does besides "generates code". Overall, thoroughly lame.

  2. umpirsky Says:

    @hobodave So what?

  3. cenuij Says:

    "So what?"

    http://dev.bozasolutions.com/viewtopic.php?f=3&t=4

    Oops, "compound (upper and lowercase) names are used in the classes". I dont know what a compound class name is. Class names in any sane piece of PHP work are both upper and lower case. Maybe they mean camel case. Maybe they don’t know wtf they are talking about.

    Did these jokers write everything in windows, without tests, then find it fails on the most common platform for PHP *after* a bug report?

  4. hradtke Says:

    @umpirsky I think hobodave is making valid claims. Why did this advertisement deserve to make it on the developer zone? Why aren’t there any examples, like a lot of the other articles, showing us what this does rather than just telling us?

  5. robzienert Says:

    I decided to sign up, here’s the online documentation that you’re linked to after signing up. Hopefully it’ll be more helpful than everything else they have available online pre-registration.

    http://www.bozasolutions.com/public/generator/index.html

  6. aramhovsepyan Says:

    Guys please have some patience. This is a free toolset and is not part of our main business. We would appreciate constructive criticism rather than comments like we are "jokers" and "lamers".

    "Did these jokers write everything in windows, without tests, then find it fails on the most common platform for PHP *after* a bug report?"
    The tool is an Eclipse plugin. Runs on all platforms. The toolset has been thoroughly tested. Please consult the documentation.

    Personal information has been asked only to know if people are interested in the tool. Moreover, you can just write blabla and the form will accept it. A decent privacy policy will come soon.
    The software is published under the EPL – Eclipse Public Licence.

    We will put the documentation available for download without having to fill out the form.

  7. _____anonymous_____ Says:

    Hi,

    I think this is an interesting tool. Unfortunately there is no screenshots or substantial information yet. I’d love to see someone do a review. Maybe coupled with a Screencast.

  8. argtrooper Says:

    Come one guys, they are offering their software for free to help the community.
    This tool seems very usefull and will help me a lot with my current proyect.

  9. hobodave Says:

    The "lame" I used was not directed towards a person. It was directed towards the presentation of this product, the complete lack of information, and the unavoidable relinquishment of personal information without any privacy policy . I honestly wasn’t even sure it was free, as the site didn’t make that clear to me. Virtually every free thing I’ve downloaded has not required any personal information from me.

  10. eliwhite Says:

    Hello everyone, I just wanted to say that this was a submission to DevZone, about a free tool that’s being offered for the community to use. Before posting it I ran the article by the Lead of Zend Framework, Matthew Weier O’Phinney, and he himself said that it seemed to be a interesting tool and that he himself would be playing around with it.

    Therefore it seemed worthwhile to get the information out to everyone, so that they could evaluate it as well. I look forward to hearing back thoughts on what people think. Either here as comments, or submit a full review to DevZone if you want and if calmly and well written, I’ll be happy to publish it.

    Eli – Editor-in-Chief DevZone

  11. weierophinney Says:

    Folks, please explore the project before making judgments. The documentation for the product is freely available online. If you read that, you’ll see that what Boza does is allow you to (a) create UML class diagrams, and then (b) generate ZF model classes from these diagrams for use in your ZF projects. It’s a very interesting idea, particularly for those who are practicing Domain Driven Development (DDD)

  12. thobach Says:

    I checked out the tool yesterday and think it is not really Model Driven Software Development. I miss the ability to modify the templates which are used to generate the code.
    Other tools like openArchitectureWare (http://www.openarchitectureware.org/) are way more powerful I guess.
    What also bothered me was, that the update site (http://www.bozasolutions.com/public/generator/update) is not working and that there is no version for Mac and Linux.

  13. aramhovsepyan Says:

    "I checked out the tool yesterday and think it is not really Model Driven Software Development."
    We do implement a particular vision on MDD as we use models as primary software artifacts rather than mere pictures to produce actual working code.

    "I miss the ability to modify the templates which are used to generate the code."
    We do not allow template modification indeed. This is clearly stated in the documentation.

    "Other tools like openArchitectureWare (http://www.openarchitectureware.org/) are way more powerful I guess."
    OAW is a model-to-code generation technology that supports any EMF model and any platform technology. BOZA Framework makes use of such a technology to implement model-to-code generation for a particular setting, i.e. UML2->PHP Zend code generation.

    "What also bothered me was, that the update site (http://www.bozasolutions.com/public/generator/update) is not working and that there is no version for Mac and Linux."
    A Mac version was posted today. The update site is working but you might need to uncheck the Group items by category. There is some open issue with Eclipse Update Framework.

  14. matt_bk Says:

    As I’m new to this kind of solutions, the Idea seams to me interesting.
    For now I’d only suggest, that admin layout template could be better. Now it looks like it would be made by a prgrammer, not a designer.

  15. ldronkers Says:

    I have tried the tool. What I am missing is the fact that relations are not dealt with. For I want to create a representation in Php (model) that matches/translates to the data layer with the mapper in between. Also it create a whole project. I would like to plug code into existing projects.

    This tool though does create the DbTable, Model and Mapper classes based on a model, which is a step closer to mdd. In fact on this subject ZF is running behind with MDD unlike web-development frameworks such as Django.

    It is a very good initiative, I am sure we will get so see more of initiatives such as this.

    (I have created a generator for the DbTable, Mapper and Model myself which don’t yet deal with table relations. But in a way it is similar and generates code similar to the quick start classes. I don’t generate controllers for it, just the Model, DbTable and mapper. Check it out as a module download http://www.sreknord.net/download#download3)

  16. aramhovsepyan Says:

    hey ldronkers, thnx for giving it a go. Our framework does deal with associations. The publicly available version is limited to one-to-one and one-to-many types. The internally used version of the tool deals also with many-to-many associations.
    However, you are right, the tool cannot be used with existing projects. This is one of the challenges in the MDE community in general, i.e., how to deal with legacy code and COTS.

  17. ldronkers Says:

    Hi aramhovsepyan,

    What I mean is a relational Model; for example a blog with comments and tags Model would look like this:

    class Model_Blog{
    protected $_title;
    protected $_content;
    // @var array of Model_BlogComments
    protected $_comments;
    // @var array of Model_BlogTags
    protected $_tags;

    //..
    }

    I have seen for instance the menu Model in the generated code, the $_parent property is suggested (@var Menu) to be of type Menu, but is an integer. In ‘my ideal world’ this would be mapped to a Menu model class.

  18. clintonb11 Says:

    I am starting a Code Generator project based on the Qcubed Project (http://qcu.be/). It generates models, base models, controllers, views, and forms. It has a way to go, but it could be useful to some people. Check it out at http://clintberry.com/2010/08/zend-framework-code-generator-with-scaffolding/

  19. tdw-unreality Says:

    If this is outdated info then I’m sorry. I’m looking for a DDD tool that integrates with ZendStudio/Eclipse and found this post.

    After checking the Website the generator page sayes:
    "(…) However, we have stopped the external offering of the toolset."

    http://www.bozasolutions.com/index/framework

    The documentation page shows an exception (including stack trace).