13. A method for generating a software application using a computer system, comprising the steps of: (a) modeling business processes in a graphical design tool implemented in said computer system, said graphical design tool capable of generating models to serve as blueprints in development of the software application; (b) creating, in said computer system via Unified Modeling Language (UML), at least one UML model to formalize the business processes modeled in step (a) by using state diagrams to represent the modeled business processes, and class diagrams to represent data models and to represent predetermined rules that are applied to the modeled business processes, wherein steps in said business processes are expressed by states of said state diagrams and interconnectivity of said states are expressed by transitions, wherein transitions between said states occurs after satisfying a condition, wherein a tagged value is used in the data models to define an exclusive dependency between a current field and another field in the same entity type of the data models or in another entity type of the data models with a relation; (c) validating, in said computer system, the at least one UML model by detecting syntax errors using a predetermined syntax, to validate said state diagrams, said class diagrams, or a combination of said state diagrams and said class diagrams; (d) transforming, in said computer system, said at least one UML model validated in step (c) into metadata that are used to generate functional and non-functional aspects of the software application, the software application being a layer that sits on too of a UML visual modeling tool as a plug-in; (e) generating said software application such that said software application can be deployed to a server by transforming the validated UML models into source code, combining the transformed code with pre-existing libraries, and configuration files; (f) generating, via the at least one UML model a new Enterprise Application Archive (Ear) file and/or selecting an existing Ear file, the new Ear file and/or the selected existing Ear file comprising a plurality of Java Archive (JAR) files required for deployment of the software, wherein at least one JAR file is added and/or removed, wherein said software application is deployed as a layer that sits on top of a UML visual modeling tool as a plug in; (g) generating a project that contains said at least one validated UML model, wherein generating said project comprises removing all conflicting stereotypes; and (h) generating code automatically by: converting the UML model into an XML file; using the XML file to generate Java source code; and compiling the generated Java source code using a compiler and creating the at least one JAR.
13. A method for generating a software application using a computer system, comprising the steps of: (a) modeling business processes in a graphical design tool implemented in said computer system, said graphical design tool capable of generating models to serve as blueprints in development of the software application; (b) creating, in said computer system via Unified Modeling Language (UML), at least one UML model to formalize the business processes modeled in step (a) by using state diagrams to represent the modeled business processes, and class diagrams to represent data models and to represent predetermined rules that are applied to the modeled business processes, wherein steps in said business processes are expressed by states of said state diagrams and interconnectivity of said states are expressed by transitions, wherein transitions between said states occurs after satisfying a condition, wherein a tagged value is used in the data models to define an exclusive dependency between a current field and another field in the same entity type of the data models or in another entity type of the data models with a relation; (c) validating, in said computer system, the at least one UML model by detecting syntax errors using a predetermined syntax, to validate said state diagrams, said class diagrams, or a combination of said state diagrams and said class diagrams; (d) transforming, in said computer system, said at least one UML model validated in step (c) into metadata that are used to generate functional and non-functional aspects of the software application, the software application being a layer that sits on too of a UML visual modeling tool as a plug-in; (e) generating said software application such that said software application can be deployed to a server by transforming the validated UML models into source code, combining the transformed code with pre-existing libraries, and configuration files; (f) generating, via the at least one UML model a new Enterprise Application Archive (Ear) file and/or selecting an existing Ear file, the new Ear file and/or the selected existing Ear file comprising a plurality of Java Archive (JAR) files required for deployment of the software, wherein at least one JAR file is added and/or removed, wherein said software application is deployed as a layer that sits on top of a UML visual modeling tool as a plug in; (g) generating a project that contains said at least one validated UML model, wherein generating said project comprises removing all conflicting stereotypes; and (h) generating code automatically by: converting the UML model into an XML file; using the XML file to generate Java source code; and compiling the generated Java source code using a compiler and creating the at least one JAR. 14. The method of claim 13 , wherein step (e) comprises transforming the validated UML model into metadata that are used to generate functional and non-functional aspects of the software application.