Many a times I have felt that development of applications takes a hell lot of time and by the time the development is over some requirements change. Most of the times requirements are not clear and neither the end user nor you can help it.
You would like to deliver as soon as possible with the best quality but you need to do all the due diligence and follow the processes and that eats up a lot of time. Agile methodologies like SCRUM and Extreme Programming appear to solve this to an extent but again not very good.
I have tried using small time code generators and found them to be of some help. Unfortunately they fail when requirements are little complex. I have used PHP Maker in few cases and found it to be good.
During my college days I read about Model Driven Architecture (MDA) from Object Management Group (OMG). Applications conforming to MDA specifications should be able to take UML diagrams as input and give the source code as output. What I am talking of here is not the skeletal code but the complete application with all the logic built into it at the lowest level. There are many implementations from may companies that promise this. I have not seen any of them in action. Some open source tools are also available in this area where you can get your hands dirty. Some of them are StarUML and AndroMDA (pronounced as Andromeda). These tools require that you have good understanding of UML. Unfortunately I am not very strong in UML and have not been able to test these tools to the extent I would have liked to. I need to read more of UML. I will try to give a review on StarUML in some time.
There are many companies who have built their own tool conforming to MDA specifications but do not share/sell it to others. One of the tools I know of is Solution Blueprint (SBP) that is used by Zensar technologies.
I am trying to learn more on this topic. Will post more when I have something good to share.